From b34204a54b901eddc700a7a039cce46d10f8f18c Mon Sep 17 00:00:00 2001 From: Zaheer Merali Date: Wed, 28 Jan 2009 12:27:42 +0000 Subject: Revert "mpegdemux: do not skip pes packets that we think are encrypted" This reverts commit d3e4e5598f6c3db444d0014597d383ed35a02998. --- gst/mpegdemux/gstpesfilter.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'gst') diff --git a/gst/mpegdemux/gstpesfilter.c b/gst/mpegdemux/gstpesfilter.c index 348f75c9..8a2ee284 100644 --- a/gst/mpegdemux/gstpesfilter.c +++ b/gst/mpegdemux/gstpesfilter.c @@ -287,7 +287,7 @@ gst_pes_filter_parse (GstPESFilter * filter) /* check PES scrambling control */ if ((flags & 0x30) != 0) - GST_DEBUG ("PES scrambling control: %x", (flags >> 4) & 0x3); + goto encrypted; /* 2: PTS_DTS_flags * 1: ESCR_flag @@ -466,7 +466,7 @@ need_more_data: ret = GST_FLOW_NEED_MORE_DATA; } } else { - GST_DEBG ("unbounded need more data %d", + GST_DEBUG ("unbounded need more data %d", gst_adapter_available (filter->adapter)); ret = GST_FLOW_NEED_MORE_DATA; } @@ -479,6 +479,17 @@ skip: gst_adapter_flush (filter->adapter, avail); ADAPTER_OFFSET_FLUSH (avail); + filter->length -= avail - 6; + if (filter->length > 0 || filter->unbounded_packet) + filter->state = STATE_DATA_SKIP; + return GST_FLOW_OK; + } +encrypted: + { + GST_DEBUG ("skipping encrypted 0x%02x", filter->id); + gst_adapter_flush (filter->adapter, avail); + ADAPTER_OFFSET_FLUSH (avail); + filter->length -= avail - 6; if (filter->length > 0 || filter->unbounded_packet) filter->state = STATE_DATA_SKIP; -- cgit v1.2.1