} audio_io_error_e;
/**
- * @deprecated Deprecated since 3.0
- * @brief Enumeration for audio IO interrupted messages.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- */
-typedef enum {
- AUDIO_IO_INTERRUPTED_COMPLETED = 0, /**< Interrupt completed */
- AUDIO_IO_INTERRUPTED_BY_MEDIA, /**< Interrupted by a media application */
- AUDIO_IO_INTERRUPTED_BY_CALL, /**< Interrupted by an incoming call */
- AUDIO_IO_INTERRUPTED_BY_EARJACK_UNPLUG, /**< Interrupted by unplugging headphones */
- AUDIO_IO_INTERRUPTED_BY_RESOURCE_CONFLICT, /**< Interrupted by a resource conflict */
- AUDIO_IO_INTERRUPTED_BY_ALARM, /**< Interrupted by an alarm */
- AUDIO_IO_INTERRUPTED_BY_EMERGENCY, /**< Interrupted by an emergency */
- AUDIO_IO_INTERRUPTED_BY_NOTIFICATION, /**< Interrupted by a notification */
-} audio_io_interrupted_code_e;
-
-/**
- * @deprecated Deprecated since 3.0. Use sound_stream_focus_state_changed_cb instead.
- * @brief Called when audio input or output is interrupted.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @param[in] error_code The interrupted error code
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @see audio_in_set_interrupted_cb()
- * @see audio_out_set_interrupted_cb()
- * @see audio_in_unset_interrupted_cb()
- * @see audio_out_unset_interrupted_cb()
- */
-typedef void (*audio_io_interrupted_cb)(audio_io_interrupted_code_e code, void *user_data);
-
-/**
* @}
*/
int audio_in_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type, audio_in_h *input);
/**
- * @deprecated Deprecated since 3.0. Use sound_manager_create_stream_information() instead.
- * @brief Creates an audio loopback device instance and returns an input handle to record PCM (pulse-code modulation) data.
- *
- * @details This function is used for audio loopback input initialization.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/recorder
- *
- * @remarks @a input must be released using audio_in_destroy().
- *
- * @param[in] sample_rate The audio sample rate in 8000[Hz] ~ 48000[Hz]
- * @param[in] channel The audio channel type, mono, or stereo
- * @param[in] type The type of audio sample (8- or 16-bit)
- * @param[out] input An audio input handle will be created, if successful
- * @return @c 0 on success,
- * otherwise a negative error value
- * @retval #AUDIO_IO_ERROR_NONE Successful
- * @retval #AUDIO_IO_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #AUDIO_IO_ERROR_PERMISSION_DENIED Permission denied
- * @retval #AUDIO_IO_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #AUDIO_IO_ERROR_DEVICE_NOT_OPENED Device not opened
- * @retval #AUDIO_IO_ERROR_SOUND_POLICY Sound policy error
- * @retval #AUDIO_IO_ERROR_NOT_SUPPORTED Not supported
- *
- * @see audio_in_destroy()
- */
-int audio_in_create_loopback(int sample_rate, audio_channel_e channel, audio_sample_type_e type , audio_in_h* input) TIZEN_DEPRECATED_API;
-
-/**
* @brief Releases the audio input handle and all its resources associated with an audio stream.
*
* @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
int audio_in_get_sample_type(audio_in_h input, audio_sample_type_e *type);
/**
- * @deprecated Deprecated since 3.0. Use sound_manager_create_stream_information() instead.
- * @brief Registers a callback function to be invoked when the audio input handle is interrupted or the interrupt is completed.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] input The handle to the audio input
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return @c 0 on success,
- * otherwise a negative error value
- * @retval #AUDIO_IO_ERROR_NONE Successful
- * @retval #AUDIO_IO_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #AUDIO_IO_ERROR_INVALID_OPERATION Invalid operation
- * @retval #AUDIO_IO_ERROR_NOT_SUPPORTED Not supported
- * @post audio_io_interrupted_cb() will be invoked.
- *
- * @see audio_in_unset_interrupted_cb()
- * @see audio_io_interrupted_cb()
- */
-int audio_in_set_interrupted_cb(audio_in_h input, audio_io_interrupted_cb callback, void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 3.0
- * @brief Unregisters the callback function.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] input The handle to the audio input
- * @return @c 0 on success,
- * otherwise a negative error value
- * @retval #AUDIO_IO_ERROR_NONE Successful
- * @retval #AUDIO_IO_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #AUDIO_IO_ERROR_INVALID_OPERATION Invalid operation
- * @retval #AUDIO_IO_ERROR_NOT_SUPPORTED Not supported
- *
- * @see audio_in_set_interrupted_cb()
- */
-int audio_in_unset_interrupted_cb(audio_in_h input) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 3.0
- * @brief Ignores session for input.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] input The handle to the audio input
- * @return @c 0 on success,
- * otherwise a negative error value
- * @retval #AUDIO_IO_ERROR_NONE Successful
- * @retval #AUDIO_IO_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #AUDIO_IO_ERROR_INVALID_OPERATION Invalid operation
- * @retval #AUDIO_IO_ERROR_NOT_SUPPORTED Not supported
- */
-int audio_in_ignore_session(audio_in_h input) TIZEN_DEPRECATED_API;
-
-/**
* @brief Sets an asynchronous(event) callback function to handle recording PCM (pulse-code modulation) data.
*
* @details @a callback will be called when you can read a PCM data.
* @retval #AUDIO_IO_ERROR_SOUND_POLICY Sound policy error
* @retval #AUDIO_IO_ERROR_NOT_SUPPORTED Not supported
*
- * @see audio_out_set_stream_cb()
+ * @see audio_in_unset_stream_cb()
*/
int audio_in_set_stream_cb(audio_in_h input, audio_in_stream_cb callback, void* user_data);
* @retval #AUDIO_IO_ERROR_INVALID_OPERATION Invalid operation
* @retval #AUDIO_IO_ERROR_NOT_SUPPORTED Not supported
*
- * @see audio_in_set_interrupted_cb()
+ * @see audio_in_set_stream_cb()
*/
int audio_in_unset_stream_cb(audio_in_h input);
typedef void (*audio_out_state_changed_cb)(audio_out_h handle, audio_io_state_e previous, audio_io_state_e current, bool by_policy, void *user_data);
/**
- * @deprecated Deprecated since 3.0. Use audio_out_create_new() instead.
- * @brief Creates an audio device instance and returns an output handle to play PCM (pulse-code modulation) data.
- *
- * @details This function is used for audio output initialization.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @remarks @a output must be released by audio_out_destroy().
- *
- * @param[in] sample_rate The audio sample rate in 8000[Hz] ~ 48000[Hz]
- * @param[in] channel The audio channel type (mono or stereo)
- * @param[in] type The type of audio sample (8-bit or 16-bit)
- * @param[in] sound_type The type of sound (#sound_type_e)
- * @param[out] output An audio output handle is created on success
- * @return @c 0 on success,
- * otherwise a negative error value
- * @retval #AUDIO_IO_ERROR_NONE Successful
- * @retval #AUDIO_IO_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #AUDIO_IO_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #AUDIO_IO_ERROR_DEVICE_NOT_OPENED Device not opened
- * @retval #AUDIO_IO_ERROR_SOUND_POLICY Sound policy error
- *
- * @see audio_out_destroy()
- */
-int audio_out_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type, sound_type_e sound_type, audio_out_h *output) TIZEN_DEPRECATED_API;
-
-/**
* @brief Creates an audio device instance and returns an output handle to play PCM (pulse-code modulation) data.
*
* @details This function is used for audio output initialization.
* @retval #AUDIO_IO_ERROR_OUT_OF_MEMORY Out of memory
* @retval #AUDIO_IO_ERROR_DEVICE_NOT_CLOSED Device not closed
*
- * @see audio_out_create()
+ * @see audio_out_create_new()
*/
int audio_out_destroy(audio_out_h output);
int audio_out_get_sound_type(audio_out_h output, sound_type_e *type);
/**
- * @deprecated Deprecated since 3.0. Use sound_manager_create_stream_information() instead.
- * @brief Registers a callback function to be invoked when the audio output handle is interrupted or the interrupt is completed.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] output The handle to the audio output
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return @c 0 on success,
- * otherwise a negative error value
- * @retval #AUDIO_IO_ERROR_NONE Successful
- * @retval #AUDIO_IO_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #AUDIO_IO_ERROR_INVALID_OPERATION Invalid operation
- *
- * @post audio_io_interrupted_cb() will be invoked.
- * @see audio_out_unset_interrupted_cb()
- * @see audio_io_interrupted_cb()
- */
-int audio_out_set_interrupted_cb(audio_out_h output, audio_io_interrupted_cb callback, void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 3.0
- * @brief Unregisters the callback function.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] output The handle to the audio output
- * @return @c 0 on success,
- * otherwise a negative error value
- * @retval #AUDIO_IO_ERROR_NONE Successful
- * @retval #AUDIO_IO_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #AUDIO_IO_ERROR_INVALID_OPERATION Invalid operation
- *
- * @see audio_out_set_interrupted_cb()
- */
-int audio_out_unset_interrupted_cb(audio_out_h output) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 3.0
- * @brief Ignores session for output.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] output The handle to the audio output
- * @return @c 0 on success,
- * otherwise a negative error value
- * @retval #AUDIO_IO_ERROR_NONE Successful
- * @retval #AUDIO_IO_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #AUDIO_IO_ERROR_INVALID_OPERATION Invalid operation
- */
-int audio_out_ignore_session(audio_out_h output) TIZEN_DEPRECATED_API;
-
-/**
* @brief Sets an asynchronous(event) callback function to handle playing PCM (pulse-code modulation) data.
*
* @details @a callback will be called when you can write a PCM data.
*
* @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
*
- * @remarks @a output must be created using audio_out_create().
+ * @remarks @a output must be created using audio_out_create_new().
*
* @param[in] output An audio output handle
* @param[in] callback notify stream callback when user can write data (#audio_out_stream_cb)
#endif
int cpp_audio_in_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type, audio_in_h *input);
-int cpp_audio_in_create_loopback(int sample_rate, audio_channel_e channel, audio_sample_type_e type , audio_in_h* input);
int cpp_audio_in_destroy(audio_in_h input);
int cpp_audio_in_set_sound_stream_info(audio_in_h input, sound_stream_info_h stream_info);
int cpp_audio_in_prepare(audio_in_h input);
int cpp_audio_in_get_sample_rate(audio_in_h input, int *sample_rate);
int cpp_audio_in_get_channel(audio_in_h input, audio_channel_e *channel);
int cpp_audio_in_get_sample_type(audio_in_h input, audio_sample_type_e *type);
-int cpp_audio_in_set_interrupted_cb(audio_in_h input, audio_io_interrupted_cb callback, void *user_data);
-int cpp_audio_in_unset_interrupted_cb(audio_in_h input);
-int cpp_audio_in_ignore_session(audio_in_h input);
int cpp_audio_in_set_stream_cb(audio_in_h input, audio_in_stream_cb callback, void* user_data);
int cpp_audio_in_unset_stream_cb(audio_in_h input);
int cpp_audio_in_peek(audio_in_h input, const void **buffer, unsigned int *length);
int cpp_audio_in_unset_state_changed_cb(audio_in_h input);
-int cpp_audio_out_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type, sound_type_e sound_type, audio_out_h *output);
int cpp_audio_out_create_new(int sample_rate, audio_channel_e channel, audio_sample_type_e type, audio_out_h *output);
int cpp_audio_out_destroy(audio_out_h output);
int cpp_audio_out_set_sound_stream_info(audio_out_h output, sound_stream_info_h stream_info);
int cpp_audio_out_get_channel(audio_out_h output, audio_channel_e *channel);
int cpp_audio_out_get_sample_type(audio_out_h output, audio_sample_type_e *type);
int cpp_audio_out_get_sound_type(audio_out_h output, sound_type_e *type);
-int cpp_audio_out_set_interrupted_cb(audio_out_h output, audio_io_interrupted_cb callback, void *user_data);
-int cpp_audio_out_unset_interrupted_cb(audio_out_h output);
-int cpp_audio_out_ignore_session(audio_out_h output);
int cpp_audio_out_set_stream_cb(audio_out_h output, audio_out_stream_cb callback, void* user_data);
int cpp_audio_out_unset_stream_cb(audio_out_h output);
int cpp_audio_out_set_state_changed_cb(audio_out_h output, audio_in_state_changed_cb callback, void* user_data);
#endif
#define LOG_TAG "TIZEN_N_AUDIO_IO"
-#define DEPRECATED_WARN() do { \
- LOGW("DEPRECATION WARNING: %s() is deprecated and will be removed from next release.", __func__); \
-} while (0)
-
-#define DEPRECATED_WARN_INSTEAD(msg) do { \
- LOGW("DEPRECATION WARNING: %s() is deprecated and will be removed from next release. Use %s() instead.", __func__, msg); \
-} while (0)
-
int audio_in_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type , audio_in_h* input)
{
return cpp_audio_in_create(sample_rate, channel, type, input);
}
-int audio_in_create_loopback(int sample_rate, audio_channel_e channel, audio_sample_type_e type, audio_in_h* input)
-{
- DEPRECATED_WARN();
- return cpp_audio_in_create_loopback(sample_rate, channel, type, input);
-}
-
int audio_in_destroy(audio_in_h input)
{
return cpp_audio_in_destroy(input);
return cpp_audio_in_get_sample_type(input, type);
}
-int audio_in_set_interrupted_cb(audio_in_h input, audio_io_interrupted_cb callback, void *user_data)
-{
- DEPRECATED_WARN_INSTEAD("sound_manager_create_stream_information");
- return cpp_audio_in_set_interrupted_cb(input, callback, user_data);
-}
-
-int audio_in_unset_interrupted_cb(audio_in_h input)
-{
- DEPRECATED_WARN_INSTEAD("sound_manager_create_stream_information");
- return cpp_audio_in_unset_interrupted_cb(input);
-}
-
-int audio_in_ignore_session(audio_in_h input)
-{
- DEPRECATED_WARN();
- return cpp_audio_in_ignore_session(input);
-}
-
int audio_in_set_stream_cb(audio_in_h input, audio_in_stream_cb callback, void* user_data)
{
return cpp_audio_in_set_stream_cb(input, callback, user_data);
/* Audio Out */
-int audio_out_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type, sound_type_e sound_type, audio_out_h* output)
-{
- DEPRECATED_WARN_INSTEAD("audio_out_create_new");
- return cpp_audio_out_create(sample_rate, channel, type, sound_type, output);
-}
-
int audio_out_create_new(int sample_rate, audio_channel_e channel, audio_sample_type_e type, audio_out_h *output)
{
return cpp_audio_out_create_new(sample_rate, channel, type, output);
return cpp_audio_out_get_sound_type(output, type);
}
-int audio_out_set_interrupted_cb(audio_out_h output, audio_io_interrupted_cb callback, void *user_data)
-{
- DEPRECATED_WARN_INSTEAD("sound_manager_create_stream_information");
- return cpp_audio_out_set_interrupted_cb(output, callback, user_data);
-}
-
-int audio_out_unset_interrupted_cb(audio_out_h output)
-{
- DEPRECATED_WARN_INSTEAD("sound_manager_create_stream_information");
- return cpp_audio_out_unset_interrupted_cb(output);
-}
-
-int audio_out_ignore_session(audio_out_h output)
-{
- DEPRECATED_WARN();
- return cpp_audio_out_ignore_session(output);
-}
-
int audio_out_set_stream_cb(audio_out_h output, audio_out_stream_cb callback, void* user_data)
{
return cpp_audio_out_set_stream_cb(output, callback, user_data);