From cdc0c28e9bff5374a89b2b6ae120b2010b65abd3 Mon Sep 17 00:00:00 2001 From: Eunhye Choi Date: Thu, 16 Jan 2020 21:00:51 +0900 Subject: [PATCH] [0.6.214] fix state change error in case of gapless playback - state change should be done sink-to-source order Change-Id: Ib9c1ace0fbfb052c992c79cb5c3c91b01ad93572 --- packaging/libmm-player.spec | 2 +- src/mm_player_gst.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packaging/libmm-player.spec b/packaging/libmm-player.spec index 27b0e4d..c6775d6 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.213 +Version: 0.6.214 Release: 0 Group: Multimedia/Libraries License: Apache-2.0 diff --git a/src/mm_player_gst.c b/src/mm_player_gst.c index 8d05b1b..d5c39df 100644 --- a/src/mm_player_gst.c +++ b/src/mm_player_gst.c @@ -4027,11 +4027,6 @@ _mmplayer_activate_next_source(mmplayer_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"); @@ -4044,6 +4039,11 @@ _mmplayer_activate_next_source(mmplayer_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.7.4