vf_stereo3d: add new input and output formats
[mplayer.git] / DOCS / man / en / vf.rst
blob5e5007d1dbc6a3f0877cdff9c1a52675373e298d
1 Video Filters
2 =============
4 Video filters allow you to modify the video stream and its properties. The
5 syntax is:
7 --vf=<filter1[=parameter1:parameter2:...],filter2,...>
8     Setup a chain of video filters.
10 Many parameters are optional and set to default values if omitted. To
11 explicitly use a default value set a parameter to '-1'. Parameters w:h means
12 width x height in pixels, x:y means x;y position counted from the upper left
13 corner of the bigger image.
15 *NOTE*: To get a full list of available video filters, see ``--vf=help``.
17 Video filters are managed in lists. There are a few commands to manage the
18 filter list.
20 --vf-add=<filter1[,filter2,...]>
21     Appends the filters given as arguments to the filter list.
23 --vf-pre=<filter1[,filter2,...]>
24     Prepends the filters given as arguments to the filter list.
26 --vf-del=<index1[,index2,...]>
27     Deletes the filters at the given indexes. Index numbers start at 0,
28     negative numbers address the end of the list (-1 is the last).
30 --vf-clr
31     Completely empties the filter list.
33 With filters that support it, you can access parameters by their name.
35 --vf=<filter>=help
36     Prints the parameter names and parameter value ranges for a particular
37     filter.
39 --vf=<filter=named_parameter1=value1[:named_parameter2=value2:...]>
40     Sets a named parameter to the given value. Use on and off or yes and no to
41     set flag parameters.
43 Available filters are:
45 crop[=w:h:x:y]
46     Crops the given part of the image and discards the rest. Useful to remove
47     black bands from widescreen movies.
49     <w>,<h>
50         Cropped width and height, defaults to original width and height.
51     <x>,<y>
52         Position of the cropped picture, defaults to center.
54 cropdetect[=limit:round[:reset]]
55     Calculates necessary cropping parameters and prints the recommended
56     parameters to stdout.
58     <limit>
59         Threshold, which can be optionally specified from nothing (0) to
60         everything (255) (default: 24).
61     <round>
62         Value which the width/height should be divisible by (default: 16). The
63         offset is automatically adjusted to center the video. Use 2 to get
64         only even dimensions (needed for 4:2:2 video). 16 is best when
65         encoding to most video codecs.
66     <reset>
67         Counter that determines after how many frames cropdetect will reset
68         the previously detected largest video area and start over to detect
69         the current optimal crop area (default: 0). This can be useful when
70         channel logos distort the video area. 0 indicates never reset and
71         return the largest area encountered during playback.
73 rectangle[=w:h:x:y]
74     Draws a rectangle of the requested width and height at the specified
75     coordinates over the image and prints current rectangle parameters to the
76     console. This can be used to find optimal cropping parameters. If you bind
77     the ``input.conf`` directive 'change_rectangle' to keystrokes, you can
78     move and resize the rectangle on the fly.
80     <w>,<h>
81         width and height (default: -1, maximum possible width where boundaries
82         are still visible.)
83     <x>,<y>
84         top left corner position (default: -1, uppermost leftmost)
86 expand[=w:h:x:y:osd:aspect:round]
87     Expands (not scales) movie resolution to the given value and places the
88     unscaled original at coordinates x, y. Can be used for placing
89     subtitles/OSD in the resulting black bands.
91     <w>,<h>
92         Expanded width,height (default: original width,height). Negative
93         values for w and h are treated as offsets to the original size.
95         *EXAMPLE*:
97         `expand=0:-50:0:0`
98             Adds a 50 pixel border to the bottom of the picture.
100     <x>,<y>
101         position of original image on the expanded image (default: center)
103     <osd>
104         OSD/subtitle rendering
106         :0: disable (default)
107         :1: enable
109     <aspect>
110         Expands to fit an aspect instead of a resolution (default: 0).
112         *EXAMPLE*:
114         `expand=800:::::4/3`
115             Expands to 800x600, unless the source is higher resolution, in
116             which case it expands to fill a 4/3 aspect.
118     <round>
119         Rounds up to make both width and height divisible by <r> (default: 1).
121 flip
122     Flips the image upside down. See also ``--flip``.
124 mirror
125     Mirrors the image on the Y axis.
127 rotate[=<0-7>]
128     Rotates the image by 90 degrees and optionally flips it. For values
129     between 4-7 rotation is only done if the movie geometry is portrait and
130     not landscape.
132     :0: Rotate by 90 degrees clockwise and flip (default).
133     :1: Rotate by 90 degrees clockwise.
134     :2: Rotate by 90 degrees counterclockwise.
135     :3: Rotate by 90 degrees counterclockwise and flip.
137 scale[=w:h[:interlaced[:chr_drop[:par[:par2[:presize[:noup[:arnd]]]]]]]]
138     Scales the image with the software scaler (slow) and performs a YUV<->RGB
139     colorspace conversion (see also ``--sws``).
141     <w>,<h>
142         scaled width/height (default: original width/height)
144         *NOTE*: If ``--zoom`` is used, and underlying filters (including
145         libvo) are incapable of scaling, it defaults to d_width/d_height!
147         :0:      scaled d_width/d_height
148         :-1:     original width/height
149         :-2:     Calculate w/h using the other dimension and the prescaled
150                  aspect ratio.
151         :-3:     Calculate w/h using the other dimension and the original
152                  aspect ratio.
153         :-(n+8): Like -n above, but rounding the dimension to the closest
154                  multiple of 16.
156     <interlaced>
157         Toggle interlaced scaling.
159         :0: off (default)
160         :1: on
162     <chr_drop>
163         chroma skipping
165         :0: Use all available input lines for chroma.
166         :1: Use only every 2. input line for chroma.
167         :2: Use only every 4. input line for chroma.
168         :3: Use only every 8. input line for chroma.
170     <par>[:<par2>] (see also ``--sws``)
171         Set some scaling parameters depending on the type of scaler selected
172         with ``--sws``.
174         | --sws=2 (bicubic):  B (blurring) and C (ringing)
175         |     0.00:0.60 default
176         |     0.00:0.75 VirtualDub's "precise bicubic"
177         |     0.00:0.50 Catmull-Rom spline
178         |     0.33:0.33 Mitchell-Netravali spline
179         |     1.00:0.00 cubic B-spline
181         --sws=7 (gaussian): sharpness (0 (soft) - 100 (sharp))
183         --sws=9 (lanczos):  filter length (1-10)
185     <presize>
186         Scale to preset sizes.
188         :qntsc: 352x240 (NTSC quarter screen)
189         :qpal:  352x288 (PAL quarter screen)
190         :ntsc:  720x480 (standard NTSC)
191         :pal:   720x576 (standard PAL)
192         :sntsc: 640x480 (square pixel NTSC)
193         :spal:  768x576 (square pixel PAL)
195     <noup>
196         Disallow upscaling past the original dimensions.
198         :0: Allow upscaling (default).
199         :1: Disallow upscaling if one dimension exceeds its original value.
200         :2: Disallow upscaling if both dimensions exceed their original values.
202     <arnd>
203         Accurate rounding for the vertical scaler, which may be faster or
204         slower than the default rounding.
206         :0: Disable accurate rounding (default).
207         :1: Enable accurate rounding.
209 dsize[=aspect|w:h:aspect-method:r]
210     Changes the intended display size/aspect at an arbitrary point in the
211     filter chain. Aspect can be given as a fraction (4/3) or floating point
212     number (1.33). Alternatively, you may specify the exact display width and
213     height desired. Note that this filter does *not* do any scaling itself; it
214     just affects what later scalers (software or hardware) will do when
215     auto-scaling to correct aspect.
217     <w>,<h>
218         New display width and height.
220         Can also be these special values:
222         :0:  original display width and height
223         :-1: original video width and height (default)
224         :-2: Calculate w/h using the other dimension and the original display
225              aspect ratio.
226         :-3: Calculate w/h using the other dimension and the original video
227              aspect ratio.
229         *EXAMPLE*:
231         ``dsize=800:-2``
232             Specifies a display resolution of 800x600 for a 4/3 aspect video,
233             or 800x450 for a 16/9 aspect video.
235     <aspect-method>
236         Modifies width and height according to original aspect ratios.
238         :-1: Ignore original aspect ratio (default).
239         :0:  Keep display aspect ratio by using <w> and <h> as maximum
240              resolution.
241         :1:  Keep display aspect ratio by using <w> and <h> as minimum
242              resolution.
243         :2:  Keep video aspect ratio by using <w> and <h> as maximum
244              resolution.
245         :3:  Keep video aspect ratio by using <w> and <h> as minimum
246              resolution.
248         *EXAMPLE*:
250         ``dsize=800:600:0``
251             Specifies a display resolution of at most 800x600, or smaller, in
252             order to keep aspect.
254     <r>
255         Rounds up to make both width and height divisible by <r> (default: 1).
257 yvu9
258     Forces software YVU9 to YV12 colorspace conversion. Deprecated in favor of
259     the software scaler.
261 yuvcsp
262     Clamps YUV color values to the CCIR 601 range without doing real
263     conversion.
265 palette
266     RGB/BGR 8 -> 15/16/24/32bpp colorspace conversion using palette.
268 format[=fourcc[:outfourcc]]
269     Restricts the colorspace for the next filter without doing any conversion.
270     Use together with the scale filter for a real conversion.
272     *NOTE*: For a list of available formats see ``format=fmt=help``.
274     <fourcc>
275         format name like rgb15, bgr24, yv12, etc (default: yuy2)
276     <outfourcc>
277         Format name that should be substituted for the output. If this is not
278         100% compatible with the <fourcc> value it will crash.
280         *EXAMPLE*
282         ====================== =====================
283         Valid                  Invalid (will crash)
284         ====================== =====================
285         ``format=rgb24:bgr24`` ``format=rgb24:yv12``
286         ``format=yuyv:yuy2``
287         ====================== =====================
289 noformat[=fourcc]
290     Restricts the colorspace for the next filter without doing any conversion.
291     Unlike the format filter, this will allow any colorspace except the one
292     you specify.
294     *NOTE*: For a list of available formats see ``noformat=fmt=help``.
296     <fourcc>
297         format name like rgb15, bgr24, yv12, etc (default: yv12)
299 pp[=filter1[:option1[:option2...]]/[-]filter2...]
300     Enables the specified chain of postprocessing subfilters. Subfilters must
301     be separated by '/' and can be disabled by prepending a '-'. Each
302     subfilter and some options have a short and a long name that can be used
303     interchangeably, i.e. dr/dering are the same. All subfilters share common
304     options to determine their scope:
306     a/autoq
307         Automatically switch the subfilter off if the CPU is too slow.
308     c/chrom
309         Do chrominance filtering, too (default).
310     y/nochrom
311         Do luminance filtering only (no chrominance).
312     n/noluma
313         Do chrominance filtering only (no luminance).
315     *NOTE*: ``--pphelp`` shows a list of available subfilters.
317     Available subfilters are:
319     hb/hdeblock[:difference[:flatness]]
320         horizontal deblocking filter
322         :<difference>: Difference factor where higher values mean more
323                        deblocking (default: 32).
324         :<flatness>:   Flatness threshold where lower values mean more
325                        deblocking (default: 39).
327     vb/vdeblock[:difference[:flatness]]
328         vertical deblocking filter
330         :<difference>: Difference factor where higher values mean more
331                        deblocking (default: 32).
332         :<flatness>:   Flatness threshold where lower values mean more
333                        deblocking (default: 39).
335     ha/hadeblock[:difference[:flatness]]
336         accurate horizontal deblocking filter
338         :<difference>: Difference factor where higher values mean more
339                        deblocking (default: 32).
340         :<flatness>:   Flatness threshold where lower values mean more
341                        deblocking (default: 39).
343     va/vadeblock[:difference[:flatness]]
344         accurate vertical deblocking filter
346         :<difference>: Difference factor where higher values mean more
347                        deblocking (default: 32).
348         :<flatness>:   Flatness threshold where lower values mean more
349                        deblocking (default: 39).
351     The horizontal and vertical deblocking filters share the difference and
352     flatness values so you cannot set different horizontal and vertical
353     thresholds.
355     h1/x1hdeblock
356         experimental horizontal deblocking filter
358     v1/x1vdeblock
359         experimental vertical deblocking filter
361     dr/dering
362         deringing filter
364     tn/tmpnoise[:threshold1[:threshold2[:threshold3]]]
365         temporal noise reducer
367         :<threshold1>: larger -> stronger filtering
368         :<threshold2>: larger -> stronger filtering
369         :<threshold3>: larger -> stronger filtering
371     al/autolevels[:f/fullyrange]
372         automatic brightness / contrast correction
374         :f/fullyrange: Stretch luminance to (0-255).
376     lb/linblenddeint
377         Linear blend deinterlacing filter that deinterlaces the given block by
378         filtering all lines with a (1 2 1) filter.
380     li/linipoldeint
381         Linear interpolating deinterlacing filter that deinterlaces the given
382         block by linearly interpolating every second line.
384     ci/cubicipoldeint
385         Cubic interpolating deinterlacing filter deinterlaces the given block
386         by cubically interpolating every second line.
388     md/mediandeint
389         Median deinterlacing filter that deinterlaces the given block by
390         applying a median filter to every second line.
392     fd/ffmpegdeint
393         FFmpeg deinterlacing filter that deinterlaces the given block by
394         filtering every second line with a (-1 4 2 4 -1) filter.
396     l5/lowpass5
397         Vertically applied FIR lowpass deinterlacing filter that deinterlaces
398         the given block by filtering all lines with a (-1 2 6 2 -1) filter.
400     fq/forceQuant[:quantizer]
401         Overrides the quantizer table from the input with the constant
402         quantizer you specify.
404         :<quantizer>: quantizer to use
406     de/default
407         default pp filter combination (hb:a,vb:a,dr:a)
409     fa/fast
410         fast pp filter combination (h1:a,v1:a,dr:a)
412     ac
413         high quality pp filter combination (ha:a:128:7,va:a,dr:a)
415     *EXAMPLE*:
417     ``--vf=pp=hb/vb/dr/al``
418         horizontal and vertical deblocking, deringing and automatic
419         brightness/contrast
421     ``--vf=pp=de/-al``
422         default filters without brightness/contrast correction
424     ``--vf=pp=default/tmpnoise:1:2:3``
425         Enable default filters & temporal denoiser.
427     ``--vf=pp=hb:y/vb:a``
428         Horizontal deblocking on luminance only, and switch vertical
429         deblocking on or off automatically depending on available CPU time.
431 spp[=quality[:qp[:mode]]]
432     Simple postprocessing filter that compresses and decompresses the image at
433     several (or - in the case of quality level 6 - all) shifts and averages
434     the results.
436     <quality>
437         0-6 (default: 3)
439     <qp>
440         Force quantization parameter (default: 0, use QP from video).
442     <mode>
444         :0: hard thresholding (default)
445         :1: soft thresholding (better deringing, but blurrier)
446         :4: like 0, but also use B-frames' QP (may cause flicker)
447         :5: like 1, but also use B-frames' QP (may cause flicker)
449 uspp[=quality[:qp]]
450     Ultra simple & slow postprocessing filter that compresses and decompresses
451     the image at several (or - in the case of quality level 8 - all) shifts
452     and averages the results.
454     The way this differs from the behavior of spp is that uspp actually
455     encodes & decodes each case with libavcodec Snow, whereas spp uses a
456     simplified intra only 8x8 DCT similar to MJPEG.
458     <quality>
459         0-8 (default: 3)
461     <qp>
462         Force quantization parameter (default: 0, use QP from video).
464 fspp[=quality[:qp[:strength[:bframes]]]]
465     faster version of the simple postprocessing filter
467     <quality>
468         4-5 (equivalent to spp; default: 4)
470     <qp>
471         Force quantization parameter (default: 0, use QP from video).
473     <-15-32>
474         Filter strength, lower values mean more details but also more
475         artifacts, while higher values make the image smoother but also
476         blurrier (default: 0 - PSNR optimal).
478     <bframes>
479         0: do not use QP from B-frames (default)
480         1: use QP from B-frames too (may cause flicker)
482 pp7[=qp[:mode]]
483     Variant of the spp filter, similar to spp=6 with 7 point DCT where only
484     the center sample is used after IDCT.
486     <qp>
487         Force quantization parameter (default: 0, use QP from video).
489     <mode>
490         :0: hard thresholding
491         :1: soft thresholding (better deringing, but blurrier)
492         :2: medium thresholding (default, good results)
494 qp=equation
495     quantization parameter (QP) change filter
497     <equation>
498         some equation like ``2+2*sin(PI*qp)``
500 geq=equation
501     generic equation change filter
503     <equation>
504         Some equation, e.g. ``p(W-X\,Y)`` to flip the image horizontally. You
505         can use whitespace to make the equation more readable. There are a
506         couple of constants that can be used in the equation:
508         :PI:      the number pi
509         :E:       the number e
510         :X / Y:   the coordinates of the current sample
511         :W / H:   width and height of the image
512         :SW / SH: width/height scale depending on the currently filtered plane,
513                   e.g. 1,1 and 0.5,0.5 for YUV 4:2:0.
514         :p(x,y):  returns the value of the pixel at location x/y of the current
515                   plane.
517 test
518     Generate various test patterns.
520 rgbtest[=width:height]
521     Generate an RGB test pattern useful for detecting RGB vs BGR issues. You
522     should see a red, green and blue stripe from top to bottom.
524     <width>
525         Desired width of generated image (default: 0). 0 means width of input
526         image.
528     <height>
529         Desired height of generated image (default: 0). 0 means height of
530         input image.
532 lavc[=quality:fps]
533     Fast software YV12 to MPEG-1 conversion with libavcodec for use with
534     DVB/DXR3/IVTV/V4L2.
536     <quality>
537         :1-31: fixed qscale
538         :32-:  fixed bitrate in kbits
540     <fps>
541         force output fps (float value) (default: 0, autodetect based on height)
543 dvbscale[=aspect]
544     Set up optimal scaling for DVB cards, scaling the x axis in hardware and
545     calculating the y axis scaling in software to keep aspect. Only useful
546     together with expand and scale.
548     <aspect>
549         Control aspect ratio, calculate as ``DVB_HEIGHT*ASPECTRATIO`` (default:
550         ``576*4/3=768``), set it to ``576*(16/9)=1024`` for a 16:9 TV.
552     *EXAMPLE*:
554     ``--vf=dvbscale,scale=-1:0,expand=-1:576:-1:-1:1,lavc``
555         FIXME: Explain what this does.
557 noise[=luma[u][t|a][h][p]:chroma[u][t|a][h][p]]
558     Adds noise.
560     :<0-100>: luma noise
561     :<0-100>: chroma noise
562     :u:       uniform noise (gaussian otherwise)
563     :t:       temporal noise (noise pattern changes between frames)
564     :a:       averaged temporal noise (smoother, but a lot slower)
565     :h:       high quality (slightly better looking, slightly slower)
566     :p:       mix random noise with a (semi)regular pattern
568 denoise3d[=luma_spatial:chroma_spatial:luma_tmp:chroma_tmp]
569     This filter aims to reduce image noise producing smooth images and making
570     still images really still (This should enhance compressibility.).
572     <luma_spatial>
573         spatial luma strength (default: 4)
574     <chroma_spatial>
575         spatial chroma strength (default: 3)
576     <luma_tmp>
577         luma temporal strength (default: 6)
578     <chroma_tmp>
579         chroma temporal strength (default:
580         ``luma_tmp*chroma_spatial/luma_spatial``)
582 hqdn3d[=luma_spatial:chroma_spatial:luma_tmp:chroma_tmp]
583     High precision/quality version of the denoise3d filter. Parameters and
584     usage are the same.
586 ow[=depth[:luma_strength[:chroma_strength]]]
587     Overcomplete Wavelet denoiser.
589     <depth>
590         Larger depth values will denoise lower frequency components more, but
591         slow down filtering (default: 8).
592     <luma_strength>
593         luma strength (default: 1.0)
594     <chroma_strength>
595         chroma strength (default: 1.0)
597 eq[=brightness:contrast] (OBSOLETE)
598     Software equalizer with interactive controls just like the hardware
599     equalizer, for cards/drivers that do not support brightness and contrast
600     controls in hardware.
602     <-100-100>
603         initial brightness
604     <-100-100>
605         initial contrast
607 eq2[=gamma:contrast:brightness:saturation:rg:gg:bg:weight]
608     Alternative software equalizer that uses lookup tables (very slow),
609     allowing gamma correction in addition to simple brightness and contrast
610     adjustment. Note that it uses the same MMX optimized code as ``--vf=eq``
611     if all gamma values are 1.0. The parameters are given as floating point
612     values.
614     <0.1-10>
615         initial gamma value (default: 1.0)
616     <-2-2>
617         initial contrast, where negative values result in a negative image
618         (default: 1.0)
619     <-1-1>
620         initial brightness (default: 0.0)
621     <0-3>
622         initial saturation (default: 1.0)
623     <0.1-10>
624         gamma value for the red component (default: 1.0)
625     <0.1-10>
626         gamma value for the green component (default: 1.0)
627     <0.1-10>
628         gamma value for the blue component (default: 1.0)
629     <0-1>
630         The weight parameter can be used to reduce the effect of a high gamma
631         value on bright image areas, e.g. keep them from getting overamplified
632         and just plain white. A value of 0.0 turns the gamma correction all
633         the way down while 1.0 leaves it at its full strength (default: 1.0).
635 hue[=hue:saturation]
636     Software equalizer with interactive controls just like the hardware
637     equalizer, for cards/drivers that do not support hue and saturation
638     controls in hardware.
640     <-180-180>
641         initial hue (default: 0.0)
642     <-100-100>
643         initial saturation, where negative values result in a negative chroma
644         (default: 1.0)
646 halfpack[=f]
647     Convert planar YUV 4:2:0 to half-height packed 4:2:2, downsampling luma
648     but keeping all chroma samples. Useful for output to low-resolution
649     display devices when hardware downscaling is poor quality or is not
650     available. Can also be used as a primitive luma-only deinterlacer with
651     very low CPU usage.
653     <f>
654         By default, halfpack averages pairs of lines when downsampling. Any
655         value different from 0 or 1 gives the default (averaging) behavior.
657         :0: Only use even lines when downsampling.
658         :1: Only use odd lines when downsampling.
660 ilpack[=mode]
661     When interlaced video is stored in YUV 4:2:0 formats, chroma interlacing
662     does not line up properly due to vertical downsampling of the chroma
663     channels. This filter packs the planar 4:2:0 data into YUY2 (4:2:2) format
664     with the chroma lines in their proper locations, so that in any given
665     scanline, the luma and chroma data both come from the same field.
667     <mode>
668         Select the sampling mode.
670         :0: nearest-neighbor sampling, fast but incorrect
671         :1: linear interpolation (default)
673 decimate[=max:hi:lo:frac]
674     Drops frames that do not differ greatly from the previous frame in order
675     to reduce framerate. The main use of this filter is for very-low- bitrate
676     encoding (e.g. streaming over dialup modem), but it could in theory be
677     used for fixing movies that were inverse-telecined incorrectly.
679     <max>
680         Sets the maximum number of consecutive frames which can be dropped (if
681         positive), or the minimum interval between dropped frames (if
682         negative).
683     <hi>,<lo>,<frac>
684         A frame is a candidate for dropping if no 8x8 region differs by more
685         than a threshold of <hi>, and if not more than <frac> portion (1
686         meaning the whole image) differs by more than a threshold of <lo>.
687         Values of <hi> and <lo> are for 8x8 pixel blocks and represent actual
688         pixel value differences, so a threshold of 64 corresponds to 1 unit of
689         difference for each pixel, or the same spread out differently over the
690         block.
692 dint[=sense:level]
693     The drop-deinterlace (dint) filter detects and drops the first from a set
694     of interlaced video frames.
696     <0.0-1.0>
697         relative difference between neighboring pixels (default: 0.1)
698     <0.0-1.0>
699         What part of the image has to be detected as interlaced to drop the
700         frame (default: 0.15).
702 lavcdeint (OBSOLETE)
703     FFmpeg deinterlacing filter, same as ``--vf=pp=fd``
705 kerndeint[=thresh[:map[:order[:sharp[:twoway]]]]]
706     Donald Graft's adaptive kernel deinterlacer. Deinterlaces parts of a video
707     if a configurable threshold is exceeded.
709     <0-255>
710         threshold (default: 10)
711     <map>
712         :0: Ignore pixels exceeding the threshold (default).
713         :1: Paint pixels exceeding the threshold white.
715     <order>
716         :0: Leave fields alone (default).
717         :1: Swap fields.
719     <sharp>
720         :0: Disable additional sharpening (default).
721         :1: Enable additional sharpening.
723     <twoway>
724         :0: Disable twoway sharpening (default).
725         :1: Enable twoway sharpening.
727 unsharp[=l|cWxH:amount[:l|cWxH:amount]]
728     unsharp mask / gaussian blur
730     l
731         Apply effect on luma component.
733     c
734         Apply effect on chroma components.
736     <width>x<height>
737         width and height of the matrix, odd sized in both directions (min =
738         3x3, max = 13x11 or 11x13, usually something between 3x3 and 7x7)
740     amount
741         Relative amount of sharpness/blur to add to the image (a sane range
742         should be -1.5-1.5).
744         :<0: blur
745         :>0: sharpen
747 swapuv
748     Swap U & V plane.
750 il[=d|i][s][:[d|i][s]]
751     (De)interleaves lines. The goal of this filter is to add the ability to
752     process interlaced images pre-field without deinterlacing them. You can
753     filter your interlaced DVD and play it on a TV without breaking the
754     interlacing. While deinterlacing (with the postprocessing filter) removes
755     interlacing permanently (by smoothing, averaging, etc) deinterleaving
756     splits the frame into 2 fields (so called half pictures), so you can
757     process (filter) them independently and then re-interleave them.
759     :d: deinterleave (placing one above the other)
760     :i: interleave
761     :s: swap fields (exchange even & odd lines)
763 fil[=i|d]
764     (De)interleaves lines. This filter is very similar to the il filter but
765     much faster, the main disadvantage is that it does not always work.
766     Especially if combined with other filters it may produce randomly messed
767     up images, so be happy if it works but do not complain if it does not for
768     your combination of filters.
770     :d: Deinterleave fields, placing them side by side.
771     :i: Interleave fields again (reversing the effect of fil=d).
773 field[=n]
774     Extracts a single field from an interlaced image using stride arithmetic
775     to avoid wasting CPU time. The optional argument n specifies whether to
776     extract the even or the odd field (depending on whether n is even or odd).
778 detc[=var1=value1:var2=value2:...]
779     Attempts to reverse the 'telecine' process to recover a clean,
780     non-interlaced stream at film framerate. This was the first and most
781     primitive inverse telecine filter to be added to MPlayer. It works by
782     latching onto the telecine 3:2 pattern and following it as long as
783     possible. This makes it suitable for perfectly-telecined material, even in
784     the presence of a fair degree of noise, but it will fail in the presence
785     of complex post-telecine edits. Development on this filter is no longer
786     taking place, as ivtc, pullup, and filmdint are better for most
787     applications. The following arguments (see syntax above) may be used to
788     control detc's behavior:
790     <dr>
791         Set the frame dropping mode.
793         :0: Do not drop frames to maintain fixed output framerate (default).
794         :1: Always drop a frame when there have been no drops or telecine
795             merges in the past 5 frames.
796         :2: Always maintain exact 5:4 input to output frame ratio.
798     <am>
799         Analysis mode.
801         :0: Fixed pattern with initial frame number specified by <fr>.
802         :1: aggressive search for telecine pattern (default)
804     <fr>
805         Set initial frame number in sequence. 0-2 are the three clean
806         progressive frames; 3 and 4 are the two interlaced frames. The
807         default, -1, means 'not in telecine sequence'. The number specified
808         here is the type for the imaginary previous frame before the movie
809         starts.
811     <t0>, <t1>, <t2>, <t3>
812         Threshold values to be used in certain modes.
814 ivtc[=1]
815     Experimental 'stateless' inverse telecine filter. Rather than trying to
816     lock on to a pattern like the detc filter does, ivtc makes its decisions
817     independently for each frame. This will give much better results for
818     material that has undergone heavy editing after telecine was applied, but
819     as a result it is not as forgiving of noisy input, for example TV capture.
820     The optional parameter (ivtc=1) corresponds to the dr=1 option for the
821     detc filter, and should not be used with MPlayer. Further development on
822     ivtc has stopped, as the pullup and filmdint filters appear to be much
823     more accurate.
825 pullup[=jl:jr:jt:jb:sb:mp]
826     Third-generation pulldown reversal (inverse telecine) filter, capable of
827     handling mixed hard-telecine, 24000/1001 fps progressive, and 30000/1001
828     fps progressive content. The pullup filter is designed to be much more
829     robust than detc or ivtc, by taking advantage of future context in making
830     its decisions. Like ivtc, pullup is stateless in the sense that it does
831     not lock onto a pattern to follow, but it instead looks forward to the
832     following fields in order to identify matches and rebuild progressive
833     frames. It is still under development, but believed to be quite accurate.
835     jl, jr, jt, and jb
836         These options set the amount of "junk" to ignore at the left, right,
837         top, and bottom of the image, respectively. Left/right are in units of
838         8 pixels, while top/bottom are in units of 2 lines. The default is 8
839         pixels on each side.
841     sb (strict breaks)
842         Setting this option to 1 will reduce the chances of pullup generating
843         an occasional mismatched frame, but it may also cause an excessive
844         number of frames to be dropped during high motion sequences.
845         Conversely, setting it to -1 will make pullup match fields more
846         easily. This may help processing of video where there is slight
847         blurring between the fields, but may also cause there to be interlaced
848         frames in the output.
850     mp (metric plane)
851         This option may be set to 1 or 2 to use a chroma plane instead of the
852         luma plane for doing pullup's computations. This may improve accuracy
853         on very clean source material, but more likely will decrease accuracy,
854         especially if there is chroma noise (rainbow effect) or any grayscale
855         video. The main purpose of setting mp to a chroma plane is to reduce
856         CPU load and make pullup usable in realtime on slow machines.
858 filmdint[=options]
859     Inverse telecine filter, similar to the pullup filter above. It is
860     designed to handle any pulldown pattern, including mixed soft and hard
861     telecine and limited support for movies that are slowed down or sped up
862     from their original framerate for TV. Only the luma plane is used to find
863     the frame breaks. If a field has no match, it is deinterlaced with simple
864     linear approximation. If the source is MPEG-2, this must be the first
865     filter to allow access to the field-flags set by the MPEG-2 decoder.
866     Depending on the source MPEG, you may be fine ignoring this advice, as
867     long as you do not see lots of "Bottom-first field" warnings. With no
868     options it does normal inverse telecine. When this filter is used with
869     MPlayer, it will result in an uneven framerate during playback, but it is
870     still generally better than using pp=lb or no deinterlacing at all.
871     Multiple options can be specified separated by /.
873     crop=<w>:<h>:<x>:<y>
874         Just like the crop filter, but faster, and works on mixed hard and
875         soft telecined content as well as when y is not a multiple of 4. If x
876         or y would require cropping fractional pixels from the chroma planes,
877         the crop area is extended. This usually means that x and y must be
878         even.
880     io=<ifps>:<ofps>
881         For each ifps input frames the filter will output ofps frames. This
882         could be used to filter movies that are broadcast on TV at a frame
883         rate different from their original framerate.
885     luma_only=<n>
886         If n is nonzero, the chroma plane is copied unchanged. This is useful
887         for YV12 sampled TV, which discards one of the chroma fields.
889     mmx2=<n>
890         On x86, if n=1, use MMX2 optimized functions, if n=2, use 3DNow!
891         optimized functions, otherwise, use plain C. If this option is not
892         specified, MMX2 and 3DNow! are auto-detected, use this option to
893         override auto-detection.
895     fast=<n>
896         The larger n will speed up the filter at the expense of accuracy. The
897         default value is n=3. If n is odd, a frame immediately following a
898         frame marked with the REPEAT_FIRST_FIELD MPEG flag is assumed to be
899         progressive, thus filter will not spend any time on soft-telecined
900         MPEG-2 content. This is the only effect of this flag if MMX2 or 3DNow!
901         is available. Without MMX2 and 3DNow, if n=0 or 1, the same
902         calculations will be used as with n=2 or 3. If n=2 or 3, the number of
903         luma levels used to find the frame breaks is reduced from 256 to 128,
904         which results in a faster filter without losing much accuracy. If n=4
905         or 5, a faster, but much less accurate metric will be used to find the
906         frame breaks, which is more likely to misdetect high vertical detail
907         as interlaced content.
909     verbose=<n>
910         If n is nonzero, print the detailed metrics for each frame. Useful for
911         debugging.
913     dint_thres=<n>
914         Deinterlace threshold. Used during de-interlacing of unmatched frames.
915         Larger value means less deinterlacing, use n=256 to completely turn
916         off deinterlacing. Default is n=8.
918     comb_thres=<n>
919         Threshold for comparing a top and bottom fields. Defaults to 128.
921     diff_thres=<n>
922         Threshold to detect temporal change of a field. Default is 128.
924     sad_thres=<n>
925         Sum of Absolute Difference threshold, default is 64.
927 divtc[=options]
928     Inverse telecine for deinterlaced video. If 3:2-pulldown telecined video
929     has lost one of the fields or is deinterlaced using a method that keeps
930     one field and interpolates the other, the result is a juddering video that
931     has every fourth frame duplicated. This filter is intended to find and
932     drop those duplicates and restore the original film framerate. Two
933     different modes are available: One pass mode is the default and is
934     straightforward to use, but has the disadvantage that any changes in the
935     telecine phase (lost frames or bad edits) cause momentary judder until the
936     filter can resync again. Two pass mode avoids this by analyzing the whole
937     video beforehand so it will have forward knowledge about the phase changes
938     and can resync at the exact spot. These passes do *not* correspond to pass
939     one and two of the encoding process. You must run an extra pass using
940     divtc pass one before the actual encoding throwing the resulting video
941     away. Use ``--nosound --ovc=raw -o /dev/null`` to avoid wasting CPU power
942     for this pass. You may add something like ``crop=2:2:0:0`` after divtc to
943     speed things up even more. Then use divtc pass two for the actual
944     encoding. If you use multiple encoder passes, use divtc pass two for all
945     of them. The options are:
947     pass=1|2
948         Use two pass mode.
950     file=<filename>
951         Set the two pass log filename (default: ``framediff.log``).
953     threshold=<value>
954         Set the minimum strength the telecine pattern must have for the filter
955         to believe in it (default: 0.5). This is used to avoid recognizing
956         false pattern from the parts of the video that are very dark or very
957         still.
959     window=<numframes>
960         Set the number of past frames to look at when searching for pattern
961         (default: 30). Longer window improves the reliability of the pattern
962         search, but shorter window improves the reaction time to the changes
963         in the telecine phase. This only affects the one pass mode. The two
964         pass mode currently uses fixed window that extends to both future and
965         past.
967     phase=0|1|2|3|4
968         Sets the initial telecine phase for one pass mode (default: 0). The
969         two pass mode can see the future, so it is able to use the correct
970         phase from the beginning, but one pass mode can only guess. It catches
971         the correct phase when it finds it, but this option can be used to fix
972         the possible juddering at the beginning. The first pass of the two
973         pass mode also uses this, so if you save the output from the first
974         pass, you get constant phase result.
976     deghost=<value>
977         Set the deghosting threshold (0-255 for one pass mode, -255-255 for
978         two pass mode, default 0). If nonzero, deghosting mode is used. This
979         is for video that has been deinterlaced by blending the fields
980         together instead of dropping one of the fields. Deghosting amplifies
981         any compression artifacts in the blended frames, so the parameter
982         value is used as a threshold to exclude those pixels from deghosting
983         that differ from the previous frame less than specified value. If two
984         pass mode is used, then negative value can be used to make the filter
985         analyze the whole video in the beginning of pass-2 to determine
986         whether it needs deghosting or not and then select either zero or the
987         absolute value of the parameter. Specify this option for pass-2, it
988         makes no difference on pass-1.
990 phase[=t|b|p|a|u|T|B|A|U][:v]
991     Delay interlaced video by one field time so that the field order changes.
992     The intended use is to fix PAL movies that have been captured with the
993     opposite field order to the film-to-video transfer. The options are:
995     t
996         Capture field order top-first, transfer bottom-first. Filter will
997         delay the bottom field.
999     b
1000         Capture bottom-first, transfer top-first. Filter will delay the top
1001         field.
1003     p
1004         Capture and transfer with the same field order. This mode only exists
1005         for the documentation of the other options to refer to, but if you
1006         actually select it, the filter will faithfully do nothing ;-)
1008     a
1009         Capture field order determined automatically by field flags, transfer
1010         opposite. Filter selects among t and b modes on a frame by frame basis
1011         using field flags. If no field information is available, then this
1012         works just like u.
1014     u
1015         Capture unknown or varying, transfer opposite. Filter selects among t
1016         and b on a frame by frame basis by analyzing the images and selecting
1017         the alternative that produces best match between the fields.
1019     T
1020         Capture top-first, transfer unknown or varying. Filter selects among t
1021         and p using image analysis.
1023     B
1024         Capture bottom-first, transfer unknown or varying. Filter selects
1025         among b and p using image analysis.
1027     A
1028         Capture determined by field flags, transfer unknown or varying. Filter
1029         selects among t, b and p using field flags and image analysis. If no
1030         field information is available, then this works just like U. This is
1031         the default mode.
1033     U
1034         Both capture and transfer unknown or varying. Filter selects among t,
1035         b and p using image analysis only.
1037     v
1038         Verbose operation. Prints the selected mode for each frame and the
1039         average squared difference between fields for t, b, and p
1040         alternatives.
1042 telecine[=start]
1043     Apply 3:2 'telecine' process to increase framerate by 20%. This most
1044     likely will not work correctly with MPlayer. The optional start parameter
1045     tells the filter where in the telecine pattern to start (0-3).
1047 tinterlace[=mode]
1048     Temporal field interlacing - merge pairs of frames into an interlaced
1049     frame, halving the framerate. Even frames are moved into the upper field,
1050     odd frames to the lower field. This can be used to fully reverse the
1051     effect of the tfields filter (in mode 0). Available modes are:
1053     :0: Move odd frames into the upper field, even into the lower field,
1054         generating a full-height frame at half framerate.
1055     :1: Only output odd frames, even frames are dropped; height unchanged.
1056     :2: Only output even frames, odd frames are dropped; height unchanged.
1057     :3: Expand each frame to full height, but pad alternate lines with black;
1058         framerate unchanged.
1059     :4: Interleave even lines from even frames with odd lines from odd frames.
1060         Height unchanged at half framerate.
1062 tfields[=mode[:field_dominance]]
1063     Temporal field separation - split fields into frames, doubling the output
1064     framerate.
1066     <mode>
1067         :0: Leave fields unchanged (will jump/flicker).
1068         :1: Interpolate missing lines. (The algorithm used might not be so
1069             good.)
1070         :2: Translate fields by 1/4 pixel with linear interpolation (no jump).
1071         :4: Translate fields by 1/4 pixel with 4tap filter (higher quality)
1072             (default).
1074     <field_dominance> (DEPRECATED)
1075         :-1: auto (default) Only works if the decoder exports the appropriate
1076              information and no other filters which discard that information
1077              come before tfields in the filter chain, otherwise it falls back
1078              to 0 (top field first).
1079         :0:  top field first
1080         :1:  bottom field first
1082         *NOTE*: This option will possibly be removed in a future version. Use
1083         ``--field-dominance`` instead.
1085 yadif=[mode[:field_dominance]]
1086     Yet another deinterlacing filter
1088     <mode>
1089         :0: Output 1 frame for each frame.
1090         :1: Output 1 frame for each field.
1091         :2: Like 0 but skips spatial interlacing check.
1092         :3: Like 1 but skips spatial interlacing check.
1094     <field_dominance> (DEPRECATED)
1095         Operates like tfields.
1097         *NOTE*: This option will possibly be removed in a future version. Use
1098         ``--field-dominance`` instead.
1100 mcdeint=[mode[:parity[:qp]]]
1101     Motion compensating deinterlacer. It needs one field per frame as input
1102     and must thus be used together with tfields=1 or yadif=1/3 or equivalent.
1104     <mode>
1105         :0: fast
1106         :1: medium
1107         :2: slow, iterative motion estimation
1108         :3: extra slow, like 2 plus multiple reference frames
1110     <parity>
1111         0 or 1 selects which field to use (note: no autodetection yet!).
1113     <qp>
1114         Higher values should result in a smoother motion vector field but less
1115         optimal individual vectors.
1117 boxblur=radius:power[:radius:power]
1118     box blur
1120     <radius>
1121         blur filter strength
1122     <power>
1123         number of filter applications
1125 sab=radius:pf:colorDiff[:radius:pf:colorDiff]
1126     shape adaptive blur
1128     <radius>
1129         blur filter strength (~0.1-4.0) (slower if larger)
1130     <pf>
1131         prefilter strength (~0.1-2.0)
1132     <colorDiff>
1133         maximum difference between pixels to still be considered (~0.1-100.0)
1135 smartblur=radius:strength:threshold[:radius:strength:threshold]
1136     smart blur
1138     <radius>
1139         blur filter strength (~0.1-5.0) (slower if larger)
1140     <strength>
1141         blur (0.0-1.0) or sharpen (-1.0-0.0)
1142     <threshold>
1143         filter all (0), filter flat areas (0-30) or filter edges (-30-0)
1145 perspective=x0:y0:x1:y1:x2:y2:x3:y3:t
1146     Correct the perspective of movies not filmed perpendicular to the screen.
1148     <x0>,<y0>,...
1149         coordinates of the top left, top right, bottom left, bottom right
1150         corners
1151     <t>
1152         linear (0) or cubic resampling (1)
1154 2xsai
1155     Scale and smooth the image with the 2x scale and interpolate algorithm.
1157 1bpp
1158     1bpp bitmap to YUV/BGR 8/15/16/32 conversion
1160 down3dright[=lines]
1161     Reposition and resize stereoscopic images. Extracts both stereo fields and
1162     places them side by side, resizing them to maintain the original movie
1163     aspect.
1165     <lines>
1166         number of lines to select from the middle of the image (default: 12)
1168 bmovl=hidden:opaque:fifo
1169     The bitmap overlay filter reads bitmaps from a FIFO and displays them on
1170     top of the movie, allowing some transformations on the image. See also
1171     ``TOOLS/bmovl-test.c`` for a small bmovl test program.
1173     <hidden>
1174         Set the default value of the 'hidden' flag (0=visible, 1=hidden).
1175     <opaque>
1176         Set the default value of the 'opaque' flag (0=transparent, 1=opaque).
1177     <fifo>
1178         path/filename for the FIFO (named pipe connecting ``mplayer
1179         --vf=bmovl`` to the controlling application)
1181     FIFO commands are:
1183     RGBA32 width height xpos ypos alpha clear
1184         followed by width*height*4 Bytes of raw RGBA32 data.
1185     ABGR32 width height xpos ypos alpha clear
1186         followed by width*height*4 Bytes of raw ABGR32 data.
1187     RGB24 width height xpos ypos alpha clear
1188         followed by width*height*3 Bytes of raw RGB24 data.
1189     BGR24 width height xpos ypos alpha clear
1190         followed by width*height*3 Bytes of raw BGR24 data.
1191     ALPHA width height xpos ypos alpha
1192         Change alpha transparency of the specified area.
1193     CLEAR width height xpos ypos
1194         Clear area.
1195     OPAQUE
1196         Disable all alpha transparency. Send "ALPHA 0 0 0 0 0" to enable it
1197         again.
1198     HIDE
1199         Hide bitmap.
1200     SHOW
1201         Show bitmap.
1203     Arguments are:
1205     <width>, <height>
1206         image/area size
1207     <xpos>, <ypos>
1208         Start blitting at position x/y.
1209     <alpha>
1210         Set alpha difference. If you set this to -255 you can then send a
1211         sequence of ALPHA-commands to set the area to -225, -200, -175 etc for
1212         a nice fade-in-effect! ;)
1214         :0:    same as original
1215         :255:  Make everything opaque.
1216         :-255: Make everything transparent.
1218     <clear>
1219         Clear the framebuffer before blitting.
1221         :0: The image will just be blitted on top of the old one, so you do
1222             not need to send 1.8MB of RGBA32 data every time a small part of
1223             the screen is updated.
1224         :1: clear
1226 framestep=I|[i]step
1227     Renders only every nth frame or every intra frame (keyframe).
1229     If you call the filter with I (uppercase) as the parameter, then *only*
1230     keyframes are rendered. For DVDs it generally means one in every 15/12
1231     frames (IBBPBBPBBPBBPBB), for AVI it means every scene change or every
1232     keyint value.
1234     When a keyframe is found, an 'I!' string followed by a newline character
1235     is printed, leaving the current line of MPlayer output on the screen,
1236     because it contains the time (in seconds) and frame number of the keyframe
1237     (You can use this information to split the AVI.).
1239     If you call the filter with a numeric parameter 'step' then only one in
1240     every 'step' frames is rendered.
1242     If you put an 'i' (lowercase) before the number then an 'I!' is printed
1243     (like the I parameter).
1245     If you give only the i then nothing is done to the frames, only I! is
1246     printed.
1248 tile=xtiles:ytiles:output:start:delta
1249     Tile a series of images into a single, bigger image. If you omit a
1250     parameter or use a value less than 0, then the default value is used. You
1251     can also stop when you are satisfied (``... --vf=tile=10:5 ...``). It is
1252     probably a good idea to put the scale filter before the tile :-)
1254     The parameters are:
1256     <xtiles>
1257         number of tiles on the x axis (default: 5)
1258     <ytiles>
1259         number of tiles on the y axis (default: 5)
1260     <output>
1261         Render the tile when 'output' number of frames are reached, where
1262         'output' should be a number less than xtile * ytile. Missing tiles are
1263         left blank. You could, for example, write an 8 * 7 tile every 50
1264         frames to have one image every 2 seconds @ 25 fps.
1265     <start>
1266         outer border thickness in pixels (default: 2)
1267     <delta>
1268         inner border thickness in pixels (default: 4)
1270 delogo[=x:y:w:h:t]
1271     Suppresses a TV station logo by a simple interpolation of the surrounding
1272     pixels. Just set a rectangle covering the logo and watch it disappear (and
1273     sometimes something even uglier appear - your mileage may vary).
1275     <x>,<y>
1276         top left corner of the logo
1277     <w>,<h>
1278         width and height of the cleared rectangle
1279     <t>
1280         Thickness of the fuzzy edge of the rectangle (added to w and h). When
1281         set to -1, a green rectangle is drawn on the screen to simplify
1282         finding the right x,y,w,h parameters.
1283     file=<file>
1284         You can specify a text file to load the coordinates from.  Each line
1285         must have a timestamp (in seconds, and in ascending order) and the
1286         "x:y:w:h:t" coordinates (*t* can be omitted).
1288 remove-logo=/path/to/logo_bitmap_file_name.pgm
1289     Suppresses a TV station logo, using a PGM or PPM image file to determine
1290     which pixels comprise the logo. The width and height of the image file
1291     must match those of the video stream being processed. Uses the filter
1292     image and a circular blur algorithm to remove the logo.
1294     ``/path/to/logo_bitmap_file_name.pgm``
1295         [path] + filename of the filter image.
1297 screenshot
1298     Allows acquiring screenshots of the movie using slave mode commands that
1299     can be bound to keypresses. See the slave mode documentation and the
1300     ``INTERACTIVE CONTROL`` section for details. Files named ``shotNNNN.png``
1301     will be saved in the working directory, using the first available number -
1302     no files will be overwritten. The filter has no overhead when not used. It
1303     does however break playback in some cases, especially VDPAU hardware
1304     decoding is incompatible with the filter. Thus it is not completely safe to
1305     add the filter to default configuration "just in case you might want to
1306     take screenshots". Make sure that the screenshot filter is added after all
1307     other filters whose effect you want to record on the saved image. E.g. it
1308     should be the last filter if you want to have an exact screenshot of what
1309     you see on the monitor.
1312     Moves SSA/ASS subtitle rendering to an arbitrary point in the filter
1313     chain. See the ``--ass`` option.
1315     *EXAMPLE*:
1317     ``--vf=ass,screenshot``
1318         Moves SSA/ASS rendering before the screenshot filter. Screenshots
1319         taken this way will contain subtitles.
1321 blackframe[=amount:threshold]
1322     Detect frames that are (almost) completely black. Can be useful to detect
1323     chapter transitions or commercials. Output lines consist of the frame
1324     number of the detected frame, the percentage of blackness, the frame type
1325     and the frame number of the last encountered keyframe.
1327     <amount>
1328         Percentage of the pixels that have to be below the threshold (default:
1329         98).
1331     <threshold>
1332         Threshold below which a pixel value is considered black (default: 32).
1334 stereo3d[=in:out]
1335     Stereo3d converts between different stereoscopic image formats.
1337     <in>
1338         Stereoscopic image format of input. Possible values:
1340         sbsl or side_by_side_left_first
1341             side by side parallel (left eye left, right eye right)
1342         sbsr or side_by_side_right_first
1343             side by side crosseye (right eye left, left eye right)
1344         sbs2l or side_by_side_half_width_left_first
1345             side by side parallel with half width resolution (left eye left,
1346             right eye right)
1347         sbs2r or side_by_side_half_width_right_first
1348             side by side crosseye with half width resolution (right eye left,
1349             left eye right)
1350         abl or above_below_left_first
1351             above-below (left eye above, right eye below)
1352         abl or above_below_right_first
1353             above-below (right eye above, left eye below)
1354         ab2l or above_below_half_height_left_first
1355             above-below with half height resolution (left eye above, right eye
1356             below)
1357         ab2r or above_below_half_height_right_first
1358             above-below with half height resolution (right eye above, left eye
1359             below)
1361     <out>
1362         Stereoscopic image format of output. Possible values are all the input
1363         formats as well as:
1365         arcg or anaglyph_red_cyan_gray
1366             anaglyph red/cyan gray (red filter on left eye, cyan filter on
1367             right eye)
1368         arch or anaglyph_red_cyan_half_color
1369             anaglyph red/cyan half colored (red filter on left eye, cyan filter
1370             on right eye)
1371         arcc or anaglyph_red_cyan_color
1372             anaglyph red/cyan color (red filter on left eye, cyan filter on
1373             right eye)
1374         arcd or anaglyph_red_cyan_dubois
1375             anaglyph red/cyan color optimized with the least squares
1376             projection of dubois (red filter on left eye, cyan filter on right
1377             eye)
1378         agmg or anaglyph_green_magenta_gray
1379             anaglyph green/magenta gray (green filter on left eye, magenta
1380             filter on right eye)
1381         agmh or anaglyph_green_magenta_half_color
1382             anaglyph green/magenta half colored (green filter on left eye,
1383             magenta filter on right eye)
1384         agmc or anaglyph_green_magenta_color
1385             anaglyph green/magenta colored (green filter on left eye, magenta
1386             filter on right eye)
1387         agmd or anaglyph_green_magenta_dubois
1388             anaglyph green/magenta colored optimized with the least squares
1389             projection of dubois (green filter on left eye, magenta filter on
1390             right eye)
1391         aybg or anaglyph_yellow_blue_gray
1392             anaglyph yellow/blue gray (yellow filter on left eye, blue filter
1393             on right eye)
1394         aybh or anaglyph_yellow_blue_half_color
1395             anaglyph yellow/blue half colored (yellow filter on left eye, blue
1396             filter on right eye)
1397         aybc or anaglyph_yellow_blue_color
1398             anaglyph yellow/blue colored (yellow filter on left eye, blue
1399             filter on right eye)
1400         aybd or anaglyph_yellow_blue_dubois
1401             anaglyph yellow/blue colored optimized with the least squares
1402             projection of dubois (yellow filter on left eye, blue filter on
1403             right eye)
1404         irl or interleave_rows_left_first
1405             Interleaved rows (left eye has top row, right eye starts on next
1406             row)
1407         irr or interleave_rows_right_first
1408             Interleaved rows (right eye has top row, left eye starts on next
1409             row)
1410         ml or mono_left
1411             mono output (left eye only)
1412         mr or mono_right
1413             mono output (right eye only)
1415 gradfun[=strength[:radius]]
1416     Fix the banding artifacts that are sometimes introduced into nearly flat
1417     regions by truncation to 8bit colordepth. Interpolates the gradients that
1418     should go where the bands are, and dithers them.
1420     This filter is designed for playback only. Do not use it prior to lossy
1421     compression, because compression tends to lose the dither and bring back
1422     the bands.
1424     <strength>
1425         Maximum amount by which the filter will change any one pixel. Also the
1426         threshold for detecting nearly flat regions (default: 1.2).
1428     <radius>
1429         Neighborhood to fit the gradient to. Larger radius makes for smoother
1430         gradients, but also prevents the filter from modifying pixels near
1431         detailed regions (default: 16).
1433 fixpts[=options]
1434     Fixes the presentation timestamps (PTS) of the frames. By default, the PTS
1435     passed to the next filter is dropped, but the following options can change
1436     that:
1438     print
1439         Print the incoming PTS.
1441     fps=<fps>
1442         Specify a frame per second value.
1444     start=<pts>
1445         Specify an initial value for the PTS.
1447     autostart=<n>
1448         Uses the *n*\th incoming PTS as the initial PTS. All previous PTS are
1449         kept, so setting a huge value or -1 keeps the PTS intact.
1451     autofps=<n>
1452         Uses the *n*\th incoming PTS after the end of autostart to determine
1453         the framerate.
1455     *EXAMPLE*:
1457     ``--vf=fixpts=fps=24000/1001,ass,fixpts``
1458         Generates a new sequence of PTS, uses it for ASS subtitles, then drops
1459         it. Generating a new sequence is useful when the timestamps are reset
1460         during the program; this is frequent on DVDs. Dropping it may be
1461         necessary to avoid confusing encoders.
1463     *NOTE*: Using this filter together with any sort of seeking (including
1464     ``--ss``) may make demons fly out of your nose.