Modified the function av_find_best_stream() such that, when a list of allowed codecs is supplied in the format context, and when the caller is requesting a decoder be returned, the function will select the best stream that has a decoder in the allowed decoders list.
Signed-off-by: Eric Juteau <eric...@outlook.com> --- libavformat/avformat.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/avformat.c b/libavformat/avformat.c index 30d6ea6a49..396c1affa1 100644 --- a/libavformat/avformat.c +++ b/libavformat/avformat.c @@ -376,7 +376,8 @@ int av_find_best_stream(AVFormatContext *ic, enum AVMediaType type, continue; if (decoder_ret) { decoder = ff_find_decoder(ic, st, par->codec_id); - if (!decoder) { + if ((!decoder) || + (ic->codec_whitelist && av_match_list(decoder->name, ic->codec_whitelist, ',') <= 0)) { if (ret < 0) ret = AVERROR_DECODER_NOT_FOUND; continue; -- 2.17.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".