videodecoder: Try to be smarter when clipping buffers without duration/framerate...
authorSebastian Dröge <sebastian@centricular.com>
Wed, 6 May 2015 10:40:48 +0000 (12:40 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Wed, 6 May 2015 10:42:33 +0000 (12:42 +0200)
commit21b57412514be5e8b23c0fa933272c6daaabcb8e
tree0314f4295ed47bbf041ef08f06336f7cef448e36
parentca100d117cc5d3c9ed49a28cb1d7696ca50f42f8
videodecoder: Try to be smarter when clipping buffers without duration/framerate to the segment

2 second frame duration is rather unlikely... but if we don't clip
away buffers that far before the segment we can cause the pipeline to
lockup. This can happen if audio is properly clipped, and thus the
audio sink does not preroll yet but the video sink prerolls because
we already outputted a buffer here... and then queues run full.

In the worst case we will clip one buffer too many here now if no
framerate is given, no buffer duration is given and the actual
framerate is less than 0.5fps.

Fixes seeking on HLS/DASH streams, when seeking into the middle of
fragments and having no framerate/buffer duration.
gst-libs/gst/video/gstvideodecoder.c