1All the numerical options, if not specified otherwise, accept in input 2a string representing a number, which may contain one of the 3International System number postfixes, for example 'K', 'M', 'G'. 4If 'i' is appended after the postfix, powers of 2 are used instead of 5powers of 10. The 'B' postfix multiplies the value for 8, and can be 6appended after another postfix or used alone. This allows using for 7example 'KB', 'MiB', 'G' and 'B' as postfix. 8 9Options which do not take arguments are boolean options, and set the 10corresponding value to true. They can be set to false by prefixing 11with "no" the option name, for example using "-nofoo" in the 12command line will set to false the boolean option with name "foo". 13 14@anchor{Stream specifiers} 15@section Stream specifiers 16Some options are applied per-stream, e.g. bitrate or codec. Stream specifiers 17are used to precisely specify which stream(s) does a given option belong to. 18 19A stream specifier is a string generally appended to the option name and 20separated from it by a colon. E.g. @code{-codec:a:1 ac3} option contains 21@code{a:1} stream specifer, which matches the second audio stream. Therefore it 22would select the ac3 codec for the second audio stream. 23 24A stream specifier can match several stream, the option is then applied to all 25of them. E.g. the stream specifier in @code{-b:a 128k} matches all audio 26streams. 27 28An empty stream specifier matches all streams, for example @code{-codec copy} 29or @code{-codec: copy} would copy all the streams without reencoding. 30 31Possible forms of stream specifiers are: 32@table @option 33@item @var{stream_index} 34Matches the stream with this index. E.g. @code{-threads:1 4} would set the 35thread count for the second stream to 4. 36@item @var{stream_type}[:@var{stream_index}] 37@var{stream_type} is one of: 'v' for video, 'a' for audio, 's' for subtitle, 38'd' for data and 't' for attachments. If @var{stream_index} is given, then 39matches stream number @var{stream_index} of this type. Otherwise matches all 40streams of this type. 41@item p:@var{program_id}[:@var{stream_index}] 42If @var{stream_index} is given, then matches stream number @var{stream_index} in 43program with id @var{program_id}. Otherwise matches all streams in this program. 44@end table 45@section Generic options 46 47These options are shared amongst the av* tools. 48 49@table @option 50 51@item -L 52Show license. 53 54@item -h, -?, -help, --help 55Show help. 56 57@item -version 58Show version. 59 60@item -formats 61Show available formats. 62 63The fields preceding the format names have the following meanings: 64@table @samp 65@item D 66Decoding available 67@item E 68Encoding available 69@end table 70 71@item -codecs 72Show available codecs. 73 74The fields preceding the codec names have the following meanings: 75@table @samp 76@item D 77Decoding available 78@item E 79Encoding available 80@item V/A/S 81Video/audio/subtitle codec 82@item S 83Codec supports slices 84@item D 85Codec supports direct rendering 86@item T 87Codec can handle input truncated at random locations instead of only at frame boundaries 88@end table 89 90@item -bsfs 91Show available bitstream filters. 92 93@item -protocols 94Show available protocols. 95 96@item -filters 97Show available libavfilter filters. 98 99@item -pix_fmts 100Show available pixel formats. 101 102@item -sample_fmts 103Show available sample formats. 104 105@item -loglevel @var{loglevel} | -v @var{loglevel} 106Set the logging level used by the library. 107@var{loglevel} is a number or a string containing one of the following values: 108@table @samp 109@item quiet 110@item panic 111@item fatal 112@item error 113@item warning 114@item info 115@item verbose 116@item debug 117@end table 118 119By default the program logs to stderr, if coloring is supported by the 120terminal, colors are used to mark errors and warnings. Log coloring 121can be disabled setting the environment variable 122@env{AV_LOG_FORCE_NOCOLOR} or @env{NO_COLOR}, or can be forced setting 123the environment variable @env{AV_LOG_FORCE_COLOR}. 124The use of the environment variable @env{NO_COLOR} is deprecated and 125will be dropped in a following Libav version. 126 127@end table 128 129@section AVOptions 130 131These options are provided directly by the libavformat, libavdevice and 132libavcodec libraries. To see the list of available AVOptions, use the 133@option{-help} option. They are separated into two categories: 134@table @option 135@item generic 136These options can be set for any container, codec or device. Generic options 137are listed under AVFormatContext options for containers/devices and under 138AVCodecContext options for codecs. 139@item private 140These options are specific to the given container, device or codec. Private 141options are listed under their corresponding containers/devices/codecs. 142@end table 143 144For example to write an ID3v2.3 header instead of a default ID3v2.4 to 145an MP3 file, use the @option{id3v2_version} private option of the MP3 146muxer: 147@example 148avconv -i input.flac -id3v2_version 3 out.mp3 149@end example 150 151All codec AVOptions are obviously per-stream, so the chapter on stream 152specifiers applies to them 153 154Note @option{-nooption} syntax cannot be used for boolean AVOptions, 155use @option{-option 0}/@option{-option 1}. 156 157Note2 old undocumented way of specifying per-stream AVOptions by prepending 158v/a/s to the options name is now obsolete and will be removed soon. 159