diff options
author | Edward Hervey <bilboed@bilboed.com> | 2010-06-23 11:05:11 +0200 |
---|---|---|
committer | Edward Hervey <bilboed@bilboed.com> | 2010-06-23 11:06:54 +0200 |
commit | 5ac4ea3f1b77655effba2346bfcaef8f13e7a120 (patch) | |
tree | ab0371decbcc8b0077846a7504626faf60365f11 | |
parent | 49f1373f1b00242badb61f871caffd4e9c397610 (diff) |
asfdemux: Allow at least 500ms of preroll.
Some files have insanely low preroll values which break the
all_streams_prerolled() logic.
Fixes #622407
-rw-r--r-- | gst/asfdemux/gstasfdemux.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gst/asfdemux/gstasfdemux.c b/gst/asfdemux/gstasfdemux.c index 174db455..2e86a43d 100644 --- a/gst/asfdemux/gstasfdemux.c +++ b/gst/asfdemux/gstasfdemux.c @@ -1112,7 +1112,8 @@ all_streams_prerolled (GstASFDemux * demux) GstClockTime preroll_time; guint i, num_no_data = 0; - preroll_time = demux->preroll; + /* Allow at least 500ms of preroll_time */ + preroll_time = MAX(demux->preroll, 500 * GST_MSECOND); /* returns TRUE as long as there isn't a stream which (a) has data queued * and (b) the timestamp of last piece of data queued is < demux->preroll |