From: Mark Nauwelaerts Date: Mon, 19 Dec 2011 16:38:18 +0000 (+0100) Subject: basetransform: do not delay sparse stream newsegment updates X-Git-Tag: RELEASE-0.11.2~16^2~32 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=78565da18b1d5219b81728a3f63974a4071ef46f;p=platform%2Fupstream%2Fgstreamer.git basetransform: do not delay sparse stream newsegment updates --- diff --git a/libs/gst/base/gstbasetransform.c b/libs/gst/base/gstbasetransform.c index 4408ef2..dfaa359 100644 --- a/libs/gst/base/gstbasetransform.c +++ b/libs/gst/base/gstbasetransform.c @@ -2220,6 +2220,19 @@ gst_base_transform_sink_event (GstPad * pad, GstEvent * event) } else { delay = GST_EVENT_IS_SERIALIZED (event) && !caps_set && GST_EVENT_TYPE (event) != GST_EVENT_EOS; + + /* do not stall sparse stream update newsegment events */ + if (delay && (GST_EVENT_TYPE (event) == GST_EVENT_NEWSEGMENT)) { + gboolean update; + + gst_event_parse_new_segment_full (event, &update, NULL, NULL, NULL, + NULL, NULL, NULL); + if (update) { + GST_DEBUG_OBJECT (trans, "update segment; triggering delayed events"); + delay = FALSE; + caps_set = TRUE; + } + } } if (delay) {