[FFmpeg-cvslog] Ignore es_map_length when parsing mpeg program stream map.

Carl Eugen Hoyos git at videolan.org
Thu Dec 5 22:07:40 CET 2013


ffmpeg | branch: master | Carl Eugen Hoyos <cehoyos at ag.or.at> | Thu Dec  5 21:17:21 2013 +0100| [af7562a03556d72ac6e022067b879d0124b052ba] | committer: Carl Eugen Hoyos

Ignore es_map_length when parsing mpeg program stream map.

Fixes ticket #3195.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=af7562a03556d72ac6e022067b879d0124b052ba
---

 libavformat/mpeg.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavformat/mpeg.c b/libavformat/mpeg.c
index 90434a1..1777283 100644
--- a/libavformat/mpeg.c
+++ b/libavformat/mpeg.c
@@ -193,6 +193,8 @@ static long mpegps_psm_parse(MpegDemuxContext *m, AVIOContext *pb)
     /* skip program_stream_info */
     avio_skip(pb, ps_info_length);
     es_map_length = avio_rb16(pb);
+    /* Ignore es_map_length, trust psm_length */
+    es_map_length = psm_length - ps_info_length - 10;
 
     /* at least one es available? */
     while (es_map_length >= 4){



More information about the ffmpeg-cvslog mailing list