From: Eunhye Choi Date: Thu, 24 Mar 2022 05:49:22 +0000 (+0900) Subject: [0.6.254] fix crash during gapless playback X-Git-Tag: submit/tizen_6.0/20220324.075930^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=01eb2190e88ee0d8fde1553fcd1597fbfc1aec72;p=platform%2Fcore%2Fmultimedia%2Flibmm-player.git [0.6.254] fix crash during gapless playback - uridecodebin includes all the elements except concat and sinkbin Change-Id: Idbedaafb131ef99028e3095c33fef98572eeea2c --- diff --git a/packaging/libmm-player.spec b/packaging/libmm-player.spec index 03fc1c1..9e5fbe0 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.253 +Version: 0.6.254 Release: 0 Group: Multimedia/Libraries License: Apache-2.0 diff --git a/src/include/mm_player_priv.h b/src/include/mm_player_priv.h index ebb3f87..4d9df97 100644 --- a/src/include/mm_player_priv.h +++ b/src/include/mm_player_priv.h @@ -177,7 +177,6 @@ typedef enum { /* streaming plugin */ MMPLAYER_M_MUXED_S_BUFFER, MMPLAYER_M_DEMUXED_S_BUFFER, - MMPLAYER_M_ID3DEMUX, MMPLAYER_M_ADAPTIVE_DEMUX, /* es buff src queue */ diff --git a/src/mm_player_priv.c b/src/mm_player_priv.c index 374d4b3..f881559 100644 --- a/src/mm_player_priv.c +++ b/src/mm_player_priv.c @@ -744,11 +744,17 @@ __mmplayer_gapless_play_thread(gpointer data) mainbin = player->pipeline->mainbin; - MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_MUXED_S_BUFFER); - MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_ID3DEMUX); - MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_AUTOPLUG); - MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_TYPEFIND); - MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_SRC); + if (MMPLAYER_USE_DECODEBIN(player)) { + MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_MUXED_S_BUFFER); + MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_AUTOPLUG); /* decodebin */ + MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_TYPEFIND); + MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_SRC); + } else { + MMPLAYER_RELEASE_ELEMENT(player, mainbin, MMPLAYER_M_AUTOPLUG); /* uridecodebin */ + mainbin[MMPLAYER_M_MUXED_S_BUFFER].gst = NULL; + mainbin[MMPLAYER_M_TYPEFIND].gst = NULL; + mainbin[MMPLAYER_M_SRC].gst = NULL; + } /* Initialize Player values */ __mmplayer_initialize_gapless_play(player);