diff options
author | Anton Khirnov <anton@khirnov.net> | 2012-08-19 08:29:44 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2012-08-30 13:56:24 +0200 |
commit | 038c0b1e06cadffdd6ac50f058dcc6bc075b9019 (patch) | |
tree | bc30237d453eef07f4d3a0cb10158c2a5859da24 /avconv_opt.c | |
parent | e2785fa728cc5b0d9939090b4398067a32856a3c (diff) | |
download | ffmpeg-038c0b1e06cadffdd6ac50f058dcc6bc075b9019.tar.gz |
avconv: make the -pass option per-stream.
Diffstat (limited to 'avconv_opt.c')
-rw-r--r-- | avconv_opt.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/avconv_opt.c b/avconv_opt.c index 4e483de8ab..28bd926c2f 100644 --- a/avconv_opt.c +++ b/avconv_opt.c @@ -77,7 +77,6 @@ int same_quant = 0; static int file_overwrite = 0; static int video_discard = 0; static int intra_dc_precision = 8; -static int do_pass = 0; static int using_stdin = 0; static int input_sync; @@ -886,6 +885,7 @@ static OutputStream *new_video_stream(OptionsContext *o, AVFormatContext *oc) char *frame_aspect_ratio = NULL, *frame_pix_fmt = NULL; char *intra_matrix = NULL, *inter_matrix = NULL; const char *filters = "null"; + int do_pass = 0; int i; MATCH_PER_STREAM_OPT(frame_rates, str, frame_rate, oc, st); @@ -958,6 +958,7 @@ static OutputStream *new_video_stream(OptionsContext *o, AVFormatContext *oc) video_enc->intra_dc_precision = intra_dc_precision - 8; /* two pass mode */ + MATCH_PER_STREAM_OPT(pass, i, do_pass, oc, st); if (do_pass) { if (do_pass == 1) { video_enc->flags |= CODEC_FLAG_PASS1; @@ -1495,14 +1496,6 @@ loop_end: reset_options(o); } -/* same option as mencoder */ -static int opt_pass(const char *opt, const char *arg) -{ - do_pass = parse_number_or_die(opt, arg, OPT_INT, 1, 2); - return 0; -} - - static int opt_target(void *optctx, const char *opt, const char *arg) { OptionsContext *o = optctx; @@ -1972,7 +1965,7 @@ const OptionDef options[] = { "force video codec ('copy' to copy stream)", "codec" }, { "same_quant", OPT_VIDEO | OPT_BOOL | OPT_EXPERT, { &same_quant }, "use same quantizer as source (implies VBR)" }, - { "pass", OPT_VIDEO | HAS_ARG , { opt_pass }, + { "pass", OPT_VIDEO | HAS_ARG | OPT_SPEC | OPT_INT, { .off = OFFSET(pass) }, "select the pass number (1 or 2)", "n" }, { "passlogfile", OPT_VIDEO | HAS_ARG | OPT_STRING | OPT_EXPERT, { &pass_logfilename_prefix }, "select two pass log file name prefix", "prefix" }, |