From ec309dbd64e696d7ecffccdb87d6d0bd6570eb67 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tim-Philipp=20M=C3=BCller?= Date: Fri, 10 Jul 2015 01:00:15 +0100 Subject: [PATCH] mpegtsmux: don't wait for data on sparse inputs like metadata or subtitle streams --- gst/mpegtsmux/mpegtsmux.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/gst/mpegtsmux/mpegtsmux.c b/gst/mpegtsmux/mpegtsmux.c index 74ea142..4cc4a03 100644 --- a/gst/mpegtsmux/mpegtsmux.c +++ b/gst/mpegtsmux/mpegtsmux.c @@ -882,6 +882,19 @@ mpegtsmux_sink_event (GstCollectPads * pads, GstCollectData * data, forward = gst_tag_list_get_scope (list) == GST_TAG_SCOPE_GLOBAL; break; } + case GST_EVENT_STREAM_START:{ + GstStreamFlags flags; + + gst_event_parse_stream_flags (event, &flags); + + /* Don't wait for data on sparse inputs like metadata streams */ + if ((flags & GST_STREAM_FLAG_SPARSE)) { + GST_COLLECT_PADS_STATE_UNSET (data, GST_COLLECT_PADS_STATE_LOCKED); + gst_collect_pads_set_waiting (pads, data, FALSE); + GST_COLLECT_PADS_STATE_SET (data, GST_COLLECT_PADS_STATE_LOCKED); + } + break; + } default: break; } -- 2.7.4