diff --git a/libavformat/utils.c b/libavformat/utils.c index 28279307373e87d1be5aff3df6d96807f52fe192..73f26b39c219e57d354454b96405f317d2b9a525 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -2529,7 +2529,7 @@ int av_find_best_stream(AVFormatContext *ic, if (best_count >= st->codec_info_nb_frames) continue; best_count = st->codec_info_nb_frames; - ret = i; + ret = program ? program[i] : i; best_decoder = decoder; if (program && i == nb_streams - 1 && ret < 0) { program = NULL;