From 6159817c95aa3cd633b14290833265f9d90bdce8 Mon Sep 17 00:00:00 2001 From: Jan Schmidt Date: Mon, 10 Sep 2012 18:44:56 -0700 Subject: [PATCH] videodecoder: Handle GAP events Drain out the decoder when encountering a gap. Needed for DVD 'still' sequences which consist of a single video frame, and a large gap while audio plays. --- gst-libs/gst/video/gstvideodecoder.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gst-libs/gst/video/gstvideodecoder.c b/gst-libs/gst/video/gstvideodecoder.c index 4032199..9c36507 100644 --- a/gst-libs/gst/video/gstvideodecoder.c +++ b/gst-libs/gst/video/gstvideodecoder.c @@ -960,6 +960,15 @@ gst_video_decoder_sink_event_default (GstVideoDecoder * decoder, forward_immediate = TRUE; break; } + case GST_EVENT_GAP: + { + GstFlowReturn flow_ret = GST_FLOW_OK; + + flow_ret = gst_video_decoder_drain_out (decoder, FALSE); + ret = (flow_ret == GST_FLOW_OK); + forward_immediate = TRUE; + break; + } case GST_EVENT_CUSTOM_DOWNSTREAM: { gboolean in_still; -- 2.7.4