From: Gilbok Lee Date: Fri, 22 Nov 2024 07:39:57 +0000 (+0900) Subject: [1.1.3] Set async property to FALSE in text sink when pausing a state change X-Git-Tag: accepted/tizen/9.0/unified/20241203.163324^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=aa6d73d0745b301f7539952053899c728b3100b1;p=platform%2Fcore%2Fmultimedia%2Flibmm-player.git [1.1.3] Set async property to FALSE in text sink when pausing a state change - In contents with internal subtitles, if there is a large gap between subtitles, state change failed because subtitle data was not received - If the external subtitle is set before prepare, it will be reset to FALSE and there will be a synchronizationissue during seek Change-Id: I7403d70a3c364732bb567c65ba45e60193760ab5 (cherry picked from commit 0d78d298f553060b8e3268a4b0d6473bef96f055) --- diff --git a/packaging/libmm-player.spec b/packaging/libmm-player.spec index a168908..6381639 100644 --- a/packaging/libmm-player.spec +++ b/packaging/libmm-player.spec @@ -1,6 +1,6 @@ Name: libmm-player Summary: Multimedia Framework Player Library -Version: 1.1.2 +Version: 1.1.3 Release: 0 Group: Multimedia/Libraries License: Apache-2.0 diff --git a/src/mm_player_gst.c b/src/mm_player_gst.c index f74b031..757895a 100644 --- a/src/mm_player_gst.c +++ b/src/mm_player_gst.c @@ -3663,9 +3663,15 @@ _mmplayer_gst_pause(mmplayer_t *player, gboolean async) MMPLAYER_PRINT_STATE(player); /* set pipeline status to PAUSED */ + if (player->pipeline->textbin) + __mmplayer_gst_set_async(player, FALSE, MMPLAYER_TEXT_SINK); + ret = _mmplayer_gst_set_state(player, player->pipeline->mainbin[MMPLAYER_M_PIPE].gst, GST_STATE_PAUSED, async, MMPLAYER_STATE_CHANGE_TIMEOUT(player)); + if (player->pipeline->textbin) + __mmplayer_gst_set_async(player, TRUE, MMPLAYER_TEXT_SINK); + if (async) goto EXIT; diff --git a/src/mm_player_priv.c b/src/mm_player_priv.c index f465103..3068e47 100644 --- a/src/mm_player_priv.c +++ b/src/mm_player_priv.c @@ -5097,7 +5097,6 @@ _mmplayer_realize(MMHandleType hplayer) player->videodec_linked = 0; player->audiodec_linked = 0; player->textsink_linked = 0; - player->is_external_subtitle_present = FALSE; player->is_external_subtitle_added_now = FALSE; player->is_subtitle_off = FALSE; /* set the subtitle ON default */ player->video360_metadata.is_spherical = -1;