[0.6.106] fix state change error in case of gapless playback 47/222647/1 accepted/tizen/4.0/unified/20200120.103826 submit/tizen_4.0/20200117.043538
authorEunhye Choi <eunhae1.choi@samsung.com>
Fri, 17 Jan 2020 02:52:58 +0000 (11:52 +0900)
committerEunhye Choi <eunhae1.choi@samsung.com>
Fri, 17 Jan 2020 02:53:01 +0000 (11:53 +0900)
- state change should be done sink-to-source order
- cherry pick : cdc0c28e9bff5374a89b2b6ae120b2010b65abd3

Change-Id: If60093b54a6073784d2e93906d53142913b1c697

packaging/libmm-player.spec
src/mm_player_priv.c

index e42321c2a560ba9bf44fdc8f5812c608c0e7f939..3c69bebeb3ed5b3deef2bf8b4368021b64d8edc0 100644 (file)
@@ -1,6 +1,6 @@
 Name:       libmm-player
 Summary:    Multimedia Framework Player Library
-Version:    0.6.105
+Version:    0.6.106
 Release:    0
 Group:      Multimedia/Libraries
 License:    Apache-2.0
index 8670197c36a79e400ae17b6d8f82913da62cd1c1..b1bbecaf47fae44af0f71f2e4f79302791aa0b10 100644 (file)
@@ -11199,11 +11199,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\n");
-               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\n");
@@ -11216,6 +11211,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\n");
+               goto ERROR;
+       }
+
        player->gapless.stream_changed = TRUE;
        player->gapless.running = TRUE;
        MMPLAYER_FLEAVE();