return NULL;
}
+static int __lplayer_audio_offload_is_enabled(legacy_player_h player, int *enabled)
+{
+ int ret = MM_ERROR_NONE;
+ legacy_player_t *handle = (legacy_player_t *)player;
+
+ ret = mm_player_get_attribute(handle->mm_handle, NULL, MM_PLAYER_AUDIO_OFFLOAD, enabled, (char *)NULL);
+ if (ret != MM_ERROR_NONE) {
+ LOGE("failed to get offload status");
+ return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
+ }
+
+ LOGD("offload enabled : %d", *enabled);
+ return PLAYER_ERROR_NONE;
+}
+
/*
* Public Implementation
*/
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_set_attribute(handle->mm_handle, NULL, "sound_latency_mode", latency_mode, (char *)NULL);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(latency_mode);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_get_attribute(handle->mm_handle, NULL, "sound_latency_mode", latency_mode, (char *)NULL);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
LOGI("<ENTER: rate %0.1f>", rate);
PLAYER_INSTANCE_CHECK(player);
PLAYER_CHECK_CONDITION(rate >= -5.0 && rate <= 5.0, PLAYER_ERROR_INVALID_PARAMETER, "PLAYER_ERROR_INVALID_PARAMETER");
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_READY)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(count);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_audio_effect_custom_get_eq_bands_number(handle->mm_handle, count);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(band_levels);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_audio_effect_custom_set_level_eq_from_list(handle->mm_handle, band_levels, length);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_audio_effect_custom_set_level(handle->mm_handle, MM_AUDIO_EFFECT_CUSTOM_EQ, index, level);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(level);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_audio_effect_custom_get_level(handle->mm_handle, MM_AUDIO_EFFECT_CUSTOM_EQ, index, level);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
- PLAYER_NULL_ARG_CHECK(min);
- PLAYER_NULL_ARG_CHECK(max);
+ PLAYER_NULL_ARG_CHECK(min && max);
+
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
ret = mm_player_audio_effect_custom_get_level_range(handle->mm_handle, MM_AUDIO_EFFECT_CUSTOM_EQ, min, max);
if (ret != MM_ERROR_NONE)
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(frequency);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_audio_effect_custom_get_eq_bands_freq(handle->mm_handle, index, frequency);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(range);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_audio_effect_custom_get_eq_bands_width(handle->mm_handle, index, range);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
ret = mm_player_audio_effect_custom_clear_eq_all(handle->mm_handle);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(available);
+
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_IDLE)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ const char *audio_pcm_format = __lplayer_convert_audio_pcm_mime_to_str(mimetype);
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(callback);
- PLAYER_STATE_CHECK(handle, PLAYER_STATE_IDLE);
- const char *audio_pcm_format = __lplayer_convert_audio_pcm_mime_to_str(mimetype);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
+ PLAYER_STATE_CHECK(handle, PLAYER_STATE_IDLE);
if (audio_pcm_format && (samplerate > 0) && (channel > 0)) {
ret = mm_player_set_attribute(handle->mm_handle, NULL, MM_PLAYER_PCM_EXT_FORMAT, audio_pcm_format, strlen(audio_pcm_format), NULL);
media_format_type_e format_type = MEDIA_FORMAT_NONE;
media_format_mimetype_e mimetype = MEDIA_FORMAT_MAX;
- media_format_get_type(format, &format_type);
+ if (media_format_get_type(format, &format_type) != MEDIA_FORMAT_ERROR_NONE) {
+ LOGE("failed to get format type");
+ return PLAYER_ERROR_INVALID_OPERATION;
+ }
if (format_type == MEDIA_FORMAT_AUDIO) {
if (media_format_get_audio_info(format, &mimetype,
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
mmplayer_track_type_e track_type = 0;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(count);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_READY)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
mmplayer_track_type_e track_type = 0;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(index);
+
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_READY)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
mmplayer_track_type_e track_type = 0;
+ int enabled = 0;
LPLAYER_FENTER();
PLAYER_INSTANCE_CHECK(player);
PLAYER_CHECK_CONDITION(index >= 0, PLAYER_ERROR_INVALID_PARAMETER, "PLAYER_ERROR_INVALID_PARAMETER");
+
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_READY)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
mmplayer_track_type_e track_type = 0;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
- PLAYER_NULL_ARG_CHECK(code);
- PLAYER_NULL_ARG_CHECK(len);
+ PLAYER_NULL_ARG_CHECK(code && len);
+
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_READY)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
if (strncmp(stream_type, "media", strlen("media"))) {
int enabled = 0;
- ret = mm_player_get_attribute(handle->mm_handle, NULL, MM_PLAYER_AUDIO_OFFLOAD, &enabled, (char *)NULL);
- if (ret != MM_ERROR_NONE)
- return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
+ if (__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ return PLAYER_ERROR_INVALID_OPERATION;
if (enabled) {
LOGW("audio offload will be disabled to support sound stream type: %s", stream_type);
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int offload_enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
+ if ((__lplayer_audio_offload_is_enabled(player, &offload_enabled) != PLAYER_ERROR_NONE)
+ || (offload_enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_IDLE)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
- bool _enable;
+ bool replaygain_enabled = false;
+ int offload_enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(enabled);
+ if ((__lplayer_audio_offload_is_enabled(player, &offload_enabled) != PLAYER_ERROR_NONE)
+ || (offload_enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_IDLE)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
}
- ret = mm_player_is_replaygain_enabled(handle->mm_handle, &_enable);
+ ret = mm_player_is_replaygain_enabled(handle->mm_handle, &replaygain_enabled);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
- *enabled = _enable;
+ *enabled = replaygain_enabled;
return PLAYER_ERROR_NONE;
}
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
+ int offload_enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
+
+ if ((__lplayer_audio_offload_is_enabled(player, &offload_enabled) != PLAYER_ERROR_NONE)
+ || (offload_enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
PLAYER_STATE_CHECK(handle, PLAYER_STATE_IDLE);
LOGD("set pitch control %d", enabled);
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
int val = 0;
+ int offload_enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(enabled);
+ if ((__lplayer_audio_offload_is_enabled(player, &offload_enabled) != PLAYER_ERROR_NONE)
+ || (offload_enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_IDLE)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
{
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
- int is_enabled = 0;
+ int pitch_enabled = 0;
+ int offload_enabled = 0;
PLAYER_INSTANCE_CHECK(player);
+ if ((__lplayer_audio_offload_is_enabled(player, &offload_enabled) != PLAYER_ERROR_NONE)
+ || (offload_enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_IDLE)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;
}
- ret = mm_player_get_attribute(handle->mm_handle, NULL, MM_PLAYER_PITCH_CONTROL, &is_enabled, (char *)NULL);
+ ret = mm_player_get_attribute(handle->mm_handle, NULL, MM_PLAYER_PITCH_CONTROL, &pitch_enabled, (char *)NULL);
if (ret != MM_ERROR_NONE)
return _lplayer_convert_error_code(ret, (char *)__FUNCTION__);
- if (!is_enabled) {
+ if (!pitch_enabled) {
LOGE("pitch is not enabled");
return PLAYER_ERROR_INVALID_OPERATION;
}
legacy_player_t *handle = (legacy_player_t *)player;
int ret = MM_ERROR_NONE;
double value = 0.0;
+ int enabled = 0;
+
PLAYER_INSTANCE_CHECK(player);
PLAYER_NULL_ARG_CHECK(pitch);
+ if ((__lplayer_audio_offload_is_enabled(player, &enabled) != PLAYER_ERROR_NONE)
+ || (enabled))
+ return PLAYER_ERROR_INVALID_OPERATION;
+
if (!_lplayer_state_validate(handle, PLAYER_STATE_IDLE)) {
LOGE("PLAYER_ERROR_INVALID_STATE : current state - %d", handle->state);
return PLAYER_ERROR_INVALID_STATE;