From d5618cc4548b8dc83d29007d93d99f0bab0fa7c4 Mon Sep 17 00:00:00 2001 From: Eunhye Choi Date: Fri, 17 Jan 2020 11:22:31 +0900 Subject: [PATCH] [0.6.138] fix state change error in case of gapless playback - state change should be done sink-to-source order - cherry pick : cdc0c28e9bff5374a89b2b6ae120b2010b65abd3 Change-Id: Ia24e7186fe20fbe3e91e2349c5e8538221a6e20a --- packaging/libmm-player.spec | 2 +- src/mm_player_priv.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packaging/libmm-player.spec b/packaging/libmm-player.spec index ca25fff..cf42747 100644 --- a/packaging/libmm-player.spec +++ b/packaging/libmm-player.spec @@ -1,6 +1,6 @@ Name: libmm-player Summary: Multimedia Framework Player Library -Version: 0.6.137 +Version: 0.6.138 Release: 0 Group: Multimedia/Libraries License: Apache-2.0 diff --git a/src/mm_player_priv.c b/src/mm_player_priv.c index 6257088..5d518df 100644 --- a/src/mm_player_priv.c +++ b/src/mm_player_priv.c @@ -7561,11 +7561,6 @@ __mmplayer_activate_next_source(mm_player_t *player, GstState target) goto ERROR; } - if (gst_element_set_state(mainbin[MMPLAYER_M_SRC].gst, target) == GST_STATE_CHANGE_FAILURE) { - LOGE("Failed to change state of src element"); - goto ERROR; - } - if (!MMPLAYER_IS_HTTP_STREAMING(player)) { if (gst_element_set_state(mainbin[MMPLAYER_M_AUTOPLUG].gst, target) == GST_STATE_CHANGE_FAILURE) { LOGE("Failed to change state of decodebin"); @@ -7578,6 +7573,11 @@ __mmplayer_activate_next_source(mm_player_t *player, GstState target) } } + if (gst_element_set_state(mainbin[MMPLAYER_M_SRC].gst, target) == GST_STATE_CHANGE_FAILURE) { + LOGE("Failed to change state of src element"); + goto ERROR; + } + player->gapless.stream_changed = TRUE; player->gapless.running = TRUE; MMPLAYER_FLEAVE(); -- 2.34.1