yading@10: .\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) yading@10: .\" yading@10: .\" Standard preamble: yading@10: .\" ======================================================================== yading@10: .de Sp \" Vertical space (when we can't use .PP) yading@10: .if t .sp .5v yading@10: .if n .sp yading@10: .. yading@10: .de Vb \" Begin verbatim text yading@10: .ft CW yading@10: .nf yading@10: .ne \\$1 yading@10: .. yading@10: .de Ve \" End verbatim text yading@10: .ft R yading@10: .fi yading@10: .. yading@10: .\" Set up some character translations and predefined strings. \*(-- will yading@10: .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left yading@10: .\" double quote, and \*(R" will give a right double quote. \*(C+ will yading@10: .\" give a nicer C++. Capital omega is used to do unbreakable dashes and yading@10: .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, yading@10: .\" nothing in troff, for use with C<>. yading@10: .tr \(*W- yading@10: .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' yading@10: .ie n \{\ yading@10: . ds -- \(*W- yading@10: . ds PI pi yading@10: . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch yading@10: . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch yading@10: . ds L" "" yading@10: . ds R" "" yading@10: . ds C` "" yading@10: . ds C' "" yading@10: 'br\} yading@10: .el\{\ yading@10: . ds -- \|\(em\| yading@10: . ds PI \(*p yading@10: . ds L" `` yading@10: . ds R" '' yading@10: 'br\} yading@10: .\" yading@10: .\" Escape single quotes in literal strings from groff's Unicode transform. yading@10: .ie \n(.g .ds Aq \(aq yading@10: .el .ds Aq ' yading@10: .\" yading@10: .\" If the F register is turned on, we'll generate index entries on stderr for yading@10: .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index yading@10: .\" entries marked with X<> in POD. Of course, you'll have to process the yading@10: .\" output yourself in some meaningful fashion. yading@10: .ie \nF \{\ yading@10: . de IX yading@10: . tm Index:\\$1\t\\n%\t"\\$2" yading@10: .. yading@10: . nr % 0 yading@10: . rr F yading@10: .\} yading@10: .el \{\ yading@10: . de IX yading@10: .. yading@10: .\} yading@10: .\" yading@10: .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). yading@10: .\" Fear. Run. Save yourself. No user-serviceable parts. yading@10: . \" fudge factors for nroff and troff yading@10: .if n \{\ yading@10: . ds #H 0 yading@10: . ds #V .8m yading@10: . ds #F .3m yading@10: . ds #[ \f1 yading@10: . ds #] \fP yading@10: .\} yading@10: .if t \{\ yading@10: . ds #H ((1u-(\\\\n(.fu%2u))*.13m) yading@10: . ds #V .6m yading@10: . ds #F 0 yading@10: . ds #[ \& yading@10: . ds #] \& yading@10: .\} yading@10: . \" simple accents for nroff and troff yading@10: .if n \{\ yading@10: . ds ' \& yading@10: . ds ` \& yading@10: . ds ^ \& yading@10: . ds , \& yading@10: . ds ~ ~ yading@10: . ds / yading@10: .\} yading@10: .if t \{\ yading@10: . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" yading@10: . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' yading@10: . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' yading@10: . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' yading@10: . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' yading@10: . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' yading@10: .\} yading@10: . \" troff and (daisy-wheel) nroff accents yading@10: .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' yading@10: .ds 8 \h'\*(#H'\(*b\h'-\*(#H' yading@10: .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] yading@10: .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' yading@10: .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' yading@10: .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] yading@10: .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] yading@10: .ds ae a\h'-(\w'a'u*4/10)'e yading@10: .ds Ae A\h'-(\w'A'u*4/10)'E yading@10: . \" corrections for vroff yading@10: .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' yading@10: .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' yading@10: . \" for low resolution devices (crt and lpr) yading@10: .if \n(.H>23 .if \n(.V>19 \ yading@10: \{\ yading@10: . ds : e yading@10: . ds 8 ss yading@10: . ds o a yading@10: . ds d- d\h'-1'\(ga yading@10: . ds D- D\h'-1'\(hy yading@10: . ds th \o'bp' yading@10: . ds Th \o'LP' yading@10: . ds ae ae yading@10: . ds Ae AE yading@10: .\} yading@10: .rm #[ #] #H #V #F C yading@10: .\" ======================================================================== yading@10: .\" yading@10: .IX Title "FFMPEG-CODECS 1" yading@10: .TH FFMPEG-CODECS 1 "2013-04-21" " " " " yading@10: .\" For nroff, turn off justification. Always turn off hyphenation; it makes yading@10: .\" way too many mistakes in technical documents. yading@10: .if n .ad l yading@10: .nh yading@10: .SH "NAME" yading@10: ffmpeg\-codecs \- FFmpeg codecs yading@10: .SH "DESCRIPTION" yading@10: .IX Header "DESCRIPTION" yading@10: This document describes the codecs (decoders and encoders) provided by yading@10: the libavcodec library. yading@10: .SH "CODEC OPTIONS" yading@10: .IX Header "CODEC OPTIONS" yading@10: libavcodec provides some generic global options, which can be set on yading@10: all the encoders and decoders. In addition each codec may support yading@10: so-called private options, which are specific for a given codec. yading@10: .PP yading@10: Sometimes, a global option may only affect a specific kind of codec, yading@10: and may be unsensical or ignored by another, so you need to be aware yading@10: of the meaning of the specified options. Also some options are yading@10: meant only for decoding or encoding. yading@10: .PP yading@10: Options may be set by specifying \-\fIoption\fR \fIvalue\fR in the yading@10: FFmpeg tools, or by setting the value explicitly in the yading@10: \&\f(CW\*(C`AVCodecContext\*(C'\fR options or using the \fIlibavutil/opt.h\fR \s-1API\s0 yading@10: for programmatic use. yading@10: .PP yading@10: The list of supported options follow: yading@10: .IP "\fBb\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "b integer (encoding,audio,video)" yading@10: Set bitrate in bits/s. Default value is 200K. yading@10: .IP "\fBab\fR \fIinteger\fR \fB(\fR\fIencoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "ab integer (encoding,audio)" yading@10: Set audio bitrate (in bits/s). Default value is 128K. yading@10: .IP "\fBbt\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "bt integer (encoding,video)" yading@10: Set video bitrate tolerance (in bits/s). In 1\-pass mode, bitrate yading@10: tolerance specifies how far ratecontrol is willing to deviate from the yading@10: target average bitrate value. This is not related to min/max yading@10: bitrate. Lowering tolerance too much has an adverse effect on quality. yading@10: .IP "\fBflags\fR \fIflags\fR \fB(\fR\fIdecoding/encoding,audio,video,subtitles\fR\fB)\fR" 4 yading@10: .IX Item "flags flags (decoding/encoding,audio,video,subtitles)" yading@10: Set generic flags. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBmv4\fR" 4 yading@10: .IX Item "mv4" yading@10: Use four motion vector by macroblock (mpeg4). yading@10: .IP "\fBqpel\fR" 4 yading@10: .IX Item "qpel" yading@10: Use 1/4 pel motion compensation. yading@10: .IP "\fBloop\fR" 4 yading@10: .IX Item "loop" yading@10: Use loop filter. yading@10: .IP "\fBqscale\fR" 4 yading@10: .IX Item "qscale" yading@10: Use fixed qscale. yading@10: .IP "\fBgmc\fR" 4 yading@10: .IX Item "gmc" yading@10: Use gmc. yading@10: .IP "\fBmv0\fR" 4 yading@10: .IX Item "mv0" yading@10: Always try a mb with mv=<0,0>. yading@10: .IP "\fBinput_preserved\fR" 4 yading@10: .IX Item "input_preserved" yading@10: .PD 0 yading@10: .IP "\fBpass1\fR" 4 yading@10: .IX Item "pass1" yading@10: .PD yading@10: Use internal 2pass ratecontrol in first pass mode. yading@10: .IP "\fBpass2\fR" 4 yading@10: .IX Item "pass2" yading@10: Use internal 2pass ratecontrol in second pass mode. yading@10: .IP "\fBgray\fR" 4 yading@10: .IX Item "gray" yading@10: Only decode/encode grayscale. yading@10: .IP "\fBemu_edge\fR" 4 yading@10: .IX Item "emu_edge" yading@10: Do not draw edges. yading@10: .IP "\fBpsnr\fR" 4 yading@10: .IX Item "psnr" yading@10: Set error[?] variables during encoding. yading@10: .IP "\fBtruncated\fR" 4 yading@10: .IX Item "truncated" yading@10: .PD 0 yading@10: .IP "\fBnaq\fR" 4 yading@10: .IX Item "naq" yading@10: .PD yading@10: Normalize adaptive quantization. yading@10: .IP "\fBildct\fR" 4 yading@10: .IX Item "ildct" yading@10: Use interlaced \s-1DCT\s0. yading@10: .IP "\fBlow_delay\fR" 4 yading@10: .IX Item "low_delay" yading@10: Force low delay. yading@10: .IP "\fBglobal_header\fR" 4 yading@10: .IX Item "global_header" yading@10: Place global headers in extradata instead of every keyframe. yading@10: .IP "\fBbitexact\fR" 4 yading@10: .IX Item "bitexact" yading@10: Use only bitexact stuff (except (I)DCT). yading@10: .IP "\fBaic\fR" 4 yading@10: .IX Item "aic" yading@10: Apply H263 advanced intra coding / mpeg4 ac prediction. yading@10: .IP "\fBcbp\fR" 4 yading@10: .IX Item "cbp" yading@10: Deprecated, use mpegvideo private options instead. yading@10: .IP "\fBqprd\fR" 4 yading@10: .IX Item "qprd" yading@10: Deprecated, use mpegvideo private options instead. yading@10: .IP "\fBilme\fR" 4 yading@10: .IX Item "ilme" yading@10: Apply interlaced motion estimation. yading@10: .IP "\fBcgop\fR" 4 yading@10: .IX Item "cgop" yading@10: Use closed gop. yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBsub_id\fR \fIinteger\fR" 4 yading@10: .IX Item "sub_id integer" yading@10: Deprecated, currently unused. yading@10: .IP "\fBme_method\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "me_method integer (encoding,video)" yading@10: Set motion estimation method. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBzero\fR" 4 yading@10: .IX Item "zero" yading@10: zero motion estimation (fastest) yading@10: .IP "\fBfull\fR" 4 yading@10: .IX Item "full" yading@10: full motion estimation (slowest) yading@10: .IP "\fBepzs\fR" 4 yading@10: .IX Item "epzs" yading@10: \&\s-1EPZS\s0 motion estimation (default) yading@10: .IP "\fBesa\fR" 4 yading@10: .IX Item "esa" yading@10: esa motion estimation (alias for full) yading@10: .IP "\fBtesa\fR" 4 yading@10: .IX Item "tesa" yading@10: tesa motion estimation yading@10: .IP "\fBdia\fR" 4 yading@10: .IX Item "dia" yading@10: dia motion estimation (alias for epzs) yading@10: .IP "\fBlog\fR" 4 yading@10: .IX Item "log" yading@10: log motion estimation yading@10: .IP "\fBphods\fR" 4 yading@10: .IX Item "phods" yading@10: phods motion estimation yading@10: .IP "\fBx1\fR" 4 yading@10: .IX Item "x1" yading@10: X1 motion estimation yading@10: .IP "\fBhex\fR" 4 yading@10: .IX Item "hex" yading@10: hex motion estimation yading@10: .IP "\fBumh\fR" 4 yading@10: .IX Item "umh" yading@10: umh motion estimation yading@10: .IP "\fBiter\fR" 4 yading@10: .IX Item "iter" yading@10: iter motion estimation yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBextradata_size\fR \fIinteger\fR" 4 yading@10: .IX Item "extradata_size integer" yading@10: Set extradata size. yading@10: .IP "\fBtime_base\fR \fIrational number\fR" 4 yading@10: .IX Item "time_base rational number" yading@10: Set codec time base. yading@10: .Sp yading@10: It is the fundamental unit of time (in seconds) in terms of which yading@10: frame timestamps are represented. For fixed-fps content, timebase yading@10: should be \f(CW\*(C`1 / frame_rate\*(C'\fR and timestamp increments should be yading@10: identically 1. yading@10: .IP "\fBg\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "g integer (encoding,video)" yading@10: Set the group of picture size. Default value is 12. yading@10: .IP "\fBar\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "ar integer (decoding/encoding,audio)" yading@10: Set audio sampling rate (in Hz). yading@10: .IP "\fBac\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "ac integer (decoding/encoding,audio)" yading@10: Set number of audio channels. yading@10: .IP "\fBcutoff\fR \fIinteger\fR \fB(\fR\fIencoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "cutoff integer (encoding,audio)" yading@10: Set cutoff bandwidth. yading@10: .IP "\fBframe_size\fR \fIinteger\fR \fB(\fR\fIencoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "frame_size integer (encoding,audio)" yading@10: Set audio frame size. yading@10: .Sp yading@10: Each submitted frame except the last must contain exactly frame_size yading@10: samples per channel. May be 0 when the codec has yading@10: \&\s-1CODEC_CAP_VARIABLE_FRAME_SIZE\s0 set, in that case the frame size is not yading@10: restricted. It is set by some decoders to indicate constant frame yading@10: size. yading@10: .IP "\fBframe_number\fR \fIinteger\fR" 4 yading@10: .IX Item "frame_number integer" yading@10: Set the frame number. yading@10: .IP "\fBdelay\fR \fIinteger\fR" 4 yading@10: .IX Item "delay integer" yading@10: .PD 0 yading@10: .IP "\fBqcomp\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "qcomp float (encoding,video)" yading@10: .PD yading@10: Set video quantizer scale compression (\s-1VBR\s0). It is used as a constant yading@10: in the ratecontrol equation. Recommended range for default rc_eq: yading@10: 0.0\-1.0. yading@10: .IP "\fBqblur\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "qblur float (encoding,video)" yading@10: Set video quantizer scale blur (\s-1VBR\s0). yading@10: .IP "\fBqmin\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "qmin integer (encoding,video)" yading@10: Set min video quantizer scale (\s-1VBR\s0). Must be included between \-1 and yading@10: 69, default value is 2. yading@10: .IP "\fBqmax\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "qmax integer (encoding,video)" yading@10: Set max video quantizer scale (\s-1VBR\s0). Must be included between \-1 and yading@10: 1024, default value is 31. yading@10: .IP "\fBqdiff\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "qdiff integer (encoding,video)" yading@10: Set max difference between the quantizer scale (\s-1VBR\s0). yading@10: .IP "\fBbf\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "bf integer (encoding,video)" yading@10: Set max number of B frames. yading@10: .IP "\fBb_qfactor\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "b_qfactor float (encoding,video)" yading@10: Set qp factor between P and B frames. yading@10: .IP "\fBrc_strategy\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_strategy integer (encoding,video)" yading@10: Set ratecontrol method. yading@10: .IP "\fBb_strategy\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "b_strategy integer (encoding,video)" yading@10: Set strategy to choose between I/P/B\-frames. yading@10: .IP "\fBps\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "ps integer (encoding,video)" yading@10: Set \s-1RTP\s0 payload size in bytes. yading@10: .IP "\fBmv_bits\fR \fIinteger\fR" 4 yading@10: .IX Item "mv_bits integer" yading@10: .PD 0 yading@10: .IP "\fBheader_bits\fR \fIinteger\fR" 4 yading@10: .IX Item "header_bits integer" yading@10: .IP "\fBi_tex_bits\fR \fIinteger\fR" 4 yading@10: .IX Item "i_tex_bits integer" yading@10: .IP "\fBp_tex_bits\fR \fIinteger\fR" 4 yading@10: .IX Item "p_tex_bits integer" yading@10: .IP "\fBi_count\fR \fIinteger\fR" 4 yading@10: .IX Item "i_count integer" yading@10: .IP "\fBp_count\fR \fIinteger\fR" 4 yading@10: .IX Item "p_count integer" yading@10: .IP "\fBskip_count\fR \fIinteger\fR" 4 yading@10: .IX Item "skip_count integer" yading@10: .IP "\fBmisc_bits\fR \fIinteger\fR" 4 yading@10: .IX Item "misc_bits integer" yading@10: .IP "\fBframe_bits\fR \fIinteger\fR" 4 yading@10: .IX Item "frame_bits integer" yading@10: .IP "\fBcodec_tag\fR \fIinteger\fR" 4 yading@10: .IX Item "codec_tag integer" yading@10: .IP "\fBbug\fR \fIflags\fR \fB(\fR\fIdecoding,video\fR\fB)\fR" 4 yading@10: .IX Item "bug flags (decoding,video)" yading@10: .PD yading@10: Workaround not auto detected encoder bugs. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBautodetect\fR" 4 yading@10: .IX Item "autodetect" yading@10: .PD 0 yading@10: .IP "\fBold_msmpeg4\fR" 4 yading@10: .IX Item "old_msmpeg4" yading@10: .PD yading@10: some old lavc generated msmpeg4v3 files (no autodetection) yading@10: .IP "\fBxvid_ilace\fR" 4 yading@10: .IX Item "xvid_ilace" yading@10: Xvid interlacing bug (autodetected if fourcc==XVIX) yading@10: .IP "\fBump4\fR" 4 yading@10: .IX Item "ump4" yading@10: (autodetected if fourcc==UMP4) yading@10: .IP "\fBno_padding\fR" 4 yading@10: .IX Item "no_padding" yading@10: padding bug (autodetected) yading@10: .IP "\fBamv\fR" 4 yading@10: .IX Item "amv" yading@10: .PD 0 yading@10: .IP "\fBac_vlc\fR" 4 yading@10: .IX Item "ac_vlc" yading@10: .PD yading@10: illegal vlc bug (autodetected per fourcc) yading@10: .IP "\fBqpel_chroma\fR" 4 yading@10: .IX Item "qpel_chroma" yading@10: .PD 0 yading@10: .IP "\fBstd_qpel\fR" 4 yading@10: .IX Item "std_qpel" yading@10: .PD yading@10: old standard qpel (autodetected per fourcc/version) yading@10: .IP "\fBqpel_chroma2\fR" 4 yading@10: .IX Item "qpel_chroma2" yading@10: .PD 0 yading@10: .IP "\fBdirect_blocksize\fR" 4 yading@10: .IX Item "direct_blocksize" yading@10: .PD yading@10: direct-qpel-blocksize bug (autodetected per fourcc/version) yading@10: .IP "\fBedge\fR" 4 yading@10: .IX Item "edge" yading@10: edge padding bug (autodetected per fourcc/version) yading@10: .IP "\fBhpel_chroma\fR" 4 yading@10: .IX Item "hpel_chroma" yading@10: .PD 0 yading@10: .IP "\fBdc_clip\fR" 4 yading@10: .IX Item "dc_clip" yading@10: .IP "\fBms\fR" 4 yading@10: .IX Item "ms" yading@10: .PD yading@10: Workaround various bugs in microsoft broken decoders. yading@10: .IP "\fBtrunc\fR" 4 yading@10: .IX Item "trunc" yading@10: trancated frames yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBlelim\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "lelim integer (encoding,video)" yading@10: Set single coefficient elimination threshold for luminance (negative yading@10: values also consider \s-1DC\s0 coefficient). yading@10: .IP "\fBcelim\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "celim integer (encoding,video)" yading@10: Set single coefficient elimination threshold for chrominance (negative yading@10: values also consider dc coefficient) yading@10: .IP "\fBstrict\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "strict integer (decoding/encoding,audio,video)" yading@10: Specify how strictly to follow the standards. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBvery\fR" 4 yading@10: .IX Item "very" yading@10: strictly conform to a older more strict version of the spec or reference software yading@10: .IP "\fBstrict\fR" 4 yading@10: .IX Item "strict" yading@10: strictly conform to all the things in the spec no matter what consequences yading@10: .IP "\fBnormal\fR" 4 yading@10: .IX Item "normal" yading@10: .PD 0 yading@10: .IP "\fBunofficial\fR" 4 yading@10: .IX Item "unofficial" yading@10: .PD yading@10: allow unofficial extensions yading@10: .IP "\fBexperimental\fR" 4 yading@10: .IX Item "experimental" yading@10: allow non standardized experimental things yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBb_qoffset\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "b_qoffset float (encoding,video)" yading@10: Set \s-1QP\s0 offset between P and B frames. yading@10: .IP "\fBerr_detect\fR \fIflags\fR \fB(\fR\fIdecoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "err_detect flags (decoding,audio,video)" yading@10: Set error detection flags. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBcrccheck\fR" 4 yading@10: .IX Item "crccheck" yading@10: verify embedded CRCs yading@10: .IP "\fBbitstream\fR" 4 yading@10: .IX Item "bitstream" yading@10: detect bitstream specification deviations yading@10: .IP "\fBbuffer\fR" 4 yading@10: .IX Item "buffer" yading@10: detect improper bitstream length yading@10: .IP "\fBexplode\fR" 4 yading@10: .IX Item "explode" yading@10: abort decoding on minor error detection yading@10: .IP "\fBcareful\fR" 4 yading@10: .IX Item "careful" yading@10: consider things that violate the spec and have not been seen in the wild as errors yading@10: .IP "\fBcompliant\fR" 4 yading@10: .IX Item "compliant" yading@10: consider all spec non compliancies as errors yading@10: .IP "\fBaggressive\fR" 4 yading@10: .IX Item "aggressive" yading@10: consider things that a sane encoder should not do as an error yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBhas_b_frames\fR \fIinteger\fR" 4 yading@10: .IX Item "has_b_frames integer" yading@10: .PD 0 yading@10: .IP "\fBblock_align\fR \fIinteger\fR" 4 yading@10: .IX Item "block_align integer" yading@10: .IP "\fBmpeg_quant\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "mpeg_quant integer (encoding,video)" yading@10: .PD yading@10: Use \s-1MPEG\s0 quantizers instead of H.263. yading@10: .IP "\fBqsquish\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "qsquish float (encoding,video)" yading@10: How to keep quantizer between qmin and qmax (0 = clip, 1 = use yading@10: differentiable function). yading@10: .IP "\fBrc_qmod_amp\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_qmod_amp float (encoding,video)" yading@10: Set experimental quantizer modulation. yading@10: .IP "\fBrc_qmod_freq\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_qmod_freq integer (encoding,video)" yading@10: Set experimental quantizer modulation. yading@10: .IP "\fBrc_override_count\fR \fIinteger\fR" 4 yading@10: .IX Item "rc_override_count integer" yading@10: .PD 0 yading@10: .IP "\fBrc_eq\fR \fIstring\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_eq string (encoding,video)" yading@10: .PD yading@10: Set rate control equation. When computing the expression, besides the yading@10: standard functions defined in the section 'Expression Evaluation', the yading@10: following functions are available: bits2qp(bits), qp2bits(qp). Also yading@10: the following constants are available: iTex pTex tex mv fCode iCount yading@10: mcVar var isI isP isB avgQP qComp avgIITex avgPITex avgPPTex avgBPTex yading@10: avgTex. yading@10: .IP "\fBmaxrate\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "maxrate integer (encoding,audio,video)" yading@10: Set max bitrate tolerance (in bits/s). Requires bufsize to be set. yading@10: .IP "\fBminrate\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "minrate integer (encoding,audio,video)" yading@10: Set min bitrate tolerance (in bits/s). Most useful in setting up a \s-1CBR\s0 yading@10: encode. It is of little use elsewise. yading@10: .IP "\fBbufsize\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "bufsize integer (encoding,audio,video)" yading@10: Set ratecontrol buffer size (in bits). yading@10: .IP "\fBrc_buf_aggressivity\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_buf_aggressivity float (encoding,video)" yading@10: Currently useless. yading@10: .IP "\fBi_qfactor\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "i_qfactor float (encoding,video)" yading@10: Set \s-1QP\s0 factor between P and I frames. yading@10: .IP "\fBi_qoffset\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "i_qoffset float (encoding,video)" yading@10: Set \s-1QP\s0 offset between P and I frames. yading@10: .IP "\fBrc_init_cplx\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_init_cplx float (encoding,video)" yading@10: Set initial complexity for 1\-pass encoding. yading@10: .IP "\fBdct\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "dct integer (encoding,video)" yading@10: Set \s-1DCT\s0 algorithm. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBauto\fR" 4 yading@10: .IX Item "auto" yading@10: autoselect a good one (default) yading@10: .IP "\fBfastint\fR" 4 yading@10: .IX Item "fastint" yading@10: fast integer yading@10: .IP "\fBint\fR" 4 yading@10: .IX Item "int" yading@10: accurate integer yading@10: .IP "\fBmmx\fR" 4 yading@10: .IX Item "mmx" yading@10: .PD 0 yading@10: .IP "\fBaltivec\fR" 4 yading@10: .IX Item "altivec" yading@10: .IP "\fBfaan\fR" 4 yading@10: .IX Item "faan" yading@10: .PD yading@10: floating point \s-1AAN\s0 \s-1DCT\s0 yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBlumi_mask\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "lumi_mask float (encoding,video)" yading@10: Compress bright areas stronger than medium ones. yading@10: .IP "\fBtcplx_mask\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "tcplx_mask float (encoding,video)" yading@10: Set temporal complexity masking. yading@10: .IP "\fBscplx_mask\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "scplx_mask float (encoding,video)" yading@10: Set spatial complexity masking. yading@10: .IP "\fBp_mask\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "p_mask float (encoding,video)" yading@10: Set inter masking. yading@10: .IP "\fBdark_mask\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "dark_mask float (encoding,video)" yading@10: Compress dark areas stronger than medium ones. yading@10: .IP "\fBidct\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,video\fR\fB)\fR" 4 yading@10: .IX Item "idct integer (decoding/encoding,video)" yading@10: Select \s-1IDCT\s0 implementation. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBauto\fR" 4 yading@10: .IX Item "auto" yading@10: .PD 0 yading@10: .IP "\fBint\fR" 4 yading@10: .IX Item "int" yading@10: .IP "\fBsimple\fR" 4 yading@10: .IX Item "simple" yading@10: .IP "\fBsimplemmx\fR" 4 yading@10: .IX Item "simplemmx" yading@10: .IP "\fBlibmpeg2mmx\fR" 4 yading@10: .IX Item "libmpeg2mmx" yading@10: .IP "\fBmmi\fR" 4 yading@10: .IX Item "mmi" yading@10: .IP "\fBarm\fR" 4 yading@10: .IX Item "arm" yading@10: .IP "\fBaltivec\fR" 4 yading@10: .IX Item "altivec" yading@10: .IP "\fBsh4\fR" 4 yading@10: .IX Item "sh4" yading@10: .IP "\fBsimplearm\fR" 4 yading@10: .IX Item "simplearm" yading@10: .IP "\fBsimplearmv5te\fR" 4 yading@10: .IX Item "simplearmv5te" yading@10: .IP "\fBsimplearmv6\fR" 4 yading@10: .IX Item "simplearmv6" yading@10: .IP "\fBsimpleneon\fR" 4 yading@10: .IX Item "simpleneon" yading@10: .IP "\fBsimplealpha\fR" 4 yading@10: .IX Item "simplealpha" yading@10: .IP "\fBh264\fR" 4 yading@10: .IX Item "h264" yading@10: .IP "\fBvp3\fR" 4 yading@10: .IX Item "vp3" yading@10: .IP "\fBipp\fR" 4 yading@10: .IX Item "ipp" yading@10: .IP "\fBxvidmmx\fR" 4 yading@10: .IX Item "xvidmmx" yading@10: .IP "\fBfaani\fR" 4 yading@10: .IX Item "faani" yading@10: .PD yading@10: floating point \s-1AAN\s0 \s-1IDCT\s0 yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBslice_count\fR \fIinteger\fR" 4 yading@10: .IX Item "slice_count integer" yading@10: .PD 0 yading@10: .IP "\fBec\fR \fIflags\fR \fB(\fR\fIdecoding,video\fR\fB)\fR" 4 yading@10: .IX Item "ec flags (decoding,video)" yading@10: .PD yading@10: Set error concealment strategy. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBguess_mvs\fR" 4 yading@10: .IX Item "guess_mvs" yading@10: iterative motion vector (\s-1MV\s0) search (slow) yading@10: .IP "\fBdeblock\fR" 4 yading@10: .IX Item "deblock" yading@10: use strong deblock filter for damaged MBs yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBbits_per_coded_sample\fR \fIinteger\fR" 4 yading@10: .IX Item "bits_per_coded_sample integer" yading@10: .PD 0 yading@10: .IP "\fBpred\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "pred integer (encoding,video)" yading@10: .PD yading@10: Set prediction method. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBleft\fR" 4 yading@10: .IX Item "left" yading@10: .PD 0 yading@10: .IP "\fBplane\fR" 4 yading@10: .IX Item "plane" yading@10: .IP "\fBmedian\fR" 4 yading@10: .IX Item "median" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBaspect\fR \fIrational number\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "aspect rational number (encoding,video)" yading@10: .PD yading@10: Set sample aspect ratio. yading@10: .IP "\fBdebug\fR \fIflags\fR \fB(\fR\fIdecoding/encoding,audio,video,subtitles\fR\fB)\fR" 4 yading@10: .IX Item "debug flags (decoding/encoding,audio,video,subtitles)" yading@10: Print specific debug info. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBpict\fR" 4 yading@10: .IX Item "pict" yading@10: picture info yading@10: .IP "\fBrc\fR" 4 yading@10: .IX Item "rc" yading@10: rate control yading@10: .IP "\fBbitstream\fR" 4 yading@10: .IX Item "bitstream" yading@10: .PD 0 yading@10: .IP "\fBmb_type\fR" 4 yading@10: .IX Item "mb_type" yading@10: .PD yading@10: macroblock (\s-1MB\s0) type yading@10: .IP "\fBqp\fR" 4 yading@10: .IX Item "qp" yading@10: per-block quantization parameter (\s-1QP\s0) yading@10: .IP "\fBmv\fR" 4 yading@10: .IX Item "mv" yading@10: motion vector yading@10: .IP "\fBdct_coeff\fR" 4 yading@10: .IX Item "dct_coeff" yading@10: .PD 0 yading@10: .IP "\fBskip\fR" 4 yading@10: .IX Item "skip" yading@10: .IP "\fBstartcode\fR" 4 yading@10: .IX Item "startcode" yading@10: .IP "\fBpts\fR" 4 yading@10: .IX Item "pts" yading@10: .IP "\fBer\fR" 4 yading@10: .IX Item "er" yading@10: .PD yading@10: error recognition yading@10: .IP "\fBmmco\fR" 4 yading@10: .IX Item "mmco" yading@10: memory management control operations (H.264) yading@10: .IP "\fBbugs\fR" 4 yading@10: .IX Item "bugs" yading@10: .PD 0 yading@10: .IP "\fBvis_qp\fR" 4 yading@10: .IX Item "vis_qp" yading@10: .PD yading@10: visualize quantization parameter (\s-1QP\s0), lower \s-1QP\s0 are tinted greener yading@10: .IP "\fBvis_mb_type\fR" 4 yading@10: .IX Item "vis_mb_type" yading@10: visualize block types yading@10: .IP "\fBbuffers\fR" 4 yading@10: .IX Item "buffers" yading@10: picture buffer allocations yading@10: .IP "\fBthread_ops\fR" 4 yading@10: .IX Item "thread_ops" yading@10: threading operations yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBvismv\fR \fIinteger\fR \fB(\fR\fIdecoding,video\fR\fB)\fR" 4 yading@10: .IX Item "vismv integer (decoding,video)" yading@10: Visualize motion vectors (MVs). yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBpf\fR" 4 yading@10: .IX Item "pf" yading@10: forward predicted MVs of P\-frames yading@10: .IP "\fBbf\fR" 4 yading@10: .IX Item "bf" yading@10: forward predicted MVs of B\-frames yading@10: .IP "\fBbb\fR" 4 yading@10: .IX Item "bb" yading@10: backward predicted MVs of B\-frames yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBcmp\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "cmp integer (encoding,video)" yading@10: Set full pel me compare function. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBsad\fR" 4 yading@10: .IX Item "sad" yading@10: sum of absolute differences, fast (default) yading@10: .IP "\fBsse\fR" 4 yading@10: .IX Item "sse" yading@10: sum of squared errors yading@10: .IP "\fBsatd\fR" 4 yading@10: .IX Item "satd" yading@10: sum of absolute Hadamard transformed differences yading@10: .IP "\fBdct\fR" 4 yading@10: .IX Item "dct" yading@10: sum of absolute \s-1DCT\s0 transformed differences yading@10: .IP "\fBpsnr\fR" 4 yading@10: .IX Item "psnr" yading@10: sum of squared quantization errors (avoid, low quality) yading@10: .IP "\fBbit\fR" 4 yading@10: .IX Item "bit" yading@10: number of bits needed for the block yading@10: .IP "\fBrd\fR" 4 yading@10: .IX Item "rd" yading@10: rate distortion optimal, slow yading@10: .IP "\fBzero\fR" 4 yading@10: .IX Item "zero" yading@10: 0 yading@10: .IP "\fBvsad\fR" 4 yading@10: .IX Item "vsad" yading@10: sum of absolute vertical differences yading@10: .IP "\fBvsse\fR" 4 yading@10: .IX Item "vsse" yading@10: sum of squared vertical differences yading@10: .IP "\fBnsse\fR" 4 yading@10: .IX Item "nsse" yading@10: noise preserving sum of squared differences yading@10: .IP "\fBw53\fR" 4 yading@10: .IX Item "w53" yading@10: 5/3 wavelet, only used in snow yading@10: .IP "\fBw97\fR" 4 yading@10: .IX Item "w97" yading@10: 9/7 wavelet, only used in snow yading@10: .IP "\fBdctmax\fR" 4 yading@10: .IX Item "dctmax" yading@10: .PD 0 yading@10: .IP "\fBchroma\fR" 4 yading@10: .IX Item "chroma" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBsubcmp\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "subcmp integer (encoding,video)" yading@10: .PD yading@10: Set sub pel me compare function. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBsad\fR" 4 yading@10: .IX Item "sad" yading@10: sum of absolute differences, fast (default) yading@10: .IP "\fBsse\fR" 4 yading@10: .IX Item "sse" yading@10: sum of squared errors yading@10: .IP "\fBsatd\fR" 4 yading@10: .IX Item "satd" yading@10: sum of absolute Hadamard transformed differences yading@10: .IP "\fBdct\fR" 4 yading@10: .IX Item "dct" yading@10: sum of absolute \s-1DCT\s0 transformed differences yading@10: .IP "\fBpsnr\fR" 4 yading@10: .IX Item "psnr" yading@10: sum of squared quantization errors (avoid, low quality) yading@10: .IP "\fBbit\fR" 4 yading@10: .IX Item "bit" yading@10: number of bits needed for the block yading@10: .IP "\fBrd\fR" 4 yading@10: .IX Item "rd" yading@10: rate distortion optimal, slow yading@10: .IP "\fBzero\fR" 4 yading@10: .IX Item "zero" yading@10: 0 yading@10: .IP "\fBvsad\fR" 4 yading@10: .IX Item "vsad" yading@10: sum of absolute vertical differences yading@10: .IP "\fBvsse\fR" 4 yading@10: .IX Item "vsse" yading@10: sum of squared vertical differences yading@10: .IP "\fBnsse\fR" 4 yading@10: .IX Item "nsse" yading@10: noise preserving sum of squared differences yading@10: .IP "\fBw53\fR" 4 yading@10: .IX Item "w53" yading@10: 5/3 wavelet, only used in snow yading@10: .IP "\fBw97\fR" 4 yading@10: .IX Item "w97" yading@10: 9/7 wavelet, only used in snow yading@10: .IP "\fBdctmax\fR" 4 yading@10: .IX Item "dctmax" yading@10: .PD 0 yading@10: .IP "\fBchroma\fR" 4 yading@10: .IX Item "chroma" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBmbcmp\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "mbcmp integer (encoding,video)" yading@10: .PD yading@10: Set macroblock compare function. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBsad\fR" 4 yading@10: .IX Item "sad" yading@10: sum of absolute differences, fast (default) yading@10: .IP "\fBsse\fR" 4 yading@10: .IX Item "sse" yading@10: sum of squared errors yading@10: .IP "\fBsatd\fR" 4 yading@10: .IX Item "satd" yading@10: sum of absolute Hadamard transformed differences yading@10: .IP "\fBdct\fR" 4 yading@10: .IX Item "dct" yading@10: sum of absolute \s-1DCT\s0 transformed differences yading@10: .IP "\fBpsnr\fR" 4 yading@10: .IX Item "psnr" yading@10: sum of squared quantization errors (avoid, low quality) yading@10: .IP "\fBbit\fR" 4 yading@10: .IX Item "bit" yading@10: number of bits needed for the block yading@10: .IP "\fBrd\fR" 4 yading@10: .IX Item "rd" yading@10: rate distortion optimal, slow yading@10: .IP "\fBzero\fR" 4 yading@10: .IX Item "zero" yading@10: 0 yading@10: .IP "\fBvsad\fR" 4 yading@10: .IX Item "vsad" yading@10: sum of absolute vertical differences yading@10: .IP "\fBvsse\fR" 4 yading@10: .IX Item "vsse" yading@10: sum of squared vertical differences yading@10: .IP "\fBnsse\fR" 4 yading@10: .IX Item "nsse" yading@10: noise preserving sum of squared differences yading@10: .IP "\fBw53\fR" 4 yading@10: .IX Item "w53" yading@10: 5/3 wavelet, only used in snow yading@10: .IP "\fBw97\fR" 4 yading@10: .IX Item "w97" yading@10: 9/7 wavelet, only used in snow yading@10: .IP "\fBdctmax\fR" 4 yading@10: .IX Item "dctmax" yading@10: .PD 0 yading@10: .IP "\fBchroma\fR" 4 yading@10: .IX Item "chroma" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBildctcmp\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "ildctcmp integer (encoding,video)" yading@10: .PD yading@10: Set interlaced dct compare function. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBsad\fR" 4 yading@10: .IX Item "sad" yading@10: sum of absolute differences, fast (default) yading@10: .IP "\fBsse\fR" 4 yading@10: .IX Item "sse" yading@10: sum of squared errors yading@10: .IP "\fBsatd\fR" 4 yading@10: .IX Item "satd" yading@10: sum of absolute Hadamard transformed differences yading@10: .IP "\fBdct\fR" 4 yading@10: .IX Item "dct" yading@10: sum of absolute \s-1DCT\s0 transformed differences yading@10: .IP "\fBpsnr\fR" 4 yading@10: .IX Item "psnr" yading@10: sum of squared quantization errors (avoid, low quality) yading@10: .IP "\fBbit\fR" 4 yading@10: .IX Item "bit" yading@10: number of bits needed for the block yading@10: .IP "\fBrd\fR" 4 yading@10: .IX Item "rd" yading@10: rate distortion optimal, slow yading@10: .IP "\fBzero\fR" 4 yading@10: .IX Item "zero" yading@10: 0 yading@10: .IP "\fBvsad\fR" 4 yading@10: .IX Item "vsad" yading@10: sum of absolute vertical differences yading@10: .IP "\fBvsse\fR" 4 yading@10: .IX Item "vsse" yading@10: sum of squared vertical differences yading@10: .IP "\fBnsse\fR" 4 yading@10: .IX Item "nsse" yading@10: noise preserving sum of squared differences yading@10: .IP "\fBw53\fR" 4 yading@10: .IX Item "w53" yading@10: 5/3 wavelet, only used in snow yading@10: .IP "\fBw97\fR" 4 yading@10: .IX Item "w97" yading@10: 9/7 wavelet, only used in snow yading@10: .IP "\fBdctmax\fR" 4 yading@10: .IX Item "dctmax" yading@10: .PD 0 yading@10: .IP "\fBchroma\fR" 4 yading@10: .IX Item "chroma" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBdia_size\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "dia_size integer (encoding,video)" yading@10: .PD yading@10: Set diamond type & size for motion estimation. yading@10: .IP "\fBlast_pred\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "last_pred integer (encoding,video)" yading@10: Set amount of motion predictors from the previous frame. yading@10: .IP "\fBpreme\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "preme integer (encoding,video)" yading@10: Set pre motion estimation. yading@10: .IP "\fBprecmp\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "precmp integer (encoding,video)" yading@10: Set pre motion estimation compare function. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBsad\fR" 4 yading@10: .IX Item "sad" yading@10: sum of absolute differences, fast (default) yading@10: .IP "\fBsse\fR" 4 yading@10: .IX Item "sse" yading@10: sum of squared errors yading@10: .IP "\fBsatd\fR" 4 yading@10: .IX Item "satd" yading@10: sum of absolute Hadamard transformed differences yading@10: .IP "\fBdct\fR" 4 yading@10: .IX Item "dct" yading@10: sum of absolute \s-1DCT\s0 transformed differences yading@10: .IP "\fBpsnr\fR" 4 yading@10: .IX Item "psnr" yading@10: sum of squared quantization errors (avoid, low quality) yading@10: .IP "\fBbit\fR" 4 yading@10: .IX Item "bit" yading@10: number of bits needed for the block yading@10: .IP "\fBrd\fR" 4 yading@10: .IX Item "rd" yading@10: rate distortion optimal, slow yading@10: .IP "\fBzero\fR" 4 yading@10: .IX Item "zero" yading@10: 0 yading@10: .IP "\fBvsad\fR" 4 yading@10: .IX Item "vsad" yading@10: sum of absolute vertical differences yading@10: .IP "\fBvsse\fR" 4 yading@10: .IX Item "vsse" yading@10: sum of squared vertical differences yading@10: .IP "\fBnsse\fR" 4 yading@10: .IX Item "nsse" yading@10: noise preserving sum of squared differences yading@10: .IP "\fBw53\fR" 4 yading@10: .IX Item "w53" yading@10: 5/3 wavelet, only used in snow yading@10: .IP "\fBw97\fR" 4 yading@10: .IX Item "w97" yading@10: 9/7 wavelet, only used in snow yading@10: .IP "\fBdctmax\fR" 4 yading@10: .IX Item "dctmax" yading@10: .PD 0 yading@10: .IP "\fBchroma\fR" 4 yading@10: .IX Item "chroma" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBpre_dia_size\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "pre_dia_size integer (encoding,video)" yading@10: .PD yading@10: Set diamond type & size for motion estimation pre-pass. yading@10: .IP "\fBsubq\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "subq integer (encoding,video)" yading@10: Set sub pel motion estimation quality. yading@10: .IP "\fBdtg_active_format\fR \fIinteger\fR" 4 yading@10: .IX Item "dtg_active_format integer" yading@10: .PD 0 yading@10: .IP "\fBme_range\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "me_range integer (encoding,video)" yading@10: .PD yading@10: Set limit motion vectors range (1023 for DivX player). yading@10: .IP "\fBibias\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "ibias integer (encoding,video)" yading@10: Set intra quant bias. yading@10: .IP "\fBpbias\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "pbias integer (encoding,video)" yading@10: Set inter quant bias. yading@10: .IP "\fBcolor_table_id\fR \fIinteger\fR" 4 yading@10: .IX Item "color_table_id integer" yading@10: .PD 0 yading@10: .IP "\fBglobal_quality\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "global_quality integer (encoding,audio,video)" yading@10: .IP "\fBcoder\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "coder integer (encoding,video)" yading@10: .PD yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBvlc\fR" 4 yading@10: .IX Item "vlc" yading@10: variable length coder / huffman coder yading@10: .IP "\fBac\fR" 4 yading@10: .IX Item "ac" yading@10: arithmetic coder yading@10: .IP "\fBraw\fR" 4 yading@10: .IX Item "raw" yading@10: raw (no encoding) yading@10: .IP "\fBrle\fR" 4 yading@10: .IX Item "rle" yading@10: run-length coder yading@10: .IP "\fBdeflate\fR" 4 yading@10: .IX Item "deflate" yading@10: deflate-based coder yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBcontext\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "context integer (encoding,video)" yading@10: Set context model. yading@10: .IP "\fBslice_flags\fR \fIinteger\fR" 4 yading@10: .IX Item "slice_flags integer" yading@10: .PD 0 yading@10: .IP "\fBxvmc_acceleration\fR \fIinteger\fR" 4 yading@10: .IX Item "xvmc_acceleration integer" yading@10: .IP "\fBmbd\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "mbd integer (encoding,video)" yading@10: .PD yading@10: Set macroblock decision algorithm (high quality mode). yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBsimple\fR" 4 yading@10: .IX Item "simple" yading@10: use mbcmp (default) yading@10: .IP "\fBbits\fR" 4 yading@10: .IX Item "bits" yading@10: use fewest bits yading@10: .IP "\fBrd\fR" 4 yading@10: .IX Item "rd" yading@10: use best rate distortion yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBstream_codec_tag\fR \fIinteger\fR" 4 yading@10: .IX Item "stream_codec_tag integer" yading@10: .PD 0 yading@10: .IP "\fBsc_threshold\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "sc_threshold integer (encoding,video)" yading@10: .PD yading@10: Set scene change threshold. yading@10: .IP "\fBlmin\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "lmin integer (encoding,video)" yading@10: Set min lagrange factor (\s-1VBR\s0). yading@10: .IP "\fBlmax\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "lmax integer (encoding,video)" yading@10: Set max lagrange factor (\s-1VBR\s0). yading@10: .IP "\fBnr\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "nr integer (encoding,video)" yading@10: Set noise reduction. yading@10: .IP "\fBrc_init_occupancy\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_init_occupancy integer (encoding,video)" yading@10: Set number of bits which should be loaded into the rc buffer before yading@10: decoding starts. yading@10: .IP "\fBinter_threshold\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "inter_threshold integer (encoding,video)" yading@10: .PD 0 yading@10: .IP "\fBflags2\fR \fIflags\fR \fB(\fR\fIdecoding/encoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "flags2 flags (decoding/encoding,audio,video)" yading@10: .PD yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBfast\fR" 4 yading@10: .IX Item "fast" yading@10: allow non spec compliant speedup tricks yading@10: .IP "\fBsgop\fR" 4 yading@10: .IX Item "sgop" yading@10: Deprecated, use mpegvideo private options instead yading@10: .IP "\fBnoout\fR" 4 yading@10: .IX Item "noout" yading@10: skip bitstream encoding yading@10: .IP "\fBlocal_header\fR" 4 yading@10: .IX Item "local_header" yading@10: place global headers at every keyframe instead of in extradata yading@10: .IP "\fBchunks\fR" 4 yading@10: .IX Item "chunks" yading@10: Frame data might be split into multiple chunks yading@10: .IP "\fBshowall\fR" 4 yading@10: .IX Item "showall" yading@10: Show all frames before the first keyframe yading@10: .IP "\fBskiprd\fR" 4 yading@10: .IX Item "skiprd" yading@10: Deprecated, use mpegvideo private options instead yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBerror\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "error integer (encoding,video)" yading@10: .PD 0 yading@10: .IP "\fBqns\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "qns integer (encoding,video)" yading@10: .PD yading@10: Deprecated, use mpegvideo private options instead. yading@10: .IP "\fBthreads\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,video\fR\fB)\fR" 4 yading@10: .IX Item "threads integer (decoding/encoding,video)" yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBauto\fR" 4 yading@10: .IX Item "auto" yading@10: detect a good number of threads yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBme_threshold\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "me_threshold integer (encoding,video)" yading@10: Set motion estimation threshold. yading@10: .IP "\fBmb_threshold\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "mb_threshold integer (encoding,video)" yading@10: Set macroblock threshold. yading@10: .IP "\fBdc\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "dc integer (encoding,video)" yading@10: Set intra_dc_precision. yading@10: .IP "\fBnssew\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "nssew integer (encoding,video)" yading@10: Set nsse weight. yading@10: .IP "\fBskip_top\fR \fIinteger\fR \fB(\fR\fIdecoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skip_top integer (decoding,video)" yading@10: Set number of macroblock rows at the top which are skipped. yading@10: .IP "\fBskip_bottom\fR \fIinteger\fR \fB(\fR\fIdecoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skip_bottom integer (decoding,video)" yading@10: Set number of macroblock rows at the bottom which are skipped. yading@10: .IP "\fBprofile\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "profile integer (encoding,audio,video)" yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBunknown\fR" 4 yading@10: .IX Item "unknown" yading@10: .PD 0 yading@10: .IP "\fBaac_main\fR" 4 yading@10: .IX Item "aac_main" yading@10: .IP "\fBaac_low\fR" 4 yading@10: .IX Item "aac_low" yading@10: .IP "\fBaac_ssr\fR" 4 yading@10: .IX Item "aac_ssr" yading@10: .IP "\fBaac_ltp\fR" 4 yading@10: .IX Item "aac_ltp" yading@10: .IP "\fBaac_he\fR" 4 yading@10: .IX Item "aac_he" yading@10: .IP "\fBaac_he_v2\fR" 4 yading@10: .IX Item "aac_he_v2" yading@10: .IP "\fBaac_ld\fR" 4 yading@10: .IX Item "aac_ld" yading@10: .IP "\fBaac_eld\fR" 4 yading@10: .IX Item "aac_eld" yading@10: .IP "\fBdts\fR" 4 yading@10: .IX Item "dts" yading@10: .IP "\fBdts_es\fR" 4 yading@10: .IX Item "dts_es" yading@10: .IP "\fBdts_96_24\fR" 4 yading@10: .IX Item "dts_96_24" yading@10: .IP "\fBdts_hd_hra\fR" 4 yading@10: .IX Item "dts_hd_hra" yading@10: .IP "\fBdts_hd_ma\fR" 4 yading@10: .IX Item "dts_hd_ma" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBlevel\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "level integer (encoding,audio,video)" yading@10: .PD yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBunknown\fR" 4 yading@10: .IX Item "unknown" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .PD 0 yading@10: .IP "\fBlowres\fR \fIinteger\fR \fB(\fR\fIdecoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "lowres integer (decoding,audio,video)" yading@10: .PD yading@10: Decode at 1= 1/2, 2=1/4, 3=1/8 resolutions. yading@10: .IP "\fBskip_threshold\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skip_threshold integer (encoding,video)" yading@10: Set frame skip threshold. yading@10: .IP "\fBskip_factor\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skip_factor integer (encoding,video)" yading@10: Set frame skip factor. yading@10: .IP "\fBskip_exp\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skip_exp integer (encoding,video)" yading@10: Set frame skip exponent. yading@10: .IP "\fBskipcmp\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skipcmp integer (encoding,video)" yading@10: Set frame skip compare function. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBsad\fR" 4 yading@10: .IX Item "sad" yading@10: sum of absolute differences, fast (default) yading@10: .IP "\fBsse\fR" 4 yading@10: .IX Item "sse" yading@10: sum of squared errors yading@10: .IP "\fBsatd\fR" 4 yading@10: .IX Item "satd" yading@10: sum of absolute Hadamard transformed differences yading@10: .IP "\fBdct\fR" 4 yading@10: .IX Item "dct" yading@10: sum of absolute \s-1DCT\s0 transformed differences yading@10: .IP "\fBpsnr\fR" 4 yading@10: .IX Item "psnr" yading@10: sum of squared quantization errors (avoid, low quality) yading@10: .IP "\fBbit\fR" 4 yading@10: .IX Item "bit" yading@10: number of bits needed for the block yading@10: .IP "\fBrd\fR" 4 yading@10: .IX Item "rd" yading@10: rate distortion optimal, slow yading@10: .IP "\fBzero\fR" 4 yading@10: .IX Item "zero" yading@10: 0 yading@10: .IP "\fBvsad\fR" 4 yading@10: .IX Item "vsad" yading@10: sum of absolute vertical differences yading@10: .IP "\fBvsse\fR" 4 yading@10: .IX Item "vsse" yading@10: sum of squared vertical differences yading@10: .IP "\fBnsse\fR" 4 yading@10: .IX Item "nsse" yading@10: noise preserving sum of squared differences yading@10: .IP "\fBw53\fR" 4 yading@10: .IX Item "w53" yading@10: 5/3 wavelet, only used in snow yading@10: .IP "\fBw97\fR" 4 yading@10: .IX Item "w97" yading@10: 9/7 wavelet, only used in snow yading@10: .IP "\fBdctmax\fR" 4 yading@10: .IX Item "dctmax" yading@10: .PD 0 yading@10: .IP "\fBchroma\fR" 4 yading@10: .IX Item "chroma" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBborder_mask\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "border_mask float (encoding,video)" yading@10: .PD yading@10: Increase the quantizer for macroblocks close to borders. yading@10: .IP "\fBmblmin\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "mblmin integer (encoding,video)" yading@10: Set min macroblock lagrange factor (\s-1VBR\s0). yading@10: .IP "\fBmblmax\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "mblmax integer (encoding,video)" yading@10: Set max macroblock lagrange factor (\s-1VBR\s0). yading@10: .IP "\fBmepc\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "mepc integer (encoding,video)" yading@10: Set motion estimation bitrate penalty compensation (1.0 = 256). yading@10: .IP "\fBskip_loop_filter\fR \fIinteger\fR \fB(\fR\fIdecoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skip_loop_filter integer (decoding,video)" yading@10: .PD 0 yading@10: .IP "\fBskip_idct\fR \fIinteger\fR \fB(\fR\fIdecoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skip_idct integer (decoding,video)" yading@10: .IP "\fBskip_frame\fR \fIinteger\fR \fB(\fR\fIdecoding,video\fR\fB)\fR" 4 yading@10: .IX Item "skip_frame integer (decoding,video)" yading@10: .PD yading@10: Make decoder discard processing depending on the frame type selected yading@10: by the option value. yading@10: .Sp yading@10: \&\fBskip_loop_filter\fR skips frame loop filtering, \fBskip_idct\fR yading@10: skips frame IDCT/dequantization, \fBskip_frame\fR skips decoding. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBnone\fR" 4 yading@10: .IX Item "none" yading@10: Discard no frame. yading@10: .IP "\fBdefault\fR" 4 yading@10: .IX Item "default" yading@10: Discard useless frames like 0\-sized frames. yading@10: .IP "\fBnoref\fR" 4 yading@10: .IX Item "noref" yading@10: Discard all non-reference frames. yading@10: .IP "\fBbidir\fR" 4 yading@10: .IX Item "bidir" yading@10: Discard all bidirectional frames. yading@10: .IP "\fBnokey\fR" 4 yading@10: .IX Item "nokey" yading@10: Discard all frames excepts keyframes. yading@10: .IP "\fBall\fR" 4 yading@10: .IX Item "all" yading@10: Discard all frames. yading@10: .RE yading@10: .RS 4 yading@10: .Sp yading@10: Default value is \fBdefault\fR. yading@10: .RE yading@10: .IP "\fBbidir_refine\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "bidir_refine integer (encoding,video)" yading@10: Refine the two motion vectors used in bidirectional macroblocks. yading@10: .IP "\fBbrd_scale\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "brd_scale integer (encoding,video)" yading@10: Downscale frames for dynamic B\-frame decision. yading@10: .IP "\fBkeyint_min\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "keyint_min integer (encoding,video)" yading@10: Set minimum interval between IDR-frames. yading@10: .IP "\fBrefs\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "refs integer (encoding,video)" yading@10: Set reference frames to consider for motion compensation. yading@10: .IP "\fBchromaoffset\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "chromaoffset integer (encoding,video)" yading@10: Set chroma qp offset from luma. yading@10: .IP "\fBtrellis\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "trellis integer (encoding,audio,video)" yading@10: Set rate-distortion optimal quantization. yading@10: .IP "\fBsc_factor\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "sc_factor integer (encoding,video)" yading@10: Set value multiplied by qscale for each frame and added to yading@10: scene_change_score. yading@10: .IP "\fBmv0_threshold\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "mv0_threshold integer (encoding,video)" yading@10: .PD 0 yading@10: .IP "\fBb_sensitivity\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "b_sensitivity integer (encoding,video)" yading@10: .PD yading@10: Adjust sensitivity of b_frame_strategy 1. yading@10: .IP "\fBcompression_level\fR \fIinteger\fR \fB(\fR\fIencoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "compression_level integer (encoding,audio,video)" yading@10: .PD 0 yading@10: .IP "\fBmin_prediction_order\fR \fIinteger\fR \fB(\fR\fIencoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "min_prediction_order integer (encoding,audio)" yading@10: .IP "\fBmax_prediction_order\fR \fIinteger\fR \fB(\fR\fIencoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "max_prediction_order integer (encoding,audio)" yading@10: .IP "\fBtimecode_frame_start\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "timecode_frame_start integer (encoding,video)" yading@10: .PD yading@10: Set \s-1GOP\s0 timecode frame start number, in non drop frame format. yading@10: .IP "\fBrequest_channels\fR \fIinteger\fR \fB(\fR\fIdecoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "request_channels integer (decoding,audio)" yading@10: Set desired number of audio channels. yading@10: .IP "\fBbits_per_raw_sample\fR \fIinteger\fR" 4 yading@10: .IX Item "bits_per_raw_sample integer" yading@10: .PD 0 yading@10: .IP "\fBchannel_layout\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "channel_layout integer (decoding/encoding,audio)" yading@10: .PD yading@10: Possible values: yading@10: .IP "\fBrequest_channel_layout\fR \fIinteger\fR \fB(\fR\fIdecoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "request_channel_layout integer (decoding,audio)" yading@10: Possible values: yading@10: .IP "\fBrc_max_vbv_use\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_max_vbv_use float (encoding,video)" yading@10: .PD 0 yading@10: .IP "\fBrc_min_vbv_use\fR \fIfloat\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "rc_min_vbv_use float (encoding,video)" yading@10: .IP "\fBticks_per_frame\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,audio,video\fR\fB)\fR" 4 yading@10: .IX Item "ticks_per_frame integer (decoding/encoding,audio,video)" yading@10: .IP "\fBcolor_primaries\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,video\fR\fB)\fR" 4 yading@10: .IX Item "color_primaries integer (decoding/encoding,video)" yading@10: .IP "\fBcolor_trc\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,video\fR\fB)\fR" 4 yading@10: .IX Item "color_trc integer (decoding/encoding,video)" yading@10: .IP "\fBcolorspace\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,video\fR\fB)\fR" 4 yading@10: .IX Item "colorspace integer (decoding/encoding,video)" yading@10: .IP "\fBcolor_range\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,video\fR\fB)\fR" 4 yading@10: .IX Item "color_range integer (decoding/encoding,video)" yading@10: .IP "\fBchroma_sample_location\fR \fIinteger\fR \fB(\fR\fIdecoding/encoding,video\fR\fB)\fR" 4 yading@10: .IX Item "chroma_sample_location integer (decoding/encoding,video)" yading@10: .IP "\fBlog_level_offset\fR \fIinteger\fR" 4 yading@10: .IX Item "log_level_offset integer" yading@10: .PD yading@10: Set the log level offset. yading@10: .IP "\fBslices\fR \fIinteger\fR \fB(\fR\fIencoding,video\fR\fB)\fR" 4 yading@10: .IX Item "slices integer (encoding,video)" yading@10: Number of slices, used in parallelized encoding. yading@10: .IP "\fBthread_type\fR \fIflags\fR \fB(\fR\fIdecoding/encoding,video\fR\fB)\fR" 4 yading@10: .IX Item "thread_type flags (decoding/encoding,video)" yading@10: Select multithreading type. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBslice\fR" 4 yading@10: .IX Item "slice" yading@10: .PD 0 yading@10: .IP "\fBframe\fR" 4 yading@10: .IX Item "frame" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBaudio_service_type\fR \fIinteger\fR \fB(\fR\fIencoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "audio_service_type integer (encoding,audio)" yading@10: .PD yading@10: Set audio service type. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBma\fR" 4 yading@10: .IX Item "ma" yading@10: Main Audio Service yading@10: .IP "\fBef\fR" 4 yading@10: .IX Item "ef" yading@10: Effects yading@10: .IP "\fBvi\fR" 4 yading@10: .IX Item "vi" yading@10: Visually Impaired yading@10: .IP "\fBhi\fR" 4 yading@10: .IX Item "hi" yading@10: Hearing Impaired yading@10: .IP "\fBdi\fR" 4 yading@10: .IX Item "di" yading@10: Dialogue yading@10: .IP "\fBco\fR" 4 yading@10: .IX Item "co" yading@10: Commentary yading@10: .IP "\fBem\fR" 4 yading@10: .IX Item "em" yading@10: Emergency yading@10: .IP "\fBvo\fR" 4 yading@10: .IX Item "vo" yading@10: Voice Over yading@10: .IP "\fBka\fR" 4 yading@10: .IX Item "ka" yading@10: Karaoke yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBrequest_sample_fmt\fR \fIsample_fmt\fR \fB(\fR\fIdecoding,audio\fR\fB)\fR" 4 yading@10: .IX Item "request_sample_fmt sample_fmt (decoding,audio)" yading@10: Set sample format audio decoders should prefer. Default value is yading@10: \&\f(CW\*(C`none\*(C'\fR. yading@10: .IP "\fBpkt_timebase\fR \fIrational number\fR" 4 yading@10: .IX Item "pkt_timebase rational number" yading@10: .PD 0 yading@10: .IP "\fBsub_charenc\fR \fIencoding\fR \fB(\fR\fIdecoding,subtitles\fR\fB)\fR" 4 yading@10: .IX Item "sub_charenc encoding (decoding,subtitles)" yading@10: .PD yading@10: Set the input subtitles character encoding. yading@10: .SH "DECODERS" yading@10: .IX Header "DECODERS" yading@10: Decoders are configured elements in FFmpeg which allow the decoding of yading@10: multimedia streams. yading@10: .PP yading@10: When you configure your FFmpeg build, all the supported native decoders yading@10: are enabled by default. Decoders requiring an external library must be enabled yading@10: manually via the corresponding \f(CW\*(C`\-\-enable\-lib\*(C'\fR option. You can list all yading@10: available decoders using the configure option \f(CW\*(C`\-\-list\-decoders\*(C'\fR. yading@10: .PP yading@10: You can disable all the decoders with the configure option yading@10: \&\f(CW\*(C`\-\-disable\-decoders\*(C'\fR and selectively enable / disable single decoders yading@10: with the options \f(CW\*(C`\-\-enable\-decoder=\f(CIDECODER\f(CW\*(C'\fR / yading@10: \&\f(CW\*(C`\-\-disable\-decoder=\f(CIDECODER\f(CW\*(C'\fR. yading@10: .PP yading@10: The option \f(CW\*(C`\-codecs\*(C'\fR of the ff* tools will display the list of yading@10: enabled decoders. yading@10: .SH "VIDEO DECODERS" yading@10: .IX Header "VIDEO DECODERS" yading@10: A description of some of the currently available video decoders yading@10: follows. yading@10: .SS "rawvideo" yading@10: .IX Subsection "rawvideo" yading@10: Raw video decoder. yading@10: .PP yading@10: This decoder decodes rawvideo streams. yading@10: .PP yading@10: \fIOptions\fR yading@10: .IX Subsection "Options" yading@10: .IP "\fBtop\fR \fItop_field_first\fR" 4 yading@10: .IX Item "top top_field_first" yading@10: Specify the assumed field type of the input video. yading@10: .RS 4 yading@10: .IP "\fB\-1\fR" 4 yading@10: .IX Item "-1" yading@10: the video is assumed to be progressive (default) yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: bottom-field-first is assumed yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: top-field-first is assumed yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .SH "AUDIO DECODERS" yading@10: .IX Header "AUDIO DECODERS" yading@10: .SS "ffwavesynth" yading@10: .IX Subsection "ffwavesynth" yading@10: Internal wave synthetizer. yading@10: .PP yading@10: This decoder generates wave patterns according to predefined sequences. Its yading@10: use is purely internal and the format of the data it accepts is not publicly yading@10: documented. yading@10: .SH "SUBTITLES DECODERS" yading@10: .IX Header "SUBTITLES DECODERS" yading@10: .SS "dvdsub" yading@10: .IX Subsection "dvdsub" yading@10: This codec decodes the bitmap subtitles used in DVDs; the same subtitles can yading@10: also be found in VobSub file pairs and in some Matroska files. yading@10: .PP yading@10: \fIOptions\fR yading@10: .IX Subsection "Options" yading@10: .IP "\fBpalette\fR" 4 yading@10: .IX Item "palette" yading@10: Specify the global palette used by the bitmaps. When stored in VobSub, the yading@10: palette is normally specified in the index file; in Matroska, the palette is yading@10: stored in the codec extra-data in the same format as in VobSub. In DVDs, the yading@10: palette is stored in the \s-1IFO\s0 file, and therefore not available when reading yading@10: from dumped \s-1VOB\s0 files. yading@10: .Sp yading@10: The format for this option is a string containing 16 24\-bits hexadecimal yading@10: numbers (without 0x prefix) separated by comas, for example \f(CW\*(C`0d00ee, yading@10: ee450d, 101010, eaeaea, 0ce60b, ec14ed, ebff0b, 0d617a, 7b7b7b, d1d1d1, yading@10: 7b2a0e, 0d950c, 0f007b, cf0dec, cfa80c, 7c127b\*(C'\fR. yading@10: .SH "ENCODERS" yading@10: .IX Header "ENCODERS" yading@10: Encoders are configured elements in FFmpeg which allow the encoding of yading@10: multimedia streams. yading@10: .PP yading@10: When you configure your FFmpeg build, all the supported native encoders yading@10: are enabled by default. Encoders requiring an external library must be enabled yading@10: manually via the corresponding \f(CW\*(C`\-\-enable\-lib\*(C'\fR option. You can list all yading@10: available encoders using the configure option \f(CW\*(C`\-\-list\-encoders\*(C'\fR. yading@10: .PP yading@10: You can disable all the encoders with the configure option yading@10: \&\f(CW\*(C`\-\-disable\-encoders\*(C'\fR and selectively enable / disable single encoders yading@10: with the options \f(CW\*(C`\-\-enable\-encoder=\f(CIENCODER\f(CW\*(C'\fR / yading@10: \&\f(CW\*(C`\-\-disable\-encoder=\f(CIENCODER\f(CW\*(C'\fR. yading@10: .PP yading@10: The option \f(CW\*(C`\-codecs\*(C'\fR of the ff* tools will display the list of yading@10: enabled encoders. yading@10: .SH "AUDIO ENCODERS" yading@10: .IX Header "AUDIO ENCODERS" yading@10: A description of some of the currently available audio encoders yading@10: follows. yading@10: .SS "ac3 and ac3_fixed" yading@10: .IX Subsection "ac3 and ac3_fixed" yading@10: \&\s-1AC\-3\s0 audio encoders. yading@10: .PP yading@10: These encoders implement part of \s-1ATSC\s0 A/52:2010 and \s-1ETSI\s0 \s-1TS\s0 102 366, as well as yading@10: the undocumented RealAudio 3 (a.k.a. dnet). yading@10: .PP yading@10: The \fIac3\fR encoder uses floating-point math, while the \fIac3_fixed\fR yading@10: encoder only uses fixed-point integer math. This does not mean that one is yading@10: always faster, just that one or the other may be better suited to a yading@10: particular system. The floating-point encoder will generally produce better yading@10: quality audio for a given bitrate. The \fIac3_fixed\fR encoder is not the yading@10: default codec for any of the output formats, so it must be specified explicitly yading@10: using the option \f(CW\*(C`\-acodec ac3_fixed\*(C'\fR in order to use it. yading@10: .PP yading@10: \fI\s-1AC\-3\s0 Metadata\fR yading@10: .IX Subsection "AC-3 Metadata" yading@10: .PP yading@10: The \s-1AC\-3\s0 metadata options are used to set parameters that describe the audio, yading@10: but in most cases do not affect the audio encoding itself. Some of the options yading@10: do directly affect or influence the decoding and playback of the resulting yading@10: bitstream, while others are just for informational purposes. A few of the yading@10: options will add bits to the output stream that could otherwise be used for yading@10: audio data, and will thus affect the quality of the output. Those will be yading@10: indicated accordingly with a note in the option list below. yading@10: .PP yading@10: These parameters are described in detail in several publicly-available yading@10: documents. yading@10: .IP "*<<\fBhttp://www.atsc.org/cms/standards/a_52\-2010.pdf\fR>>" 4 yading@10: .IX Item "*<>" yading@10: .PD 0 yading@10: .IP "*<<\fBhttp://www.atsc.org/cms/standards/a_54a_with_corr_1.pdf\fR>>" 4 yading@10: .IX Item "*<>" yading@10: .IP "*<<\fBhttp://www.dolby.com/uploadedFiles/zz\-_Shared_Assets/English_PDFs/Professional/18_Metadata.Guide.pdf\fR>>" 4 yading@10: .IX Item "*<>" yading@10: .IP "*<<\fBhttp://www.dolby.com/uploadedFiles/zz\-_Shared_Assets/English_PDFs/Professional/46_DDEncodingGuidelines.pdf\fR>>" 4 yading@10: .IX Item "*<>" yading@10: .PD yading@10: .PP yading@10: Metadata Control Options yading@10: .IX Subsection "Metadata Control Options" yading@10: .IP "\fB\-per_frame_metadata\fR \fIboolean\fR" 4 yading@10: .IX Item "-per_frame_metadata boolean" yading@10: Allow Per-Frame Metadata. Specifies if the encoder should check for changing yading@10: metadata for each frame. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: The metadata values set at initialization will be used for every frame in the yading@10: stream. (default) yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: Metadata values can be changed before encoding each frame. yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .PP yading@10: Downmix Levels yading@10: .IX Subsection "Downmix Levels" yading@10: .IP "\fB\-center_mixlev\fR \fIlevel\fR" 4 yading@10: .IX Item "-center_mixlev level" yading@10: Center Mix Level. The amount of gain the decoder should apply to the center yading@10: channel when downmixing to stereo. This field will only be written to the yading@10: bitstream if a center channel is present. The value is specified as a scale yading@10: factor. There are 3 valid values: yading@10: .RS 4 yading@10: .IP "\fB0.707\fR" 4 yading@10: .IX Item "0.707" yading@10: Apply \-3dB gain yading@10: .IP "\fB0.595\fR" 4 yading@10: .IX Item "0.595" yading@10: Apply \-4.5dB gain (default) yading@10: .IP "\fB0.500\fR" 4 yading@10: .IX Item "0.500" yading@10: Apply \-6dB gain yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-surround_mixlev\fR \fIlevel\fR" 4 yading@10: .IX Item "-surround_mixlev level" yading@10: Surround Mix Level. The amount of gain the decoder should apply to the surround yading@10: channel(s) when downmixing to stereo. This field will only be written to the yading@10: bitstream if one or more surround channels are present. The value is specified yading@10: as a scale factor. There are 3 valid values: yading@10: .RS 4 yading@10: .IP "\fB0.707\fR" 4 yading@10: .IX Item "0.707" yading@10: Apply \-3dB gain yading@10: .IP "\fB0.500\fR" 4 yading@10: .IX Item "0.500" yading@10: Apply \-6dB gain (default) yading@10: .IP "\fB0.000\fR" 4 yading@10: .IX Item "0.000" yading@10: Silence Surround Channel(s) yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .PP yading@10: Audio Production Information yading@10: .IX Subsection "Audio Production Information" yading@10: .PP yading@10: Audio Production Information is optional information describing the mixing yading@10: environment. Either none or both of the fields are written to the bitstream. yading@10: .IP "\fB\-mixing_level\fR \fInumber\fR" 4 yading@10: .IX Item "-mixing_level number" yading@10: Mixing Level. Specifies peak sound pressure level (\s-1SPL\s0) in the production yading@10: environment when the mix was mastered. Valid values are 80 to 111, or \-1 for yading@10: unknown or not indicated. The default value is \-1, but that value cannot be yading@10: used if the Audio Production Information is written to the bitstream. Therefore, yading@10: if the \f(CW\*(C`room_type\*(C'\fR option is not the default value, the \f(CW\*(C`mixing_level\*(C'\fR yading@10: option must not be \-1. yading@10: .IP "\fB\-room_type\fR \fItype\fR" 4 yading@10: .IX Item "-room_type type" yading@10: Room Type. Describes the equalization used during the final mixing session at yading@10: the studio or on the dubbing stage. A large room is a dubbing stage with the yading@10: industry standard X\-curve equalization; a small room has flat equalization. yading@10: This field will not be written to the bitstream if both the \f(CW\*(C`mixing_level\*(C'\fR yading@10: option and the \f(CW\*(C`room_type\*(C'\fR option have the default values. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBnotindicated\fR" 4 yading@10: .IX Item "notindicated" yading@10: .PD yading@10: Not Indicated (default) yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBlarge\fR" 4 yading@10: .IX Item "large" yading@10: .PD yading@10: Large Room yading@10: .IP "\fB2\fR" 4 yading@10: .IX Item "2" yading@10: .PD 0 yading@10: .IP "\fBsmall\fR" 4 yading@10: .IX Item "small" yading@10: .PD yading@10: Small Room yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .PP yading@10: Other Metadata Options yading@10: .IX Subsection "Other Metadata Options" yading@10: .IP "\fB\-copyright\fR \fIboolean\fR" 4 yading@10: .IX Item "-copyright boolean" yading@10: Copyright Indicator. Specifies whether a copyright exists for this audio. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBoff\fR" 4 yading@10: .IX Item "off" yading@10: .PD yading@10: No Copyright Exists (default) yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBon\fR" 4 yading@10: .IX Item "on" yading@10: .PD yading@10: Copyright Exists yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-dialnorm\fR \fIvalue\fR" 4 yading@10: .IX Item "-dialnorm value" yading@10: Dialogue Normalization. Indicates how far the average dialogue level of the yading@10: program is below digital 100% full scale (0 dBFS). This parameter determines a yading@10: level shift during audio reproduction that sets the average volume of the yading@10: dialogue to a preset level. The goal is to match volume level between program yading@10: sources. A value of \-31dB will result in no volume level change, relative to yading@10: the source volume, during audio reproduction. Valid values are whole numbers in yading@10: the range \-31 to \-1, with \-31 being the default. yading@10: .IP "\fB\-dsur_mode\fR \fImode\fR" 4 yading@10: .IX Item "-dsur_mode mode" yading@10: Dolby Surround Mode. Specifies whether the stereo signal uses Dolby Surround yading@10: (Pro Logic). This field will only be written to the bitstream if the audio yading@10: stream is stereo. Using this option does \fB\s-1NOT\s0\fR mean the encoder will actually yading@10: apply Dolby Surround processing. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBnotindicated\fR" 4 yading@10: .IX Item "notindicated" yading@10: .PD yading@10: Not Indicated (default) yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBoff\fR" 4 yading@10: .IX Item "off" yading@10: .PD yading@10: Not Dolby Surround Encoded yading@10: .IP "\fB2\fR" 4 yading@10: .IX Item "2" yading@10: .PD 0 yading@10: .IP "\fBon\fR" 4 yading@10: .IX Item "on" yading@10: .PD yading@10: Dolby Surround Encoded yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-original\fR \fIboolean\fR" 4 yading@10: .IX Item "-original boolean" yading@10: Original Bit Stream Indicator. Specifies whether this audio is from the yading@10: original source and not a copy. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBoff\fR" 4 yading@10: .IX Item "off" yading@10: .PD yading@10: Not Original Source yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBon\fR" 4 yading@10: .IX Item "on" yading@10: .PD yading@10: Original Source (default) yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .PP yading@10: \fIExtended Bitstream Information\fR yading@10: .IX Subsection "Extended Bitstream Information" yading@10: .PP yading@10: The extended bitstream options are part of the Alternate Bit Stream Syntax as yading@10: specified in Annex D of the A/52:2010 standard. It is grouped into 2 parts. yading@10: If any one parameter in a group is specified, all values in that group will be yading@10: written to the bitstream. Default values are used for those that are written yading@10: but have not been specified. If the mixing levels are written, the decoder yading@10: will use these values instead of the ones specified in the \f(CW\*(C`center_mixlev\*(C'\fR yading@10: and \f(CW\*(C`surround_mixlev\*(C'\fR options if it supports the Alternate Bit Stream yading@10: Syntax. yading@10: .PP yading@10: Extended Bitstream Information \- Part 1 yading@10: .IX Subsection "Extended Bitstream Information - Part 1" yading@10: .IP "\fB\-dmix_mode\fR \fImode\fR" 4 yading@10: .IX Item "-dmix_mode mode" yading@10: Preferred Stereo Downmix Mode. Allows the user to select either Lt/Rt yading@10: (Dolby Surround) or Lo/Ro (normal stereo) as the preferred stereo downmix mode. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBnotindicated\fR" 4 yading@10: .IX Item "notindicated" yading@10: .PD yading@10: Not Indicated (default) yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBltrt\fR" 4 yading@10: .IX Item "ltrt" yading@10: .PD yading@10: Lt/Rt Downmix Preferred yading@10: .IP "\fB2\fR" 4 yading@10: .IX Item "2" yading@10: .PD 0 yading@10: .IP "\fBloro\fR" 4 yading@10: .IX Item "loro" yading@10: .PD yading@10: Lo/Ro Downmix Preferred yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-ltrt_cmixlev\fR \fIlevel\fR" 4 yading@10: .IX Item "-ltrt_cmixlev level" yading@10: Lt/Rt Center Mix Level. The amount of gain the decoder should apply to the yading@10: center channel when downmixing to stereo in Lt/Rt mode. yading@10: .RS 4 yading@10: .IP "\fB1.414\fR" 4 yading@10: .IX Item "1.414" yading@10: Apply +3dB gain yading@10: .IP "\fB1.189\fR" 4 yading@10: .IX Item "1.189" yading@10: Apply +1.5dB gain yading@10: .IP "\fB1.000\fR" 4 yading@10: .IX Item "1.000" yading@10: Apply 0dB gain yading@10: .IP "\fB0.841\fR" 4 yading@10: .IX Item "0.841" yading@10: Apply \-1.5dB gain yading@10: .IP "\fB0.707\fR" 4 yading@10: .IX Item "0.707" yading@10: Apply \-3.0dB gain yading@10: .IP "\fB0.595\fR" 4 yading@10: .IX Item "0.595" yading@10: Apply \-4.5dB gain (default) yading@10: .IP "\fB0.500\fR" 4 yading@10: .IX Item "0.500" yading@10: Apply \-6.0dB gain yading@10: .IP "\fB0.000\fR" 4 yading@10: .IX Item "0.000" yading@10: Silence Center Channel yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-ltrt_surmixlev\fR \fIlevel\fR" 4 yading@10: .IX Item "-ltrt_surmixlev level" yading@10: Lt/Rt Surround Mix Level. The amount of gain the decoder should apply to the yading@10: surround channel(s) when downmixing to stereo in Lt/Rt mode. yading@10: .RS 4 yading@10: .IP "\fB0.841\fR" 4 yading@10: .IX Item "0.841" yading@10: Apply \-1.5dB gain yading@10: .IP "\fB0.707\fR" 4 yading@10: .IX Item "0.707" yading@10: Apply \-3.0dB gain yading@10: .IP "\fB0.595\fR" 4 yading@10: .IX Item "0.595" yading@10: Apply \-4.5dB gain yading@10: .IP "\fB0.500\fR" 4 yading@10: .IX Item "0.500" yading@10: Apply \-6.0dB gain (default) yading@10: .IP "\fB0.000\fR" 4 yading@10: .IX Item "0.000" yading@10: Silence Surround Channel(s) yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-loro_cmixlev\fR \fIlevel\fR" 4 yading@10: .IX Item "-loro_cmixlev level" yading@10: Lo/Ro Center Mix Level. The amount of gain the decoder should apply to the yading@10: center channel when downmixing to stereo in Lo/Ro mode. yading@10: .RS 4 yading@10: .IP "\fB1.414\fR" 4 yading@10: .IX Item "1.414" yading@10: Apply +3dB gain yading@10: .IP "\fB1.189\fR" 4 yading@10: .IX Item "1.189" yading@10: Apply +1.5dB gain yading@10: .IP "\fB1.000\fR" 4 yading@10: .IX Item "1.000" yading@10: Apply 0dB gain yading@10: .IP "\fB0.841\fR" 4 yading@10: .IX Item "0.841" yading@10: Apply \-1.5dB gain yading@10: .IP "\fB0.707\fR" 4 yading@10: .IX Item "0.707" yading@10: Apply \-3.0dB gain yading@10: .IP "\fB0.595\fR" 4 yading@10: .IX Item "0.595" yading@10: Apply \-4.5dB gain (default) yading@10: .IP "\fB0.500\fR" 4 yading@10: .IX Item "0.500" yading@10: Apply \-6.0dB gain yading@10: .IP "\fB0.000\fR" 4 yading@10: .IX Item "0.000" yading@10: Silence Center Channel yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-loro_surmixlev\fR \fIlevel\fR" 4 yading@10: .IX Item "-loro_surmixlev level" yading@10: Lo/Ro Surround Mix Level. The amount of gain the decoder should apply to the yading@10: surround channel(s) when downmixing to stereo in Lo/Ro mode. yading@10: .RS 4 yading@10: .IP "\fB0.841\fR" 4 yading@10: .IX Item "0.841" yading@10: Apply \-1.5dB gain yading@10: .IP "\fB0.707\fR" 4 yading@10: .IX Item "0.707" yading@10: Apply \-3.0dB gain yading@10: .IP "\fB0.595\fR" 4 yading@10: .IX Item "0.595" yading@10: Apply \-4.5dB gain yading@10: .IP "\fB0.500\fR" 4 yading@10: .IX Item "0.500" yading@10: Apply \-6.0dB gain (default) yading@10: .IP "\fB0.000\fR" 4 yading@10: .IX Item "0.000" yading@10: Silence Surround Channel(s) yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .PP yading@10: Extended Bitstream Information \- Part 2 yading@10: .IX Subsection "Extended Bitstream Information - Part 2" yading@10: .IP "\fB\-dsurex_mode\fR \fImode\fR" 4 yading@10: .IX Item "-dsurex_mode mode" yading@10: Dolby Surround \s-1EX\s0 Mode. Indicates whether the stream uses Dolby Surround \s-1EX\s0 yading@10: (7.1 matrixed to 5.1). Using this option does \fB\s-1NOT\s0\fR mean the encoder will actually yading@10: apply Dolby Surround \s-1EX\s0 processing. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBnotindicated\fR" 4 yading@10: .IX Item "notindicated" yading@10: .PD yading@10: Not Indicated (default) yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBon\fR" 4 yading@10: .IX Item "on" yading@10: .PD yading@10: Dolby Surround \s-1EX\s0 Off yading@10: .IP "\fB2\fR" 4 yading@10: .IX Item "2" yading@10: .PD 0 yading@10: .IP "\fBoff\fR" 4 yading@10: .IX Item "off" yading@10: .PD yading@10: Dolby Surround \s-1EX\s0 On yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-dheadphone_mode\fR \fImode\fR" 4 yading@10: .IX Item "-dheadphone_mode mode" yading@10: Dolby Headphone Mode. Indicates whether the stream uses Dolby Headphone yading@10: encoding (multi-channel matrixed to 2.0 for use with headphones). Using this yading@10: option does \fB\s-1NOT\s0\fR mean the encoder will actually apply Dolby Headphone yading@10: processing. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBnotindicated\fR" 4 yading@10: .IX Item "notindicated" yading@10: .PD yading@10: Not Indicated (default) yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBon\fR" 4 yading@10: .IX Item "on" yading@10: .PD yading@10: Dolby Headphone Off yading@10: .IP "\fB2\fR" 4 yading@10: .IX Item "2" yading@10: .PD 0 yading@10: .IP "\fBoff\fR" 4 yading@10: .IX Item "off" yading@10: .PD yading@10: Dolby Headphone On yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-ad_conv_type\fR \fItype\fR" 4 yading@10: .IX Item "-ad_conv_type type" yading@10: A/D Converter Type. Indicates whether the audio has passed through \s-1HDCD\s0 A/D yading@10: conversion. yading@10: .RS 4 yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBstandard\fR" 4 yading@10: .IX Item "standard" yading@10: .PD yading@10: Standard A/D Converter (default) yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBhdcd\fR" 4 yading@10: .IX Item "hdcd" yading@10: .PD yading@10: \&\s-1HDCD\s0 A/D Converter yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .PP yading@10: \fIOther \s-1AC\-3\s0 Encoding Options\fR yading@10: .IX Subsection "Other AC-3 Encoding Options" yading@10: .IP "\fB\-stereo_rematrixing\fR \fIboolean\fR" 4 yading@10: .IX Item "-stereo_rematrixing boolean" yading@10: Stereo Rematrixing. Enables/Disables use of rematrixing for stereo input. This yading@10: is an optional \s-1AC\-3\s0 feature that increases quality by selectively encoding yading@10: the left/right channels as mid/side. This option is enabled by default, and it yading@10: is highly recommended that it be left as enabled except for testing purposes. yading@10: .PP yading@10: \fIFloating-Point-Only \s-1AC\-3\s0 Encoding Options\fR yading@10: .IX Subsection "Floating-Point-Only AC-3 Encoding Options" yading@10: .PP yading@10: These options are only valid for the floating-point encoder and do not exist yading@10: for the fixed-point encoder due to the corresponding features not being yading@10: implemented in fixed-point. yading@10: .IP "\fB\-channel_coupling\fR \fIboolean\fR" 4 yading@10: .IX Item "-channel_coupling boolean" yading@10: Enables/Disables use of channel coupling, which is an optional \s-1AC\-3\s0 feature yading@10: that increases quality by combining high frequency information from multiple yading@10: channels into a single channel. The per-channel high frequency information is yading@10: sent with less accuracy in both the frequency and time domains. This allows yading@10: more bits to be used for lower frequencies while preserving enough information yading@10: to reconstruct the high frequencies. This option is enabled by default for the yading@10: floating-point encoder and should generally be left as enabled except for yading@10: testing purposes or to increase encoding speed. yading@10: .RS 4 yading@10: .IP "\fB\-1\fR" 4 yading@10: .IX Item "-1" yading@10: .PD 0 yading@10: .IP "\fBauto\fR" 4 yading@10: .IX Item "auto" yading@10: .PD yading@10: Selected by Encoder (default) yading@10: .IP "\fB0\fR" 4 yading@10: .IX Item "0" yading@10: .PD 0 yading@10: .IP "\fBoff\fR" 4 yading@10: .IX Item "off" yading@10: .PD yading@10: Disable Channel Coupling yading@10: .IP "\fB1\fR" 4 yading@10: .IX Item "1" yading@10: .PD 0 yading@10: .IP "\fBon\fR" 4 yading@10: .IX Item "on" yading@10: .PD yading@10: Enable Channel Coupling yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-cpl_start_band\fR \fInumber\fR" 4 yading@10: .IX Item "-cpl_start_band number" yading@10: Coupling Start Band. Sets the channel coupling start band, from 1 to 15. If a yading@10: value higher than the bandwidth is used, it will be reduced to 1 less than the yading@10: coupling end band. If \fIauto\fR is used, the start band will be determined by yading@10: the encoder based on the bit rate, sample rate, and channel layout. This option yading@10: has no effect if channel coupling is disabled. yading@10: .RS 4 yading@10: .IP "\fB\-1\fR" 4 yading@10: .IX Item "-1" yading@10: .PD 0 yading@10: .IP "\fBauto\fR" 4 yading@10: .IX Item "auto" yading@10: .PD yading@10: Selected by Encoder (default) yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .SH "VIDEO ENCODERS" yading@10: .IX Header "VIDEO ENCODERS" yading@10: A description of some of the currently available video encoders yading@10: follows. yading@10: .SS "libtheora" yading@10: .IX Subsection "libtheora" yading@10: Theora format supported through libtheora. yading@10: .PP yading@10: Requires the presence of the libtheora headers and library during yading@10: configuration. You need to explicitly configure the build with yading@10: \&\f(CW\*(C`\-\-enable\-libtheora\*(C'\fR. yading@10: .PP yading@10: \fIOptions\fR yading@10: .IX Subsection "Options" yading@10: .PP yading@10: The following global options are mapped to internal libtheora options yading@10: which affect the quality and the bitrate of the encoded stream. yading@10: .IP "\fBb\fR" 4 yading@10: .IX Item "b" yading@10: Set the video bitrate, only works if the \f(CW\*(C`qscale\*(C'\fR flag in yading@10: \&\fBflags\fR is not enabled. yading@10: .IP "\fBflags\fR" 4 yading@10: .IX Item "flags" yading@10: Used to enable constant quality mode encoding through the yading@10: \&\fBqscale\fR flag, and to enable the \f(CW\*(C`pass1\*(C'\fR and \f(CW\*(C`pass2\*(C'\fR yading@10: modes. yading@10: .IP "\fBg\fR" 4 yading@10: .IX Item "g" yading@10: Set the \s-1GOP\s0 size. yading@10: .IP "\fBglobal_quality\fR" 4 yading@10: .IX Item "global_quality" yading@10: Set the global quality in lambda units, only works if the yading@10: \&\f(CW\*(C`qscale\*(C'\fR flag in \fBflags\fR is enabled. The value is clipped yading@10: in the [0 \- 10*\f(CW\*(C`FF_QP2LAMBDA\*(C'\fR] range, and then multiplied for 6.3 yading@10: to get a value in the native libtheora range [0\-63]. A higher value yading@10: corresponds to a higher quality. yading@10: .Sp yading@10: For example, to set maximum constant quality encoding with yading@10: \&\fBffmpeg\fR: yading@10: .Sp yading@10: .Vb 1 yading@10: \& ffmpeg \-i INPUT \-flags:v qscale \-global_quality:v "10*QP2LAMBDA" \-codec:v libtheora OUTPUT.ogg yading@10: .Ve yading@10: .SS "libvpx" yading@10: .IX Subsection "libvpx" yading@10: \&\s-1VP8\s0 format supported through libvpx. yading@10: .PP yading@10: Requires the presence of the libvpx headers and library during configuration. yading@10: You need to explicitly configure the build with \f(CW\*(C`\-\-enable\-libvpx\*(C'\fR. yading@10: .PP yading@10: \fIOptions\fR yading@10: .IX Subsection "Options" yading@10: .PP yading@10: Mapping from FFmpeg to libvpx options with conversion notes in parentheses. yading@10: .IP "\fBthreads\fR" 4 yading@10: .IX Item "threads" yading@10: g_threads yading@10: .IP "\fBprofile\fR" 4 yading@10: .IX Item "profile" yading@10: g_profile yading@10: .IP "\fBvb\fR" 4 yading@10: .IX Item "vb" yading@10: rc_target_bitrate yading@10: .IP "\fBg\fR" 4 yading@10: .IX Item "g" yading@10: kf_max_dist yading@10: .IP "\fBkeyint_min\fR" 4 yading@10: .IX Item "keyint_min" yading@10: kf_min_dist yading@10: .IP "\fBqmin\fR" 4 yading@10: .IX Item "qmin" yading@10: rc_min_quantizer yading@10: .IP "\fBqmax\fR" 4 yading@10: .IX Item "qmax" yading@10: rc_max_quantizer yading@10: .IP "\fBbufsize, vb\fR" 4 yading@10: .IX Item "bufsize, vb" yading@10: rc_buf_sz yading@10: \&\f(CW\*(C`(bufsize * 1000 / vb)\*(C'\fR yading@10: .Sp yading@10: rc_buf_optimal_sz yading@10: \&\f(CW\*(C`(bufsize * 1000 / vb * 5 / 6)\*(C'\fR yading@10: .IP "\fBrc_init_occupancy, vb\fR" 4 yading@10: .IX Item "rc_init_occupancy, vb" yading@10: rc_buf_initial_sz yading@10: \&\f(CW\*(C`(rc_init_occupancy * 1000 / vb)\*(C'\fR yading@10: .IP "\fBrc_buffer_aggressivity\fR" 4 yading@10: .IX Item "rc_buffer_aggressivity" yading@10: rc_undershoot_pct yading@10: .IP "\fBskip_threshold\fR" 4 yading@10: .IX Item "skip_threshold" yading@10: rc_dropframe_thresh yading@10: .IP "\fBqcomp\fR" 4 yading@10: .IX Item "qcomp" yading@10: rc_2pass_vbr_bias_pct yading@10: .IP "\fBmaxrate, vb\fR" 4 yading@10: .IX Item "maxrate, vb" yading@10: rc_2pass_vbr_maxsection_pct yading@10: \&\f(CW\*(C`(maxrate * 100 / vb)\*(C'\fR yading@10: .IP "\fBminrate, vb\fR" 4 yading@10: .IX Item "minrate, vb" yading@10: rc_2pass_vbr_minsection_pct yading@10: \&\f(CW\*(C`(minrate * 100 / vb)\*(C'\fR yading@10: .IP "\fBminrate, maxrate, vb\fR" 4 yading@10: .IX Item "minrate, maxrate, vb" yading@10: \&\f(CW\*(C`VPX_CBR\*(C'\fR yading@10: \&\f(CW\*(C`(minrate == maxrate == vb)\*(C'\fR yading@10: .IP "\fBcrf\fR" 4 yading@10: .IX Item "crf" yading@10: \&\f(CW\*(C`VPX_CQ\*(C'\fR, \f(CW\*(C`VP8E_SET_CQ_LEVEL\*(C'\fR yading@10: .IP "\fBquality\fR" 4 yading@10: .IX Item "quality" yading@10: .RS 4 yading@10: .PD 0 yading@10: .IP "\fIbest\fR" 4 yading@10: .IX Item "best" yading@10: .PD yading@10: \&\f(CW\*(C`VPX_DL_BEST_QUALITY\*(C'\fR yading@10: .IP "\fIgood\fR" 4 yading@10: .IX Item "good" yading@10: \&\f(CW\*(C`VPX_DL_GOOD_QUALITY\*(C'\fR yading@10: .IP "\fIrealtime\fR" 4 yading@10: .IX Item "realtime" yading@10: \&\f(CW\*(C`VPX_DL_REALTIME\*(C'\fR yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBspeed\fR" 4 yading@10: .IX Item "speed" yading@10: \&\f(CW\*(C`VP8E_SET_CPUUSED\*(C'\fR yading@10: .IP "\fBnr\fR" 4 yading@10: .IX Item "nr" yading@10: \&\f(CW\*(C`VP8E_SET_NOISE_SENSITIVITY\*(C'\fR yading@10: .IP "\fBmb_threshold\fR" 4 yading@10: .IX Item "mb_threshold" yading@10: \&\f(CW\*(C`VP8E_SET_STATIC_THRESHOLD\*(C'\fR yading@10: .IP "\fBslices\fR" 4 yading@10: .IX Item "slices" yading@10: \&\f(CW\*(C`VP8E_SET_TOKEN_PARTITIONS\*(C'\fR yading@10: .IP "\fBmax-intra-rate\fR" 4 yading@10: .IX Item "max-intra-rate" yading@10: \&\f(CW\*(C`VP8E_SET_MAX_INTRA_BITRATE_PCT\*(C'\fR yading@10: .IP "\fBforce_key_frames\fR" 4 yading@10: .IX Item "force_key_frames" yading@10: \&\f(CW\*(C`VPX_EFLAG_FORCE_KF\*(C'\fR yading@10: .IP "\fBAlternate reference frame related\fR" 4 yading@10: .IX Item "Alternate reference frame related" yading@10: .RS 4 yading@10: .PD 0 yading@10: .IP "\fBvp8flags altref\fR" 4 yading@10: .IX Item "vp8flags altref" yading@10: .PD yading@10: \&\f(CW\*(C`VP8E_SET_ENABLEAUTOALTREF\*(C'\fR yading@10: .IP "\fIarnr_max_frames\fR" 4 yading@10: .IX Item "arnr_max_frames" yading@10: \&\f(CW\*(C`VP8E_SET_ARNR_MAXFRAMES\*(C'\fR yading@10: .IP "\fIarnr_type\fR" 4 yading@10: .IX Item "arnr_type" yading@10: \&\f(CW\*(C`VP8E_SET_ARNR_TYPE\*(C'\fR yading@10: .IP "\fIarnr_strength\fR" 4 yading@10: .IX Item "arnr_strength" yading@10: \&\f(CW\*(C`VP8E_SET_ARNR_STRENGTH\*(C'\fR yading@10: .IP "\fIrc_lookahead\fR" 4 yading@10: .IX Item "rc_lookahead" yading@10: g_lag_in_frames yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBvp8flags error_resilient\fR" 4 yading@10: .IX Item "vp8flags error_resilient" yading@10: g_error_resilient yading@10: .PP yading@10: For more information about libvpx see: yading@10: <\fBhttp://www.webmproject.org/\fR> yading@10: .SS "libx264" yading@10: .IX Subsection "libx264" yading@10: x264 H.264/MPEG\-4 \s-1AVC\s0 encoder wrapper yading@10: .PP yading@10: Requires the presence of the libx264 headers and library during yading@10: configuration. You need to explicitly configure the build with yading@10: \&\f(CW\*(C`\-\-enable\-libx264\*(C'\fR. yading@10: .PP yading@10: x264 supports an impressive number of features, including 8x8 and 4x4 adaptive yading@10: spatial transform, adaptive B\-frame placement, \s-1CAVLC/CABAC\s0 entropy coding, yading@10: interlacing (\s-1MBAFF\s0), lossless mode, psy optimizations for detail retention yading@10: (adaptive quantization, psy-RD, psy-trellis). yading@10: .PP yading@10: The FFmpeg wrapper provides a mapping for most of them using global options yading@10: that match those of the encoders and provides private options for the unique yading@10: encoder options. Additionally an expert override is provided to directly pass yading@10: a list of key=value tuples as accepted by x264_param_parse. yading@10: .PP yading@10: \fIOption Mapping\fR yading@10: .IX Subsection "Option Mapping" yading@10: .PP yading@10: The following options are supported by the x264 wrapper, the x264\-equivalent yading@10: options follow the FFmpeg ones. yading@10: .IP "\fBb : bitrate\fR" 4 yading@10: .IX Item "b : bitrate" yading@10: FFmpeg \f(CW\*(C`b\*(C'\fR option is expressed in bits/s, x264 \f(CW\*(C`bitrate\*(C'\fR in kilobits/s. yading@10: .IP "\fBbf : bframes\fR" 4 yading@10: .IX Item "bf : bframes" yading@10: Maximum number of B\-frames. yading@10: .IP "\fBg : keyint\fR" 4 yading@10: .IX Item "g : keyint" yading@10: Maximum \s-1GOP\s0 size. yading@10: .IP "\fBqmin : qpmin\fR" 4 yading@10: .IX Item "qmin : qpmin" yading@10: .PD 0 yading@10: .IP "\fBqmax : qpmax\fR" 4 yading@10: .IX Item "qmax : qpmax" yading@10: .IP "\fBqdiff : qpstep\fR" 4 yading@10: .IX Item "qdiff : qpstep" yading@10: .IP "\fBqblur : qblur\fR" 4 yading@10: .IX Item "qblur : qblur" yading@10: .IP "\fBqcomp : qcomp\fR" 4 yading@10: .IX Item "qcomp : qcomp" yading@10: .IP "\fBrefs : ref\fR" 4 yading@10: .IX Item "refs : ref" yading@10: .IP "\fBsc_threshold : scenecut\fR" 4 yading@10: .IX Item "sc_threshold : scenecut" yading@10: .IP "\fBtrellis : trellis\fR" 4 yading@10: .IX Item "trellis : trellis" yading@10: .IP "\fBnr : nr\fR" 4 yading@10: .IX Item "nr : nr" yading@10: .PD yading@10: Noise reduction. yading@10: .IP "\fBme_range : merange\fR" 4 yading@10: .IX Item "me_range : merange" yading@10: .PD 0 yading@10: .IP "\fBme_method : me\fR" 4 yading@10: .IX Item "me_method : me" yading@10: .IP "\fBsubq : subme\fR" 4 yading@10: .IX Item "subq : subme" yading@10: .IP "\fBb_strategy : b\-adapt\fR" 4 yading@10: .IX Item "b_strategy : b-adapt" yading@10: .IP "\fBkeyint_min : keyint-min\fR" 4 yading@10: .IX Item "keyint_min : keyint-min" yading@10: .IP "\fBcoder : cabac\fR" 4 yading@10: .IX Item "coder : cabac" yading@10: .PD yading@10: Set coder to \f(CW\*(C`ac\*(C'\fR to use \s-1CABAC\s0. yading@10: .IP "\fBcmp : chroma-me\fR" 4 yading@10: .IX Item "cmp : chroma-me" yading@10: Set to \f(CW\*(C`chroma\*(C'\fR to use chroma motion estimation. yading@10: .IP "\fBthreads : threads\fR" 4 yading@10: .IX Item "threads : threads" yading@10: .PD 0 yading@10: .IP "\fBthread_type : sliced_threads\fR" 4 yading@10: .IX Item "thread_type : sliced_threads" yading@10: .PD yading@10: Set to \f(CW\*(C`slice\*(C'\fR to use sliced threading instead of frame threading. yading@10: .IP "\fBflags \-cgop : open-gop\fR" 4 yading@10: .IX Item "flags -cgop : open-gop" yading@10: Set \f(CW\*(C`\-cgop\*(C'\fR to use recovery points to close GOPs. yading@10: .IP "\fBrc_init_occupancy : vbv-init\fR" 4 yading@10: .IX Item "rc_init_occupancy : vbv-init" yading@10: Initial buffer occupancy. yading@10: .PP yading@10: \fIPrivate Options\fR yading@10: .IX Subsection "Private Options" yading@10: .IP "\fB\-preset\fR \fIstring\fR" 4 yading@10: .IX Item "-preset string" yading@10: Set the encoding preset (cf. x264 \-\-fullhelp). yading@10: .IP "\fB\-tune\fR \fIstring\fR" 4 yading@10: .IX Item "-tune string" yading@10: Tune the encoding params (cf. x264 \-\-fullhelp). yading@10: .IP "\fB\-profile\fR \fIstring\fR" 4 yading@10: .IX Item "-profile string" yading@10: Set profile restrictions (cf. x264 \-\-fullhelp). yading@10: .IP "\fB\-fastfirstpass\fR \fIinteger\fR" 4 yading@10: .IX Item "-fastfirstpass integer" yading@10: Use fast settings when encoding first pass. yading@10: .IP "\fB\-crf\fR \fIfloat\fR" 4 yading@10: .IX Item "-crf float" yading@10: Select the quality for constant quality mode. yading@10: .IP "\fB\-crf_max\fR \fIfloat\fR" 4 yading@10: .IX Item "-crf_max float" yading@10: In \s-1CRF\s0 mode, prevents \s-1VBV\s0 from lowering quality beyond this point. yading@10: .IP "\fB\-qp\fR \fIinteger\fR" 4 yading@10: .IX Item "-qp integer" yading@10: Constant quantization parameter rate control method. yading@10: .IP "\fB\-aq\-mode\fR \fIinteger\fR" 4 yading@10: .IX Item "-aq-mode integer" yading@10: \&\s-1AQ\s0 method yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBnone\fR" 4 yading@10: .IX Item "none" yading@10: .PD 0 yading@10: .IP "\fBvariance\fR" 4 yading@10: .IX Item "variance" yading@10: .PD yading@10: Variance \s-1AQ\s0 (complexity mask). yading@10: .IP "\fBautovariance\fR" 4 yading@10: .IX Item "autovariance" yading@10: Auto-variance \s-1AQ\s0 (experimental). yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-aq\-strength\fR \fIfloat\fR" 4 yading@10: .IX Item "-aq-strength float" yading@10: \&\s-1AQ\s0 strength, reduces blocking and blurring in flat and textured areas. yading@10: .IP "\fB\-psy\fR \fIinteger\fR" 4 yading@10: .IX Item "-psy integer" yading@10: Use psychovisual optimizations. yading@10: .IP "\fB\-psy\-rd\fR \fIstring\fR" 4 yading@10: .IX Item "-psy-rd string" yading@10: Strength of psychovisual optimization, in : format. yading@10: .IP "\fB\-rc\-lookahead\fR \fIinteger\fR" 4 yading@10: .IX Item "-rc-lookahead integer" yading@10: Number of frames to look ahead for frametype and ratecontrol. yading@10: .IP "\fB\-weightb\fR \fIinteger\fR" 4 yading@10: .IX Item "-weightb integer" yading@10: Weighted prediction for B\-frames. yading@10: .IP "\fB\-weightp\fR \fIinteger\fR" 4 yading@10: .IX Item "-weightp integer" yading@10: Weighted prediction analysis method. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBnone\fR" 4 yading@10: .IX Item "none" yading@10: .PD 0 yading@10: .IP "\fBsimple\fR" 4 yading@10: .IX Item "simple" yading@10: .IP "\fBsmart\fR" 4 yading@10: .IX Item "smart" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-ssim\fR \fIinteger\fR" 4 yading@10: .IX Item "-ssim integer" yading@10: .PD yading@10: Calculate and print \s-1SSIM\s0 stats. yading@10: .IP "\fB\-intra\-refresh\fR \fIinteger\fR" 4 yading@10: .IX Item "-intra-refresh integer" yading@10: Use Periodic Intra Refresh instead of \s-1IDR\s0 frames. yading@10: .IP "\fB\-b\-bias\fR \fIinteger\fR" 4 yading@10: .IX Item "-b-bias integer" yading@10: Influences how often B\-frames are used. yading@10: .IP "\fB\-b\-pyramid\fR \fIinteger\fR" 4 yading@10: .IX Item "-b-pyramid integer" yading@10: Keep some B\-frames as references. yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBnone\fR" 4 yading@10: .IX Item "none" yading@10: .PD 0 yading@10: .IP "\fBstrict\fR" 4 yading@10: .IX Item "strict" yading@10: .PD yading@10: Strictly hierarchical pyramid. yading@10: .IP "\fBnormal\fR" 4 yading@10: .IX Item "normal" yading@10: Non-strict (not Blu-ray compatible). yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-mixed\-refs\fR \fIinteger\fR" 4 yading@10: .IX Item "-mixed-refs integer" yading@10: One reference per partition, as opposed to one reference per macroblock. yading@10: .IP "\fB\-8x8dct\fR \fIinteger\fR" 4 yading@10: .IX Item "-8x8dct integer" yading@10: High profile 8x8 transform. yading@10: .IP "\fB\-fast\-pskip\fR \fIinteger\fR" 4 yading@10: .IX Item "-fast-pskip integer" yading@10: .PD 0 yading@10: .IP "\fB\-aud\fR \fIinteger\fR" 4 yading@10: .IX Item "-aud integer" yading@10: .PD yading@10: Use access unit delimiters. yading@10: .IP "\fB\-mbtree\fR \fIinteger\fR" 4 yading@10: .IX Item "-mbtree integer" yading@10: Use macroblock tree ratecontrol. yading@10: .IP "\fB\-deblock\fR \fIstring\fR" 4 yading@10: .IX Item "-deblock string" yading@10: Loop filter parameters, in form. yading@10: .IP "\fB\-cplxblur\fR \fIfloat\fR" 4 yading@10: .IX Item "-cplxblur float" yading@10: Reduce fluctuations in \s-1QP\s0 (before curve compression). yading@10: .IP "\fB\-partitions\fR \fIstring\fR" 4 yading@10: .IX Item "-partitions string" yading@10: A comma-separated list of partitions to consider, possible values: p8x8, p4x4, b8x8, i8x8, i4x4, none, all. yading@10: .IP "\fB\-direct\-pred\fR \fIinteger\fR" 4 yading@10: .IX Item "-direct-pred integer" yading@10: Direct \s-1MV\s0 prediction mode yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBnone\fR" 4 yading@10: .IX Item "none" yading@10: .PD 0 yading@10: .IP "\fBspatial\fR" 4 yading@10: .IX Item "spatial" yading@10: .IP "\fBtemporal\fR" 4 yading@10: .IX Item "temporal" yading@10: .IP "\fBauto\fR" 4 yading@10: .IX Item "auto" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fB\-slice\-max\-size\fR \fIinteger\fR" 4 yading@10: .IX Item "-slice-max-size integer" yading@10: .PD yading@10: Limit the size of each slice in bytes. yading@10: .IP "\fB\-stats\fR \fIstring\fR" 4 yading@10: .IX Item "-stats string" yading@10: Filename for 2 pass stats. yading@10: .IP "\fB\-nal\-hrd\fR \fIinteger\fR" 4 yading@10: .IX Item "-nal-hrd integer" yading@10: Signal \s-1HRD\s0 information (requires vbv-bufsize; cbr not allowed in .mp4). yading@10: .Sp yading@10: Possible values: yading@10: .RS 4 yading@10: .IP "\fBnone\fR" 4 yading@10: .IX Item "none" yading@10: .PD 0 yading@10: .IP "\fBvbr\fR" 4 yading@10: .IX Item "vbr" yading@10: .IP "\fBcbr\fR" 4 yading@10: .IX Item "cbr" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBx264opts\fR \fIoptions\fR" 4 yading@10: .IX Item "x264opts options" yading@10: .PD yading@10: Allow to set any x264 option, see \f(CW\*(C`x264 \-\-fullhelp\*(C'\fR for a list. yading@10: .Sp yading@10: \&\fIoptions\fR is a list of \fIkey\fR=\fIvalue\fR couples separated by yading@10: \&\*(L":\*(R". In \fIfilter\fR and \fIpsy-rd\fR options that use \*(L":\*(R" as a separator yading@10: themselves, use \*(L",\*(R" instead. They accept it as well since long ago but this yading@10: is kept undocumented for some reason. yading@10: .Sp yading@10: For example to specify libx264 encoding options with \fBffmpeg\fR: yading@10: .Sp yading@10: .Vb 1 yading@10: \& ffmpeg \-i foo.mpg \-vcodec libx264 \-x264opts keyint=123:min\-keyint=20 \-an out.mkv yading@10: .Ve yading@10: .Sp yading@10: For more information about libx264 and the supported options see: yading@10: <\fBhttp://www.videolan.org/developers/x264.html\fR> yading@10: .IP "\fB\-x264\-params\fR \fIstring\fR" 4 yading@10: .IX Item "-x264-params string" yading@10: Override the x264 configuration using a :\-separated list of key=value parameters. yading@10: .Sp yading@10: .Vb 1 yading@10: \& \-x264\-params level=30:bframes=0:weightp=0:cabac=0:ref=1:vbv\-maxrate=768:vbv\-bufsize=2000:analyse=all:me=umh:no\-fast\-pskip=1:subq=6:8x8dct=0:trellis=0 yading@10: .Ve yading@10: .PP yading@10: Encoding avpresets for common usages are provided so they can be used with the yading@10: general presets system (e.g. passing the \f(CW\*(C`\-pre\*(C'\fR option). yading@10: .SS "ProRes" yading@10: .IX Subsection "ProRes" yading@10: Apple ProRes encoder. yading@10: .PP yading@10: FFmpeg contains 2 ProRes encoders, the prores-aw and prores-ks encoder. yading@10: The used encoder can be choosen with the \f(CW\*(C`\-vcodec\*(C'\fR option. yading@10: .PP yading@10: \fIPrivate Options for prores-ks\fR yading@10: .IX Subsection "Private Options for prores-ks" yading@10: .IP "\fBprofile\fR \fIinteger\fR" 4 yading@10: .IX Item "profile integer" yading@10: Select the ProRes profile to encode yading@10: .RS 4 yading@10: .IP "\fBproxy\fR" 4 yading@10: .IX Item "proxy" yading@10: .PD 0 yading@10: .IP "\fBlt\fR" 4 yading@10: .IX Item "lt" yading@10: .IP "\fBstandard\fR" 4 yading@10: .IX Item "standard" yading@10: .IP "\fBhq\fR" 4 yading@10: .IX Item "hq" yading@10: .RE yading@10: .RS 4 yading@10: .RE yading@10: .IP "\fBquant_mat\fR \fIinteger\fR" 4 yading@10: .IX Item "quant_mat integer" yading@10: .PD yading@10: Select quantization matrix. yading@10: .RS 4 yading@10: .IP "\fBauto\fR" 4 yading@10: .IX Item "auto" yading@10: .PD 0 yading@10: .IP "\fBdefault\fR" 4 yading@10: .IX Item "default" yading@10: .IP "\fBproxy\fR" 4 yading@10: .IX Item "proxy" yading@10: .IP "\fBlt\fR" 4 yading@10: .IX Item "lt" yading@10: .IP "\fBstandard\fR" 4 yading@10: .IX Item "standard" yading@10: .IP "\fBhq\fR" 4 yading@10: .IX Item "hq" yading@10: .RE yading@10: .RS 4 yading@10: .PD yading@10: .Sp yading@10: If set to \fIauto\fR, the matrix matching the profile will be picked. yading@10: If not set, the matrix providing the highest quality, \fIdefault\fR, will be yading@10: picked. yading@10: .RE yading@10: .IP "\fBbits_per_mb\fR \fIinteger\fR" 4 yading@10: .IX Item "bits_per_mb integer" yading@10: How many bits to allot for coding one macroblock. Different profiles use yading@10: between 200 and 2400 bits per macroblock, the maximum is 8000. yading@10: .IP "\fBmbs_per_slice\fR \fIinteger\fR" 4 yading@10: .IX Item "mbs_per_slice integer" yading@10: Number of macroblocks in each slice (1\-8); the default value (8) yading@10: should be good in almost all situations. yading@10: .IP "\fBvendor\fR \fIstring\fR" 4 yading@10: .IX Item "vendor string" yading@10: Override the 4\-byte vendor \s-1ID\s0. yading@10: A custom vendor \s-1ID\s0 like \fIapl0\fR would claim the stream was produced by yading@10: the Apple encoder. yading@10: .PP yading@10: \fISpeed considerations\fR yading@10: .IX Subsection "Speed considerations" yading@10: .PP yading@10: In the default mode of operation the encoder has to honor frame constraints yading@10: (i.e. not produc frames with size bigger than requested) while still making yading@10: output picture as good as possible. yading@10: A frame containing a lot of small details is harder to compress and the encoder yading@10: would spend more time searching for appropriate quantizers for each slice. yading@10: .PP yading@10: Setting a higher \fBbits_per_mb\fR limit will improve the speed. yading@10: .PP yading@10: For the fastest encoding speed set the \fBqscale\fR parameter (4 is the yading@10: recommended value) and do not set a size constraint. yading@10: .SH "SEE ALSO" yading@10: .IX Header "SEE ALSO" yading@10: \&\fIffmpeg\fR\|(1), \fIffplay\fR\|(1), \fIffprobe\fR\|(1), \fIffserver\fR\|(1), \fIlibavcodec\fR\|(3) yading@10: .SH "AUTHORS" yading@10: .IX Header "AUTHORS" yading@10: The FFmpeg developers. yading@10: .PP yading@10: For details about the authorship, see the Git history of the project yading@10: (git://source.ffmpeg.org/ffmpeg), e.g. by typing the command yading@10: \&\fBgit log\fR in the FFmpeg source directory, or browsing the yading@10: online repository at <\fBhttp://source.ffmpeg.org\fR>. yading@10: .PP yading@10: Maintainers for the specific components are listed in the file yading@10: \&\fI\s-1MAINTAINERS\s0\fR in the source code tree.