]> git.sesse.net Git - ffmpeg/blobdiff - doc/filters.texi
lavfi/overlay: implement shortest option
[ffmpeg] / doc / filters.texi
index acae91f550b42c7741b8ca27e3b6f8a85269a16b..6b7ee89ac38c1447eb6aa9e34db120e414f7c58b 100644 (file)
@@ -2063,17 +2063,21 @@ playback.
 
 @section decimate
 
-This filter drops frames that do not differ greatly from the previous
-frame in order to reduce framerate.  The main use of this filter is
-for very-low-bitrate encoding (e.g. streaming over dialup modem), but
-it could in theory be used for fixing movies that were
-inverse-telecined incorrectly.
+Drop frames that do not differ greatly from the previous frame in
+order to reduce framerate.
 
-It accepts the following parameters:
-@var{max}:@var{hi}:@var{lo}:@var{frac}.
+The main use of this filter is for very-low-bitrate encoding
+(e.g. streaming over dialup modem), but it could in theory be used for
+fixing movies that were inverse-telecined incorrectly.
 
-@table @option
+The filter accepts parameters as a list of @var{key}=@var{value}
+pairs, separated by ":". If the key of the first options is omitted,
+the arguments are interpreted according to the syntax:
+@option{max}:@option{hi}:@option{lo}:@option{frac}.
 
+A description of the accepted options follows.
+
+@table @option
 @item max
 Set the maximum number of consecutive frames which can be dropped (if
 positive), or the minimum interval between dropped frames (if
@@ -2082,20 +2086,22 @@ number of previous sequentially dropped frames.
 
 Default value is 0.
 
-@item hi, lo, frac
+@item hi
+@item lo
+@item frac
 Set the dropping threshold values.
 
-Values for @var{hi} and @var{lo} are for 8x8 pixel blocks and
+Values for @option{hi} and @option{lo} are for 8x8 pixel blocks and
 represent actual pixel value differences, so a threshold of 64
 corresponds to 1 unit of difference for each pixel, or the same spread
 out differently over the block.
 
 A frame is a candidate for dropping if no 8x8 blocks differ by more
-than a threshold of @var{hi}, and if no more than @var{frac} blocks (1
-meaning the whole image) differ by more than a threshold of @var{lo}.
+than a threshold of @option{hi}, and if no more than @option{frac} blocks (1
+meaning the whole image) differ by more than a threshold of @option{lo}.
 
-Default value for @var{hi} is 64*12, default value for @var{lo} is
-64*5, and default value for @var{frac} is 0.33.
+Default value for @option{hi} is 64*12, default value for @option{lo} is
+64*5, and default value for @option{frac} is 0.33.
 @end table
 
 @section delogo
@@ -2224,10 +2230,12 @@ specified file.
 
 Draw a colored box on the input image.
 
-The filter accepts parameters as a list of @var{key}=@var{value} pairs,
-separated by ":".
+The filter accepts parameters as a list of @var{key}=@var{value}
+pairs, separated by ":". If the key of the first options is omitted,
+the arguments are interpreted according to the syntax
+@option{x}:@option{y}:@option{width}:@option{height}:@option{color}:@option{thickness}.
 
-The description of the accepted parameters follows.
+A description of the accepted options follows.
 
 @table @option
 @item x, y
@@ -2248,10 +2256,6 @@ video with inverted luma.
 Set the thickness of the box edge. Default value is @code{4}.
 @end table
 
-If the key of the first options is omitted, the arguments are
-interpreted according to the syntax
-@var{x}:@var{y}:@var{width}:@var{height}:@var{color}:@var{thickness}.
-
 Some examples follow:
 @itemize
 @item
@@ -3170,29 +3174,33 @@ Set mode for @code{waveform}. Can be either @code{row}, or @code{column}.
 Default is @code{row}.
 
 @item display_mode
-Set display mode for @code{waveform}.
+Set display mode for @code{waveform} and @code{levels}.
 It accepts the following values:
 @table @samp
 @item parade
-Display separate waveforms for the color components side by side in
-@code{row} mode or one below other in @code{column} mode.
-
-In this display mode it is easy to spot color casts in the highlights and
-shadows of an image, by comparing the contours of the top and the bottom
-of each waveform. Since whites, grays, and blacks are characterized by
+Display separate graph for the color components side by side in
+@code{row} waveform mode or one below other in @code{column} waveform mode
+for @code{waveform} histogram mode. For @code{levels} histogram mode
+per color component graphs are placed one bellow other.
+
+This display mode in @code{waveform} histogram mode makes it easy to spot
+color casts in the highlights and shadows of an image, by comparing the
+contours of the top and the bottom of each waveform.
+Since whites, grays, and blacks are characterized by
 exactly equal amounts of red, green, and blue, neutral areas of the
-picture should display three waveforms of roughly equal height.
+picture should display three waveforms of roughly equal width/height.
 If not, the correction is easy to make by making adjustments to level the
 three waveforms.
 
 @item overlay
 Presents information that's identical to that in the @code{parade}, except
-that the waveforms representing color components are superimposed directly
+that the graphs representing color components are superimposed directly
 over one another.
 
-This display mode can make it easier to spot the relative differences or
-similarities in overlapping areas of the color components that are supposed
-to be identical, such as neutral whites, grays, or blacks.
+This display mode in @code{waveform} histogram mode can make it easier to spot
+the relative differences or similarities in overlapping areas of the color
+components that are supposed to be identical, such as neutral whites, grays,
+or blacks.
 @end table
 Default is @code{parade}.
 @end table
@@ -3628,7 +3636,6 @@ The list of the currently supported filters follows:
 @item harddup
 @item ilpack
 @item ivtc
-@item kerndeint
 @item mcdeint
 @item ow
 @item perspective
@@ -3874,6 +3881,10 @@ same as @var{overlay_w} and @var{overlay_h}
 @item rgb
 If set to 1, force the filter to accept inputs in the RGB
 color space. Default value is 0.
+
+@item shortest
+If set to 1, force the output to terminate when the shortest input
+terminates. Default value is 0.
 @end table
 
 Be aware that frames are taken from each input video in timestamp
@@ -3933,6 +3944,18 @@ The above command is the same as:
 ffplay input.avi -vf 'split[b], pad=iw*2[src], [b]deshake, [src]overlay=w'
 @end example
 
+@item
+Compose output by putting two input videos side to side:
+@example
+ffmpeg -i left.avi -i right.avi -filter_complex "
+nullsrc=size=200x100 [background];
+[0:v] setpts=PTS-STARTPTS, scale=100x100 [left];
+[1:v] setpts=PTS-STARTPTS, scale=100x100 [right];
+[background][left]       overlay=shortest=1       [background+left];
+[background+left][right] overlay=shortest=1:x=100 [left+right]
+"
+@end example
+
 @item
 Chain several overlays in cascade:
 @example
@@ -4679,6 +4702,10 @@ Set the filename of the subtitle file to read. It must be specified.
 Specify the size of the original video, the video for which the ASS file
 was composed. Due to a misdesign in ASS aspect ratio arithmetic, this is
 necessary to correctly scale the fonts if the aspect ratio has been changed.
+
+@item charenc
+Set subtitles input character encoding. @code{subtitles} filter only. Only
+useful if not UTF-8.
 @end table
 
 If the first key is not specified, it is assumed that the first value