diff options
author | Peter Ross <pross@xvid.org> | 2014-09-26 15:44:46 +1000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-09-26 12:51:40 +0200 |
commit | 1964251be7df69122108df89fb619f9a71bfb23f (patch) | |
tree | 5423da49fef1d8664d87b5197fae2d5c2a279187 | |
parent | ee2e5acdb13f9ca9d3cc39258c4f30773c212449 (diff) | |
download | ffmpeg-1964251be7df69122108df89fb619f9a71bfb23f.tar.gz |
libavformat/iff: print error message when DSDIFF compression type is not supported
Signed-off-by: Peter Ross <pross@xvid.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavformat/iff.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libavformat/iff.c b/libavformat/iff.c index 8e2030364a..e7c240c5d5 100644 --- a/libavformat/iff.c +++ b/libavformat/iff.c @@ -285,7 +285,13 @@ static int parse_dsd_prop(AVFormatContext *s, AVStream *st, uint64_t eof) case MKTAG('C','M','P','R'): if (size < 4) return AVERROR_INVALIDDATA; - st->codec->codec_id = ff_codec_get_id(dsd_codec_tags, avio_rl32(pb)); + tag = avio_rl32(pb); + st->codec->codec_id = ff_codec_get_id(dsd_codec_tags, tag); + if (!st->codec->codec_id) { + av_log(s, AV_LOG_ERROR, "'%c%c%c%c' compression is not supported\n", + tag&0xFF, (tag>>8)&0xFF, (tag>>16)&0xFF, (tag>>24)&0xFF); + return AVERROR_PATCHWELCOME; + } break; case MKTAG('F','S',' ',' '): |