From 00a62e6776c7b2393b1c6f3be9ae85200bf2bb1e Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos Date: Tue, 18 Dec 2012 23:04:19 +0100 Subject: Do not skip three bytes and don't search for extradata in old realaudio files. Fixes ticket #1557. --- libavformat/rmdec.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'libavformat') diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index 2bfa5ceeda..a84fdc67b1 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) { -- cgit v1.2.3