*/
int sound_manager_get_index_from_stream_information(sound_stream_info_h stream_info, int *index);
+/**
+ * @internal
+ * @brief Gets the internal stream information handle for VoIP session.
+ * @since_tizen 3.0
+ *
+ * @remarks If VoIP session is not set in this process, it'll return #SOUND_MANAGER_ERROR_NO_DATA.
+ *
+ * @param[out] stream_info The handle of stream information
+ *
+ * @return @c 0 on success,
+ * otherwise a negative error value
+ * @retval #SOUND_MANAGER_ERROR_NONE Success
+ * @retval #SOUND_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #SOUND_MANAGER_ERROR_NO_DATA No data
+ * @see sound_manager_set_session_type()
+ * @see sound_manager_set_voip_session_mode()
+ */
+int sound_manager_get_internal_voip_stream_information(sound_stream_info_h *stream_info);
+
/**
* @internal
* @brief Creates a virtual stream handle.
/* These variables will be removed when session features are deprecated. */
extern int g_stream_info_count;
extern pthread_mutex_t g_stream_info_count_mutex;
+extern sound_stream_info_s *g_voip_stream_info;
#ifndef TIZEN_FEATURE_TV_PROD
int sound_manager_get_max_master_volume(int *max_level)
return _convert_sound_manager_error_code(__func__, ret);
}
+/* This function is only for audio-io session backward compatibility */
+int sound_manager_get_internal_voip_stream_information(sound_stream_info_h *stream_info)
+{
+ SM_NULL_ARG_CHECK(stream_info);
+
+ if (g_voip_stream_info == NULL) {
+ LOGE("internal voip internal stream_info does not exist");
+ return SOUND_MANAGER_ERROR_NO_DATA;
+ }
+
+ LOGI("internal VoIP stream_info[%p]", g_voip_stream_info);
+ *stream_info = (sound_stream_info_h)g_voip_stream_info;
+
+ return SOUND_MANAGER_ERROR_NONE;
+}
+
int sound_manager_create_virtual_stream(sound_stream_info_h stream_info, virtual_sound_stream_h *virtual_stream)
{
int ret = MM_ERROR_NONE;