Seperate flush event and flush buffer
authorSejun Park <sejun79.park@samsung.com>
Tue, 25 Jul 2017 02:54:14 +0000 (11:54 +0900)
committerSejun Park <sejun79.park@samsung.com>
Tue, 25 Jul 2017 05:55:43 +0000 (14:55 +0900)
Change-Id: I479bf53cb5b642b5f068a5466f62b6f93e6fb82e

gst-libs/gst/video/gstvideodecoder.c

index f8a5869..ed79d25 100644 (file)
@@ -1385,11 +1385,10 @@ gst_video_decoder_sink_event_default (GstVideoDecoder * decoder,
       GST_VIDEO_DECODER_STREAM_UNLOCK (decoder);
       break;
     }
-    case GST_EVENT_FLUSH_STOP:
+#ifdef TIZEN_FEATURE_VIDEO_MODIFICATION
+    case GST_EVENT_FLUSH_START:
     {
       GList *l;
-
-      GST_VIDEO_DECODER_STREAM_LOCK (decoder);
       for (l = priv->frames; l; l = l->next) {
         GstVideoCodecFrame *frame = l->data;
 
@@ -1397,6 +1396,13 @@ gst_video_decoder_sink_event_default (GstVideoDecoder * decoder,
       }
       priv->current_frame_events = _flush_events (decoder->srcpad,
           decoder->priv->current_frame_events);
+      break;
+    }
+#endif
+    case GST_EVENT_FLUSH_STOP:
+    {
+
+      GST_VIDEO_DECODER_STREAM_LOCK (decoder);
 
       /* well, this is kind of worse than a DISCONT */
       gst_video_decoder_flush (decoder, TRUE);