[FFmpeg-cvslog] Do not skip three bytes and don' t search for extradata in old realaudio files.

Carl Eugen Hoyos git at videolan.org
Tue Dec 18 23:06:32 CET 2012


ffmpeg | branch: master | Carl Eugen Hoyos <cehoyos at ag.or.at> | Tue Dec 18 23:04:19 2012 +0100| [00a62e6776c7b2393b1c6f3be9ae85200bf2bb1e] | committer: Carl Eugen Hoyos

Do not skip three bytes and don't search for extradata in old realaudio files.

Fixes ticket #1557.

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

 libavformat/rmdec.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c
index 2bfa5ce..a84fdc6 100644
--- a/libavformat/rmdec.c
+++ b/libavformat/rmdec.c
@@ -196,6 +196,9 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
             st->need_parsing = AVSTREAM_PARSE_HEADERS;
         case AV_CODEC_ID_ATRAC3:
         case AV_CODEC_ID_SIPR:
+            if (read_all) {
+                codecdata_length = 0;
+            } else {
             avio_rb16(pb); avio_r8(pb);
             if (version == 5)
                 avio_r8(pb);
@@ -204,6 +207,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
                 av_log(s, AV_LOG_ERROR, "codecdata_length too large\n");
                 return -1;
             }
+            }
 
             ast->audio_framesize = st->codec->block_align;
             if (st->codec->codec_id == AV_CODEC_ID_SIPR) {



More information about the ffmpeg-cvslog mailing list