From 3f60afad28eccc1d3e2bf55e537583b361ebdf2e Mon Sep 17 00:00:00 2001 From: Baptiste Coudurier Date: Thu, 15 May 2008 22:47:40 +0000 Subject: try to demux even if codec is not recognized, should demux M1F1-float32C-AFsp.aif and fix #454 Originally committed as revision 13171 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/aiff.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/libavformat/aiff.c b/libavformat/aiff.c index b9ebce5cc5..55c47dd0ad 100644 --- a/libavformat/aiff.c +++ b/libavformat/aiff.c @@ -366,7 +366,7 @@ static int aiff_read_header(AVFormatContext *s, offset = get_be32(pb); /* Offset of sound data */ get_be32(pb); /* BlockSize... don't care */ offset += url_ftell(pb); /* Compute absolute data offset */ - if (st->codec->codec_id) /* Assume COMM already parsed */ + if (st->codec->block_align) /* Assume COMM already parsed */ goto got_sound; if (url_is_streamed(pb)) { av_log(s, AV_LOG_ERROR, "file is not seekable\n"); @@ -390,8 +390,10 @@ static int aiff_read_header(AVFormatContext *s, } } - /* End of loop and didn't get sound */ - return AVERROR_INVALIDDATA; + if (!st->codec->block_align) { + av_log(s, AV_LOG_ERROR, "could not find COMM tag\n"); + return -1; + } got_sound: /* Now positioned, get the sound data start and end */ -- cgit v1.2.3