From 675b8390f61e17ea076811324719f6b135c295ab Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Tue, 4 Mar 2008 01:31:15 +0000 Subject: [PATCH] Ignore flags after pts/dts if there are no bytes left. Fixes decoding of vdr-radio.vdr. (issue198) Originally committed as revision 12310 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/mpeg.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavformat/mpeg.c b/libavformat/mpeg.c index 97b2a637a2..462ef73bc4 100644 --- a/libavformat/mpeg.c +++ b/libavformat/mpeg.c @@ -334,6 +334,10 @@ static int mpegps_read_pes_header(AVFormatContext *s, header_len -= 5; } } + if (flags & 0x3f && header_len == 0){ + flags &= 0xC0; + av_log(s, AV_LOG_WARNING, "Further flags set but no bytes left\n"); + } if (flags & 0x01) { /* PES extension */ pes_ext = get_byte(s->pb); header_len--;