matroskademux: Don't skip all video frames until the first keyframe
authorSebastian Dröge <sebastian@centricular.com>
Wed, 15 Jan 2014 21:47:12 +0000 (22:47 +0100)
committerSebastian Dröge <sebastian@centricular.com>
Wed, 15 Jan 2014 21:49:58 +0000 (22:49 +0100)
Instead do it like all other demuxers and let parsers and decoders
handle that. The keyframe information inside the container might
be completely wrong like in the sample file of the bug report,
and if it is correct and we push no keyframes, then the parsers
and decoders will handle that properly anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=682276

gst/matroska/matroska-demux.c

index 7e39813..72e5335 100644 (file)
@@ -3522,13 +3522,6 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux,
       }
     }
 
-    if (delta_unit && stream->set_discont) {
-      /* When doing seeks or such, we need to restart on key frames or
-       * decoders might choke. */
-      GST_DEBUG_OBJECT (demux, "skipping delta unit");
-      goto done;
-    }
-
     for (n = 0; n < laces; n++) {
       GstBuffer *sub;