From d3e4e5598f6c3db444d0014597d383ed35a02998 Mon Sep 17 00:00:00 2001 From: Josep Torra Date: Wed, 28 Jan 2009 12:06:49 +0000 Subject: [PATCH] mpegdemux: do not skip pes packets that we think are encrypted pes packets that claim to be encrypted may not be so, so treat as normal. Just log the flags. --- common | 2 +- gst/mpegdemux/gstpesfilter.c | 15 ++------------- 2 files changed, 3 insertions(+), 14 deletions(-) diff --git a/common b/common index 3f4e997460..5dc8ae3027 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit 3f4e9974603807e7615c3a6b8821542abce0be19 +Subproject commit 5dc8ae302733ce1aae5b1aaa613ce77a8ae4b3d9 diff --git a/gst/mpegdemux/gstpesfilter.c b/gst/mpegdemux/gstpesfilter.c index 8a2ee2842a..348f75c997 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) - goto encrypted; + GST_DEBUG ("PES scrambling control: %x", (flags >> 4) & 0x3); /* 2: PTS_DTS_flags * 1: ESCR_flag @@ -466,7 +466,7 @@ need_more_data: ret = GST_FLOW_NEED_MORE_DATA; } } else { - GST_DEBUG ("unbounded need more data %d", + GST_DEBG ("unbounded need more data %d", gst_adapter_available (filter->adapter)); ret = GST_FLOW_NEED_MORE_DATA; } @@ -479,17 +479,6 @@ 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;