[FFmpeg-cvslog] ffmpeg_opt: Prefer audio streams with packets

Michael Niedermayer git at videolan.org
Fri Aug 14 10:44:28 CEST 2015


ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Fri Aug 14 05:07:11 2015 +0200| [ae2cb9290ac23565f0a6b07d7c3e5ca5b62ea7b6] | committer: Michael Niedermayer

ffmpeg_opt: Prefer audio streams with packets

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ae2cb9290ac23565f0a6b07d7c3e5ca5b62ea7b6
---

 ffmpeg_opt.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c
index 28d3051..a369224 100644
--- a/ffmpeg_opt.c
+++ b/ffmpeg_opt.c
@@ -1992,12 +1992,14 @@ static int open_output_file(OptionsContext *o, const char *filename)
 
         /* audio: most channels */
         if (!o->audio_disable && av_guess_codec(oc->oformat, NULL, filename, NULL, AVMEDIA_TYPE_AUDIO) != AV_CODEC_ID_NONE) {
-            int channels = 0, idx = -1;
+            int best_score = 0, idx = -1;
             for (i = 0; i < nb_input_streams; i++) {
+                int score;
                 ist = input_streams[i];
+                score = ist->st->codec->channels + 100000000*!!ist->st->codec_info_nb_frames;
                 if (ist->st->codec->codec_type == AVMEDIA_TYPE_AUDIO &&
-                    ist->st->codec->channels > channels) {
-                    channels = ist->st->codec->channels;
+                    score > best_score) {
+                    best_score = score;
                     idx = i;
                 }
             }



More information about the ffmpeg-cvslog mailing list