Send trick rate info when playback rate is changed. 01/137101/1
authorJaechan Lee <jaechan3.lee@samsung.com>
Mon, 3 Jul 2017 07:14:14 +0000 (16:14 +0900)
committereunhae choi <eunhae1.choi@samsung.com>
Tue, 4 Jul 2017 10:29:21 +0000 (10:29 +0000)
[Model] SM-Z400F
[BinType] AP
[Customer] OPEN

[Issue#] N/A
[Request] N/A
[Occurrence Version] N/A

[Problem] Although player_set_playback_rate() is getting called, there is no effect in case of external subtitle.
[Cause & Measure] Cause : Changed trick rate info doesn't send to external subtitle pipeline.
Measure : Send the info to external subtitle pipeline.
[Checking Method] player_test > call player_set_playback_rate()

[Team] MM FRAMEWORK
[Developer] JaeChan Lee
[Solution company] Samsung
[Change Type] Specification change

Change-Id: Id63f500cfc5d885895b22e07e887abda879b799f
(cherry picked from commit c14f1d490cda026170e6388ca58b4f8d6d079f93)

src/mm_player_priv.c

index 5f23669..1e8ebe2 100644 (file)
@@ -9939,7 +9939,6 @@ _mmplayer_set_playspeed(MMHandleType hplayer, float rate, bool streaming)
                pos_msec = player->last_position;
        }
 
-
        if (rate >= 0) {
                start = pos_msec;
                stop = GST_CLOCK_TIME_NONE;
@@ -9947,12 +9946,13 @@ _mmplayer_set_playspeed(MMHandleType hplayer, float rate, bool streaming)
                start = GST_CLOCK_TIME_NONE;
                stop = pos_msec;
        }
-       if ((!gst_element_seek(player->pipeline->mainbin[MMPLAYER_M_PIPE].gst,
-                               rate,
+
+       if (!__gst_seek(player, player->pipeline->mainbin[MMPLAYER_M_PIPE].gst,
+                               player->playback_rate,
                                GST_FORMAT_TIME,
                                (GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_ACCURATE),
                                GST_SEEK_TYPE_SET, start,
-                               GST_SEEK_TYPE_SET, stop))) {
+                               GST_SEEK_TYPE_SET, stop)) {
                LOGE("failed to set speed playback\n");
                return MM_ERROR_PLAYER_SEEK;
        }