gst/extend/discoverer.py: Make the queue buffer up 1s of data before outputting to...
authorEdward Hervey <bilboed@bilboed.com>
Tue, 7 Nov 2006 12:24:13 +0000 (12:24 +0000)
committerEdward Hervey <bilboed@bilboed.com>
Tue, 7 Nov 2006 12:24:13 +0000 (12:24 +0000)
Original commit message from CVS:
* gst/extend/discoverer.py: Make the queue buffer up 1s of data before
outputting to the sinks. This should give time for some demuxers like
mpegdemux or fluasfdemux to discover a bit more about the muxed
stream and add the correct pads.
Fixes #371969

ChangeLog
gst/extend/discoverer.py

index 655d40e..854c1a2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2006-11-07  Edward Hervey  <edward@fluendo.com>
+
+       * gst/extend/discoverer.py: Make the queue buffer up 1s of data before
+       outputting to the sinks. This should give time for some demuxers like
+       mpegdemux or fluasfdemux to discover a bit more about the muxed
+       stream and add the correct pads.
+       Fixes #371969
+
 2006-11-07  Andy Wingo  <wingo@pobox.com>
 
        * examples/Makefile.am (examples_DATA): 
index 85dda7f..a061a5d 100644 (file)
@@ -292,6 +292,14 @@ class Discoverer(gst.Pipeline):
         pad.info("adding queue->fakesink")
         fakesink = gst.element_factory_make("fakesink")
         queue = gst.element_factory_make("queue")
+        # we want the queue to buffer up to 2 seconds of data before outputting
+        # This enables us to cope with formats that don't create their source
+        # pads straight away, but instead wait for the first buffer of that
+        # stream.
+        queue.props.min_threshold_time = 1 * gst.SECOND
+        queue.props.max_size_time = 2 * gst.SECOND
+        queue.props.max_size_buffers = 0
+        queue.props.max_size_bytes = 0
         self.add(fakesink, queue)
         queue.link(fakesink)
         sinkpad = fakesink.get_pad("sink")