From: Lou Logan Date: Tue, 14 Feb 2017 00:26:43 +0000 (-0900) Subject: doc/ffmpeg: document trailing "?" in map option X-Git-Tag: android-x86-7.1-r1~2113 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=1c049d5ffe08b3af36844cdbe7a5950879122b8b;p=android-x86%2Fexternal-ffmpeg.git doc/ffmpeg: document trailing "?" in map option This feature was added in 2375a85c36c4941042e6ee58a31d6560bde91d37. Signed-off-by: Lou Logan --- diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi index 11b527da43..8b08e2209c 100644 --- a/doc/ffmpeg.texi +++ b/doc/ffmpeg.texi @@ -871,7 +871,7 @@ Set the size of the canvas used to render subtitles. @section Advanced options @table @option -@item -map [-]@var{input_file_id}[:@var{stream_specifier}][,@var{sync_file_id}[:@var{stream_specifier}]] | @var{[linklabel]} (@emph{output}) +@item -map [-]@var{input_file_id}[:@var{stream_specifier}][?][,@var{sync_file_id}[:@var{stream_specifier}]] | @var{[linklabel]} (@emph{output}) Designate one or more input streams as a source for the output file. Each input stream is identified by the input file index @var{input_file_id} and @@ -887,6 +887,11 @@ the source for output stream 1, etc. A @code{-} character before the stream identifier creates a "negative" mapping. It disables matching streams from already created mappings. +A trailing @code{?} after the stream index will allow the map to be +optional: if the map matches no streams the map will be ignored instead +of failing. Note the map will still fail if an invalid input file index +is used; such as if the map refers to a non-existant input. + An alternative @var{[linklabel]} form will map outputs from complex filter graphs (see the @option{-filter_complex} option) to the output file. @var{linklabel} must correspond to a defined output link label in the graph. @@ -924,6 +929,13 @@ To map all the streams except the second audio, use negative mappings ffmpeg -i INPUT -map 0 -map -0:a:1 OUTPUT @end example +To map the video and audio streams from the first input, and using the +trailing @code{?}, ignore the audio mapping if no audio streams exist in +the first input: +@example +ffmpeg -i INPUT -map 0:v -map 0:a? OUTPUT +@end example + To pick the English audio stream: @example ffmpeg -i INPUT -map 0:m:language:eng OUTPUT