diff options
author | Jesper Larsen <knorr.jesper@gmail.com> | 2014-09-29 10:01:27 +0200 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2014-10-14 09:26:35 +0200 |
commit | 3b149ae7aa36cc989f1ef289d75b7486d93bf425 (patch) | |
tree | 52d16c480f272f4226f1ea05a76dbdc993a87d01 /gst | |
parent | ffbeddcc24b084001da0b4d04378b87e453f48eb (diff) |
tsdemux: do not discard on discont if PES start
If a discontinuity in the stream is detected, data is discarded until
a new PES starts. If the first packet after the discontinuity is also
the start of a PES, there is no reason to discard the packets.
https://bugzilla.gnome.org/show_bug.cgi?id=737569
Diffstat (limited to 'gst')
-rw-r--r-- | gst/mpegtsdemux/tsdemux.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gst/mpegtsdemux/tsdemux.c b/gst/mpegtsdemux/tsdemux.c index 297f375c9..9b2debbb9 100644 --- a/gst/mpegtsdemux/tsdemux.c +++ b/gst/mpegtsdemux/tsdemux.c @@ -1850,7 +1850,8 @@ gst_ts_demux_queue_data (GstTSDemux * demux, TSDemuxStream * stream, } else { GST_WARNING ("CONTINUITY: Mismatch packet %d, stream %d", cc, stream->continuity_counter); - stream->state = PENDING_PACKET_DISCONT; + if (stream->state != PENDING_PACKET_EMPTY) + stream->state = PENDING_PACKET_DISCONT; } stream->continuity_counter = cc; |