typedef void (*player_media_stream_seek_cb)(unsigned long long offset, void *user_data);
/**
+ * @brief Called to inform about the supported media format MIME type.
+ * @details The supported media format can vary depending on the device capabilities.
+ * @since_tizen 5.5
+ * @param[in] format The supportable media format MIME type
+ * @param[in] user_data The user data passed from the callback registration function
+ * @return @c true to continue with the next iteration of the loop, otherwise @c false to break out of the loop
+ * @see #media_format_mimetype_e
+ * @see player_audio_offload_foreach_supported_format()
+ */
+typedef bool (*player_supported_media_format_cb)(media_format_mimetype_e format, void *user_data);
+
+/**
* @}
*/
* To get the current audio latency mode, use player_get_audio_latency_mode().
* If it's high mode, audio output interval can be increased so, it can keep more audio data to play.
* But, state transition like pause or resume can be more slower than default(mid) mode.
- *
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION and
+ * this will not work at all even if it was called before enabling offload. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] latency_mode The latency mode to be applied to the audio
* @return @c 0 on success,
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @see #audio_latency_mode_e
* @see player_get_audio_latency_mode()
+ * @see player_audio_offload_set_enabled()
*/
int player_set_audio_latency_mode(player_h player, audio_latency_mode_e latency_mode);
/**
* @brief Gets the current audio latency mode.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[out] latency_mode The latency mode to get from the audio
* @return @c 0 on success,
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @see #audio_latency_mode_e
* @see player_set_audio_latency_mode()
+ * @see player_audio_offload_set_enabled()
*/
int player_get_audio_latency_mode(player_h player, audio_latency_mode_e *latency_mode);
* and it is available until it's destroyed by media_packet_destroy().\n
* The packet has to be destroyed as quickly as possible after rendering the data\n
* and all the packets have to be destroyed before player_unprepare() is called.\n
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION and
+ * this will not work at all even if it was called before enabling offload. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] format The media format handle about required audio PCM specification.
* This format has to include PCM MIME type, audio channel and sampling rate.
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @pre The player's state must be #PLAYER_STATE_IDLE.
* @see player_unset_media_packet_audio_frame_decoded_cb()
+ * @see player_audio_offload_set_enabled()
* @par Example
@code
#include <player.h>
/**
* @brief Gets the number of equalizer bands.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[out] count The number of equalizer bands
* @return @c 0 on success,
* otherwise a negative error value
* @retval #PLAYER_ERROR_NONE Successful
* @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation (Since 5.5)
* @see player_audio_effect_equalizer_is_available()
* @see player_audio_effect_set_equalizer_band_level()
* @see player_audio_effect_set_equalizer_all_bands()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_get_equalizer_bands_count(player_h player, int *count);
/**
* @brief Sets the gain set for the given equalizer band.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION and
+ * this will not work at all even if it was called before enabling offload. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] index The index of the equalizer band to be set
* @param[in] level The new gain in decibel that is set to the given band [dB]
* @see player_audio_effect_get_equalizer_level_range()
* @see player_audio_effect_get_equalizer_band_level()
* @see player_audio_effect_set_equalizer_all_bands()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_set_equalizer_band_level(player_h player, int index, int level);
/**
* @brief Gets the gain set for the given equalizer band.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] index The index of the requested equalizer band
* @param[out] level The gain in decibel of the given band [dB]
* otherwise a negative error value
* @retval #PLAYER_ERROR_NONE Successful
* @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation (Since 5.5)
* @see player_audio_effect_equalizer_is_available()
* @see player_audio_effect_set_equalizer_band_level()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_get_equalizer_band_level(player_h player, int index, int *level);
/**
* @brief Sets all bands of the equalizer.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION and
+ * this will not work at all even if it was called before enabling offload. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] band_levels The list of band levels to be set
* @param[in] length The length of the band level
* @see player_audio_effect_get_equalizer_bands_count()
* @see player_audio_effect_get_equalizer_level_range()
* @see player_audio_effect_set_equalizer_band_level()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_set_equalizer_all_bands(player_h player, int *band_levels, int length);
/**
* @brief Gets the valid band level range of the equalizer.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[out] min The minimum value to be set [dB]
* @param[out] max The maximum value to be set [dB]
* @see player_audio_effect_equalizer_is_available()
* @see player_audio_effect_set_equalizer_band_level()
* @see player_audio_effect_set_equalizer_all_bands()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_get_equalizer_level_range(player_h player, int *min, int *max);
/**
* @brief Gets the band frequency of the equalizer.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] index The index of the requested equalizer band
* @param[out] frequency The frequency of the given band [dB]
* otherwise a negative error value
* @retval #PLAYER_ERROR_NONE Successful
* @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation (Since 5.5)
* @see player_audio_effect_equalizer_is_available()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_get_equalizer_band_frequency(player_h player, int index, int *frequency);
/**
* @brief Gets the band frequency range of the equalizer.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] index The index of the requested equalizer band
* @param[out] range The frequency range of the given band [dB]
* otherwise a negative error value
* @retval #PLAYER_ERROR_NONE Successful
* @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation (Since 5.5)
* @see player_audio_effect_equalizer_is_available()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_get_equalizer_band_frequency_range(player_h player, int index, int *range);
/**
* @brief Clears the equalizer effect.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @return @c 0 on success,
* otherwise a negative error value
* @see player_audio_effect_equalizer_is_available()
* @see player_audio_effect_set_equalizer_band_level()
* @see player_audio_effect_set_equalizer_all_bands()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_equalizer_clear(player_h player);
/**
* @brief Checks whether the custom equalizer effect is available.
* @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[out] available If @c true the specified audio effect is available,
* otherwise @c false
* otherwise a negative error value
* @retval #PLAYER_ERROR_NONE Successful
* @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation (Since 5.5)
* @see player_audio_effect_set_equalizer_band_level()
* @see player_audio_effect_set_equalizer_all_bands()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_effect_equalizer_is_available(player_h player, bool *available);
* @remarks #PLAYER_ERROR_INVALID_OPERATION occurs when streaming playback.
* @remarks No operation is performed, if @a rate is @c 0.
* @remarks The sound is muted, when playback rate is under @c 0.0 and over @c 2.0.
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] rate The playback rate (-5.0x ~ 5.0x)
* @return @c 0 on success,
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @retval #PLAYER_ERROR_INVALID_STATE Invalid player state
* @pre The player state must be one of #PLAYER_STATE_READY, #PLAYER_STATE_PLAYING, or #PLAYER_STATE_PAUSED.
+ * @see player_audio_offload_set_enabled()
*/
int player_set_playback_rate(player_h player, float rate);
* @brief Gets current track index.
* @details Index starts from 0.
* @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] type The type of target stream which is #PLAYER_STREAM_TYPE_AUDIO or #PLAYER_STREAM_TYPE_TEXT
* @param[out] index The index of track
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @retval #PLAYER_ERROR_INVALID_STATE Invalid player state
* @pre The player state must be one of #PLAYER_STATE_READY, #PLAYER_STATE_PLAYING, or #PLAYER_STATE_PAUSED
+ * @see player_audio_offload_set_enabled()
*/
int player_get_current_track(player_h player, player_stream_type_e type, int *index);
* @brief Gets language code of a track.
* @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
* @remarks @a code must be released with @c free() by caller
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] type The type of target stream which is #PLAYER_STREAM_TYPE_AUDIO or #PLAYER_STREAM_TYPE_TEXT
* @param[in] index The index of track
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @retval #PLAYER_ERROR_INVALID_STATE Invalid player state
* @pre The player state must be one of #PLAYER_STATE_READY, #PLAYER_STATE_PLAYING, or #PLAYER_STATE_PAUSED
+ * @see player_audio_offload_set_enabled()
*/
int player_get_track_language_code(player_h player, player_stream_type_e type, int index, char **code);
/**
* @brief Gets the track count.
* @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] type The type of target stream which is #PLAYER_STREAM_TYPE_AUDIO or #PLAYER_STREAM_TYPE_TEXT
* @param[out] count The number of track
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @retval #PLAYER_ERROR_INVALID_STATE Invalid player state
* @pre The player state must be one of #PLAYER_STATE_READY, #PLAYER_STATE_PLAYING, or #PLAYER_STATE_PAUSED
+ * @see player_audio_offload_set_enabled()
*/
int player_get_track_count(player_h player, player_stream_type_e type, int *count);
/**
* @brief Selects a track to play.
* @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] type The type of target stream which is #PLAYER_STREAM_TYPE_AUDIO or #PLAYER_STREAM_TYPE_TEXT
* @param[in] index The index of track
* @retval #PLAYER_ERROR_INVALID_STATE Invalid player state
* @pre The player state must be one of #PLAYER_STATE_READY, #PLAYER_STATE_PLAYING, or #PLAYER_STATE_PAUSED
* @see player_get_current_track()
+ * @see player_audio_offload_set_enabled()
*/
int player_select_track(player_h player, player_stream_type_e type, int index);
* @details If the replaygain status is @c true, replaygain is applied (if contents has a replaygain tag).
* If it is @c false, the replaygain isn't affected by tag and properties.
* @since_tizen 5.0
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION and
+ * this will not work at all even if it was called before enabling offload. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] enabled The new replaygain status: (@c true = enable, @c false = disable)
* @return @c 0 on success,
* @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @see player_is_replaygain_enabled()
+ * @see player_audio_offload_set_enabled()
*/
int player_set_replaygain_enabled(player_h player, bool enabled);
/**
* @brief Gets the player's replaygain status.
* @since_tizen 5.0
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[out] enabled Pointer to store current replaygain status:
* (@c true = enabled replaygain,
* @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
* @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
* @see player_set_replaygain_enabled()
+ * @see player_audio_offload_set_enabled()
*/
int player_is_replaygain_enabled(player_h player, bool *enabled);
* @since_tizen 5.5
* @remarks This function is used for audio content only.
* @remarks Enabling pitch control could increase the CPU usage on some devices.
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION and
+ * this will not work at all even if it was called before enabling offload. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] enabled The new audio pitch control status (default: false)
* @return @c 0 on success,
* @see player_audio_pitch_is_enabled()
* @see player_audio_pitch_set_value()
* @see player_audio_pitch_get_value()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_pitch_set_enabled(player_h player, bool enabled);
* @brief Gets the status of controlling the pitch of audio.
* @since_tizen 5.5
* @remarks This function is used for audio content only.
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[out] enabled The audio pitch control status (default: false)
* @return @c 0 on success,
* @see player_audio_pitch_set_enabled()
* @see player_audio_pitch_set_value()
* @see player_audio_pitch_get_value()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_pitch_is_enabled(player_h player, bool *enabled);
* @brief Sets the pitch of audio.
* @since_tizen 5.5
* @remarks This function is used for audio content only.
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION and
+ * this will not work at all even if it was called before enabling offload. (Since 5.5)
* @param[in] player The handle to the media player
* @param[in] value The audio stream pitch value \n
* Valid range is 0.5~2. Default value is 1.
* @see player_audio_pitch_set_enabled()
* @see player_audio_pitch_is_enabled()
* @see player_audio_pitch_get_value()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_pitch_set_value(player_h player, float value);
* @brief Gets the pitch of audio.
* @since_tizen 5.5
* @remarks This function is used for audio content only.
+ * @remarks If audio offload is enabled by calling player_audio_offload_set_enabled(),
+ * this function will return #PLAYER_ERROR_INVALID_OPERATION. (Since 5.5)
* @param[in] player The handle to the media player
* @param[out] value The audio stream pitch value \n
* Valid range is 0.5~2. Default value is 1.
* @see player_audio_pitch_set_enabled()
* @see player_audio_pitch_is_enabled()
* @see player_audio_pitch_set_value()
+ * @see player_audio_offload_set_enabled()
*/
int player_audio_pitch_get_value(player_h player, float *value);
/**
+ * @brief Retrieves all supported media formats for audio offload.
+ * @details The supported media format can vary depending on the device capabilities.
+ * @since_tizen 5.5
+ * @remarks This function is related to the following feature:\n
+ * %http://tizen.org/feature/multimedia.player.audio_offload\n
+ * @param[in] player The handle to the media player
+ * @param[in] callback The iteration callback function
+ * @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 #PLAYER_ERROR_NONE Successful
+ * @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
+ * @retval #PLAYER_ERROR_FEATURE_NOT_SUPPORTED_ON_DEVICE Unsupported feature
+ * @see player_supported_media_format_cb()
+ * @see player_audio_offload_set_enabled()
+ * @see player_audio_offload_is_enabled()
+ * @see player_audio_offload_is_activated()
+ */
+int player_audio_offload_foreach_supported_format(player_h player, player_supported_media_format_cb callback, void *user_data);
+
+/**
+ * @brief Enables or disables the audio offload.
+ * @details The player lets the hardware decode and render the sound if the audio offload is enabled.
+ * This will reduce the power consumption, but will disable the ability to handle output PCM.
+ * Please check the remarks for a list of functions which will not work if offloading is enabled.
+ * @since_tizen 5.5
+ * @remarks This function is related to the following feature:\n
+ * %http://tizen.org/feature/multimedia.player.audio_offload\n
+ * The sound stream type of the player should be #SOUND_STREAM_TYPE_MEDIA.\n
+ * If audio offload is enabled, the following functions will return #PLAYER_ERROR_INVALID_OPERATION
+ * and they will not work at all even if they were called before enabling offload. :\n
+ * player_audio_effect_get_equalizer_bands_count()\n
+ * player_audio_effect_set_equalizer_band_level()\n
+ * player_audio_effect_get_equalizer_band_level()\n
+ * player_audio_effect_set_equalizer_all_bands()\n
+ * player_audio_effect_get_equalizer_level_range()\n
+ * player_audio_effect_get_equalizer_band_frequency()\n
+ * player_audio_effect_get_equalizer_band_frequency_range()\n
+ * player_audio_effect_equalizer_clear()\n
+ * player_audio_effect_equalizer_is_available()\n
+ * player_set_media_packet_audio_frame_decoded_cb()\n
+ * player_set_audio_latency_mode()\n
+ * player_get_audio_latency_mode()\n
+ * player_set_playback_rate()\n
+ * player_get_current_track()\n
+ * player_get_track_language_code()\n
+ * player_get_track_count()\n
+ * player_select_track()\n
+ * player_set_replaygain_enabled()\n
+ * player_is_replaygain_enabled()\n
+ * player_audio_pitch_set_enabled()\n
+ * player_audio_pitch_is_enabled()\n
+ * player_audio_pitch_set_value()\n
+ * player_audio_pitch_get_value()\n
+ * @param[in] player The handle to the media player
+ * @param[in] enabled The new audio offload status (default: false)
+ * @return @c 0 on success,
+ * otherwise a negative error value
+ * @retval #PLAYER_ERROR_NONE Successful
+ * @retval #PLAYER_ERROR_INVALID_STATE Invalid player state
+ * @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
+ * @retval #PLAYER_ERROR_FEATURE_NOT_SUPPORTED_ON_DEVICE Unsupported feature
+ * @pre The player state must be #PLAYER_STATE_IDLE.
+ * @see player_set_sound_stream_info()
+ * @see player_set_interrupted_cb()
+ * @see player_audio_offload_foreach_supported_format()
+ * @see player_audio_offload_is_enabled()
+ * @see player_audio_offload_is_activated()
+ */
+int player_audio_offload_set_enabled(player_h player, bool enabled);
+
+/**
+ * @brief Gets the enabling status of audio offload.
+ * @since_tizen 5.5
+ * @remarks This function is related to the following feature:\n
+ * %http://tizen.org/feature/multimedia.player.audio_offload\n
+ * @param[in] player The handle to the media player
+ * @param[out] enabled The enabling status (default: false)
+ * @return @c 0 on success,
+ * otherwise a negative error value
+ * @retval #PLAYER_ERROR_NONE Successful
+ * @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
+ * @retval #PLAYER_ERROR_FEATURE_NOT_SUPPORTED_ON_DEVICE Unsupported feature
+ * @see player_audio_offload_foreach_supported_format()
+ * @see player_audio_offload_set_enabled()
+ * @see player_audio_offload_is_activated()
+ */
+int player_audio_offload_is_enabled(player_h player, bool *enabled);
+
+/**
+ * @brief Gets the activation status of audio offload.
+ * @details Audio offload could be inactivated depending on the
+ * audio device capability even if the audio offload feature is supported.
+ * @since_tizen 5.5
+ * @remarks This function is related to the following feature:\n
+ * %http://tizen.org/feature/multimedia.player.audio_offload\n
+ * @param[in] player The handle to the media player
+ * @param[out] activated The activation status
+ * @return @c 0 on success,
+ * otherwise a negative error value
+ * @retval #PLAYER_ERROR_NONE Successful
+ * @retval #PLAYER_ERROR_INVALID_STATE Invalid state
+ * @retval #PLAYER_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #PLAYER_ERROR_INVALID_OPERATION Invalid operation
+ * @retval #PLAYER_ERROR_FEATURE_NOT_SUPPORTED_ON_DEVICE Unsupported feature
+ * @pre The player state must be one of #PLAYER_STATE_READY, #PLAYER_STATE_PLAYING, or #PLAYER_STATE_PAUSED
+ * @see player_audio_offload_foreach_supported_format()
+ * @see player_audio_offload_set_enabled()
+ * @see player_audio_offload_is_enabled()
+ */
+int player_audio_offload_is_activated(player_h player, bool *activated);
+
+/**
* @}
*/