diff options
author | Anton Khirnov <anton@khirnov.net> | 2016-10-18 20:50:03 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2016-10-21 10:11:20 +0200 |
commit | 096a8effa3f8f3455292c958c3ed07e798def7bd (patch) | |
tree | f7da351a4bb668ba019a5cd3ba7c841571ad89b3 | |
parent | 788544ff0ed6fe67fda80ad6d3a0796ace035584 (diff) | |
download | ffmpeg-096a8effa3f8f3455292c958c3ed07e798def7bd.tar.gz |
lavf: check that the codec is supported by extract_extradata
Avoids superfluous error message spam after
8e2ea691351c5079cdab245ff7bfa5c0f3e3bfe4
-rw-r--r-- | libavformat/utils.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c index 1c93326ab2..37ba5a8626 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -2099,6 +2099,16 @@ static int extract_extradata_init(AVStream *st) if (!f) goto finish; + /* check that the codec id is supported */ + if (f->codec_ids) { + const enum AVCodecID *ids; + for (ids = f->codec_ids; *ids != AV_CODEC_ID_NONE; ids++) + if (*ids == st->codecpar->codec_id) + break; + if (*ids == AV_CODEC_ID_NONE) + goto finish; + } + i->extract_extradata.pkt = av_packet_alloc(); if (!i->extract_extradata.pkt) return AVERROR(ENOMEM); |