mplayer

set pixel mode to ccir601

overlay

cr-left=
Set the left cropping value (default: 50).

cr-right=
Set the right cropping value (default: 300).

cr-top=
Set the top cropping value (default: 0).

cr-bottom=
Set the bottom cropping value (default: 0).

ck-[r|g|b]=
Set the r(ed), g(reen) or b(lue)  gain  of  the  overlay
color-key.

ck-[r|g|b]min=
minimum value for the respective color key

ck-[r|g|b]max=
maximum value for the respective color key

ignore-cache
Ignore cached overlay settings.

update-cache
Update cached overlay settings.

ol-osd
Enable overlay onscreen display.

nool-osd
Disable overlay onscreen display (default).

ol[h|w|x|y]-cor=
Adjust the overlay size (h,w) and position (x,y) in case
it does not match the window perfectly (default: 0).

overlay
Activate overlay (default).

nooverlay
Activate TV-out.

overlay-ratio=
Tune the overlay (default: 1000).

-fbmode  (-vo fbdev only)
Change video mode to the one that is labeled  as    in
/etc/fb.modes.
NOTE: VESA framebuffer does not support mode changing.

-fbmodeconfig  (-vo fbdev only)
Override  framebuffer  mode  configuration  file (default: /etc/
fb.modes).

-fs (also see -zoom)
Fullscreen playback  (centers  movie,  and  paints  black  bands
around it).  Not supported by all video output drivers.

-fsmode-dontuse  (OBSOLETE, use the -fs option)
Try this option if you still experience fullscreen problems.

-fstype  (X11 only)
Specify a priority list of fullscreen modes to be used.  You can
negate the modes by prefixing them with '-'.  If you  experience
problems  like the fullscreen window being covered by other win
dows try using a different order.
NOTE: See -fstype help for a full list of available modes.

The available types are:

above
Use the _NETWM_STATE_ABOVE hint if available.
below
Use the _NETWM_STATE_BELOW hint if available.
fullscreen
Use the _NETWM_STATE_FULLSCREEN hint if available.
layer
Use the _WIN_LAYER hint with the default layer.
layer=
Use the _WIN_LAYER hint with the given layer number.
netwm
Force NETWM style.
none
Clear the list of modes; you can add modes to enable af
terward.
stays_on_top
Use _NETWM_STATE_STAYS_ON_TOP hint if available.

EXAMPLE:
layer,stays_on_top,above,fullscreen
Default  order,  will be used as a fallback if incorrect
or unsupported modes are specified.
-fullscreen
Fixes fullscreen switching on OpenBox 1.x.

-geometry x[%][:y[%]] or [WxH][+-x+-y]
Adjust where the output is on the screen initially.  The x and y
specifications  are  in pixels measured from the top-left of the
screen to the top-left of the image being displayed, however  if
a percentage sign is given after the argument it turns the value
into a percentage of the screen size in that direction.  It also
supports the standard X11 -geometry option format, in which e.g.
+10-50 means "place 10 pixels from the left border and 50 pixels
from the lower border" and "--20+-10" means "place 20 pixels be
yond the right and 10 pixels beyond the top border".  If an  ex
ternal window is specified using the -wid option, then the x and
y coordinates are relative to the top-left corner of the  window
rather  than  the  screen.   The coordinates are relative to the
screen given with -xineramascreen for the video  output  drivers
that  fully  support  -xineramascreen (direct3d, gl, gl2, vdpau,
x11, xv, xvmc, corevideo).
NOTE: This option is only supported by the x11, xmga, xv,  xvmc,
xvidix, gl, gl2, directx, fbdev, tdfxfb and corevideo video out
put drivers.

EXAMPLE:
50:40
Places the window at x=50, y=40.
50%:50%
Places the window in the middle of the screen.
100%
Places the window at the middle of the right edge of the
screen.
100%:100%
Places  the  window  at  the  bottom right corner of the
screen.

-guiwid  (also see -wid) (GUI only)
This tells the GUI to also use an X11 window and stick itself to
the  bottom of the video, which is useful to embed a mini-GUI in
a browser (with the MPlayer plugin for instance).

-hue
Adjust the hue of the video signal (default: 0).  You can get  a
colored  negative  of the image with this option.  Not supported
by all video output drivers.

-monitor-dotclock  (-vo fbdev and vesa only)
Specify the dotclock or pixelclock range of the monitor.

-monitor-hfreq  (-vo fbdev and vesa only)
Specify the horizontal frequency range of the monitor.

-monitor-vfreq  (-vo fbdev and vesa only)
Specify the vertical frequency range of the monitor.

-monitoraspect  (also see -aspect)
Set the aspect ratio of your monitor or TV screen.  A value of 0
disables  a  previous  setting (e.g. in the config file).  Over
rides the -monitorpixelaspect setting if enabled.

EXAMPLE:
-monitoraspect 4:3  or 1.3333
-monitoraspect 16:9 or 1.7777

-monitorpixelaspect  (also see -aspect)
Set the aspect of a single pixel of your monitor  or  TV  screen
(default:  1).   A  value  of 1 means square pixels (correct for
(almost?) all LCDs).

-name (X11 only)
Set the window class name.

-nodouble
Disables double buffering, mostly for debugging purposes.   Dou
ble buffering fixes flicker by storing two frames in memory, and
displaying one while decoding another.  It can affect OSD  nega
tively, but often removes OSD flickering.

-nograbpointer
Do  not  grab the mouse pointer after a video mode change (-vm).
Useful for multihead setups.

-nokeepaspect
Do not keep window aspect ratio  when  resizing  windows.   Only
works  with  the  x11,  xv,  xmga,  xvidix, directx video output
drivers.  Furthermore under X11 your window manager has to honor
window aspect hints.

-ontop
Makes the player window stay on top of other windows.  Supported
by video output drivers which use X11, except SDL,  as  well  as
directx, corevideo, quartz, ggi and gl2.

-panscan
Enables pan-and-scan functionality (cropping the sides of e.g. a
16:9 movie to make it fit a 4:3 display  without  black  bands).
The range controls how much of the image is cropped.  Only works
with the xv, xmga, mga, gl, gl2, quartz,  corevideo  and  xvidix
video output drivers.
NOTE:  Values  between  -1 and 0 are allowed as well, but highly
experimental and may crash or worse.  Use at your own risk!

-panscanrange  (experimental)
Change the range of the pan-and-scan functionality (default: 1).
Positive  values  mean multiples of the default range.  Negative
numbers mean you can zoom in up to a factor of  -panscanrange+1.
E.g.  -panscanrange  -3  allows  a zoom factor of up to 4.  This
feature is experimental.  Do not report bugs unless you are  us
ing -vo gl.

-refreshrate
Set  the monitor refreshrate in Hz.  Currently only supported by
-vo directx combined with the -vm option.

-rootwin
Play movie in the root  window  (desktop  background).   Desktop
background  images  may  cover  the  movie window, though.  Only
works with the x11, xv, xmga, xvidix, quartz, corevideo and  di
rectx video output drivers.

-saturation
Adjust the saturation of the video signal (default: 0).  You can
get grayscale output with this option.   Not  supported  by  all
video output drivers.

-screenh
Specify  the screen height for video output drivers which do not
know the screen resolution like fbdev, x11 and TV-out.

-screenw
Specify the screen width for video output drivers which  do  not
know the screen resolution like fbdev, x11 and TV-out.

-stop-xscreensaver (X11 only)
Turns off xscreensaver at startup and turns it on again on exit.
If your screensaver supports neither the XSS  nor  XResetScreen
Saver API please use -heartbeat-cmd instead.

-title (also see -use-filename-title)
Set  the  window  title.   Supported  by  X11-based video output
drivers.

-use-filename-title (also see -title)
Set the window title using the media filename, when not set with
-title.  Supported by X11-based video output drivers.

-vm
Try  to change to a different video mode.  Supported by the dga,
x11, xv, sdl and directx video output drivers.  If used with the
directx  video  output  driver  the -screenw, -screenh, -bpp and
-refreshrate options can be used to set the new display mode.

-vsync
Enables VBI for the vesa, dfbmga and svga video output  drivers.

-wid  (also see -guiwid) (X11, OpenGL and DirectX only)
This  tells  MPlayer to attach to an existing window.  Useful to
embed MPlayer in a browser (e.g. the plugger  extension).   This
option  fills  the given window completely, thus aspect scaling,
panscan, etc are no longer handled by MPlayer but must  be  man
aged by the application that created the window.

-xineramascreen
In  Xinerama  configurations  (i.e.  a single desktop that spans
across multiple displays) this option tells MPlayer which screen
to  display the movie on.  A value of -2 means fullscreen across
the whole virtual display (in this case Xinerama information  is
completely ignored), -1 means fullscreen on the display the win
dow currently is on.  The initial position set via the -geometry
option  is  relative to the specified screen.  Will usually only
work with "-fstype -fullscreen" or "-fstype none".  This  option
is  not suitable to only set the startup screen (because it will
always display on the given screen in fullscreen mode),  -geome
try  is  the  best that is available for that purpose currently.
Supported by at least the direct3d, gl, gl2, x11, xv and  corev
ideo video output drivers.

-zrbw (-vo zr only)
Display  in  black and white.  For optimal performance, this can
be combined with '-lavdopts gray'.

-zrcrop  (-vo zr only)
Select a part of the input image  to  display,  multiple  occur
rences of this option switch on cinerama mode.  In cinerama mode
the movie is distributed over more than one TV  (or  beamer)  to
create a larger image.  Options appearing after the n-th -zrcrop
apply to the n-th MJPEG card, each card should at least  have  a
-zrdev in addition to the -zrcrop.  For examples, see the output
of -zrhelp and the Zr section of the documentation.

-zrdev  (-vo zr only)
Specify the device special file that belongs to your MJPEG card,
by default the zr video output driver takes the first v4l device
it can find.

-zrfd (-vo zr only)
Force  decimation:  Decimation,  as  specified  by  -zrhdec  and
-zrvdec, only happens if the hardware scaler can stretch the im
age to its original size.  Use this option to force  decimation.

-zrhdec  (-vo zr only)
Horizontal  decimation: Ask the driver to send only every 2nd or
4th line/pixel of the input image to the MJPEG card and use  the
scaler  of  the  MJPEG card to stretch the image to its original
size.

-zrhelp (-vo zr only)
Display a list of all -zr* options, their default values  and  a
cinerama mode example.

-zrnorm  (-vo zr only)
Specify the TV norm as PAL or NTSC (default: no change).

-zrquality  (-vo zr only)
A  number  from 1 (best) to 20 (worst) representing the JPEG en
coding quality.

-zrvdec  (-vo zr only)
Vertical decimation: Ask the driver to send only  every  2nd  or
4th  line/pixel of the input image to the MJPEG card and use the
scaler of the MJPEG card to stretch the image  to  its  original
size.

-zrxdoff  (-vo zr only)
If  the  movie is smaller than the TV screen, this option speci
fies the x offset from the upper-left corner of  the  TV  screen
(default: centered).

-zrydoff  (-vo zr only)
If  the  movie is smaller than the TV screen, this option speci
fies the y offset from the upper-left corner of  the  TV  screen
(default: centered).

VIDEO OUTPUT DRIVERS (MPLAYER ONLY)
Video  output  drivers are interfaces to different video output facili
ties.  The syntax is:

-vo
Specify a priority list of video output drivers to be used.

If the list has a trailing ',' MPlayer will fall back  on  drivers  not
contained in the list.  Suboptions are optional and can mostly be omit
ted.
NOTE: See -vo help for a list of compiled-in video output drivers.

EXAMPLE:
-vo xmga,xv,
Try the Matrox X11 driver, then the Xv driver, then oth
ers.
-vo directx:noaccel
Uses  the  DirectX  driver  with  acceleration  features
turned off.

Available video output drivers are:

xv (X11 only)
Uses the XVideo extension of XFree86 4.x to enable hardware  ac
celerated playback.  If you cannot use a hardware specific driv
er, this is probably the best  option.   For  information  about
what  colorkey  is  used and how it is drawn run MPlayer with -v
option and look out for the lines tagged with [xv common] at the
beginning.
adaptor=
Select a specific XVideo adaptor (check xvinfo results).
port=
Select a specific XVideo port.
ck=
Select the source from which the colorkey is taken  (de
fault: cur).
cur  The  default takes the colorkey currently set in
Xv.
use  Use but do not set  the  colorkey  from  MPlayer
(use -colorkey option to change it).
set  Same as use but also sets the supplied colorkey.
ck-method=
Sets the colorkey drawing method (default: man).
man  Draw the colorkey manually (reduces  flicker  in
some cases).
bg   Set the colorkey as window background.
auto Let Xv draw the colorkey.

x11 (X11 only)
Shared  memory video output driver without hardware acceleration
that works whenever X11 is present.

xover (X11 only)
Adds X11 support to all  overlay  based  video  output  drivers.
Currently only supported by tdfx_vid.

Select  the driver to use as source to overlay on top of
X11.

vdpau (with -vc ffmpeg12vdpau, ffwmv3vdpau, ffvc1vdpau, ffh264vdpau  or
ffodivxvdpau)
Video output that uses VDPAU to decode video via hardware.  Also
supports displaying of software-decoded video.
sharpen=
For positive values, apply a sharpening algorithm to the
video, for negative values  a  blurring  algorithm  (de
fault: 0).
denoise=
Apply a noise reduction algorithm to the video (default:
0, no noise reduction).
deint=
Select the deinterlacer (default: 0).  All modes > 0 re
spect -field-dominance.
0    no deinterlacing
1    Show only first field, similar to -vf field.
2    Bob deinterlacing, similar to -vf tfields=1.
3    motion  adaptive temporal deinterlacing May lead
to A/V desync with slow  video  hardware  and/or
high  resolution.  This is the default if "D" is
used to enable deinterlacing.
4    motion  adaptive  temporal  deinterlacing   with
edge-guided  spatial  interpolation  Needs  fast
video hardware.
chroma-deint
Makes temporal deinterlacers operate both  on  luma  and
chroma (default).  Use nochroma-deint to solely use luma
and speed up advanced deinterlacing.  Useful  with  slow
video memory.
pullup
Try to skip deinterlacing for progressive frames, useful
for watching telecined content, needs fast  video  hard
ware for high resolutions.  Only works with motion adap
tive temporal deinterlacing.
colorspace
Select the color space for YUV to  RGB  conversion.   In
general  BT.601  should  be used for standard definition
(SD) content and BT.709 for high  definition  (HD)  con
tent.   Using  incorrect color space results in slightly
under or over saturated and shifted colors.
0    Guess the color space based on video resolution.
Video  with width >= 1280 or height > 576 is as
sumed to be HD and BT.709 color  space  will  be
used.
1    Use ITU-R BT.601 color space (default).
2    Use ITU-R BT.709 color space.
3    Use SMPTE-240M color space.
hqscaling
0    Use default VDPAU scaling (default).
1-9  Apply  high quality VDPAU scaling (needs capable
hardware).
force-mixer
Forces the use of the VDPAU mixer, which implements  all
above  options  (default).   Use  noforce-mixer to allow
displaying BGRA colorspace.  (Disables all above options
and the hardware equalizer if image format BGRA is actu
ally used.)

xvmc (X11 with -vc ffmpeg12mc only)
Video output driver that uses the XvMC (X Video Motion Compensa
tion) extension of XFree86 4.x to speed up MPEG-1/2 and VCR2 de
coding.
adaptor=
Select a specific XVideo adaptor (check xvinfo results).
port=
Select a specific XVideo port.
(no)benchmark
Disables image display.  Necessary for proper benchmark
ing of drivers that change image buffers on monitor  re
trace  only  (nVidia).   Default is not to disable image
display (nobenchmark).
(no)bobdeint
Very simple deinterlacer.  Might not  look  better  than
-vf  tfields=1, but it is the only deinterlacer for xvmc
(default: nobobdeint).
(no)queue
Queue frames for display to allow more parallel work  of
the  video  hardware.   May add a small (not noticeable)
constant A/V desync (default: noqueue).
(no)sleep
Use sleep function while waiting for rendering to finish
(not recommended on Linux) (default: nosleep).
ck=cur|use|set
Same as -vo xv:ck (see -vo xv).
ck-method=man|bg|auto
Same as -vo xv:ck-method (see -vo xv).

dga (X11 only)
Play video through the XFree86 Direct Graphics Access extension.
Considered obsolete.

sdl (SDL only, buggy/outdated)
Highly platform independent SDL (Simple Directmedia  Layer)  li
brary  video  output  driver.  Since SDL uses its own X11 layer,
MPlayer X11 options do not have any effect on SDL.  Note that it
has several minor bugs (-vm/-novm is mostly ignored, -fs behaves
like -novm should, window is in top-left corner  when  returning
from fullscreen, panscan is not supported, ...).
driver=
Explicitly choose the SDL driver to use.
(no)forcexv
Use XVideo through the sdl video output driver (default:
forcexv).
(no)hwaccel
Use hardware accelerated scaler (default: hwaccel).

vidix
VIDIX (VIDeo Interface for *niX) is an interface  to  the  video
acceleration  features  of  different graphics cards.  Very fast
video output driver on cards that support it.

Explicitly choose the VIDIX  subdevice  driver  to  use.
Available   subdevice   drivers  are  cyberblade,  ivtv,
mach64,  mga_crtc2,  mga,  nvidia,  pm2,  pm3,   radeon,
rage128, s3, sh_veu, sis_vid and unichrome.

xvidix (X11 only)
X11 frontend for VIDIX

same as vidix

cvidix
Generic and platform independent VIDIX frontend, can even run in
a text console with nVidia cards.

same as vidix

winvidix (Windows only)
Windows frontend for VIDIX

same as vidix

direct3d (Windows only) (BETA CODE!)
Video output driver that uses the Direct3D interface (useful for
Vista).

directx (Windows only)
Video output driver that uses the DirectX interface.
noaccel
Turns off hardware acceleration.  Try this option if you
have display problems.

kva (OS/2 only)
Video output driver that uses the libkva interface.
snap Force SNAP mode.
wo   Force WarpOverlay! mode.
dive Force DIVE mode.
(no)t23
Enable or disable workaround for  T23  laptop  (default:
disabled).  Try to enable this option if your video card
supports upscaling only.

quartz (Mac OS X only)
Mac OS X Quartz video output driver.  Under some  circumstances,
it  might be more efficient to force a packed YUV output format,
with e.g. -vf format=yuy2.
device_id=
Choose the display device to use in fullscreen.
fs_res=:
Specify the fullscreen resolution (useful on  slow  sys
tems).

corevideo (Mac OS X 10.4 or 10.3.9 with QuickTime 7)
Mac OS X CoreVideo video output driver
device_id=
Choose  the  display device to use for fullscreen or set
it to -1 to always use the same screen the video  window
is on (default: -1 - auto).
shared_buffer
Write  output  to a shared memory buffer instead of dis
playing it and try to open an existing NSConnection  for
communication with a GUI.
buffer_name=
Name  of the shared buffer created with shm_open as well
as the name of the NSConnection MPlayer will try to open
(default: "mplayerosx").  Setting buffer_name implicitly
enables shared_buffer.

fbdev (Linux only)
Uses the kernel framebuffer to play video.

Explicitly choose the fbdev device  name  to  use  (e.g.
/dev/fb0)  or the name of the VIDIX subdevice if the de
vice name starts with 'vidix' (e.g.  'vidixsis_vid'  for
the sis driver).

fbdev2 (Linux only)
Uses the kernel framebuffer to play video, alternative implemen
tation.

Explicitly choose the fbdev device name to use (default:
/dev/fb0).

vesa
Very  general  video  output driver that should work on any VESA
VBE 2.0 compatible card.
(no)dga
Turns DGA mode on or off (default: on).
neotv_pal
Activate the NeoMagic TV out and set it to PAL norm.
neotv_ntsc
Activate the NeoMagic TV out and set it to NTSC norm.
vidix
Use the VIDIX driver.
lvo:
Activate the Linux Video Overlay on top of VESA mode.

svga
Play video using the SVGA library.

Specify video mode to use.  The mode can be given  in  a
xx format, e.g. 640x480x16M or be
a graphics mode number, e.g. 84.
bbosd
Draw OSD into black bands below the movie (slower).
native
Use only native drawing functions.  This  avoids  direct
rendering, OSD and hardware acceleration.
retrace
Force  frame  switch  on  vertical retrace.  Usable only
with -double.  It has the same effect as the -vsync  op
tion.
sq
Try to select a video mode with square pixels.
vidix
Use svga with VIDIX.

gl
OpenGL  video output driver, simple version.  Video size must be
smaller than the maximum texture size of your OpenGL implementa
tion.   Intended  to work even with the most basic OpenGL imple
mentations, but also makes use of newer extensions, which  allow
support  for more colorspaces and direct rendering.  For optimal
speed try adding the options
-dr -noslices
The code performs very few checks, so  if  a  feature  does  not
work,  this  might  be  because  it  is  not  supported  by your
card/OpenGL implementation even if you do not get any error mes
sage.   Use  glxinfo  or a similar tool to display the supported
OpenGL extensions.
(no)ati-hack
ATI drivers may give a corrupted  image  when  PBOs  are
used  (when  using -dr or force-pbo).  This option fixes
this, at the expense of using a bit more memory.
(no)force-pbo
Always uses PBOs to transfer textures even if  this  in
volves an extra copy.  Currently this gives a little ex
tra speed with NVidia drivers and a lot more speed  with
ATI drivers.  May need -noslices and the ati-hack subop
tion to work correctly.
(no)scaled-osd
Changes the way the OSD behaves when  the  size  of  the
window  changes  (default:  disabled).  When enabled be
haves more like the other video output drivers, which is
better for fixed-size fonts.  Disabled looks much better
with FreeType fonts and uses the borders  in  fullscreen
mode.   Does  not work correctly with ass subtitles (see
-ass), you can instead render them without  OpenGL  sup
port via -vf ass.
osdcolor=
Color  for OSD (default: 0x00ffffff, corresponds to non-
transparent white).
rectangle=
Select usage of rectangular textures which  saves  video
RAM, but often is slower (default: 0).
0: Use power-of-two textures (default).
1: Use the GL_ARB_texture_rectangle extension.
2: Use the GL_ARB_texture_non_power_of_two extension.
In some cases only supported  in  software  and  thus
very slow.
swapinterval=
Minimum  interval  between  two buffer swaps, counted in
displayed frames (default: 1).  1 is equivalent  to  en
abling VSYNC, 0 to disabling VSYNC.  Values below 0 will
leave it at the system default.  This limits the framer
ate   to   (horizontal  refresh  rate  /  n).   Requires
GLX_SGI_swap_control  support  to   work.    With   some
(most/all?)   implementations   this   only   works   in
fullscreen mode.
ycbcr
Use the GL_MESA_ycbcr_texture extension to  convert  YUV
to  RGB.  In most cases this is probably slower than do
ing software conversion to RGB.
yuv=
Select the type of YUV to RGB conversion.   The  default
is auto-detection deciding between values 0 and 2.
0:  Use  software  conversion.   Compatible  with all
OpenGL versions.  Provides brightness,  contrast  and
saturation control.
1:  Use register combiners.  This uses an nVidia-spe
cific extension (GL_NV_register_combiners).  At least
three  texture units are needed.  Provides saturation
and hue control.  This method is fast but inexact.
2: Use a fragment program.   Needs  the  GL_ARB_frag
ment_program  extension  and  at  least three texture
units.  Provides brightness, contrast, saturation and
hue control.
3:  Use a fragment program using the POW instruction.
Needs the GL_ARB_fragment_program  extension  and  at
least three texture units.  Provides brightness, con
trast, saturation, hue and gamma control.  Gamma  can
also  be  set  independently for red, green and blue.
Method 4 is usually faster.
4: Use a fragment  program  with  additional  lookup.
Needs  the  GL_ARB_fragment_program  extension and at
least four texture units.  Provides brightness,  con
trast,  saturation, hue and gamma control.  Gamma can
also be set independently for red, green and blue.
5: Use ATI-specific method (for older  cards).   This
uses an ATI-specific extension (GL_ATI_fragment_shad
er - not GL_ARB_fragment_shader!).   At  least  three
texture  units  are  needed.  Provides saturation and
hue control.  This method is fast but inexact.
6: Use a 3D texture  to  do  conversion  via  lookup.
Needs  the  GL_ARB_fragment_program  extension and at
least four texture units.  Extremely  slow  (software
emulation)  on  some (all?) ATI cards since it uses a
texture with  border  pixels.   Provides  brightness,
contrast,  saturation,  hue and gamma control.  Gamma
can also be set  independently  for  red,  green  and
blue.   Speed  depends  more  on GPU memory bandwidth
than other methods.
colorspace
Select the color space for YUV to RGB conversion.
0    Use the formula used normally  by  MPlayer  (de
fault).
1    Use ITU-R BT.601 color space.
2    Use ITU-R BT.709 color space.
3    Use SMPTE-240M color space.
levelconv=
Select  the  brightness  level conversion to use for the
YUV to RGB conversion
0    Convert TV to PC levels (default).
1    Convert PC to TV levels.
2    Do not do any conversion.
lscale=
Select the scaling function to use for  luminance  scal
ing.  Only valid for yuv modes 2, 3, 4 and 6.
0: Use simple linear filtering (default).
1:  Use  bicubic B-spline filtering (better quality).
Needs one additional texture unit.  Older cards  will
not  be  able  to  handle this for chroma at least in
fullscreen mode.
2: Use cubic filtering in horizontal, linear  filter
ing in vertical direction.  Works on a few more cards
than method 1.
3: Same as 1 but  does  not  use  a  lookup  texture.
Might be faster on some cards.
4:  Use experimental unsharp masking with 3x3 support
and a default strength of 0.5 (see  filter-strength).
5:  Use experimental unsharp masking with 5x5 support
and a default strength of 0.5 (see  filter-strength).
cscale=
Select the scaling function to use for chrominance scal
ing.  For details see lscale.
filter-strength=
Set the effect strength for  the  lscale/cscale  filters
that support it.
stereo=
Select a method for stereo display.  You may have to use
-aspect to fix the aspect value.  Experimental,  do  not
expect too much from it.
0: Normal 2D display
1:  left-right  split  input  to  full-color red-cyan
stereo.
2: left-right  split  input  to  full-color  red-cyan
stereo.
3:  left-right  split  input  to quadbuffered stereo.
Only supported by very few OpenGL cards.

The following options are only useful if writing your own  frag
ment programs.

customprog=
Load  a  custom  fragment  program from .  See
TOOLS/edgedect.fp for an example.
customtex=
Load a custom  "gamma  ramp"  texture  from  .
This  can  be used in combination with yuv=4 or with the
customprog option.
(no)customtlin
If enabled (default) use GL_LINEAR interpolation, other
wise use GL_NEAREST for customtex texture.
(no)customtrect
If enabled, use texture_rectangle for customtex texture.
Default is disabled.
(no)mipmapgen
If enabled, mipmaps for the video are automatically gen
erated.  This should be useful together with the custom
prog and the TXB instruction to implement  blur  filters
with  a  large  radius.  For most OpenGL implementations
this is very slow for any non-RGB formats.   Default  is
disabled.

Normally  there  is no reason to use the following options, they
mostly exist for testing purposes.

(no)glfinish
Call glFinish() before swapping buffers.  Slower but  in
some cases more correct output (default: disabled).
(no)manyfmts
Enables  support  for  more  (RGB and BGR) color formats
(default: enabled).  Needs OpenGL version >= 1.2.
slice-height=
Number of lines copied to texture in one piece (default:
0).  0 for whole image.
NOTE:  If  YUV  colorspace  is used (see yuv suboption),
special rules apply:
If the decoder uses slice rendering (see  -noslices),
this setting has no effect, the size of the slices as
provided by the decoder is used.
If the decoder does not use slice rendering, the  de
fault is 16.
(no)osd
Enable  or  disable support for OSD rendering via OpenGL
(default: enabled).  This option is for testing; to dis
able the OSD use -osdlevel 0 instead.
(no)aspect
Enable  or  disable aspect scaling and pan-and-scan sup
port  (default:  enabled).   Disabling  might   increase
speed.

gl2
Variant  of  the  OpenGL  video  output driver.  Supports videos
larger than the maximum texture size but lacks many of  the  ad
vanced  features  and  optimizations of the gl driver and is un
likely to be extended further.
(no)glfinish
same as gl (default: enabled)
yuv=
Select the type of YUV to RGB  conversion.   If  set  to
anything  except  0 OSD will be disabled and brightness,
contrast and gamma setting is  only  available  via  the
global  X  server  settings.  Apart from this the values
have the same meaning as for -vo gl.

matrixview
OpenGL-based renderer creating a  Matrix-like  running-text  ef
fect.
cols=
Number  of  text columns to display.  Very low values (<
16) will probably fail due to scaler limitations.   Val
ues not divisible by 16 may cause issues as well.
rows=
Number  of text rows to display.  Very low values (< 16)
will probably fail due to  scaler  limitations.   Values
not divisible by 16 may cause issues as well.

null
Produces no video output.  Useful for benchmarking.

aa
ASCII art video output driver that works on a text console.  You
can get a list and an explanation of available suboptions by ex
ecuting 'mplayer -vo aa:help'.
NOTE: The driver does not handle -aspect correctly.
HINT:  You  probably  have  to specify -monitorpixelaspect.  Try
'mplayer -vo aa -monitorpixelaspect 0.5'.

caca
Color ASCII art video output driver that works on  a  text  con
sole.

bl
Video playback using the Blinkenlights UDP protocol.  This driv
er is highly hardware specific.

Explicitly choose the Blinkenlights subdevice driver  to
use.  It is something like arcade:host=localhost:2323 or
hdl:file=name1,file=name2.  You must  specify  a  subde
vice.

ggi
GGI graphics system video output driver

Explicitly  choose  the  GGI driver to use.  Replace any
',' that would appear in the driver string by a '.'.

directfb
Play video using the DirectFB library.
(no)input
Use the DirectFB instead of the  MPlayer  keyboard  code
(default: enabled).
buffermode=single|double|triple
Double  and  triple  buffering  give best results if you
want to avoid tearing issues.  Triple buffering is  more
efficient  than  double  buffering  as it does not block
MPlayer while waiting for the vertical retrace.   Single
buffering should be avoided (default: single).
fieldparity=top|bottom
Control the output order for interlaced frames (default:
disabled).  Valid values are top  =  top  fields  first,
bottom = bottom fields first.  This option does not have
any effect on progressive film material like  most  MPEG
movies  are.  You need to enable this option if you have
tearing issues or unsmooth motions  watching  interlaced
film material.
layer=N
Will  force  layer with ID N for playback (default: -1 -
auto).
dfbopts=
Specify a parameter list for DirectFB.

dfbmga
Matrox G400/G450/G550 specific video output driver that uses the
DirectFB  library to make use of special hardware features.  En
ables CRTC2 (second head), displaying video independently of the
first head.
(no)input
same as directfb (default: disabled)
buffermode=single|double|triple
same as directfb (default: triple)
fieldparity=top|bottom
same as directfb
(no)bes
Enable  the  use of the Matrox BES (backend scaler) (de
fault: disabled).  Gives very  good  results  concerning
speed  and  output  quality as interpolated picture pro
cessing is done in hardware.  Works only on the  primary
head.
(no)spic
Make  use of the Matrox sub picture layer to display the
OSD (default: enabled).
(no)crtc2
Turn on TV-out on the second  head  (default:  enabled).
The output quality is amazing as it is a full interlaced
picture with proper sync to every odd/even field.
tvnorm=pal|ntsc|auto
Will set the TV norm of the Matrox card without the need
for   modifying   /etc/directfbrc  (default:  disabled).
Valid norms are pal = PAL, ntsc = NTSC.  Special norm is
auto  (auto-adjust  using  PAL/NTSC)  because it decides
which norm to use by looking at  the  framerate  of  the
movie.

mga (Linux only)
Matrox  specific  video  output driver that makes use of the YUV
back end scaler on Gxxx cards through a kernel module.   If  you
have a Matrox card, this is the fastest option.

Explicitly  choose  the  Matrox  device name to use (de
fault: /dev/mga_vid).

xmga (Linux, X11 only)
The mga video output driver, running in an X11 window.

Explicitly choose the Matrox device  name  to  use  (de
fault: /dev/mga_vid).

s3fb (Linux only) (also see -dr)
S3 Virge specific video output driver.  This driver supports the
card's YUV conversion and scaling, double buffering  and  direct
rendering  features.  Use -vf format=yuy2 to get hardware-accel
erated YUY2 rendering, which is much faster than  YV12  on  this
card.

Explicitly choose the fbdev device name to use (default:
/dev/fb0).

wii (Linux only)
Nintendo Wii/GameCube specific video output driver.

3dfx (Linux only)
3dfx-specific video output driver that directly uses  the  hard
ware on top of X11.  Only 16 bpp are supported.

tdfxfb (Linux only)
This driver employs the tdfxfb framebuffer driver to play movies
with YUV acceleration on 3dfx cards.

Explicitly choose the fbdev device name to use (default:
/dev/fb0).

tdfx_vid (Linux only)
3dfx-specific video output driver that works in combination with
the tdfx_vid kernel module.

Explicitly choose the device name to use (default: /dev/
tdfx_vid).

dxr2 (also see -dxr2) (DXR2 only)
Creative DXR2 specific video output driver.

Output video subdriver to use as overlay (x11, xv).

dxr3 (DXR3 only)
Sigma Designs em8300 MPEG decoder chip (Creative DXR3, Sigma De
signs Hollywood Plus) specific video output  driver.   Also  see
the lavc video filter.
overlay
Activates the overlay instead of TV-out.
prebuf
Turns on prebuffering.
sync
Will turn on the new sync-engine.
norm=
Specifies the TV norm.
0: Does not change current norm (default).
1: Auto-adjust using PAL/NTSC.
2: Auto-adjust using PAL/PAL-60.
3: PAL
4: PAL-60
5: NTSC

Specifies the device number to use if you have more than
one em8300 card.

ivtv (IVTV only)
Conexant  CX23415  (iCompression  iTVC15)  or  Conexant  CX23416
(iCompression   iTVC16)   MPEG  decoder  chip  (Hauppauge  WinTV
PVR-150/250/350/500) specific video output  driver  for  TV-out.
Also see the lavc video filter.

Explicitly  choose  the  MPEG decoder device name to use
(default: /dev/video16).

Explicitly choose the TV-out output to be used  for  the
video signal.

v4l2 (requires Linux 2.6.22+ kernel)
Video output driver for V4L2 compliant cards with built-in hard
ware MPEG decoder.  Also see the lavc video filter.

Explicitly choose the MPEG decoder device  name  to  use
(default: /dev/video16).

Explicitly  choose  the TV-out output to be used for the
video signal.

mpegpes (DVB only)
Video output driver for DVB cards that writes the output  to  an
MPEG-PES file if no DVB card is installed.
card=
Specifies the device number to use if you have more than
one DVB output card (V3 API only, such as  1.x.y  series
drivers).   If  not  specified  MPlayer  will search the
first usable card.

output filename (default: ./grab.mpg)

zr (also see -zr* and -zrhelp)
Video output driver  for  a  number  of  MJPEG  capture/playback
cards.

zr2 (also see the zrmjpeg video filter)
Video  output  driver  for  a  number  of MJPEG capture/playback
cards, second generation.
dev=
Specifies the video device to use.
norm=
Specifies the video norm to use (default: auto).
(no)prebuf
(De)Activate prebuffering, not yet supported.

md5sum
Calculate MD5 sums of each frame and write them to a file.  Sup
ports RGB24 and YV12 colorspaces.  Useful for debugging.
outfile=
Specify the output filename (default: ./md5sums).

yuv4mpeg
Transforms  the video stream into a sequence of uncompressed YUV
4:2:0 images and stores it in a  file  (default:  ./stream.yuv).
The  format  is  the  same as the one employed by mjpegtools, so
this is useful if you want to process the video with the  mjpeg
tools  suite.  It supports the YV12 format.  If your source file
has a different format and is interlaced, make sure to  use  -vf
scale=::1  to  ensure  the conversion uses interlaced mode.  You
can combine it with the -fixed-vo option  to  concatenate  files
with the same dimensions and fps value.
interlaced
Write  the output as interlaced frames, top field first.
interlaced_bf
Write the output  as  interlaced  frames,  bottom  field
first.
file=
Write  the  output  to  instead of the default
stream.yuv.

NOTE: If you do not specify any option the output is progressive
(i.e. not interlaced).

gif89a
Output each frame into a single animated GIF file in the current
directory.  It supports only RGB format with 24 bpp and the out
put is converted to 256 colors.

Float value to specify framerate (default: 5.0).

Specify the output filename (default: ./out.gif).

NOTE:  You must specify the framerate before the filename or the
framerate will be part of the filename.

EXAMPLE:
mplayer video.nut -vo gif89a:fps=15:output=test.gif

jpeg
Output each frame into a JPEG file  in  the  current  directory.
Each  file  takes  the frame number padded with leading zeros as
name.
[no]progressive
Specify standard or progressive  JPEG  (default:  nopro
gressive).
[no]baseline
Specify use of baseline or not (default: baseline).
optimize=
optimization factor (default: 100)
smooth=
smooth factor (default: 0)
quality=
quality factor (default: 75)
outdir=
Specify  the  directory  to  save the JPEG files to (de
fault: ./).
subdirs=
Create numbered subdirectories with the specified prefix
to save the files in instead of the current directory.
maxfiles= (subdirs only)
Maximum  number  of  files to be saved per subdirectory.
Must be equal to or larger than 1 (default: 1000).

pnm
Output each frame into a PNM  file  in  the  current  directory.
Each  file  takes  the frame number padded with leading zeros as
name.  It supports PPM, PGM and PGMYUV files  in  both  raw  and
ASCII mode.  Also see pnm(5), ppm(5) and pgm(5).
ppm
Write PPM files (default).
pgm
Write PGM files.
pgmyuv
Write  PGMYUV  files.   PGMYUV  is like PGM, but it also
contains the U and V plane, appended at  the  bottom  of
the picture.
raw
Write PNM files in raw mode (default).
ascii
Write PNM files in ASCII mode.
outdir=
Specify the directory to save the PNM files to (default:
./).
subdirs=
Create numbered subdirectories with the specified prefix
to save the files in instead of the current directory.
maxfiles= (subdirs only)
Maximum  number  of  files to be saved per subdirectory.
Must be equal to or larger than 1 (default: 1000).

png
Output each frame into a PNG  file  in  the  current  directory.
Each  file  takes  the frame number padded with leading zeros as
name.  24bpp RGB and BGR formats are supported.
z=
Specifies the compression level.  0 is no compression, 9
is maximum compression.
outdir=
Specify the directory to save the PNG files to (default:
./).
alpha
Create PNG files  with  an  alpha  channel.   Note  that
MPlayer  in general does not support alpha, so this will
only be useful in some rare cases.

tga
Output each frame into a Targa file in  the  current  directory.
Each  file  takes  the frame number padded with leading zeros as
name.  The purpose of this video output driver is to have a sim
ple  lossless  image writer to use without any external library.
It supports the BGR[A] color format, with 15,  24  and  32  bpp.
You  can force a particular format with the format video filter.

EXAMPLE:
mplayer video.nut -vf format=bgr15 -vo tga

DECODING/FILTERING OPTIONS
-ac
Specify a priority list of audio codecs to be used, according to
their  codec  name  in  codecs.conf.  Use a '-' before the codec
name to omit it.  Use a '+' before the codec name to  force  it,
this  will likely crash!  If the list has a trailing ',' MPlayer
will fall back on codecs not contained in the list.
NOTE: See -ac help for a full list of available codecs.

EXAMPLE:
-ac mp3acm
Force the l3codeca.acm MP3 codec.
-ac mad,
Try libmad first, then fall back on others.
-ac hwac3,a52,
Try hardware AC-3 passthrough, software AC-3, then  oth
ers.
-ac hwdts,
Try  hardware DTS passthrough, then fall back on others.
-ac -ffmp3,
Skip FFmpeg's MP3 decoder.

-af-adv  (also see -af)
Specify advanced audio filter options:

force=
Forces the insertion of audio filters to one of the fol
lowing:
0:  Use  completely  automatic filter insertion (cur
rently identical to 1).
1: Optimize for accuracy (default).
2: Optimize for speed.  Warning: Some features in the
audio filters may silently fail, and the sound quali
ty may drop.
3: Use no automatic insertion of filters and no opti
mization.   Warning:  It  may  be  possible  to crash
MPlayer using this setting.
4: Use automatic insertion of filters according to  0
above,  but use floating point processing when possi
ble.
5: Use automatic insertion of filters according to  1
above,  but use floating point processing when possi
ble.
6: Use automatic insertion of filters according to  2
above,  but use floating point processing when possi
ble.
7: Use no automatic insertion of filters according to
3  above, and use floating point processing when pos
sible.

list=
Same as -af.

-afm
Specify a priority list of audio codec families to be used,  ac
cording  to  their codec name in codecs.conf.  Falls back on the
default codecs if none of the given codec families work.
NOTE: See -afm help for a full list of available codec families.

EXAMPLE:
-afm ffmpeg
Try FFmpeg's libavcodec codecs first.
-afm acm,dshow
Try Win32 codecs first.

-aspect  (also see -zoom)
Override  movie  aspect ratio, in case aspect information is in
correct or missing in the file being played.

EXAMPLE:
-aspect 4:3  or -aspect 1.3333
-aspect 16:9 or -aspect 1.7777

-noaspect
Disable automatic movie aspect ratio compensation.

-field-dominance
Set first field for interlaced content.  Useful for  deinterlac
ers  that  double the framerate: -vf tfields=1, -vf yadif=1, -vo
vdpau:deint and -vo xvmc:bobdeint.
-1   auto (default): If the decoder does not export  the  ap
propriate  information,  it  falls  back to 0 (top field
first).
0    top field first
1    bottom field first

-flip
Flip image upside-down.

-lavdopts  (DEBUG CODE)
Specify libavcodec decoding parameters.  Separate  multiple  op
tions with a colon.

EXAMPLE:
-lavdopts gray:skiploopfilter=all:skipframe=nonref

Available options are:

bitexact
Only use bit-exact algorithms in all decoding steps (for
codec testing).

bug=
Manually work around encoder bugs.
0: nothing
1: autodetect bugs (default)
2 (msmpeg4v3):  some  old  lavc  generated  msmpeg4v3
files (no autodetection)
4  (mpeg4):  Xvid  interlacing  bug  (autodetected if
fourcc==XVIX)
8 (mpeg4): UMP4 (autodetected if fourcc==UMP4)
16 (mpeg4): padding bug (autodetected)
32 (mpeg4): illegal vlc bug (autodetected per fourcc)
64  (mpeg4): Xvid and DivX qpel bug (autodetected per
fourcc/version)
128 (mpeg4):  old  standard  qpel  (autodetected  per
fourcc/version)
256 (mpeg4): another qpel bug (autodetected per four
cc/version)
512 (mpeg4): direct-qpel-blocksize bug  (autodetected
per fourcc/version)
1024  (mpeg4):  edge  padding  bug  (autodetected per
fourcc/version)

debug=
Display debugging information.
0: disabled
1: picture info
2: rate control
4: bitstream
8: macroblock (MB) type
16: per-block quantization parameter (QP)
32: motion vector
0x0040: motion vector visualization (use -noslices)
0x0080: macroblock (MB) skip
0x0100: startcode
0x0200: PTS
0x0400: error resilience
0x0800: memory management control operations (H.264)
0x1000: bugs
0x2000: Visualize quantization parameter (QP),  lower
QP are tinted greener.
0x4000: Visualize block types.

ec=
Set error concealment strategy.
1: Use strong deblock filter for damaged MBs.
2: iterative motion vector (MV) search (slow)
3: all (default)

er=
Set error resilience strategy.
0: disabled
1: careful (Should work with broken encoders.)
2:  normal (default) (Works with compliant encoders.)
3: aggressive (More checks, but might cause  problems
even for valid bitstreams.)
4: very aggressive

fast (MPEG-2, MPEG-4, and H.264 only)
Enable optimizations which do not comply to the specifi
cation and might potentially cause problems,  like  sim
pler dequantization, simpler motion compensation, assum
ing use of the default quantization matrix, assuming YUV
4:2:0  and  skipping a few checks to detect damaged bit
streams.

gray
grayscale only decoding (a bit faster than with color)

idct= (see -lavcopts)
For best decoding quality use the  same  IDCT  algorithm
for  decoding and encoding.  This may come at a price in
accuracy, though.

lowres=[,]
Decode at lower resolutions.  Low resolution decoding is
not supported by all codecs, and it will often result in
ugly artifacts.  This is not a bug, but a side effect of
not decoding at full resolution.
0: disabled
1: 1/2 resolution
2: 1/4 resolution
3: 1/8 resolution
If  is specified lowres decoding will be used only if
the width of the video is major than or equal to .
o==[,=[,...]]   Pass   AVOptions   to
libavcodec  decoder.   Note,  a patch to make the o= unneeded
and pass all unknown options through the AVOption  system  is
welcome.  A full list of AVOptions can be found in the FFmpeg
manual.  Note that some options may  conflict  with  MEncoder
options.

EXAMPLE:
o=debug=pict

sb= (MPEG-2 only)
Skip  the given number of macroblock rows at the bottom.

st= (MPEG-2 only)
Skip the given number of macroblock rows at the top.

skiploopfilter= (H.264 only)
Skips the loop filter (AKA deblocking) during H.264  de
coding.  Since the filtered frame is supposed to be used
as reference for decoding dependent frames  this  has  a
worse  effect  on  quality  than not doing deblocking on
e.g. MPEG-2 video.  But at least for high  bitrate  HDTV
this  provides  a  big  speedup  with no visible quality
loss.

can be either one of the following:
none: Never skip.
default: Skip useless processing steps (e.g.  0  size
packets in AVI).
nonref: Skip frames that are not referenced (i.e. not
used for decoding  other  frames,  the  error  cannot
"build up").
bidir: Skip B-Frames.
nonkey: Skip all frames except keyframes.
all: Skip all frames.

skipidct= (MPEG-1/2 only)
Skips  the IDCT step.  This degrades quality a lot of in
almost all cases (see skiploopfilter for available  skip
values).

skipframe=
Skips  decoding  of frames completely.  Big speedup, but
jerky motion and sometimes bad artifacts (see  skiploop
filter for available skip values).

threads= (MPEG-1/2 and H.264 only)
number of threads to use for decoding (default: 1)

vismv=
Visualize motion vectors.
0: disabled
1: Visualize forward predicted MVs of P-frames.
2: Visualize forward predicted MVs of B-frames.
4: Visualize backward predicted MVs of B-frames.

vstats
Prints   some   statistics  and  stores  them  in  ./vs
tats_*.log.

-noslices
Disable drawing video by 16-pixel height  slices/bands,  instead
draws the whole frame in a single run.  May be faster or slower,
depending on video card and available cache.  It has effect only
with libmpeg2 and libavcodec codecs.

-nosound
Do not play/encode sound.  Useful for benchmarking.

-novideo
Do not play/encode video.  In many cases this will not work, use
-vc null -vo null instead.

-pp  (also see -vf pp)
Set the DLL postprocess level.  This option is no longer  usable
with  -vf pp.  It only works with Win32 DirectShow DLLs with in
ternal postprocessing routines.  The valid range of  -pp  values
varies  by  codec, it is mostly 0-6, where 0=disable, 6=slowest/
best.

-pphelp (also see -vf pp)
Show a summary about the available postprocess filters and their
usage.

-ssf
Specifies software scaler parameters.

EXAMPLE:
-vf scale -ssf lgb=3.0
lgb=
gaussian blur filter (luma)
cgb=
gaussian blur filter (chroma)
ls=
sharpen filter (luma)
cs=
sharpen filter (chroma)
chs=
chroma horizontal shifting
cvs=
chroma vertical shifting

-stereo
Select type of MP2/MP3 stereo output.
0    stereo
1    left channel
2    right channel

-sws  (also see -vf scale and -zoom)
Specify  the software scaler algorithm to be used with the -zoom
option.  This affects video output drivers which  lack  hardware
acceleration, e.g. x11.

Available types are:

0    fast bilinear
1    bilinear
2    bicubic (good quality) (default)
3    experimental
4    nearest neighbor (bad quality)
5    area
6    luma bicubic / chroma bilinear
7    gauss
8    sincR
9    lanczos
10   natural bicubic spline

NOTE:  Some  -sws  options  are tunable.  The description of the
scale video filter has further information.

-vc
Specify a priority list of video codecs to be used, according to
their  codec  name  in  codecs.conf.  Use a '-' before the codec
name to omit it.  Use a '+' before the codec name to  force  it,
this  will likely crash!  If the list has a trailing ',' MPlayer
will fall back on codecs not contained in the list.
NOTE: See -vc help for a full list of available codecs.

EXAMPLE:
-vc divx
Force Win32/VfW DivX codec, no fallback.
-vc -divxds,-divx,
Skip Win32 DivX codecs.
-vc ffmpeg12,mpeg12,
Try libavcodec's MPEG-1/2  codec,  then  libmpeg2,  then
others.

-vfm
Specify  a priority list of video codec families to be used, ac
cording to their names in codecs.conf.  Falls back  on  the  de
fault codecs if none of the given codec families work.
NOTE: See -vfm help for a full list of available codec families.

EXAMPLE:
-vfm ffmpeg,dshow,vfw
Try the libavcodec, then Directshow, then VfW codecs and
fall back on others, if they do not work.
-vfm xanim
Try XAnim codecs first.

-x  (also see -zoom) (MPlayer only)
Scale image to width  (if software/hardware scaling is avail
able).  Disables aspect calculations.

-xvidopts
Specify additional parameters when decoding with Xvid.
NOTE: Since libavcodec is faster than Xvid you might want to use
the  libavcodec postprocessing filter (-vf pp) and decoder (-vfm
ffmpeg) instead.

Xvid's internal postprocessing filters:
deblock-chroma (also see -vf pp)
chroma deblock filter
deblock-luma (also see -vf pp)
luma deblock filter
dering-luma (also see -vf pp)
luma deringing filter
dering-chroma (also see -vf pp)
chroma deringing filter
filmeffect (also see -vf noise)
Adds artificial film grain to the video.   May  increase
perceived quality, while lowering true quality.

rendering methods:
dr2
Activate direct rendering method 2.
nodr2
Deactivate direct rendering method 2.

-xy  (also see -zoom)
value<=8
Scale image by factor .
value>8
Set  width to value and calculate height to keep correct
aspect ratio.

-y  (also see -zoom) (MPlayer only)
Scale image to  height    (if  software/hardware  scaling  is
available).  Disables aspect calculations.

-zoom
Allow  software scaling, where available.  This will allow scal
ing with output drivers (like x11, fbdev) that  do  not  support
hardware  scaling  where MPlayer disables scaling by default for
performance reasons.

AUDIO FILTERS
Audio filters allow you to modify the audio stream and its  properties.
The syntax is:

-af
Setup a chain of audio filters.

NOTE: To get a full list of available audio filters, see -af help.

Audio filters are managed in lists.  There are a few commands to manage
the filter list.

-af-add
Appends the filters given as arguments to the filter list.

-af-pre
Prepends the filters given as arguments to the filter list.

-af-del
Deletes the filters at the given indexes.  Index  numbers  start
at  0,  negative  numbers address the end of the list (-1 is the
last).

-af-clr
Completely empties the filter list.

Available filters are:

resample[=srate[:sloppy[:type]]]
Changes the sample rate of the audio stream.  Can be used if you
have  a  fixed  frequency sound card or if you are stuck with an
old sound card that is only capable of max 44.1kHz.  This filter
is  automatically enabled if necessary.  It only supports 16-bit
integer and float in native-endian format as input.
NOTE: With MEncoder, you need to also use -srate .

output sample frequency in Hz.  The valid range for this
parameter  is  8000  to 192000.  If the input and output
sample frequency are the same or if  this  parameter  is
omitted  the  filter  is automatically unloaded.  A high
sample frequency normally improves  the  audio  quality,
especially  when used in combination with other filters.

Allow (1) or disallow (0) the output frequency to differ
slightly  from  the frequency given by  (default:
1).  Can be used if the startup of the playback  is  ex
tremely slow.

Select which resampling method to use.
0: linear interpolation (fast, poor quality especial
ly when upsampling)
1: polyphase filterbank and integer processing
2: polyphase filterbank and floating point processing
(slow, best quality)

EXAMPLE:
mplayer -af resample=44100:0:0
would set the output frequency of the resample filter to
44100Hz using exact output frequency scaling and  linear
interpolation.

lavcresample[=srate[:length[:linear[:count[:cutoff]]]]]
Changes  the  sample  rate  of  the  audio  stream to an integer
in Hz.  It only supports the 16-bit  native-endian  for
mat.
NOTE: With MEncoder, you need to also use -srate .

the output sample rate

length  of the filter with respect to the lower sampling
rate (default: 16)

if 1 then filters will be linearly interpolated  between
polyphase entries

log2  of the number of polyphase entries (..., 10->1024,
11->2048, 12->4096, ...)  (default: 10->1024)

cutoff frequency (0.0-1.0), default set  depending  upon
filter length

lavcac3enc[=tospdif[:bitrate[:minchn]]]
Encode  multi-channel audio to AC-3 at runtime using libavcodec.
Supports 16-bit native-endian input format, maximum 6  channels.
The  output is big-endian when outputting a raw AC-3 stream, na
tive-endian when outputting to S/PDIF.  The output  sample  rate
of  this  filter is same with the input sample rate.  When input
sample rate is 48kHz, 44.1kHz, or 32kHz,  this  filter  directly
use  it.   Otherwise a resampling filter is auto-inserted before
this filter to make the input and output sample rate  be  48kHz.
You need to specify '-channels N' to make the decoder decode au
dio into N-channel, then the filter can encode the N-channel in
put to AC-3.

Output  raw  AC-3  stream  if zero or not set, output to
S/PDIF for passthrough when  is set non-zero.

The bitrate to encode the AC-3 stream.  Set it to either
384  or  384000  to get 384kbits.  Valid values: 32, 40,
48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256,
320, 384, 448, 512, 576, 640  Default  bi
trate  is  based  on  the input channel number: 1ch: 96,
2ch: 192,  3ch: 224,  4ch: 384,  5ch: 448,  6ch: 448

If the input channel number is less than  ,  the
filter will detach itself (default: 5).

sweep[=speed]
Produces a sine sweep.

Sine  function  delta,  use  very low values to hear the
sweep.

sinesuppress[=freq:decay]
Remove a sine at the specified frequency.  Useful to get rid  of
the  50/60Hz  noise on low quality audio equipment.  It probably
only works on mono input.

The frequency of the sine which should  be  removed  (in
Hz) (default: 50)

Controls  the  adaptivity  (a larger value will make the
filter adapt to amplitude and phase changes  quicker,  a
smaller value will make the adaptation slower) (default:
0.0001).  Reasonable values are around 0.001.

bs2b[=option1:option2:...]
Bauer stereophonic to  binaural  transformation  using  libbs2b.
Improves  the headphone listening experience by making the sound
similar to that from loudspeakers, allowing  each  ear  to  hear
both  channels  and  taking into account the distance difference
and the head shadowing effect.  It is applicable only to 2 chan
nel audio.
fcut=
Set cut frequency in Hz.
feed=
Set feed level for low frequencies in 0.1*dB.
profile=
Several profiles are available for convenience:
default
will  be  used  if  nothing else was specified
(fcut=700, feed=45)
cmoy
Chu  Moy  circuit  implementation   (fcut=700,
feed=60)
jmeier
Jan  Meier  circuit  implementation (fcut=650,
feed=95)

If fcut or feed options are specified together with  a  profile,
they will be applied on top of the selected profile.

hrtf[=flag]
Head-related transfer function: Converts multichannel audio to 2
channel output for headphones, preserving the spatiality of  the
sound.

Flag  Meaning
m     matrix decoding of the rear channel
s     2-channel matrix decoding
0     no matrix decoding (default)

equalizer=[g1:g2:g3:...:g10]
10  octave band graphic equalizer, implemented using 10 IIR band
pass filters.  This means that it works regardless of what  type
of  audio  is being played back.  The center frequencies for the
10 bands are:

No. frequency
0    31.25 Hz
1    62.50 Hz
2   125.00 Hz
3   250.00 Hz
4   500.00 Hz
5    1.00 kHz
6    2.00 kHz
7    4.00 kHz
8    8.00 kHz
9   16.00 kHz

If the sample rate of the sound being played is lower  than  the
center  frequency  for  a frequency band, then that band will be
disabled.  A known bug with this filter is that the characteris
tics  for the uppermost band are not completely symmetric if the
sample rate is close to the center frequency of that band.  This
problem  can  be worked around by upsampling the sound using the
resample filter before it reaches this filter.
:::...:
floating point numbers representing the gain in  dB  for
each frequency band (-12-12)

EXAMPLE:
mplayer -af equalizer=11:11:10:5:0:-12:0:5:12:12 media.avi
Would amplify the sound in the upper and lower frequency
region while canceling it almost completely around 1kHz.

channels=nch[:nr:from1:to1:from2:to2:from3:to3:...]
Can  be  used  for  adding,  removing, routing and copying audio
channels.  If only  is given the default routing  is  used,
it  works as follows: If the number of output channels is bigger
than the number of input channels empty  channels  are  inserted
(except mixing from mono to stereo, then the mono channel is re
peated in both of the output channels).  If the number of output
channels  is  smaller  than the number of input channels the ex
ceeding channels are truncated.

number of output channels (1-8)

number of routes (1-8)

Pairs of numbers between 0 and 7 that  define  where  to
route each channel.

EXAMPLE:
mplayer -af channels=4:4:0:1:1:0:2:2:3:3 media.avi
Would  change  the  number of channels to 4 and set up 4
routes that swap channel 0 and channel 1 and leave chan
nel  2  and  3 intact.  Observe that if media containing
two channels was played back, channels  2  and  3  would
contain silence but 0 and 1 would still be swapped.
mplayer -af channels=6:4:0:0:0:1:0:2:0:3 media.avi
Would  change  the  number of channels to 6 and set up 4
routes that copy channel 0 to channels 0 to 3.   Channel
4 and 5 will contain silence.

format[=format] (also see -format)
Convert between different sample formats.  Automatically enabled
when needed by the sound card or another filter.

Sets the desired format.  The  general  form  is  'sbe',
where 's' denotes the sign (either 's' for signed or 'u'
for unsigned), 'b' denotes the number of bits per sample
(16,  24  or  32)  and  'e' denotes the endianness ('le'
means little-endian, 'be' big-endian and 'ne' the  endi
anness  of  the  computer MPlayer is running on).  Valid
values  (amongst  others)  are:  's16le',  'u32be'   and
'u24ne'.   Exceptions  to  this rule that are also valid
format specifiers: u8, s8,  floatle,  floatbe,  floatne,
mulaw, alaw, mpeg2, ac3 and imaadpcm.

volume[=v[:sc]]
Implements  software  volume control.  Use this filter with cau
tion since it can reduce the signal to noise ratio of the sound.
In  most  cases it is best to set the level for the PCM sound to
max, leave this filter out and control the output level to  your
speakers  with  the master volume control of the mixer.  In case
your sound card has a digital PCM mixer  instead  of  an  analog
one,  and you hear distortion, use the MASTER mixer instead.  If
there is an external amplifier connected to the  computer  (this
is  almost always the case), the noise level can be minimized by
adjusting the master level and the volume knob on the  amplifier
until the hissing noise in the background is gone.
This  filter has a second feature: It measures the overall maxi
mum sound level and prints out that level  when  MPlayer  exits.
This  volume estimate can be used for setting the sound level in
MEncoder such that the maximum dynamic range is utilized.
NOTE: This filter is not reentrant and can therefore only be en
abled once for every audio stream.

Sets  the  desired  gain  in  dB for all channels in the
stream from -200dB to  +60dB,  where  -200dB  mutes  the
sound  completely  and  +60dB equals a gain of 1000 (de
fault: 0).

Turns soft clipping on (1) or  off  (0).   Soft-clipping
can  make the sound more smooth if very high volume lev
els are used.  Enable this option if the  dynamic  range
of the loudspeakers is very low.
WARNING:  This  feature creates distortion and should be
considered a last resort.

EXAMPLE:
mplayer -af volume=10.1:0 media.avi
Would amplify the sound by 10.1dB and hard-clip  if  the
sound level is too high.

pan=n[:L00:L01:L02:...L10:L11:L12:...Ln0:Ln1:Ln2:...]
Mixes channels arbitrarily.  Basically a combination of the vol
ume and the channels filter that can be used  to  down-mix  many
channels  to only a few, e.g. stereo to mono or vary the "width"
of the center speaker in a surround sound system.   This  filter
is  hard  to use, and will require some tinkering before the de
sired result is obtained.  The number of options for this filter
depends  on  the  number  of output channels.  An example how to
downmix a six-channel file to two channels with this filter  can
be found in the examples section near the end.

number of output channels (1-8)

How much of input channel i is mixed into output channel
j (0-1).  So in principle you first have n numbers  say
ing what to do with the first input channel, then n num
bers that act on the second input channel etc.   If  you
do not specify any numbers for some input channels, 0 is
assumed.

EXAMPLE:
mplayer -af pan=1:0.5:0.5 media.avi
Would down-mix from stereo to mono.
mplayer -af pan=3:1:0:0.5:0:1:0.5 media.avi
Would give 3 channel output leaving channels 0 and 1 in
tact,  and  mix  channels  0 and 1 into output channel 2
(which could be sent to a subwoofer for example).

sub[=fc:ch]
Adds a subwoofer channel to the audio stream.   The  audio  data
used  for  creating  the  subwoofer channel is an average of the
sound in channel 0 and channel 1.  The resulting sound  is  then
low-pass  filtered  by a 4th order Butterworth filter with a de
fault cutoff frequency of 60Hz and added to a  separate  channel
in the audio stream.
Warning: Disable this filter when you are playing DVDs with Dol
by Digital 5.1 sound, otherwise this  filter  will  disrupt  the
sound to the subwoofer.

cutoff  frequency in Hz for the low-pass filter (20Hz to
300Hz) (default: 60Hz) For the best result  try  setting
the  cutoff frequency as low as possible.  This will im
prove the stereo or surround sound experience.

Determines the channel number in  which  to  insert  the
sub-channel  audio.  Channel number can be between 0 and
7 (default: 5).  Observe that  the  number  of  channels
will automatically be increased to  if necessary.

EXAMPLE:
mplayer -af sub=100:4 -channels 5 media.avi
Would  add  a sub-woofer channel with a cutoff frequency
of 100Hz to output channel 4.

center
Creates a center channel from the front channels.  May currently
be  low  quality as it does not implement a high-pass filter for
proper extraction yet, but averages and halves the channels  in
stead.

Determines  the  channel  number  in which to insert the
center channel.  Channel number can be between 0  and  7
(default:  5).  Observe that the number of channels will
automatically be increased to  if necessary.

surround[=delay]
Decoder for matrix encoded surround sound like  Dolby  Surround.
Many  files  with 2 channel audio actually contain matrixed sur
round sound.  Requires a sound card supporting at least 4  chan
nels.

delay  time in ms for the rear speakers (0 to 1000) (de
fault: 20) This delay should be set as follows: If d1 is
the  distance  from  the listening position to the front
speakers and d2 is the distance from the listening posi
tion  to the rear speakers, then the delay should be set
to 15ms if d1  d2.

EXAMPLE:
mplayer -af surround=15 -channels 4 media.avi
Would add surround sound decoding with  15ms  delay  for
the sound to the rear speakers.

delay[=ch1:ch2:...]
Delays  the  sound  to the loudspeakers such that the sound from
the different channels arrives at the listening position  simul
taneously.  It is only useful if you have more than 2 loudspeak
ers.
ch1,ch2,...
The delay in ms that should be imposed on  each  channel
(floating point number between 0 and 1000).

To calculate the required delay for the different channels do as
follows:

1. Measure the distance to the loudspeakers in meters  in  rela
tion  to your listening position, giving you the distances s1
to s5 (for a 5.1 system).  There is no point in  compensating
for  the subwoofer (you will not hear the difference anyway).

2. Subtract the distances s1 to s5 from  the  maximum  distance,
i.e. s[i] = max(s) - s[i]; i = 1...5.

3. Calculate  the required delays in ms as d[i] = 1000*s[i]/342;
i = 1...5.

EXAMPLE:
mplayer -af delay=10.5:10.5:0:0:7:0 media.avi
Would delay front left and right by 10.5ms, the two rear
channels  and  the  sub by 0ms and the center channel by
7ms.

export[=mmapped_file[:nsamples]]
Exports the incoming signal to other processes using memory map
ping (mmap()).  Memory mapped areas contain a header:

int nch                      /*number of channels*/
int size                     /*buffer size*/
unsigned long long counter   /*Used to keep sync, updated every
time new data is exported.*/

The rest is payload (non-interleaved) 16 bit data.

file  to map data to (default: ~/.mplayer/mplayer-af_ex
port)

number of samples per channel (default: 512)

EXAMPLE:
mplayer -af export=/tmp/mplayer-af_export:1024 media.avi
Would export 1024 samples per channel to  '/tmp/mplayer-
af_export'.

extrastereo[=mul]
(Linearly) increases the difference between left and right chan
nels which adds some sort of "live" effect to playback.

Sets the difference  coefficient  (default:  2.5).   0.0
means  mono  sound  (average of both channels), with 1.0
sound will be unchanged, with -1.0 left and right  chan
nels will be swapped.

volnorm[=method:target]
Maximizes the volume without distorting the sound.

Sets the used method.
1:  Use  a single sample to smooth the variations via
the standard weighted mean  over  past  samples  (de
fault).
2:  Use  several samples to smooth the variations via
the standard weighted mean over past samples.


Sets the target amplitude as a fraction of  the  maximum
for the sample type (default: 0.25).

ladspa=file:label[:controls...]
Load  a LADSPA (Linux Audio Developer's Simple Plugin API) plug
in.  This filter is reentrant, so multiple LADSPA plugins can be
used at once.

Specifies   the   LADSPA   plugin   library   file.   If
LADSPA_PATH is set, it searches for the specified  file.
If  it  is  not  set,  you must supply a fully specified
pathname.

Specifies the filter within the library.  Some libraries
contain  only  one  filter,  but  others contain many of
them.  Entering 'help' here,  will  list  all  available
filters  within  the specified library, which eliminates
the use of 'listplugins' from the LADSPA SDK.

Controls are zero or more floating point values that de
termine  the  behavior of the loaded plugin (for example
delay, threshold or gain).  In verbose mode (add  -v  to
the  MPlayer  command  line), all available controls and
their valid ranges are printed.  This eliminates the use
of 'analyseplugin' from the LADSPA SDK.

comp
Compressor/expander  filter  usable  for microphone input.  Pre
vents artifacts on very loud sound and raises the volume on very
low sound.  This filter is untested, maybe even unusable.

gate
Noise gate filter similar to the comp audio filter.  This filter
is untested, maybe even unusable.

karaoke
Simple voice removal filter exploiting the fact  that  voice  is
usually  recorded  with  mono gear and later 'center' mixed onto
the final audio stream.  Beware that this filter will turn  your
signal into mono.  Works well for 2 channel tracks; do not both
er trying it on anything but 2 channel stereo.

scaletempo[=option1:option2:...]
Scales audio tempo without altering pitch, optionally synced  to
playback speed (default).
This  works by playing ´stride´ ms of audio at normal speed then
consuming ´stride*scale´ ms  of  input  audio.   It  pieces  the
strides  together  by  blending  ´overlap´% of stride with audio
following the previous stride.  It optionally performs  a  short
statistical  analysis on the next ´search´ ms of audio to deter
mine the best overlap position.
scale=
Nominal amount to scale tempo.  Scales  this  amount  in
addition to speed.  (default: 1.0)
stride=
Length  in milliseconds to output each stride.  Too high
of value  will  cause  noticable  skips  at  high  scale
amounts and an echo at low scale amounts.  Very low val
ues will alter pitch.  Increasing improves  performance.
(default: 60)
overlap=
Percentage  of  stride  to overlap.  Decreasing improves
performance.  (default: .20)
search=
Length in milliseconds to search for best overlap  posi
tion.  Decreasing improves performance greatly.  On slow
systems, you will probably want to set  this  very  low.
(default: 14)
speed=
Set response to speed change.
tempo
Scale tempo in sync with speed (default).
pitch
Reverses effect of filter.  Scales pitch without
altering    tempo.     Add     ´[     speed_mult
0.9438743126816935´     and     ´]    speed_mult
1.059463094352953´ to your input.conf to step by
musical  semi-tones.   WARNING:  Loses sync with
video.
both Scale both tempo and pitch.
none Ignore speed changes.

EXAMPLE:
mplayer -af scaletempo -speed 1.2 media.ogg
Would playback media at 1.2x normal speed, with audio at
normal pitch.  Changing playback speed, would change au
dio tempo to match.
mplayer -af scaletempo=scale=1.2:speed=none  -speed  1.2  me
dia.ogg
Would playback media at 1.2x normal speed, with audio at
normal  pitch, but changing playback speed has no effect
on audio tempo.
mplayer  -af  scaletempo=stride=30:overlap=.50:search=10  me
dia.ogg
Would tweak the quality and performace parameters.
mplayer -af format=floatne,scaletempo media.ogg
Would make scaletempo use float code.  Maybe  faster  on
some platforms.
mplayer -af scaletempo=scale=1.2:speed=pitch audio.ogg
Would playback audio file at 1.2x normal speed, with au
dio at normal pitch.   Changing  playback  speed,  would
change pitch, leaving audio tempo at 1.2x.

stats
Collects and prints statistics about the audio stream, especial
ly the volume.  These statistics are especially intended to help
adjusting  the  volume while avoiding clipping.  The volumes are
printed in dB and compatible with the volume audio filter.

VIDEO FILTERS
Video filters allow you to modify the video stream and its  properties.
The syntax is:

-vf
Setup a chain of video filters.

Many  parameters are optional and set to default values if omitted.  To
explicitly use a default value set a parameter to '-1'.  Parameters w:h
means width x height in pixels, x:y means x;y position counted from the
upper left corner of the bigger image.
NOTE: To get a full list of available video filters, see -vf help.

Video filters are managed in lists.  There are a few commands to manage
the filter list.

-vf-add
Appends the filters given as arguments to the filter list.

-vf-pre
Prepends the filters given as arguments to the filter list.

-vf-del
Deletes  the  filters at the given indexes.  Index numbers start
at 0, negative numbers address the end of the list  (-1  is  the
last).

-vf-clr
Completely empties the filter list.

With  filters that support it, you can access parameters by their name.

-vf =help
Prints the parameter names and parameter value ranges for a par
ticular filter.

-vf
Sets  a  named  parameter to the given value.  Use on and off or
yes and no to set flag parameters.

Available filters are:

crop[=w:h:x:y]
Crops the given part of the image and discards the rest.  Useful
to remove black bands from widescreen movies.
,
Cropped width and height, defaults to original width and
height.
,
Position of the cropped picture, defaults to center.

cropdetect[=limit:round[:reset]]
Calculates necessary cropping parameters and prints  the  recom
mended parameters to stdout.

Threshold,  which can be optionally specified from noth
ing (0) to everything (255) (default: 24).

Value which the width/height should be divisible by (de
fault:  16).   The  offset  is automatically adjusted to
center the video.  Use 2 to  get  only  even  dimensions
(needed  for  4:2:2 video).  16 is best when encoding to
most video codecs.

Counter that determines after how many frames cropdetect
will  reset  the  previously detected largest video area
and start over to detect the current optimal  crop  area
(default:  0).   This  can  be useful when channel logos
distort the video area.  0 indicates never reset and re
turn the largest area encountered during playback.

rectangle[=w:h:x:y]
Draws a rectangle of the requested width and height at the spec
ified coordinates over the image and  prints  current  rectangle
parameters  to  the  console.   This can be used to find optimal
cropping parameters.   If  you  bind  the  input.conf  directive
'change_rectangle'  to  keystrokes,  you can move and resize the
rectangle on the fly.
,
width and height (default: -1,  maximum  possible  width
where boundaries are still visible.)
,
top  left  corner position (default: -1, uppermost left
most)

expand[=w:h:x:y:o:a:r]
Expands (not scales) movie resolution to  the  given  value  and
places  the  unscaled original at coordinates x, y.  Can be used
for placing subtitles/OSD in the resulting black bands.

,
Expanded width,height (default: original  width,height).
Negative  values  for  w and h are treated as offsets to
the original size.

EXAMPLE:
expand=0:-50:0:0
Adds a 50 pixel border to the bottom of  the
picture.

,
position  of  original  image on the expanded image (de
fault: center)


OSD/subtitle rendering
0: disable (default)
1: enable

<a>
Expands to fit an aspect instead of  a  resolution  (default: 0).

EXAMPLE:
expand=800:::::4/3
Expands  to  800x600,  unless  the source is
higher resolution, in which case it  expands
to fill a 4/3 aspect.


Rounds up to make both width and height divisible by
(default: 1).

flip (also see -flip)
Flips the image upside down.

mirror
Mirrors the image on the Y axis.

rotate[=]
Rotates the image by 90 degrees and optionally  flips  it.   For
values  between  4-7 rotation is only done if the movie geometry
is portrait and not landscape.

0    Rotate by 90 degrees clockwise and flip (default).

1    Rotate by 90 degrees clockwise.

2    Rotate by 90 degrees counterclockwise.

3    Rotate by 90 degrees counterclockwise and flip.

scale[=w:h[:interlaced[:chr_drop[:par[:par2[:preâ€
size[:noup[:arnd]]]]]]]]
Scales the image with the software scaler (slow) and performs  a
YUVRGB colorspace conversion (also see -sws).

,
scaled width/height (default: original width/height)
NOTE:  If -zoom is used, and underlying filters (includ
ing libvo) are incapable  of  scaling,  it  defaults  to
d_width/d_height!
0:   scaled d_width/d_height
-1:   original width/height
-2:   Calculate w/h using the other dimension and the
prescaled aspect ratio.
-3:   Calculate w/h using the other dimension and the
original aspect ratio.
-(n+8):  Like -n above, but rounding the dimension to
the closest multiple of 16.


Toggle interlaced scaling.
0: off (default)
1: on


chroma skipping
0: Use all available input lines for chroma.
1: Use only every 2. input line for chroma.
2: Use only every 4. input line for chroma.
3: Use only every 8. input line for chroma.

[:] (also see -sws)
Set some scaling parameters depending  on  the  type  of
scaler selected with -sws.
-sws 2 (bicubic):  B (blurring) and C (ringing)
0.00:0.60 default
0.00:0.75 VirtualDub's "precise bicubic"
0.00:0.50 Catmull-Rom spline
0.33:0.33 Mitchell-Netravali spline
1.00:0.00 cubic B-spline
-sws 7 (gaussian): sharpness (0 (soft) - 100 (sharp))
-sws 9 (lanczos):  filter length (1-10)


Scale to preset sizes.
qntsc:   352x240 (NTSC quarter screen)
qpal:    352x288 (PAL quarter screen)
ntsc:    720x480 (standard NTSC)
pal:     720x576 (standard PAL)
sntsc:   640x480 (square pixel NTSC)
spal:    768x576 (square pixel PAL)


Disallow upscaling past the original dimensions.
0: Allow upscaling (default).
1: Disallow upscaling if one  dimension  exceeds  its
original value.
2: Disallow upscaling if both dimensions exceed their
original values.


Accurate rounding for the vertical scaler, which may  be
faster or slower than the default rounding.
0: Disable accurate rounding (default).
1: Enable accurate rounding.

dsize[=aspect|w:h:aspect-method:r]
Changes  the  intended display size/aspect at an arbitrary point
in the filter chain.  Aspect can be given as a fraction (4/3) or
floating  point  number  (1.33).  Alternatively, you may specify
the exact display width and height desired.  Note that this fil
ter  does  not do any scaling itself; it just affects what later
scalers (software or hardware) will do when auto-scaling to cor
rect aspect.

,
New display width and height.  Can also be these special
values:
0:   original display width and height
-1:   original video width and height (default)
-2:   Calculate w/h using the other dimension and the
original display aspect ratio.
-3:   Calculate w/h using the other dimension and the
original video aspect ratio.

EXAMPLE:
dsize=800:-2
Specifies a display  resolution  of  800x600
for  a  4/3  aspect  video, or 800x450 for a
16/9 aspect video.

Modifies width and height according to  original  aspect
ratios.
-1: Ignore original aspect ratio (default).
0: Keep display aspect ratio by using  and  as
maximum resolution.
1: Keep display aspect ratio by using  and  as
minimum resolution.
2:  Keep  video aspect ratio by using  and  as
maximum resolution.
3: Keep video aspect ratio by using  and    as
minimum resolution.

EXAMPLE:
dsize=800:600:0
Specifies  a  display  resolution of at most
800x600, or smaller, in order  to  keep  as
pect.


Rounds up to make both width and height divisible by
(default: 1).

yvu9
Forces software YVU9 to YV12 colorspace conversion.   Deprecated
in favor of the software scaler.

yuvcsp
Clamps YUV color values to the CCIR 601 range without doing real
conversion.

palette
RGB/BGR 8 -&gt; 15/16/24/32bpp colorspace conversion using palette.

format[=fourcc[:outfourcc]]
Restricts  the  colorspace for the next filter without doing any
conversion.  Use together with the scale filter for a real  con
version.
NOTE: For a list of available formats see format=fmt=help.

format name like rgb15, bgr24, yv12, etc (default: yuy2)

Format name that should be substituted for  the  output.
If  this  is not 100% compatible with the  value
it will crash.
Valid examples:
format=rgb24:bgr24 format=yuyv:yuy2
Invalid examples (will crash):
format=rgb24:yv12

noformat[=fourcc]
Restricts the colorspace for the next filter without  doing  any
conversion.   Unlike the format filter, this will allow any col
orspace except the one you specify.
NOTE: For a list of available formats see noformat=fmt=help.

format name like rgb15, bgr24, yv12, etc (default: yv12)

pp[=filter1[:option1[:option2...]]/[-]filter2...] (also see -pphelp)
Enables  the specified chain of postprocessing subfilters.  Sub
filters must be separated by '/' and can be disabled by prepend
ing  a  '-'.  Each subfilter and some options have a short and a
long name that can be used interchangeably, i.e.  dr/dering  are
the  same.   All  subfilters  share  common options to determine
their scope:
a/autoq
Automatically switch the subfilter off if the CPU is too
slow.
c/chrom
Do chrominance filtering, too (default).
y/nochrom
Do luminance filtering only (no chrominance).
n/noluma
Do chrominance filtering only (no luminance).

NOTE: -pphelp shows a list of available subfilters.

Available subfilters are

hb/hdeblock[:difference[:flatness]]
horizontal deblocking filter
:  Difference  factor where higher values
mean more deblocking (default: 32).
: Flatness  threshold  where  lower  values
mean more deblocking (default: 39).

vb/vdeblock[:difference[:flatness]]
vertical deblocking filter
:  Difference  factor where higher values
mean more deblocking (default: 32).
: Flatness  threshold  where  lower  values
mean more deblocking (default: 39).

ha/hadeblock[:difference[:flatness]]
accurate horizontal deblocking filter
:  Difference  factor where higher values
mean more deblocking (default: 32).
: Flatness  threshold  where  lower  values
mean more deblocking (default: 39).

va/vadeblock[:difference[:flatness]]
accurate vertical deblocking filter
:  Difference  factor where higher values
mean more deblocking (default: 32).
: Flatness  threshold  where  lower  values
mean more deblocking (default: 39).

The horizontal and vertical deblocking filters share the dif
ference and flatness values so you cannot set different hori
zontal and vertical thresholds.


h1/x1hdeblock
experimental horizontal deblocking filter

v1/x1vdeblock
experimental vertical deblocking filter

dr/dering
deringing filter

tn/tmpnoise[:threshold1[:threshold2[:threshold3]]]
temporal noise reducer
: larger -&gt; stronger filtering
: larger -&gt; stronger filtering
: larger -&gt; stronger filtering

al/autolevels[:f/fullyrange]
automatic brightness / contrast correction
f/fullyrange: Stretch luminance to (0-255).

lb/linblenddeint
Linear  blend deinterlacing filter that deinterlaces the
given block by filtering all lines with a (1 2  1)  fil
ter.

li/linipoldeint
Linear  interpolating deinterlacing filter that deinter
laces the given block by  linearly  interpolating  every
second line.

ci/cubicipoldeint
Cubic  interpolating  deinterlacing  filter deinterlaces
the given block by cubically interpolating every  second
line.

md/mediandeint
Median  deinterlacing filter that deinterlaces the given
block by applying a median filter to every second  line.

fd/ffmpegdeint
FFmpeg  deinterlacing filter that deinterlaces the given
block by filtering every second line with a (-1  4  2  4
-1) filter.

l5/lowpass5
Vertically applied FIR lowpass deinterlacing filter that
deinterlaces the given block by filtering all lines with
a (-1 2 6 2 -1) filter.

fq/forceQuant[:quantizer]
Overrides  the  quantizer  table from the input with the
constant quantizer you specify.
: quantizer to use

de/default
default pp filter combination (hb:a,vb:a,dr:a)

fa/fast
fast pp filter combination (h1:a,v1:a,dr:a)

ac
high      quality      pp       filter       combination
(ha:a:128:7,va:a,dr:a)

EXAMPLE:
-vf pp=hb/vb/dr/al
horizontal  and vertical deblocking, deringing and auto
matic brightness/contrast
-vf pp=de/-al
default filters without brightness/contrast correction
-vf pp=default/tmpnoise:1:2:3
Enable default filters &amp; temporal denoiser.
-vf pp=hb:y/vb:a
Horizontal deblocking on luminance only, and switch ver
tical  deblocking  on  or off automatically depending on
available CPU time.

spp[=quality[:qp[:mode]]]
Simple postprocessing filter that  compresses  and  decompresses
the image at several (or - in the case of quality level 6 - all)
shifts and averages the results.


0-6 (default: 3)


Force quantization parameter (default: 0,  use  QP  from
video).


0: hard thresholding (default)
1: soft thresholding (better deringing, but blurrier)
4: like 0, but also use B-frames' QP (may cause flicker)
5: like 1, but also use B-frames' QP (may cause flicker)

uspp[=quality[:qp]]
Ultra  simple  &amp;  slow postprocessing filter that compresses and
decompresses the image at several (or - in the case  of  quality
level  8  -  all) shifts and averages the results.  The way this
differs from the behavior of spp is that uspp actually encodes &amp;
decodes  each case with libavcodec Snow, whereas spp uses a sim
plified intra only 8x8 DCT similar to MJPEG.


0-8 (default: 3)


Force quantization parameter (default: 0,  use  QP  from
video).

fspp[=quality[:qp[:strength[:bframes]]]]
faster version of the simple postprocessing filter


4-5 (equivalent to spp; default: 4)


Force  quantization  parameter  (default: 0, use QP from
video).


Filter strength, lower values mean more details but also
more  artifacts,  while  higher  values  make  the image
smoother but also blurrier (default: 0 - PSNR  optimal).


0: do not use QP from B-frames (default)
1: use QP from B-frames too (may cause flicker)

pp7[=qp[:mode]]
Variant  of  the  spp  filter, similar to spp=6 with 7 point DCT
where only the center sample is used after IDCT.


Force quantization parameter (default: 0,  use  QP  from
video).


0: hard thresholding
1: soft thresholding (better deringing, but blurrier)
2: medium thresholding (default, good results)

qp=equation
quantization parameter (QP) change filter


some equation like "2+2*sin(PI*qp)"

geq=equation
generic equation change filter


Some equation, e.g.  'p(W-X\,Y)' to flip the image hori
zontally.  You can use whitespace to make  the  equation
more readable.  There are a couple of constants that can
be used in the equation:
PI: the number pi
E: the number e
X / Y: the coordinates of the current sample
W / H: width and height of the image
SW / SH: width/height scale depending on the current
ly  filtered  plane,  e.g.  1,1  and  0.5,0.5 for YUV
4:2:0.
p(x,y): returns the value of the  pixel  at  location
x/y of the current plane.

test
Generate various test patterns.

rgbtest[=width:height]
Generate an RGB test pattern useful for detecting RGB vs BGR is
sues.  You should see a red, green and blue stripe from  top  to
bottom.


Desired  width of generated image (default: 0).  0 means
width of input image.


Desired height of generated image (default: 0).  0 means
height of input image.

lavc[=quality:fps]
Fast  software YV12 to MPEG-1 conversion with libavcodec for use
with DVB/DXR3/IVTV/V4L2.


1-31: fixed qscale
32-:  fixed bitrate in kbits


force output fps (float value) (default:  0,  autodetect
based on height)

dvbscale[=aspect]
Set  up  optimal  scaling  for  DVB cards, scaling the x axis in
hardware and calculating the y axis scaling in software to  keep
aspect.  Only useful together with expand and scale.


Control  aspect ratio, calculate as DVB_HEIGHT*ASPECTRA
TIO (default: 576*4/3=768), set  it  to  576*(16/9)=1024
for a 16:9 TV.

EXAMPLE:
-vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1,lavc
FIXME: Explain what this does.

noise[=luma[u][t|a][h][p]:chroma[u][t|a][h][p]]
Adds noise.

luma noise

chroma noise
u    uniform noise (gaussian otherwise)
t    temporal noise (noise pattern changes between frames)
a    averaged temporal noise (smoother, but a lot slower)
h    high quality (slightly better looking, slightly slower)
p    mix random noise with a (semi)regular pattern

denoise3d[=luma_spatial:chroma_spatial:luma_tmp:chroma_tmp]
This  filter  aims to reduce image noise producing smooth images
and making still images really still (This should  enhance  com
pressibility.).

spatial luma strength (default: 4)

spatial chroma strength (default: 3)

luma temporal strength (default: 6)

chroma  temporal strength (default: luma_tmp*chroma_spa
tial/luma_spatial)

hqdn3d[=luma_spatial:chroma_spatial:luma_tmp:chroma_tmp]
High precision/quality version of the denoise3d filter.  Parame
ters and usage are the same.

ow[=depth[:luma_strength[:chroma_strength]]]
Overcomplete Wavelet denoiser.

Larger  depth values will denoise lower frequency compo
nents more, but slow down filtering (default: 8).

luma strength (default: 1.0)

chroma strength (default: 1.0)

eq[=brightness:contrast] (OBSOLETE)
Software equalizer with interactive controls just like the hard
ware equalizer, for cards/drivers that do not support brightness
and contrast controls in hardware.  Might also  be  useful  with
MEncoder,  either  for  fixing  poorly  captured  movies, or for
slightly reducing contrast to mask artifacts  and  get  by  with
lower bitrates.

initial brightness

initial contrast

eq2[=gamma:contrast:brightness:saturation:rg:gg:bg:weight]
Alternative  software  equalizer  that  uses lookup tables (very
slow), allowing gamma correction in addition to  simple  bright
ness  and  contrast  adjustment.  Note that it uses the same MMX
optimized code as -vf eq if all gamma values are 1.0.   The  pa
rameters are given as floating point values.

initial gamma value (default: 1.0)

initial contrast, where negative values result in a neg
ative image (default: 1.0)

initial brightness (default: 0.0)

initial saturation (default: 1.0)

gamma value for the red component (default: 1.0)

gamma value for the green component (default: 1.0)

gamma value for the blue component (default: 1.0)

The weight parameter can be used to reduce the effect of
a high gamma value on bright image areas, e.g. keep them
from getting overamplified and just plain white.  A val
ue  of  0.0  turns the gamma correction all the way down
while 1.0 leaves it at its full strength (default: 1.0).

hue[=hue:saturation]
Software equalizer with interactive controls just like the hard
ware equalizer, for cards/drivers that do not  support  hue  and
saturation controls in hardware.

initial hue (default: 0.0)

initial  saturation,  where  negative values result in a
negative chroma (default: 1.0)

halfpack[=f]
Convert planar YUV 4:2:0 to half-height packed  4:2:2,  downsam
pling luma but keeping all chroma samples.  Useful for output to
low-resolution display devices when hardware downscaling is poor
quality  or  is  not available.  Can also be used as a primitive
luma-only deinterlacer with very low CPU usage.

By default, halfpack averages pairs of lines when  down
sampling.  Any value different from 0 or 1 gives the de
fault (averaging) behavior.
0: Only use even lines when downsampling.
1: Only use odd lines when downsampling.

ilpack[=mode]
When interlaced video is stored in YUV 4:2:0 formats, chroma in
terlacing does not line up properly due to vertical downsampling
of the chroma channels.  This filter packs the planar 4:2:0 data
into  YUY2  (4:2:2) format with the chroma lines in their proper
locations, so that in any given scanline, the  luma  and  chroma
data both come from the same field.

Select the sampling mode.
0: nearest-neighbor sampling, fast but incorrect
1: linear interpolation (default)

harddup
Only useful with MEncoder.  If harddup is used when encoding, it
will force duplicate frames to be encoded in the  output.   This
uses  slightly  more  space, but is necessary for output to MPEG
files or if you plan to demux and remux the video  stream  after
encoding.   Should  be  placed  at or near the end of the filter
chain unless you have a good reason to do otherwise.

softskip
Only useful with MEncoder.  Softskip moves  the  frame  skipping
(dropping) step of encoding from before the filter chain to some
point during the filter chain.  This allows filters  which  need
to  see  all frames (inverse telecine, temporal denoising, etc.)
to function properly.  Should be placed after the filters  which
need  to  see  all frames and before any subsequent filters that
are CPU-intensive.

decimate[=max:hi:lo:frac]
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  mo
dem), but it could in theory be used for fixing movies that were
inverse-telecined incorrectly.

Sets the maximum number of consecutive frames which  can
be  dropped  (if  positive), or the minimum interval be
tween dropped frames (if negative).
,,
A frame is a candidate for dropping  if  no  8x8  region
differs  by  more  than  a threshold of , and if not
more than  portion (1  meaning  the  whole  image)
differs  by  more  than  a threshold of .  Values of
and  are for 8x8 pixel blocks and represent ac
tual  pixel value differences, so a threshold of 64 cor
responds to 1 unit of difference for each pixel, or  the
same spread out differently over the block.

dint[=sense:level]
The  drop-deinterlace  (dint) filter detects and drops the first
from a set of interlaced video frames.

relative difference between neighboring pixels (default:
0.1)

What  part of the image has to be detected as interlaced
to drop the frame (default: 0.15).

lavcdeint (OBSOLETE)
FFmpeg deinterlacing filter, same as -vf pp=fd

kerndeint[=thresh[:map[:order[:sharp[:twoway]]]]]
Donald Graft's adaptive kernel deinterlacer.  Deinterlaces parts
of a video if a configurable threshold is exceeded.

threshold (default: 10)
<map>
0: Ignore pixels exceeding the threshold (default).
1: Paint pixels exceeding the threshold white.


0: Leave fields alone (default).
1: Swap fields.


0: Disable additional sharpening (default).
1: Enable additional sharpening.


0: Disable twoway sharpening (default).
1: Enable twoway sharpening.

unsharp[=l|cWxH:amount[:l|cWxH:amount]]
unsharp mask / gaussian blur

l
Apply effect on luma component.

c
Apply effect on chroma components.

x
width and height of the matrix, odd sized in both direc
tions (min = 3x3, max = 13x11 or  11x13,  usually  some
thing between 3x3 and 7x7)

amount
Relative amount of sharpness/blur to add to the image (a
sane range should be -1.5-1.5).
0: sharpen

swapuv
Swap U &amp; V plane.

il[=d|i][s][:[d|i][s]]
(De)interleaves lines.  The goal of this filter is  to  add  the
ability  to process interlaced images pre-field without deinter
lacing them.  You can filter your interlaced DVD and play it  on
a  TV  without  breaking  the  interlacing.  While deinterlacing
(with the postprocessing filter) removes interlacing permanently
(by  smoothing,  averaging, etc) deinterleaving splits the frame
into 2 fields (so called half  pictures),  so  you  can  process
(filter) them independently and then re-interleave them.
d    deinterleave (placing one above the other)
i    interleave
s    swap fields (exchange even &amp; odd lines)

fil[=i|d]
(De)interleaves  lines.   This  filter is very similar to the il
filter but much faster, the main disadvantage is  that  it  does
not  always  work.  Especially if combined with other filters it
may produce randomly messed up images, so be happy if  it  works
but  do not complain if it does not for your combination of fil
ters.
d    Deinterleave fields, placing them side by side.
i    Interleave fields again (reversing the effect of fil=d).

field[=n]
Extracts  a  single  field from an interlaced image using stride
arithmetic to avoid wasting CPU time.  The optional  argument  n
specifies  whether to extract the even or the odd field (depend
ing on whether n is even or odd).

detc[=var1=value1:var2=value2:...]
Attempts to reverse the 'telecine' process to recover  a  clean,
non-interlaced stream at film framerate.  This was the first and
most primitive inverse telecine filter to be added  to  MPlayer/
MEncoder.   It  works  by latching onto the telecine 3:2 pattern
and following it as long as possible.  This  makes  it  suitable
for perfectly-telecined material, even in the presence of a fair
degree of noise, but it will fail in  the  presence  of  complex
post-telecine  edits.   Development  on this filter is no longer
taking place, as ivtc, pullup, and filmdint are better for  most
applications.  The following arguments (see syntax above) may be
used to control detc's behavior:


Set the frame dropping mode.
0: Do not drop frames to maintain fixed output  fram
erate (default).
1:  Always drop a frame when there have been no drops
or telecine merges in the past 5 frames.
2: Always maintain exact 5:4 input  to  output  frame
ratio.
NOTE: Use mode 1 or 2 with MEncoder.


Analysis mode.
0:  Fixed pattern with initial frame number specified
by .
1: aggressive search for telecine pattern (default)


Set initial frame number in sequence.  0-2 are the three
clean progressive frames; 3 and 4 are the two interlaced
frames.  The default, -1, means  'not  in  telecine  se
quence'.   The number specified here is the type for the
imaginary previous frame before the movie starts.

, , ,
Threshold values to be used in certain modes.

ivtc[=1]
Experimental 'stateless' inverse telecine filter.   Rather  than
trying  to  lock on to a pattern like the detc filter does, ivtc
makes its decisions independently for  each  frame.   This  will
give  much  better results for material that has undergone heavy
editing after telecine was applied, but as a result it is not as
forgiving  of noisy input, for example TV capture.  The optional
parameter (ivtc=1) corresponds to the dr=1 option for  the  detc
filter,  and  should be used with MEncoder but not with MPlayer.
As with detc, you must  specify  the  correct  output  framerate
(-ofps  24000/1001) when using MEncoder.  Further development on
ivtc has stopped, as the pullup and filmdint filters  appear  to
be much more accurate.

pullup[=jl:jr:jt:jb:sb:mp]
Third-generation  pulldown  reversal  (inverse telecine) filter,
capable of handling mixed hard-telecine, 24000/1001 fps progres
sive, and 30000/1001 fps progressive content.  The pullup filter
is designed to be much more robust than detc or ivtc, by  taking
advantage of future context in making its decisions.  Like ivtc,
pullup is stateless in the sense that it does not  lock  onto  a
pattern to follow, but it instead looks forward to the following
fields in order to  identify  matches  and  rebuild  progressive
frames.  It is still under development, but believed to be quite
accurate.

jl, jr, jt, and jb
These options set the amount of "junk" to ignore at  the
left, right, top, and bottom of the image, respectively.
Left/right are in units of 8  pixels,  while  top/bottom
are  in  units  of  2 lines.  The default is 8 pixels on
each side.

sb (strict breaks)
Setting this option to 1  will  reduce  the  chances  of
pullup generating an occasional mismatched frame, but it
may also cause an  excessive  number  of  frames  to  be
dropped  during high motion sequences.  Conversely, set
ting it to -1 will make pullup match fields more easily.
This  may help processing of video where there is slight
blurring between the fields, but may also cause there to
be interlaced frames in the output.

mp (metric plane)
This  option  may be set to 1 or 2 to use a chroma plane
instead of the luma plane for  doing  pullup's  computa
tions.   This  may improve accuracy on very clean source
material, but more likely will decrease accuracy,  espe
cially  if there is chroma noise (rainbow effect) or any
grayscale video.  The main purpose of setting  mp  to  a
chroma  plane  is to reduce CPU load and make pullup us
able in realtime on slow machines.

NOTE: Always follow pullup with the softskip filter when  encod
ing to ensure that pullup is able to see each frame.  Failure to
do so will lead to incorrect output and will usually crash,  due
to design limitations in the codec/filter layer.

filmdint[=options]
Inverse telecine filter, similar to the pullup filter above.  It
is designed to handle any pulldown pattern, including mixed soft
and hard telecine and limited support for movies that are slowed
down or sped up from their original framerate for TV.  Only  the
luma  plane is used to find the frame breaks.  If a field has no
match, it is deinterlaced with simple linear approximation.   If
the source is MPEG-2, this must be the first filter to allow ac
cess to the field-flags set by the MPEG-2 decoder.  Depending on
the  source  MPEG, you may be fine ignoring this advice, as long
as you do not see lots of "Bottom-first field"  warnings.   With
no  options  it does normal inverse telecine, and should be used
together with mencoder -fps 30000/1001 -ofps  24000/1001.   When
this  filter  is  used with MPlayer, it will result in an uneven
framerate during playback, but it is still generally better than
using pp=lb or no deinterlacing at all.  Multiple options can be
specified separated by /.

crop=:::
Just like the crop filter,  but  faster,  and  works  on
mixed  hard and soft telecined content as well as when y
is not a multiple of 4.  If x or y would  require  crop
ping  fractional pixels from the chroma planes, the crop
area is extended.  This usually means that x and y  must
be even.

io=:
For  each  ifps input frames the filter will output ofps
frames.   The  ratio  of  ifps/ofps  should  match   the
-fps/-ofps  ratio.   This could be used to filter movies
that are broadcast on TV at a frame rate different  from
their original framerate.

luma_only=
If  n  is nonzero, the chroma plane is copied unchanged.
This is useful for YV12 sampled TV, which  discards  one
of the chroma fields.

mmx2=
On  x86,  if  n=1, use MMX2 optimized functions, if n=2,
use 3DNow!  optimized functions, otherwise, use plain C.
If this option is not specified, MMX2 and 3DNow! are au
to-detected, use this option to override auto-detection.

fast=
The  larger n will speed up the filter at the expense of
accuracy.  The default value is n=3.  If  n  is  odd,  a
frame  immediately following a frame marked with the RE
PEAT_FIRST_FIELD MPEG flag is assumed to be progressive,
thus  filter  will  not spend any time on soft-telecined
MPEG-2 content.  This is the only effect of this flag if
MMX2 or 3DNow! is available.  Without MMX2 and 3DNow, if
n=0 or 1, the same calculations will be used as with n=2
or  3.   If  n=2 or 3, the number of luma levels used to
find the frame breaks is reduced from 256 to 128,  which
results in a faster filter without losing much accuracy.
If n=4 or 5, a faster, but  much  less  accurate  metric
will  be  used  to  find the frame breaks, which is more
likely to misdetect high vertical detail  as  interlaced
content.

verbose=
If  n  is  nonzero,  print the detailed metrics for each
frame.  Useful for debugging.

dint_thres=
Deinterlace threshold.  Used  during  de-interlacing  of
unmatched  frames.   Larger value means less deinterlac
ing, use n=256 to  completely  turn  off  deinterlacing.
Default is n=8.

comb_thres=
Threshold  for  comparing  a top and bottom fields.  De
faults to 128.

diff_thres=
Threshold to detect temporal change of a field.  Default
is 128.

sad_thres=
Sum of Absolute Difference threshold, default is 64.

softpulldown
This  filter  works  only  correct with MEncoder and acts on the
MPEG-2 flags used for soft 3:2 pulldown (soft telecine).  If you
want  to  use  the ivtc or detc filter on movies that are partly
soft telecined, inserting this filter before  them  should  make
them more reliable.

divtc[=options]
Inverse   telecine  for  deinterlaced  video.   If  3:2-pulldown
telecined video has lost one of the fields  or  is  deinterlaced
using  a method that keeps one field and interpolates the other,
the result is a juddering video that has every fourth frame  du
plicated.  This filter is intended to find and drop those dupli
cates and restore the original film framerate.  When using  this
filter, you must specify -ofps that is 4/5 of the fps of the in
put file and place the softskip later in  the  filter  chain  to
make  sure  that divtc sees all the frames.  Two different modes
are available: One pass mode is the default and is  straightfor
ward  to  use,  but has the disadvantage that any changes in the
telecine phase (lost frames or bad edits) cause momentary judder
until the filter can resync again.  Two pass mode avoids this by
analyzing the whole video beforehand so  it  will  have  forward
knowledge  about  the  phase changes and can resync at the exact
spot.  These passes do not correspond to pass one and two of the
encoding  process.   You must run an extra pass using divtc pass
one before the actual  encoding  throwing  the  resulting  video
away.   Use  -nosound -ovc raw -o /dev/null to avoid wasting CPU
power for this pass.  You may add  something  like  crop=2:2:0:0
after  divtc  to speed things up even more.  Then use divtc pass
two for the actual encoding.  If you use multiple encoder  pass
es, use divtc pass two for all of them.  The options are:

pass=1|2
Use two pass mode.

file=
Set   the  two  pass  log  filename  (default:  "framed
iff.log").

threshold=
Set the minimum strength the telecine pattern must  have
for the filter to believe in it (default: 0.5).  This is
used to avoid recognizing false pattern from  the  parts
of the video that are very dark or very still.

window=
Set  the number of past frames to look at when searching
for pattern (default: 30).  Longer window  improves  the
reliability  of  the  pattern search, but shorter window
improves  the  reaction  time  to  the  changes  in  the
telecine  phase.   This  only affects the one pass mode.
The two pass mode currently uses fixed window  that  ex
tends to both future and past.

phase=0|1|2|3|4
Sets  the  initial telecine phase for one pass mode (de
fault: 0).  The two pass mode can see the future, so  it
is able to use the correct phase from the beginning, but
one pass mode can only guess.  It  catches  the  correct
phase  when  it finds it, but this option can be used to
fix the possible juddering at the beginning.  The  first
pass of the two pass mode also uses this, so if you save
the output from the first pass, you get  constant  phase
result.

deghost=
Set  the  deghosting threshold (0-255 for one pass mode,
-255-255 for two pass mode,  default  0).   If  nonzero,
deghosting  mode  is  used.   This is for video that has
been deinterlaced by blending the  fields  together  in
stead  of dropping one of the fields.  Deghosting ampli
fies any compression artifacts in the blended frames, so
the  parameter  value  is used as a threshold to exclude
those pixels from deghosting that differ from the previ
ous  frame  less than specified value.  If two pass mode
is used, then negative value can be  used  to  make  the
filter  analyze  the  whole  video  in  the beginning of
pass-2 to determine whether it needs deghosting  or  not
and then select either zero or the absolute value of the
parameter.  Specify this option for pass-2, it makes  no
difference on pass-1.

phase[=t|b|p|a|u|T|B|A|U][:v]
Delay interlaced video by one field time so that the field order
changes.  The intended use is to fix PAL movies that  have  been
captured  with  the  opposite  field  order to the film-to-video
transfer.  The options are:

t    Capture field order  top-first,  transfer  bottom-first.
Filter will delay the bottom field.

b    Capture  bottom-first,  transfer top-first.  Filter will
delay the top field.

p    Capture and transfer with the same  field  order.   This
mode  only exists for the documentation of the other op
tions to refer to, but if you actually  select  it,  the
filter will faithfully do nothing ;-)

a    Capture  field  order  determined automatically by field
flags, transfer opposite.  Filter selects among t and  b
modes  on  a frame by frame basis using field flags.  If
no field information is available, then this works  just
like u.

u    Capture  unknown  or varying, transfer opposite.  Filter
selects among t and b on a frame by frame basis by  ana
lyzing  the  images  and  selecting the alternative that
produces best match between the fields.

T    Capture top-first, transfer unknown or varying.   Filter
selects among t and p using image analysis.

B    Capture bottom-first, transfer unknown or varying.  Fil
ter selects among b and p using image analysis.

A    Capture determined by field flags, transfer  unknown  or
varying.   Filter  selects  among t, b and p using field
flags and image analysis.  If no  field  information  is
available, then this works just like U.  This is the de
fault mode.

U    Both capture and transfer unknown  or  varying.   Filter
selects among t, b and p using image analysis only.

v    Verbose  operation.   Prints  the selected mode for each
frame and the average squared difference between  fields
for t, b, and p alternatives.

telecine[=start]
Apply 3:2 'telecine' process to increase framerate by 20%.  This
most likely will not work correctly with MPlayer, but it can  be
used   with  'mencoder  -fps  30000/1001  -ofps  30000/1001  -vf
telecine'.  Both fps options  are  essential!   (A/V  sync  will
break  if  they  are wrong.)  The optional start parameter tells
the filter where in the telecine pattern to start (0-3).

tinterlace[=mode]
Temporal field interlacing - merge pairs of frames into  an  in
terlaced  frame,  halving  the framerate.  Even frames are moved
into the upper field, odd frames to the lower field.   This  can
be  used  to  fully reverse the effect of the tfields filter (in
mode 0).  Available modes are:
0    Move odd frames into the upper field, even into the low
er field, generating a full-height frame at half framer
ate.
1    Only output odd frames, even frames are dropped;  height
unchanged.
2    Only  output even frames, odd frames are dropped; height
unchanged.
3    Expand each frame to  full  height,  but  pad  alternate
lines with black; framerate unchanged.
4    Interleave  even  lines  from even frames with odd lines
from odd frames.  Height unchanged at half framerate.

tfields[=mode[:field_dominance]]
Temporal field separation - split fields into  frames,  doubling
the  output  framerate.  Like the telecine filter, tfields might
not work completely right unless used  with  MEncoder  and  both
-fps and -ofps set to the desired (double) framerate!

0: Leave fields unchanged (will jump/flicker).
1:  Interpolate missing lines. (The algorithm used might
not be so good.)
2: Translate fields by 1/4 pixel with linear  interpola
tion (no jump).
4: Translate fields by 1/4 pixel with 4tap filter (high
er quality) (default).
(DEPRECATED)
-1: auto (default) Only works if the decoder exports the
appropriate  information and no other filters which dis
card that information come before tfields in the  filter
chain, otherwise it falls back to 0 (top field first).
0: top field first
1: bottom field first
NOTE:  This  option will possibly be removed in a future
version.  Use -field-dominance instead.

yadif=[mode[:field_dominance]]
Yet another deinterlacing filter

0: Output 1 frame for each frame.
1: Output 1 frame for each field.
2: Like 0 but skips spatial interlacing check.
3: Like 1 but skips spatial interlacing check.
(DEPRECATED)
Operates like tfields.
NOTE: This option will possibly be removed in  a  future
version.  Use -field-dominance instead.

mcdeint=[mode[:parity[:qp]]]
Motion  compensating deinterlacer.  It needs one field per frame
as input and must  thus  be  used  together  with  tfields=1  or
yadif=1/3 or equivalent.

0: fast
1: medium
2: slow, iterative motion estimation
3: extra slow, like 2 plus multiple reference frames

0  or  1 selects which field to use (note: no autodetec
tion yet!).

Higher values should result in a smoother motion  vector
field but less optimal individual vectors.

boxblur=radius:power[:radius:power]
box blur

blur filter strength

number of filter applications

sab=radius:pf:colorDiff[:radius:pf:colorDiff]
shape adaptive blur

blur filter strength (~0.1-4.0) (slower if larger)

prefilter strength (~0.1-2.0)

maximum difference between pixels to still be considered
(~0.1-100.0)

smartblur=radius:strength:threshold[:radius:strength:threshold]
smart blur

blur filter strength (~0.1-5.0) (slower if larger)

blur (0.0-1.0) or sharpen (-1.0-0.0)

filter all (0), filter flat areas (0-30) or filter edges
(-30-0)

perspective=x0:y0:x1:y1:x2:y2:x3:y3:t
Correct  the  perspective  of movies not filmed perpendicular to
the screen.
,,...
coordinates of the top left,  top  right,  bottom  left,
bottom right corners

linear (0) or cubic resampling (1)

2xsai
Scale and smooth the image with the 2x scale and interpolate al
gorithm.

1bpp
1bpp bitmap to YUV/BGR 8/15/16/32 conversion

down3dright[=lines]
Reposition and resize stereoscopic images.  Extracts both stereo
fields  and  places them side by side, resizing them to maintain
the original movie aspect.

number of lines to select from the middle of  the  image
(default: 12)

bmovl=hidden:opaque:fifo
The bitmap overlay filter reads bitmaps from a FIFO and displays
them on top of the movie, allowing some transformations  on  the
image.   Also see TOOLS/bmovl-test.c for a small bmovl test pro
gram.

Set the default value of the 'hidden'  flag  (0=visible,
1=hidden).

Set  the default value of the 'opaque' flag (0=transpar
ent, 1=opaque).

path/filename  for  the  FIFO  (named  pipe   connecting
'mplayer -vf bmovl' to the controlling application)

FIFO commands are:
RGBA32 width height xpos ypos alpha clear
followed by width*height*4 Bytes of raw RGBA32 data.
ABGR32 width height xpos ypos alpha clear
followed by width*height*4 Bytes of raw ABGR32 data.
RGB24 width height xpos ypos alpha clear
followed by width*height*3 Bytes of raw RGB24 data.
BGR24 width height xpos ypos alpha clear
followed by width*height*3 Bytes of raw BGR24 data.
ALPHA width height xpos ypos alpha
Change alpha transparency of the specified area.
CLEAR width height xpos ypos
Clear area.
OPAQUE
Disable  all alpha transparency.  Send "ALPHA 0 0 0 0 0"
to enable it again.
HIDE
Hide bitmap.
SHOW
Show bitmap.

Arguments are:
,
image/area size
,
Start blitting at position x/y.

Set alpha difference.  If you set this to -255  you  can
then  send  a sequence of ALPHA-commands to set the area
to -225, -200, -175 etc for a nice fade-in-effect! ;)
0:    same as original
255:  Make everything opaque.
-255: Make everything transparent.


Clear the framebuffer before blitting.
0: The image will just be blitted on top of  the  old
one,  so you do not need to send 1.8MB of RGBA32 data
every time a small part of the screen is updated.
1: clear

framestep=I|[i]step
Renders only every nth frame or every intra frame (keyframe).

If you call the filter with I (uppercase) as the parameter, then
only keyframes are rendered.  For DVDs it generally means one in
every 15/12 frames (IBBPBBPBBPBBPBB), for  AVI  it  means  every
scene  change or every keyint value (see -lavcopts keyint= value
if you use MEncoder to encode the video).

When a keyframe is found, an 'I!' string followed by  a  newline
character  is  printed, leaving the current line of MPlayer/MEn
coder output on the screen, because it  contains  the  time  (in
seconds)  and frame number of the keyframe (You can use this in
formation to split the AVI.).

If you call the filter with a numeric parameter 'step' then only
one in every 'step' frames is rendered.

If  you put an 'i' (lowercase) before the number then an 'I!' is
printed (like the I parameter).

If you give only the i then nothing is done to the frames,  only
I! is printed.

tile=xtiles:ytiles:output:start:delta
Tile  a  series  of  images into a single, bigger image.  If you
omit a parameter or use a value less than 0,  then  the  default
value  is  used.   You can also stop when you are satisfied (...
-vf tile=10:5 ...).  It is probably a good idea to put the scale
filter before the tile :-)

The parameters are:


number of tiles on the x axis (default: 5)

number of tiles on the y axis (default: 5)

Render  the  tile  when  'output'  number  of frames are
reached, where 'output' should be  a  number  less  than
xtile  *  ytile.   Missing  tiles  are  left blank.  You
could, for example, write an 8 * 7 tile every 50  frames
to have one image every 2 seconds @ 25 fps.

outer border thickness in pixels (default: 2)

inner border thickness in pixels (default: 4)

delogo[=x:y:w:h:t]
Suppresses  a  TV  station logo by a simple interpolation of the
surrounding pixels.  Just set a rectangle covering the logo  and
watch it disappear (and sometimes something even uglier appear -
your mileage may vary).
,
top left corner of the logo
,
width and height of the cleared rectangle
Thickness of the fuzzy edge of the rectangle (added to w
and  h).   When set to -1, a green rectangle is drawn on
the screen to simplify finding the right x,y,w,h parame
ters.

remove-logo=/path/to/logo_bitmap_file_name.pgm
Suppresses  a  TV station logo, using a PGM or PPM image file to
determine which pixels comprise the logo.  The width and  height
of  the  image  file  must match those of the video stream being
processed.  Uses the filter image and a circular blur  algorithm
to remove the logo.

/path/to/logo_bitmap_file_name.pgm
[path] + filename of the filter image.

zrmjpeg[=options]
Software YV12 to MJPEG encoder for use with the zr2 video output
device.

maxheight=|maxwidth=
These options set the maximum width and  height  the  zr
card can handle (the MPlayer filter layer currently can
not query those).

{dc10+,dc10,buz,lml33}-{PAL|NTSC}
Use these options to set maxwidth and maxheight automat
ically to the values known for card/mode combo.  For ex
ample, valid options are:  dc10-PAL  and  buz-NTSC  (de
fault: dc10+PAL)

color|bw
Select  color  or  black  and white encoding.  Black and
white encoding is faster.  Color is the default.

hdec={1,2,4}
Horizontal decimation 1, 2 or 4.

vdec={1,2,4}
Vertical decimation 1, 2 or 4.

quality=1-20
Set JPEG compression quality [BEST] 1 - 20 [VERY BAD].

fd|nofd
By default, decimation is only performed  if  the  Zoran
hardware  can  upscale the resulting MJPEG images to the
original size.  The option fd instructs  the  filter  to
always perform the requested decimation (ugly).

screenshot
Allows  acquiring screenshots of the movie using slave mode com
mands that can be bound to keypresses.  See the slave mode docu
mentation  and  the  INTERACTIVE  CONTROL  section  for details.
Files named 'shotNNNN.png' will be saved in the working directo
ry,  using  the  first available number - no files will be over
written.  The filter has no overhead when not used  and  accepts
an arbitrary colorspace, so it is safe to add it to the configu
ration file.  Make sure that the screenshot filter is added  af
ter  all  other  filters  whose effect you want to record on the
saved image.  E.g. it should be the last filter if you  want  to
have an exact screenshot of what you see on the monitor.

ass
Moves  SSA/ASS  subtitle  rendering to an arbitrary point in the
filter chain.  Only useful with the -ass option.

EXAMPLE:
-vf ass,screenshot
Moves SSA/ASS rendering before  the  screenshot  filter.
Screenshots taken this way will contain subtitles.

blackframe[=amount:threshold]
Detect frames that are (almost) completely black.  Can be useful
to detect chapter transitions or commercials.  Output lines con
sist  of  the frame number of the detected frame, the percentage
of blackness, the frame type and the frame number  of  the  last
encountered keyframe.


Percentage  of  the  pixels  that  have  to be below the
threshold (default: 98).


Threshold below which a pixel value is considered  black
(default: 32).

gradfun[=strength[:radius]]
Fix  the  banding  artifacts  that are sometimes introduced into
nearly flat regions by truncation to 8bit colordepth.   Interpo
lates  the  gradients  that  should  go where the bands are, and
dithers them.

This filter is designed for playback only.  Do not use it  prior
to  lossy  compression,  because  compression  tends to lose the
dither and bring back the bands.


Maximum amount by which the filter will change  any  one
pixel.  Also the threshold for detecting nearly flat re
gions (default: 1.2).


Neighborhood to fit  the  gradient  to.   Larger  radius
makes for smoother gradients, but also prevents the fil
ter from modifying pixels  near  detailed  regions  (de
fault: 16).

fixpts[=options]
Fixes  the  presentation timestamps (PTS) of the frames.  By de
fault, the PTS passed to the next filter  is  dropped,  but  the
following options can change that:

print
Print the incoming PTS.

fps=
Specify a frame per second value.

start=
Specify an initial value for the PTS.

autostart=
Uses  the nth incoming PTS as the initial PTS.  All pre
vious PTS are kept, so setting a huge value or -1  keeps
the PTS intact.

autofps=
Uses  the nth incoming PTS after the end of autostart to
determine the framerate.

EXAMPLE:
-vf fixpts=fps=24000/1001,ass,fixpts
Generates a new sequence of PTS, uses it for ASS  subti
tles,  then drops it.  Generating a new sequence is use
ful when the timestamps are reset  during  the  program;
this  is frequent on DVDs.  Dropping it may be necessary
to avoid confusing encoders.

NOTE: Using this filter together with any sort of  seeking  (in
cluding -ss and EDLs) may make demons fly out of your nose.

GENERAL ENCODING OPTIONS (MENCODER ONLY)
-audio-delay
Delays  either  audio  or  video by setting a delay field in the
header (default: 0.0).  This does not delay either stream  while
encoding, but the player will see the delay field and compensate
accordingly.  Positive values delay the audio, and negative val
ues  delay  the  video.  Note that this is the exact opposite of
the -delay option.  For example, if a video plays correctly with
-delay  0.2,  you  can fix the video with MEncoder by using -au
dio-delay -0.2.

Currently, this option only works with the  default  muxer  (-of
avi).   If  you  are  using a different muxer, then you must use
-delay instead.

-audio-density
Number of audio chunks per second (default is 2  for  0.5s  long
audio chunks).
NOTE: CBR only, VBR ignores this as it puts each packet in a new
chunk.

-audio-preload
Sets up the audio buffering time interval (default: 0.5s).

-fafmttag
Can be used to override the audio format tag of the output file.

EXAMPLE:
-fafmttag 0x55
Will  have  the  output file contain 0x55 (mp3) as audio
format tag.

-ffourcc
Can be used to override the video fourcc of the output file.

EXAMPLE:
-ffourcc div3
Will have the output file contain 'div3' as video  four
cc.

-force-avi-aspect
Override the aspect stored in the AVI OpenDML vprp header.  This
can be used to change the aspect ratio with '-ovc copy'.

-frameno-file  (DEPRECATED)
Specify the name of the audio  file  with  framenumber  mappings
created  in  the first (audio only) pass of a special three pass
encoding mode.
NOTE: Using this mode will most likely give you A-V desync.   Do
not  use  it.   It  is kept for backwards compatibility only and
will possibly be removed in a future version.

-hr-edl-seek
Use a more precise, but much slower method for  skipping  areas.
Areas  marked  for  skipping  are  not  seeked over, instead all
frames are decoded, but only the necessary frames  are  encoded.
This allows starting at non-keyframe boundaries.
NOTE: Not guaranteed to work right with '-ovc copy'.

-info  (AVI only)
Specify the info header of the resulting AVI file.

Available options are:

help
Show this description.

name=
title of the work

artist=
artist or author of the work

genre=
original work category

subject=
contents of the work

copyright=
copyright information

srcform=
original format of the digitized material

comment=
general comments about the work

-noautoexpand
Do  not automatically insert the expand filter into the MEncoder
filter chain.  Useful to control at which point  of  the  filter
chain  subtitles  are  rendered when hardcoding subtitles onto a
movie.

-noencodedups
Do not attempt to encode duplicate frames in  duplicate;  always
output  zero-byte  frames  to  indicate  duplicates.   Zero-byte
frames will be written anyway unless a filter or encoder capable
of  doing duplicate encoding is loaded.  Currently the only such
filter is harddup.

-noodml (-of avi only)
Do not write OpenDML index for AVI files &gt;1GB.

-noskip
Do not skip frames.

-o
Outputs to the given filename.
If you want a default output filename, you can put  this  option
in the MEncoder config file.

-oac
Encode with the given audio codec (no default set).
NOTE: Use -oac help to get a list of available audio codecs.

EXAMPLE:
-oac copy
no encoding, just streamcopy
-oac pcm
Encode to uncompressed PCM.
-oac mp3lame
Encode to MP3 (using LAME).
-oac lavc
Encode with a libavcodec codec.

-of  (BETA CODE!)
Encode to the specified container format (default: AVI).
NOTE: Use -of help to get a list of available container formats.

EXAMPLE:
-of avi
Encode to AVI.
-of mpeg
Encode to MPEG (also see -mpegopts).
-of lavf
Encode with libavformat muxers (also see -lavfopts).
-of rawvideo
raw video stream (no muxing - one video stream only)
-of rawaudio
raw audio stream (no muxing - one audio stream only)

-ofps
Specify a frames per second (fps) value  for  the  output  file,
which  can  be different from that of the source material.  Must
be  set  for  variable  fps  (ASF,  some  MOV)  and  progressive
(30000/1001 fps telecined MPEG) files.

-ovc
Encode with the given video codec (no default set).
NOTE: Use -ovc help to get a list of available video codecs.

EXAMPLE:
-ovc copy
no encoding, just streamcopy
-ovc raw
Encode  to  an  arbitrary  uncompressed format (use '-vf
format' to select).
-ovc lavc
Encode with a libavcodec codec.

-passlogfile
Dump first pass information to  instead of the default
divx2pass.log in two pass encoding mode.

-skiplimit
Specify  the  maximum number of frames that may be skipped after
encoding one frame (-noskiplimit for unlimited).

-vobsubout
Specify the basename for the output .idx and .sub  files.   This
turns off subtitle rendering in the encoded movie and diverts it
to VOBsub subtitle files.

-vobsuboutid
Specify the language two letter code for  the  subtitles.   This
overrides what is read from the DVD or the .ifo file.

-vobsuboutindex
Specify the index of the subtitles in the output files (default:
0).

CODEC SPECIFIC ENCODING OPTIONS (MENCODER ONLY)
You can specify codec specific encoding parameters using the  following
syntax:

-opts

Where    may  be: lavc, xvidenc, mp3lame, toolame, twolame, nuv,
xvfw, faac, x264enc, mpeg, lavf.

mp3lame (-lameopts)
help
get help

vbr=
variable bitrate method
0    cbr
1    mt
2    rh (default)
3    abr
4    mtrh

abr
average bitrate

cbr
constant bitrate Also forces CBR mode encoding on subsequent ABR
presets modes.

br=
bitrate in kbps (CBR and ABR only)

q=
quality (0 - highest, 9 - lowest) (VBR only)

aq=
algorithmic quality (0 - best/slowest, 9 - worst/fastest)

ratio=
compression ratio

vol=
audio input gain

mode=
(default: auto)
0    stereo
1    joint-stereo
2    dualchannel
3    mono

padding=
0    none
1    all
2    adjust

fast
Switch on faster encoding on subsequent VBR presets modes.  This
results in slightly lower quality and higher bitrates.

highpassfreq=
Set a highpass filtering frequency in Hz.  Frequencies below the
specified  one will be cut off.  A value of -1 will disable fil
tering, a value of 0 will let LAME choose values  automatically.

lowpassfreq=
Set  a lowpass filtering frequency in Hz.  Frequencies above the
specified one will be cut off.  A value of -1 will disable  fil
tering,  a value of 0 will let LAME choose values automatically.

preset=
preset values

help
Print additional options and information  about  presets
settings.

medium
VBR encoding, good quality, 150-180 kbps bitrate range

standard
VBR encoding, high quality, 170-210 kbps bitrate range

extreme
VBR  encoding,  very  high quality, 200-240 kbps bitrate
range

insane
CBR encoding, highest preset quality, 320 kbps bitrate


ABR encoding at average given kbps bitrate

EXAMPLES:
fast:preset=standard
suitable for most people and most music  types  and  al
ready quite high quality
cbr:preset=192
Encode  with  ABR  presets at a 192 kbps forced constant
bitrate.
preset=172
Encode with ABR presets at a 172 kbps average bitrate.
preset=extreme
for people  with  extremely  good  hearing  and  similar
equipment

toolame and twolame (-toolameopts and -twolameopts respectively)
br=
In  CBR  mode this parameter indicates the bitrate in kbps, when
in VBR mode it is the minimum bitrate allowed  per  frame.   VBR
mode will not work with a value below 112.

vbr= (VBR only)
variability  range;  if  negative the encoder shifts the average
bitrate towards the lower limit, if positive towards the higher.
When set to 0 CBR is used (default).

maxvbr= (VBR only)
maximum bitrate allowed per frame, in kbps

mode=
(default: mono for 1-channel audio, stereo otherwise)

psy=
psychoacoustic model (default: 2)

errprot=
Include error protection.

debug=
debug level

faac (-faacopts)
br=
average bitrate in kbps (mutually exclusive with quality)

quality=
quality mode, the higher the better (mutually exclusive with br)

object=
object type complexity
1    MAIN (default)
2    LOW
3    SSR
4    LTP (extremely slow)

mpeg=
MPEG version (default: 4)

tns
Enables temporal noise shaping.

cutoff=
cutoff frequency (default: sampling_rate/2)

raw
Stores the bitstream as raw payload with extradata in  the  con
tainer  header  (default:  0,  corresponds to ADTS).  Do not set
this flag if not explicitly required or you will not be able  to
remux the audio stream later on.

lavc (-lavcopts)
Many  libavcodec (lavc for short) options are tersely documented.  Read
the source for full details.

EXAMPLE:
vcodec=msmpeg4:vbitrate=1800:vhq:keyint=250

o==[,=[,...]]
Pass AVOptions to libavcodec encoder.  Note, a patch to make the
o=  unneeded  and  pass all unknown options through the AVOption
system is welcome.  A full list of AVOptions can be found in the
FFmpeg  manual.  Note that some AVOptions may conflict with MEn
coder options.

EXAMPLE:
o=bt=100k

acodec=
audio codec (default: mp2)
ac3
Dolby Digital (AC-3)
adpcm_*
Adaptive PCM formats - see the  HTML  documentation  for
details.
flac
Free Lossless Audio Codec (FLAC)
g726
G.726 ADPCM
libfaac
Advanced Audio Coding (AAC) - using FAAC
libmp3lame
MPEG-1 audio layer 3 (MP3) - using LAME
mp2
MPEG-1 audio layer 2 (MP2)
pcm_*
PCM formats - see the HTML documentation for details.
roq_dpcm
Id Software RoQ DPCM
sonic
experimental simple lossy codec
sonicls
experimental simple lossless codec
vorbis
Vorbis
wmav1
Windows Media Audio v1
wmav2
Windows Media Audio v2

abitrate=
audio bitrate in kbps (default: 224)

atag=
Use the specified Windows audio format tag (e.g. atag=0x55).

bit_exact
Use  only  bit  exact  algorithms (except (I)DCT).  Additionally
bit_exact disables several optimizations and thus should only be
used  for  regression  tests,  which need binary identical files
even if the encoder version changes.  This also  suppresses  the
user_data  header in MPEG-4 streams.  Do not use this option un
less you know exactly what you are doing.

threads=
Maximum number of threads to  use  (default:  1).   May  have  a
slight negative effect on motion estimation.

vcodec=
Employ the specified codec (default: mpeg4).
asv1
ASUS Video v1
asv2
ASUS Video v2
dvvideo
Sony Digital Video
ffv1
FFmpeg's lossless video codec
ffvhuff
nonstandard 20% smaller HuffYUV using YV12
flv
Sorenson H.263 used in Flash Video
h261
H.261
h263
H.263
h263p
H.263+
huffyuv
HuffYUV
libtheora
Theora
libx264
x264 H.264/AVC MPEG-4 Part 10
libxvid
Xvid MPEG-4 Part 2 (ASP)
ljpeg
Lossless JPEG
mjpeg
Motion JPEG
mpeg1video
MPEG-1 video
mpeg2video
MPEG-2 video
mpeg4
MPEG-4 (DivX 4/5)
msmpeg4
DivX 3
msmpeg4v2
MS MPEG4v2
roqvideo
ID Software RoQ Video
rv10
an old RealVideo codec
snow (also see: vstrict)
FFmpeg's experimental wavelet-based codec
svq1
Apple Sorenson Video 1
wmv1
Windows Media Video, version 1 (AKA WMV7)
wmv2
Windows Media Video, version 2 (AKA WMV8)

vqmin=
minimum quantizer

1    Not  recommended  (much larger file, little quality dif
ference and weird side effects: msmpeg4,  h263  will  be
very low quality, ratecontrol will be confused resulting
in lower quality and some decoders will not be  able  to
decode it).

2    Recommended  for  normal  mpeg4/mpeg1video encoding (de
fault).

3    Recommended for h263(p)/msmpeg4.  The reason for prefer
ring  3 over 2 is that 2 could lead to overflows.  (This
will be fixed for h263(p) by changing the quantizer  per
MB in the future, msmpeg4 cannot be fixed as it does not
support that.)

lmin=
Minimum frame-level Lagrange  multiplier  for  ratecontrol  (de
fault: 2.0).  Lavc will rarely use quantizers below the value of
lmin.  Lowering lmin will make lavc more likely to choose  lower
quantizers  for  some  frames,  but  not lower than the value of
vqmin.  Likewise, raising lmin will make  lavc  less  likely  to
choose  low  quantizers,  even if vqmin would have allowed them.
You probably want to set  lmin  approximately  equal  to  vqmin.
When  adaptive  quantization  is  in use, changing lmin/lmax may
have less of an effect; see mblmin/mblmax.

lmax=
maximum Lagrange multiplier for ratecontrol (default: 31.0)

mblmin=
Minimum macroblock-level  Lagrange  multiplier  for  ratecontrol
(default:2.0).  This parameter affects adaptive quantization op
tions like qprd, lumi_mask, etc..

mblmax=
Maximum macroblock-level  Lagrange  multiplier  for  ratecontrol
(default: 31.0).

vqscale=
Constant  quantizer  / constant  quality encoding (selects fixed
quantizer mode).  A lower value means better quality but  larger
files (default: -1).  In case of snow codec, value 0 means loss
less encoding.  Since the other codecs do not support this, vqs
cale=0 will have an undefined effect.  1 is not recommended (see
vqmin for details).

vqmax=
Maximum quantizer, 10-31 should be a sane range (default: 31).

mbqmin=
obsolete, use vqmin

mbqmax=
obsolete, use vqmax

vqdiff=
maximum quantizer difference between consecutive I- or  P-frames
(default: 3)

vmax_b_frames=
maximum number of B-frames between non-B-frames:
0    no B-frames (default)
0-2  sane range for MPEG-4

vme=
motion estimation method.  Available methods are:
0    none (very low quality)
1    full (slow, currently unmaintained and disabled)
2    log (low quality, currently unmaintained and disabled)
3    phods (low quality, currently unmaintained and disabled)
4    EPZS: size=1 diamond, size can be adjusted with the *dia
options (default)
5    X1 (experimental, currently aliased to EPZS)
8    iter (iterative overlapped block, only used in snow)

NOTE: 0-3 currently ignores the amount of bits spent, so quality
may be low.

me_range=
motion estimation search range (default: 0 (unlimited))

mbd= (also see *cmp, qpel)
Macroblock decision algorithm (high quality mode),  encode  each
macro  block in all modes and choose the best.  This is slow but
results in better quality and file size.  When mbd is set  to  1
or  2,  the value of mbcmp is ignored when comparing macroblocks
(the mbcmp value is still used in other places though,  in  par
ticular  the  motion search algorithms).  If any comparison set
ting (precmp, subcmp, cmp, or  mbcmp)  is  nonzero,  however,  a
slower  but  better half-pel motion search will be used, regard
less of what mbd is set to.  If qpel is set, quarter-pel  motion
search will be used regardless.
0    Use comparison function given by mbcmp (default).
1    Select the MB mode which needs the fewest bits (=vhq).
2    Select the MB mode which has the best rate distortion.

vhq
Same as mbd=1, kept for compatibility reasons.

v4mv
Allow 4 motion vectors per macroblock (slightly better quality).
Works better if used with mbd&gt;0.

obmc
overlapped block motion compensation (H.263+)

loop
loop filter (H.263+) note, this is broken

inter_threshold
Does absolutely nothing at the moment.

keyint=
maximum interval between keyframes in frames  (default:  250  or
one  keyframe  every  ten seconds in a 25fps movie.  This is the
recommended default for MPEG-4).  Most  codecs  require  regular
keyframes  in order to limit the accumulation of mismatch error.
Keyframes are also needed for seeking, as seeking is only possi
ble  to  a  keyframe  - but keyframes need more space than other
frames, so larger numbers here mean slightly smaller  files  but
less  precise  seeking.  0 is equivalent to 1, which makes every
frame a keyframe.  Values &gt;300 are not recommended as the quali
ty might be bad depending upon decoder, encoder and luck.  It is
common for MPEG-1/2 to use values &lt;=30.

sc_threshold=
Threshold for scene change detection.  A keyframe is inserted by
libavcodec  when it detects a scene change.  You can specify the
sensitivity of the  detection  with  this  option.   -1000000000
means   there  is  a  scene  change  detected  at  every  frame,
1000000000 means no scene changes are detected (default: 0).

sc_factor=
Causes frames with higher quantizers to be more likely to  trig
ger  a scene change detection and make libavcodec use an I-frame
(default: 1).  1-16 is a sane range.  Values between 2 and 6 may
yield  increasing  PSNR (up to approximately 0.04 dB) and better
placement of I-frames in high-motion scenes.  Higher values than
6 may give very slightly better PSNR (approximately 0.01 dB more
than sc_factor=6), but noticably worse visual quality.

vb_strategy= (pass one only)
strategy to choose between I/P/B-frames:
0    Always use the maximum number of B-frames (default).
1    Avoid B-frames in high motion scenes.  See the  b_sensi
tivity option to tune this strategy.
2    Places  B-frames more or less optimally to yield maximum
quality (slower).  You may want to reduce the speed  im
pact of this option by tuning the option brd_scale.

b_sensitivity=
Adjusts  how sensitively vb_strategy=1 detects motion and avoids
using B-frames (default: 40).  Lower sensitivities  will  result
in  more  B-frames.   Using more B-frames usually improves PSNR,
but too many B-frames can hurt quality  in  high-motion  scenes.
Unless there is an extremely high amount of motion, b_sensitivi
ty can safely be lowered below the default; 10 is  a  reasonable
value in most cases.

brd_scale=
Downscales  frames  for  dynamic  B-frame decision (default: 0).
Each time brd_scale is increased by one,  the  frame  dimensions
are  divided  by  two, which improves speed by a factor of four.
Both dimensions of the fully downscaled frame must be even  num
bers, so brd_scale=1 requires the original dimensions to be mul
tiples of four, brd_scale=2 requires multiples  of  eight,  etc.
In  other  words, the dimensions of the original frame must both
be divisible by 2^(brd_scale+1) with no remainder.

bidir_refine=
Refine the two motion vectors used in bidirectional macroblocks,
rather  than  re-using  vectors  from  the  forward and backward
searches.  This option has no effect without B-frames.
0    Disabled (default).
1-4  Use a wider search (larger values are slower).

vpass=
Activates internal two (or more) pass mode, only specify if  you
wish to use two (or more) pass encoding.
1    first pass (also see turbo)
2    second pass
3    Nth  pass (second and subsequent passes of N-pass encod
ing)
Here is how it works, and how to use it:
The first pass (vpass=1) writes the statistics file.  You  might
want  to  deactivate  some CPU-hungry options, like "turbo" mode
does.
In two pass mode, the second pass (vpass=2) reads the statistics
file and bases ratecontrol decisions on it.
In  N-pass  mode,  the second pass (vpass=3, that is not a typo)
does both: It first reads the statistics, then overwrites  them.
You  might  want  to  backup  divx2pass.log before doing this if
there is any possibility that you will have to cancel  MEncoder.
You can use all encoding options, except very CPU-hungry options
like "qns".
You can run this same pass over and over to refine  the  encode.
Each  subsequent  pass will use the statistics from the previous
pass to improve.  The final pass can include any CPU-hungry  en
coding options.
If  you  want  a  2  pass  encode,  use  first vpass=1, and then
vpass=2.
If you want a 3 or more pass encode, use vpass=1 for  the  first
pass and then vpass=3 and then vpass=3 again and again until you
are satisfied with the encode.

huffyuv:
pass 1
Saves statistics.
pass 2
Encodes with an optimal Huffman table based upon statis
tics from the first pass.

turbo (two pass only)
Dramatically speeds up pass one using faster algorithms and dis
abling CPU-intensive options.  This will probably reduce  global
PSNR  a  little  bit (around 0.01dB) and change individual frame
type and PSNR a little bit more (up to 0.03dB).

aspect=
Store movie aspect internally, just like with MPEG files.   Much
nicer  than  rescaling,  because quality is not decreased.  Only
MPlayer will play these files correctly, other players will dis
play  them with wrong aspect.  The aspect parameter can be given
as a ratio or a floating point number.

EXAMPLE:
aspect=16/9 or aspect=1.78

autoaspect
Same as the aspect option, but  automatically  computes  aspect,
taking into account all the adjustments (crop/expand/scale/etc.)
made in the filter chain.  Does not incur a performance penalty,
so you can safely leave it always on.

vbitrate=
Specify bitrate (default: 800).
WARNING: 1kbit = 1000 bits
4-16000
(in kbit)
16001-24000000
(in bit)

vratetol=
approximated file size tolerance in kbit.  1000-100000 is a sane
range.  (warning: 1kbit = 1000 bits) (default: 8000)
NOTE: vratetol should not be too large during the second pass or
there might be problems if vrc_(min|max)rate is used.

vrc_maxrate=
maximum bitrate in kbit/sec (default: 0, unlimited)

vrc_minrate=
minimum bitrate in kbit/sec (default: 0, unlimited)

vrc_buf_size=
buffer  size  in kbit For MPEG-1/2 this also sets the vbv buffer
size, use 327 for VCD, 917 for SVCD and 1835 for DVD.

vrc_buf_aggressivity
currently useless

vrc_strategy
Ratecontrol method.  Note that some of the ratecontrol-affecting
options will have no effect if vrc_strategy is not set to 0.
0    Use internal lavc ratecontrol (default).
1    Use Xvid ratecontrol (experimental; requires MEncoder to
be compiled with support for Xvid 1.1 or higher).

vb_qfactor=
quantizer factor between B- and non-B-frames (default: 1.25)

vi_qfactor=
quantizer factor between I- and non-I-frames (default: 0.8)

vb_qoffset=
quantizer offset between B- and non-B-frames (default: 1.25)

vi_qoffset=
(default: 0.0)
if v{b|i}_qfactor &gt; 0
I/B-frame quantizer  =  P-frame  quantizer  *  v{b|i}_qfactor  +
v{b|i}_qoffset
else
do  normal  ratecontrol  (do not lock to next P-frame quantizer)
and set q= -q * v{b|i}_qfactor + v{b|i}_qoffset
HINT: To do constant quantizer encoding with different  quantiz
ers  for  I/P-  and B-frames you can use: lmin= :lmax=
:vb_qfactor= <b><b></b>.

vqblur= (pass one)
Quantizer blur (default: 0.5), larger values  will  average  the
quantizer more over time (slower change).
0.0  Quantizer blur disabled.
1.0  Average the quantizer over all previous frames.

vqblur= (pass two)
Quantizer gaussian blur (default: 0.5), larger values will aver
age the quantizer more over time (slower change).

vqcomp=
Quantizer compression, vrc_eq depends upon this (default:  0.5).
NOTE:  Perceptual  quality  will be optimal somewhere in between
the range's extremes.

vrc_eq=
main ratecontrol equation

1+(tex/avgTex-1)*qComp
approximately the equation of the old ratecontrol code

tex^qComp
with qcomp 0.5 or something like that (default)

infix operators:

+,-,*,/,^

variables:

tex
texture complexity

iTex,pTex
intra, non-intra texture complexity

avgTex
average texture complexity

avgIITex
average intra texture complexity in I-frames

avgPITex
average intra texture complexity in P-frames

avgPPTex
average non-intra texture complexity in P-frames

avgBPTex
average non-intra texture complexity in B-frames

mv
bits used for motion vectors

fCode
maximum length of motion vector in log2 scale

iCount
number of intra macroblocks / number of macroblocks

var
spatial complexity

mcVar
temporal complexity

qComp
qcomp from the command line

isI, isP, isB
Is 1 if picture type is I/P/B else 0.

Pi,E
See your favorite math book.

functions:

max(a,b),min(a,b)
maximum / minimum

gt(a,b)
is 1 if a&gt;b, 0 otherwise

lt(a,b)
is 1 if a&lt;b, 0 otherwise

eq(a,b)
is 1 if a==b, 0 otherwise

sin, cos, tan, sinh, cosh, tanh, exp, log, abs

vrc_override=
User specified quality  for  specific  parts  (ending,  credits,
...).   The  options  are  ,  ,  [/, , [/...]]:
quality (2-31)
quantizer
quality (-500-0)
quality correction in %

vrc_init_cplx=
initial complexity (pass 1)

vrc_init_occupancy=
initial buffer occupancy, as a  fraction  of  vrc_buf_size  (de
fault: 0.9)

vqsquish=
Specify how to keep the quantizer between qmin and qmax.
0    Use clipping.
1    Use a nice differentiable function (default).

vlelim=
Sets  single  coefficient  elimination  threshold for luminance.
Negative values will also consider the DC coefficient (should be
at least -4 or lower for encoding at quant=1):
0    disabled (default)
-4   JVT recommendation

vcelim=
Sets  single  coefficient elimination threshold for chrominance.
Negative values will also consider the DC coefficient (should be
at least -4 or lower for encoding at quant=1):
0    disabled (default)
7    JVT recommendation

vstrict=
strict standard compliance
0    disabled
1    Only recommended if you want to feed the output into the
MPEG-4 reference decoder.
-1   Allow libavcodec specific extensions (default).
-2   Enables experimental codecs and features which  may  not
be playable with future MPlayer versions (snow).

vdpart
Data  partitioning.  Adds 2 Bytes per video packet, improves er
ror-resistance when transferring over unreliable channels  (e.g.
streaming over the internet).  Each video packet will be encoded
in 3 separate partitions:
1. MVs
movement
2. DC coefficients
low res picture
3. AC coefficients
details
MV &amp; DC are most important, losing them  looks  far  worse  than
losing  the  AC  and  the  1. &amp; 2. partition.  (MV &amp; DC) are far
smaller than the 3. partition (AC) meaning that errors will  hit
the  AC  partition  much more often than the MV &amp; DC partitions.
Thus, the picture will look better with partitioning than  with
out, as without partitioning an error will trash AC/DC/MV equal
ly.

vpsize= (also see vdpart)
Video packet size, improves error-resistance.
0
disabled (default)
100-1000
good choice

ss
slice structured mode for H.263+

gray
grayscale only encoding (faster)

vfdct=
DCT algorithm
0    Automatically select a good one (default).
1    fast integer
2    accurate integer
3    MMX
4    mlib
5    AltiVec
6    floating point AAN

idct=
IDCT algorithm
NOTE: To the best of our knowledge all these IDCTs do  pass  the
IEEE1180 tests.
0    Automatically select a good one (default).
1    JPEG reference integer
2    simple
3    simplemmx
4    libmpeg2mmx  (inaccurate,  do  not use for encoding with
keyint &gt;100)
5    ps2
6    mlib
7    arm
8    AltiVec
9    sh4
10   simplearm
11   H.264
12   VP3
13   IPP
14   xvidmmx
15   CAVS
16   simplearmv5te
17   simplearmv6

lumi_mask=
Luminance masking is a 'psychosensory' setting that is  supposed
to make use of the fact that the human eye tends to notice fewer
details in very bright parts of the picture.  Luminance  masking
compresses  bright  areas  stronger than medium ones, so it will
save bits that can be spent again on other frames, raising over
all subjective quality, while possibly reducing PSNR.
WARNING:  Be  careful,  overly large values can cause disastrous
things.
WARNING: Large values might look good on some monitors  but  may
look horrible on other monitors.
0.0
disabled (default)
0.0-0.3
sane range

dark_mask=
Darkness  masking  is a 'psychosensory' setting that is supposed
to make use of the fact that the human eye tends to notice fewer
details  in  very  dark  parts of the picture.  Darkness masking
compresses dark areas stronger than medium ones, so it will save
bits  that  can  be spent again on other frames, raising overall
subjective quality, while possibly reducing PSNR.
WARNING: Be careful, overly large values  can  cause  disastrous
things.
WARNING:  Large  values might look good on some monitors but may
look horrible on other monitors / TV / TFT.
0.0
disabled (default)
0.0-0.3
sane range

tcplx_mask=
Temporal complexity masking (default: 0.0 (disabled)).   Imagine
a  scene  with  a bird flying across the whole scene; tcplx_mask
will raise the quantizers of the bird's  macroblocks  (thus  de
creasing  their quality), as the human eye usually does not have
time to see all the bird's  details.   Be  warned  that  if  the
masked  object  stops (e.g. the bird lands) it is likely to look
horrible for a short period of time, until the  encoder  figures
out that the object is not moving and needs refined blocks.  The
saved bits will be spent on other parts of the video, which  may
increase  subjective  quality, provided that tcplx_mask is care
fully chosen.

scplx_mask=
Spatial complexity masking.  Larger values help against  blocki
ness,  if  no  deblocking  filter is used for decoding, which is
maybe not a good idea.
Imagine a scene with grass (which usually has great spatial com
plexity),  a  blue  sky  and  a house; scplx_mask will raise the
quantizers of the grass' macroblocks, thus decreasing its quali
ty, in order to spend more bits on the sky and the house.
HINT:  Crop any black borders completely as they will reduce the
quality of the macroblocks (also applies without scplx_mask).
0.0
disabled (default)
0.0-0.5
sane range

NOTE: This setting does not have the same effect as using a cus
tom  matrix  that would compress high frequencies harder, as sc
plx_mask will reduce the quality of P blocks even if only DC  is
changing.   The  result  of scplx_mask will probably not look as
good.

p_mask= (also see vi_qfactor)
Reduces the quality of inter blocks.  This is equivalent to  in
creasing  the  quality of intra blocks, because the same average
bitrate will be distributed by the rate controller to the  whole
video  sequence  (default:  0.0 (disabled)).  p_mask=1.0 doubles
the bits allocated to each intra block.

border_mask=
border-processing for MPEG-style  encoders.   Border  processing
increases  the  quantizer  for  macroblocks  which are less than
1/5th of the frame width/height  away  from  the  frame  border,
since they are often visually less important.

naq
Normalize  adaptive  quantization  (experimental).   When  using
adaptive quantization (*_mask), the average per-MB quantizer may
no  longer  match the requested frame-level quantizer.  Naq will
attempt to adjust the per-MB quantizers to maintain  the  proper
average.

ildct
Use interlaced DCT.

ilme
Use interlaced motion estimation (mutually exclusive with qpel).

alt
Use alternative scantable.

top=
-1   automatic
0    bottom field first
1    top field first

format=
YV12
default
444P
for ffv1
422P
for HuffYUV, lossless JPEG, dv and ffv1
411P
for lossless JPEG, dv and ffv1
YVU9
for lossless JPEG, ffv1 and svq1
BGR32
for lossless JPEG and ffv1

pred
(for HuffYUV)
0    left prediction
1    plane/gradient prediction
2    median prediction

pred
(for lossless JPEG)
0    left prediction
1    top prediction
2    topleft prediction
3    plane/gradient prediction
6    mean prediction

coder
(for ffv1)
0    vlc coding (Golomb-Rice)
1    arithmetic coding (CABAC)

context
(for ffv1)
0    small context model
1    large context model

(for ffvhuff)
0    predetermined Huffman tables (builtin or two pass)
1    adaptive Huffman tables

qpel
Use quarter pel motion  compensation  (mutually  exclusive  with
ilme).
HINT: This seems only useful for high bitrate encodings.

mbcmp=
Sets  the  comparison  function for the macroblock decision, has
only an effect if mbd=0.  This is  also  used  for  some  motion
search  functions,  in which case it has an effect regardless of
mbd setting.
0 (SAD)
sum of absolute differences, fast (default)
1 (SSE)
sum of squared errors
2 (SATD)
sum of absolute Hadamard transformed differences
3 (DCT)
sum of absolute DCT transformed differences
4 (PSNR)
sum of squared quantization errors (avoid, low quality)
5 (BIT)
number of bits needed for the block
6 (RD)
rate distortion optimal, slow
7 (ZERO)
0
8 (VSAD)
sum of absolute vertical differences
9 (VSSE)
sum of squared vertical differences
10 (NSSE)
noise preserving sum of squared differences
11 (W53)
5/3 wavelet, only used in snow
12 (W97)
9/7 wavelet, only used in snow
+256
Also use chroma, currently  does  not  work  (correctly)
with B-frames.

ildctcmp=
Sets  the  comparison  function for interlaced DCT decision (see
mbcmp for available comparison functions).

precmp=
Sets the comparison function for motion estimation pre pass (see
mbcmp for available comparison functions) (default: 0).

cmp=
Sets the comparison function for full pel motion estimation (see
mbcmp for available comparison functions) (default: 0).

subcmp=
Sets the comparison function for sub pel motion estimation  (see
mbcmp for available comparison functions) (default: 0).

skipcmp=
FIXME: Document this.

nssew=
This setting controls NSSE weight, where larger weights will re
sult in more noise.  0 NSSE is identical to  SSE  You  may  find
this  useful  if  you  prefer to keep some noise in your encoded
video rather than filtering it away  before  encoding  (default:
8).

predia=
diamond type and size for motion estimation pre-pass

dia=
Diamond  type &amp; size for motion estimation.  Motion search is an
iterative process.  Using a small diamond  does  not  limit  the
search  to  finding only small motion vectors.  It is just some
what more likely to stop before finding  the  very  best  motion
vector,  especially when noise is involved.  Bigger diamonds al
low a wider search for the best motion vector, thus  are  slower
but result in better quality.
Big  normal diamonds are better quality than shape-adaptive dia
monds.
Shape-adaptive diamonds are a good tradeoff  between  speed  and
quality.
NOTE:  The  sizes of the normal diamonds and shape adaptive ones
do not have the same meaning.

-3   shape adaptive (fast) diamond with size 3

-2   shape adaptive (fast) diamond with size 2

-1   uneven multi-hexagon search (slow)

1    normal size=1 diamond (default) =EPZS type diamond
0
000
0

2    normal size=2 diamond
0
000
00000
000
0

trell
Trellis searched quantization.  This will find the  optimal  en
coding  for  each  8x8  block.  Trellis searched quantization is
quite simply an optimal quantization in the PSNR versus  bitrate
sense  (Assuming  that  there would be no rounding errors intro
duced by the IDCT, which is obviously not the case.).  It simply
finds a block for the minimum of error and lambda*bits.
lambda
quantization parameter (QP) dependent constant
bits
amount of bits needed to encode the block
error
sum of squared errors of the quantization

cbp
Rate  distorted  optimal  coded  block pattern.  Will select the
coded block pattern which minimizes  distortion  +  lambda*rate.
This can only be used together with trellis quantization.

mv0
Try  to  encode each MB with MV= and choose the better one.
This has no effect if mbd=0.

mv0_threshold=
When surrounding motion vectors are  and the motion estima
tion  score  of  the  current  block is less than mv0_threshold,
is used for the motion vector and further  motion  estima
tion is skipped (default: 256).  Lowering mv0_threshold to 0 can
give a slight (0.01dB) PSNR increase and possibly make  the  en
coded video look slightly better; raising mv0_threshold past 320
results in diminished PSNR and visual  quality.   Higher  values
speed up encoding very slightly (usually less than 1%, depending
on the other options used).
NOTE: This option does not require mv0 to be enabled.

qprd (mbd=2 only)
rate distorted optimal quantization parameter (QP) for the given
lambda of each macroblock

last_pred=
amount of motion predictors from the previous frame
0    (default)
a    Will  use 2a+1 x 2a+1 macroblock square of motion vector
predictors from the previous frame.

preme=
motion estimation pre-pass
0    disabled
1    only after I-frames (default)
2    always

subq=
subpel refinement quality (for qpel) (default: 8 (high quality))
NOTE: This has a significant effect on speed.

refs=
number  of  reference frames to consider for motion compensation
(Snow only) (default: 1)

psnr
print the PSNR (peak signal to noise ratio) for the whole  video
after  encoding  and  store  the per frame PSNR in a file with a
name like 'psnr_hhmmss.log'.  Returned values are in  dB  (deci
bel), the higher the better.

mpeg_quant
Use MPEG quantizers instead of H.263.

aic
Enable AC prediction for MPEG-4 or advanced intra prediction for
H.263+.  This will improve quality very slightly (around 0.02 dB
PSNR) and slow down encoding very slightly (about 1%).
NOTE: vqmin should be 8 or larger for H.263+ AIC.

aiv
alternative inter vlc for H.263+

umv
unlimited  MVs (H.263+ only) Allows encoding of arbitrarily long
MVs.

ibias=
intra quantizer bias (256 equals 1.0, MPEG style  quantizer  de
fault: 96, H.263 style quantizer default: 0)
NOTE: The H.263 MMX quantizer cannot handle positive biases (set
vfdct=1 or 2), the MPEG MMX quantizer cannot handle negative bi
ases (set vfdct=1 or 2).

pbias=
inter  quantizer  bias (256 equals 1.0, MPEG style quantizer de
fault: 0, H.263 style quantizer default: -64)
NOTE: The H.263 MMX quantizer cannot handle positive biases (set
vfdct=1 or 2), the MPEG MMX quantizer cannot handle negative bi
ases (set vfdct=1 or 2).
HINT: A more positive bias (-32 - -16 instead of -64)  seems  to
improve the PSNR.

nr=
Noise  reduction, 0 means disabled.  0-600 is a useful range for
typical content, but you may want to turn it up a bit  more  for
very  noisy  content  (default:  0).   Given its small impact on
speed, you might want to prefer to use this over filtering noise
away with video filters like denoise3d or hqdn3d.

qns=
Quantizer  noise  shaping.  Rather than choosing quantization to
most closely match the source video in the PSNR sense, it choos
es quantization such that noise (usually ringing) will be masked
by similar-frequency content in the image.   Larger  values  are
slower  but  may  not  result  in  better quality.  This can and
should be used together with trellis quantization, in which case
the  trellis  quantization (optimal for constant weight) will be
used as startpoint for the iterative search.
0    disabled (default)
1    Only lower the absolute value of coefficients.
2    Only change coefficients before the last non-zero  coef
ficient + 1.
3    Try all.

inter_matrix=
Use  custom  inter matrix.  It needs a comma separated string of
64 integers.

intra_matrix=
Use custom intra matrix.  It needs a comma separated  string  of
64 integers.

vqmod_amp
experimental quantizer modulation

vqmod_freq
experimental quantizer modulation

dc
intra  DC  precision  in  bits  (default:  8).   If  you specify
vcodec=mpeg2video this value can be 8, 9, 10 or 11.

cgop (also see sc_threshold)
Close all GOPs.  Currently it only works if scene change  detec
tion is disabled (sc_threshold=1000000000).

gmc
Enable Global Motion Compensation.

(no)lowdelay
Sets the low delay flag for MPEG-1/2 (disables B-frames).

vglobal=
Control writing global video headers.
0    Codec decides where to write global headers (default).
1    Write  global  headers  only  in  extradata  (needed for
.mp4/MOV/NUT).
2    Write global headers only in front of keyframes.
3    Combine 1 and 2.

aglobal=
Same as vglobal for audio headers.

level=
Set CodecContext Level.  Use  31  or  41  to  play  video  on  a
Playstation 3.

skip_exp=
FIXME: Document this.

skip_factor=
FIXME: Document this.

skip_threshold=
FIXME: Document this.

nuv (-nuvopts)
Nuppel  video  is based on RTJPEG and LZO.  By default frames are first
encoded with RTJPEG and then compressed with LZO, but it is possible to
disable either or both of the two passes.  As a result, you can in fact
output raw i420, LZO compressed i420, RTJPEG, or the default  LZO  com
pressed RTJPEG.
NOTE:  The nuvrec documentation contains some advice and examples about
the settings to use for the most common TV encodings.

c=
chrominance threshold (default: 1)

l=
luminance threshold (default: 1)

lzo
Enable LZO compression (default).

nolzo
Disable LZO compression.

q=
quality level (default: 255)

raw
Disable RTJPEG encoding.

rtjpeg
Enable RTJPEG encoding (default).

xvidenc (-xvidencopts)
There are three modes available: constant bitrate (CBR), fixed quantiz
er and two pass.

pass=
Specify the pass in two pass mode.

turbo (two pass only)
Dramatically speeds up pass one using faster algorithms and dis
abling CPU-intensive options.  This will probably reduce  global
PSNR  a  little  bit and change individual frame type and PSNR a
little bit more.

bitrate= (CBR or two pass mode)
Sets the bitrate to be used in  kbits/second  if  16000.   If  is negative, Xvid will use
its absolute value as the target size (in kBytes) of  the  video
and  compute  the associated bitrate automagically (default: 687
kbits/s).

fixed_quant=
Switch to fixed quantizer mode and specify the quantizer  to  be
used.

zones=[/[/...]] (CBR or two pass mode)
User  specified  quality  for  specific  parts (ending, credits,
...).  Each zone is  ,,  where
may be
q    Constant quantizer override, where value= rep
resents the quantizer value.
w    Ratecontrol  weight  override,  where  value=
represents the quality correction in %.

EXAMPLE:
zones=90000,q,20
Encodes all frames starting with frame 90000 at constant
quantizer 20.
zones=0,w,0.1/10001,w,1.0/90000,q,20
Encode frames 0-10000  at  10%  bitrate,  encode  frames
90000 up to the end at constant quantizer 20.  Note that
the second zone is needed to delimit the first zone,  as
without  it everything up until frame 89999 would be en
coded at 10% bitrate.

me_quality=
This option controls the motion estimation subsystem.  The high
er  the  value,  the  more precise the estimation should be (de
fault: 6).  The more precise the motion estimation is, the  more
bits  can  be  saved.  Precision is gained at the expense of CPU
time so decrease this setting if you need realtime encoding.

(no)qpel
MPEG-4 uses a half pixel precision for its motion search by  de
fault.   The standard proposes a mode where encoders are allowed
to use quarter pixel precision.  This option usually results  in
a sharper image.  Unfortunately it has a great impact on bitrate
and sometimes the higher bitrate use will prevent it from giving
a better image quality at a fixed bitrate.  It is better to test
with and without this option and see whether it is  worth  acti
vating.

(no)gmc
Enable  Global  Motion  Compensation,  which makes Xvid generate
special frames (GMC-frames) which are well suited for  Pan/Zoom/
Rotating  images.   Whether  or  not the use of this option will
save bits is highly dependent on the source material.

(no)trellis
Trellis Quantization is a kind of adaptive  quantization  method
that saves bits by modifying quantized coefficients to make them
more compressible by the entropy encoder.  Its impact on quality
is  good, and if VHQ uses too much CPU for you, this setting can
be a good alternative to save a few bits (and  gain  quality  at
fixed bitrate) at a lesser cost than with VHQ (default: on).

(no)cartoon
Activate  this if your encoded sequence is an anime/cartoon.  It
modifies some Xvid internal thresholds so Xvid takes better  de
cisions  on frame types and motion vectors for flat looking car
toons.

(no)chroma_me
The usual motion estimation algorithm uses  only  the  luminance
information  to  find  the best motion vector.  However for some
video material, using the chroma planes  can  help  find  better
vectors.   This setting toggles the use of chroma planes for mo
tion estimation (default: on).

(no)chroma_opt
Enable a chroma optimizer prefilter.  It will do some extra mag
ic on color information to minimize the stepped-stairs effect on
edges.  It will improve quality at the cost of  encoding  speed.
It  reduces PSNR by nature, as the mathematical deviation to the
original picture will get bigger, but the subjective image qual
ity  will  raise.   Since  it  works with color information, you
might want to turn it off when encoding in grayscale.

(no)hq_ac
Activates high-quality prediction of AC coefficients  for  intra
frames from neighbor blocks (default: on).

vhq=
The  motion  search  algorithm is based on a search in the usual
color domain and tries to find a motion  vector  that  minimizes
the  difference  between  the  reference  frame  and the encoded
frame.  With this setting activated, Xvid will also use the fre
quency domain (DCT) to search for a motion vector that minimizes
not only the spatial difference but also the encoding length  of
the block.  Fastest to slowest:
0    off
1    mode decision (inter/intra MB) (default)
2    limited search
3    medium search
4    wide search

(no)lumi_mask
Adaptive  quantization  allows the macroblock quantizers to vary
inside each frame.  This is a 'psychosensory'  setting  that  is
supposed to make use of the fact that the human eye tends to no
tice fewer details in very bright and very  dark  parts  of  the
picture.   It  compresses  those areas more strongly than medium
ones, which will save bits that can  be  spent  again  on  other
frames, raising overall subjective quality and possibly reducing
PSNR.

(no)grayscale
Make  Xvid  discard  chroma  planes  so  the  encoded  video  is
grayscale  only.   Note that this does not speed up encoding, it
just prevents chroma data from being written in the  last  stage
of encoding.

(no)interlacing
Encode  the  fields of interlaced video material.  Turn this op
tion on for interlaced content.
NOTE: Should you rescale the video, you would need an interlace-
aware    resizer,    which    you    can   activate   with   -vf
scale=::1.

min_iquant=
minimum I-frame quantizer (default: 2)

max_iquant=
maximum I-frame quantizer (default: 31)

min_pquant=
minimum P-frame quantizer (default: 2)

max_pquant=
maximum P-frame quantizer (default: 31)

min_bquant=
minimum B-frame quantizer (default: 2)

max_bquant=
maximum B-frame quantizer (default: 31)

min_key_interval= (two pass only)
minimum interval between keyframes (default: 0)

max_key_interval=
maximum interval between keyframes (default: 10*fps)

quant_type=
Sets the type of quantizer to use.  For high bitrates, you  will
find  that MPEG quantization preserves more detail.  For low bi
trates, the smoothing of H.263 will give you less  block  noise.
When using custom matrices, MPEG quantization must be used.

quant_intra_matrix=
Load a custom intra matrix file.  You can build such a file with
xvid4conf's matrix editor.

quant_inter_matrix=
Load a custom inter matrix file.  You can build such a file with
xvid4conf's matrix editor.

keyframe_boost= (two pass mode only)
Shift  some  bits  from  the pool for other frame types to intra
frames, thus improving keyframe quality.  This amount is an  ex
tra  percentage,  so  a value of 10 will give your keyframes 10%
more bits than normal (default: 0).

kfthreshold= (two pass mode only)
Works together with kfreduction.  Determines  the  minimum  dis
tance  below  which  you consider that two frames are considered
consecutive and treated  differently  according  to  kfreduction
(default: 10).

kfreduction= (two pass mode only)
The  above  two  settings  can  be  used  to  adjust the size of
keyframes that you consider too close to the first (in  a  row).
kfthreshold  sets  the range in which keyframes are reduced, and
kfreduction determines the bitrate reduction they get.  The last
I-frame will get treated normally (default: 30).

max_bframes=
Maximum  number  of B-frames to put between I/P-frames (default:
2).

bquant_ratio=
quantizer ratio between B- and non-B-frames, 150=1.50  (default:
150)

bquant_offset=
quantizer offset between B- and non-B-frames, 100=1.00 (default:
100)

bf_threshold=
This setting allows you to specify what priority to place on the
use of B-frames.  The higher the value, the higher the probabil
ity of B-frames being used (default: 0).  Do not forget that  B-
frames usually have a higher quantizer, and therefore aggressive
production of B-frames may cause worse visual quality.

(no)closed_gop
This option tells Xvid to close every  GOP  (Group  Of  Pictures
bounded by two I-frames), which makes GOPs independent from each
other.  This just implies that the last frame of the GOP is  ei
ther  a P-frame or a N-frame but not a B-frame.  It is usually a
good idea to turn this option on (default: on).

(no)packed
This option is meant to solve frame-order issues  when  encoding
to container formats like AVI that cannot cope with out-of-order
frames.  In practice, most decoders (both software and hardware)
are  able  to deal with frame-order themselves, and may get con
fused when this option is turned on, so you can safely leave  if
off, unless you really know what you are doing.
WARNING:  This  will generate an illegal bitstream, and will not
be decodable by ISO-MPEG-4 decoders except DivX/libavcodec/Xvid.
WARNING: This will also store a fake DivX version in the file so
the bug autodetection of some decoders might be confused.

frame_drop_ratio= (max_bframes=0 only)
This setting allows the creation  of  variable  framerate  video
streams.   The  value of the setting specifies a threshold under
which, if the difference of the following frame to the  previous
frame is below or equal to this threshold, a frame gets not cod
ed (a so called n-vop is placed in the  stream).   On  playback,
when reaching an n-vop the previous frame will be displayed.
WARNING:  Playing with this setting may result in a jerky video,
so use it at your own risks!

rc_reaction_delay_factor=
This parameter controls the number of frames the CBR  rate  con
troller will wait before reacting to bitrate changes and compen
sating for them to obtain a constant bitrate over  an  averaging
range of frames.

rc_averaging_period=
Real  CBR  is hard to achieve.  Depending on the video material,
bitrate can be variable, and hard to  predict.   Therefore  Xvid
uses  an averaging period for which it guarantees a given amount
of bits (minus a small variation).  This settings expresses  the
"number  of frames" for which Xvid averages bitrate and tries to
achieve CBR.

rc_buffer=
size of the rate control buffer

curve_compression_high=
This setting allows Xvid to take a certain  percentage  of  bits
away  from  high  bitrate  scenes  and give them back to the bit
reservoir.  You could also use this if you have a clip  with  so
many  bits allocated to high-bitrate scenes that the low(er)-bi
trate scenes start to look bad (default: 0).

curve_compression_low=
This setting allows Xvid to give a certain percentage  of  extra
bits  to  the low bitrate scenes, taking a few bits from the en
tire clip.  This might come in handy if you have a  few  low-bi
trate scenes that are still blocky (default: 0).

overflow_control_strength=
During  pass one of two pass encoding, a scaled bitrate curve is
computed.  The difference between that expected  curve  and  the
result  obtained during encoding is called overflow.  Obviously,
the two pass rate controller tries to compensate for that  over
flow,  distributing  it over the next frames.  This setting con
trols how much of the overflow is distributed every  time  there
is  a  new  frame.   Low values allow lazy overflow control, big
rate bursts are compensated for more slowly (could lead to  lack
of  precision for small clips).  Higher values will make changes
in bit redistribution more abrupt, possibly too  abrupt  if  you
set it too high, creating artifacts (default: 5).
NOTE:  This setting impacts quality a lot, play with it careful
ly!

max_overflow_improvement=
During the frame bit allocation, overflow control  may  increase
the frame size.  This parameter specifies the maximum percentage
by which the overflow control is allowed to increase  the  frame
size, compared to the ideal curve allocation (default: 5).

max_overflow_degradation=
During  the  frame bit allocation, overflow control may decrease
the frame size.  This parameter specifies the maximum percentage
by  which  the overflow control is allowed to decrease the frame
size, compared to the ideal curve allocation (default: 5).

container_frame_overhead=
Specifies a frame average overhead per frame, in bytes.  Most of
the time users express their target bitrate for video w/o taking
care of the video container overhead.  This small  but  (mostly)
constant overhead can cause the target file size to be exceeded.
Xvid allows users to set the amount of overhead  per  frame  the
container  generates  (give only an average per frame).  0 has a
special meaning, it lets Xvid use its own  default  values  (de
fault: 24 - AVI average overhead).

profile=
Restricts options and VBV (peak bitrate over a short period) ac
cording to the Simple, Advanced Simple and DivX  profiles.   The
resulting videos should be playable on standalone players adher
ing to these profile specifications.
unrestricted
no restrictions (default)
sp0
simple profile at level 0
sp1
simple profile at level 1
sp2
simple profile at level 2
sp3
simple profile at level 3
asp0
advanced simple profile at level 0
asp1
advanced simple profile at level 1
asp2
advanced simple profile at level 2
asp3
advanced simple profile at level 3
asp4
advanced simple profile at level 4
asp5
advanced simple profile at level 5
dxnhandheld
DXN handheld profile
dxnportntsc
DXN portable NTSC profile
dxnportpal
DXN portable PAL profile
dxnhtntsc
DXN home theater NTSC profile
dxnhtpal
DXN home theater PAL profile
dxnhdtv
DXN HDTV profile
NOTE: These profiles should be used in conjunction with  an  ap
propriate -ffourcc.  Generally DX50 is applicable, as some play
ers do not recognize Xvid but most recognize DivX.

par=
Specifies the Pixel Aspect Ratio mode (not to be  confused  with
DAR,  the  Display Aspect Ratio).  PAR is the ratio of the width
and height of a single pixel.  So both are  related  like  this:
DAR = PAR * (width/height).
MPEG-4  defines 5 pixel aspect ratios and one extended one, giv
ing the opportunity to specify a specific pixel aspect ratio.  5
standard modes can be specified:
vga11
It is the usual PAR for PC content.  Pixels are a square
unit.
pal43
PAL standard 4:3 PAR.  Pixels are rectangles.
pal169
same as above
ntsc43
same as above
ntsc169
same as above (Do not forget to give the exact ratio.)
ext
Allows you to specify your own pixel aspect  ratio  with
par_width and par_height.
NOTE:  In  general,  setting  aspect  and  autoaspect options is
enough.

par_width= (par=ext only)
Specifies the width of the custom pixel aspect ratio.

par_height= (par=ext only)
Specifies the height of the custom pixel aspect ratio.

aspect=
Store movie aspect internally, just like MPEG files.  Much nicer
solution  than  rescaling,  because  quality  is  not decreased.
MPlayer and a few others players will play these files  correct
ly,  others will display them with the wrong aspect.  The aspect
parameter can be given as a ratio or a floating point number.

(no)autoaspect
Same as the aspect option, but  automatically  computes  aspect,
taking into account all the adjustments (crop/expand/scale/etc.)
made in the filter chain.

psnr
Print the PSNR (peak signal to noise ratio) for the whole  video
after  encoding  and  store  the per frame PSNR in a file with a
name like 'psnr_hhmmss.log' in the current directory.   Returned
values are in dB (decibel), the higher the better.

debug
Save  per-frame  statistics  in ./xvid.dbg. (This is not the two
pass control file.)


The following option is only available in Xvid 1.1.x.

bvhq=
This setting allows vector candidates for B-frames  to  be  used
for the encoding chosen using a rate distortion optimized opera
tor, which is what is done for P-frames by the vhq option.  This
produces  nicer-looking  B-frames while incurring almost no per
formance penalty (default: 1).


The following option is only available in the 1.2.x version of Xvid.

threads=
Create n threads to run the motion estimation (default: 0).  The
maximum number of threads that can be used is the picture height
divided by 16.

x264enc (-x264encopts)
bitrate=
Sets the average bitrate to be used  in  kbits/second  (default:
off).  Since local bitrate may vary, this average may be inaccu
rate for very short videos (see ratetol).  Constant bitrate  can
be  achieved  by combining this with vbv_maxrate, at significant
reduction in quality.

qp=
This selects the quantizer to use for P-frames.  I- and B-frames
are  offset  from this value by ip_factor and pb_factor, respec
tively.  20-40 is a useful range.  Lower values result in better
fidelity,  but higher bitrates.  0 is lossless.  Note that quan
tization in H.264 works  differently  from  MPEG-1/2/4:  H.264's
quantization parameter (QP) is on a logarithmic scale.  The map
ping is approximately H264QP = 12 + 6*log2(MPEGQP).   For  exam
ple, MPEG at QP=2 is equivalent to H.264 at QP=18.

crf=
Enables  constant  quality  mode,  and selects the quality.  The
scale is similar to QP.  Like the bitrate-based modes, this  al
lows  each frame to use a different QP based on the frame's com
plexity.

pass=
Enable 2 or 3-pass mode.  It is recommended to always encode  in
2  or  3-pass  mode as it leads to a better bit distribution and
improves overall quality.
1    first pass
2    second pass (of two pass encoding)
3    Nth pass (second and third passes of three  pass  encod
ing)
Here is how it works, and how to use it:
The  first  pass  (pass=1)  collects statistics on the video and
writes them to a file.  You might want to deactivate  some  CPU-
hungry options, apart from the ones that are on by default.
In  two pass mode, the second pass (pass=2) reads the statistics
file and bases ratecontrol decisions on it.
In three pass mode, the second pass (pass=3, that is not a typo)
does  both: It first reads the statistics, then overwrites them.
You can use all encoding options,  except  very  CPU-hungry  op
tions.
The  third  pass (pass=3) is the same as the second pass, except
that it has the second pass' statistics to work from.   You  can
use all encoding options, including CPU-hungry ones.
The  first pass may use either average bitrate or constant quan
tizer.  ABR is recommended, since it does not require guessing a
quantizer.  Subsequent passes are ABR, and must specify bitrate.

profile=
Constrain options to be compatible with an H.264 profile.
baseline
no8x8dct bframes=0 nocabac cqm=flat  weightp=0  nointer
laced qp&gt;0
main no8x8dct cqm=flat qp&gt;0
high qp&gt;0 (default)

preset=
Use a preset to select encoding settings.
ultrafast
no8x8dct  aq_mode=0  b_adapt=0 bframes=0 nodeblock nomb
tree me=dia nomixed_refs  partitions=none  ref=1  scene
cut=0 subq=0 trellis=0 noweight_b weightp=0
superfast
nombtree  me=dia nomixed_refs partitions=i8x8,i4x4 ref=1
subq=1 trellis=0 weightp=0
veryfast
nombtree nomixed_refs ref=1 subq=2 trellis=0 weightp=0
faster
nomixed_refs rc_lookahead=20 ref=5 subq=4 weightp=1
fast rc_lookahead=30 ref=2 subq=6
medium
Default settings apply.
slow b_adapt=2  direct=auto  me=umh   rc_lookahead=50   ref=5
subq=8
slower
b_adapt=2  direct=auto  me=umh  partitions=all rc_looka
head=60 ref=8 subq=9 trellis=2
veryslow
b_adapt=2 b_frames=8 direct=auto me=umh me_range=24 par
titions=all ref=16 subq=10 trellis=2 rc_lookahead=60
placebo
bframes=16  b_adapt=2  direct=auto  nofast_pskip me=tesa
me_range=24   partitions=all   rc_lookahead=60    ref=16
subq=10 trellis=2

tune=
Tune  the settings for a particular type of source or situation.
All tuned settings are  overridden  by  explicit  user-settings.
Multiple  tunings are separated by commas, but only one psy tun
ing can be used at a time.
film (psy tuning)
deblock=-1,-1 psy-rd=,0.15
animation (psy tuning)
b_frames={+2}       deblock=1,1       psy-rd=0.4:
aq_strength=0.6 ref={double if &gt;1 else 1}
grain (psy tuning)
aq_strength=0.5  nodct_decimate  deadzone_inter=6  dead
zone_intra=6 deblock=-2,-2 ipratio=1.1 pbratio=1.1  psy-
rd=,0.25 qcomp=0.8
stillimage (psy tuning)
aq_strength=1.2 deblock=-3,-3 psy-rd=2.0,0.7
psnr (psy tuning)
aq_mode=0 nopsy
ssim (psy tuning)
aq_mode=2 nopsy
fastdecode
nocabac nodeblock noweight_b weightp=0
zerolatency
bframes=0   force_cfr   rc_lookahead=0  sync_lookahead=0
sliced_threads

slow_firstpass
Disables the following faster  options  with  pass=1:  no_8x8dct
me=dia partitions=none ref=1 subq={2 if &gt;2 else unchanged} trel
lis=0 fast_pskip.  These settings significantly improve encoding
speed while having little or no impact on the quality of the fi
nal pass.
This option is implied with preset=placebo.

keyint=
Sets maximum interval between IDR-frames (default: 250).  Larger
values  save  bits, thus improve quality, at the cost of seeking
precision.  Unlike MPEG-1/2/4, H.264 does not  suffer  from  DCT
drift with large values of keyint.

keyint_min=
Sets  minimum  interval  between  IDR-frames  (default: 25).  If
scenecuts appear within this interval, they are still encoded as
I-frames, but do not start a new GOP.  In H.264, I-frames do not
necessarily bound a closed GOP because it is allowable for a  P-
frame  to  be predicted from more frames than just the one frame
before it (also see frameref).  Therefore, I-frames are not nec
essarily seekable.  IDR-frames restrict subsequent P-frames from
referring to any frame prior to the IDR-frame.

scenecut=
Controls how aggressively to  insert  extra  I-frames  (default:
40).   With  small  values  of  scenecut, the codec often has to
force an I-frame when it would exceed keyint.   Good  values  of
scenecut may find a better location for the I-frame.  Large val
ues use more I-frames than necessary,  thus  wasting  bits.   -1
disables scene-cut detection, so I-frames are inserted only once
every other keyint frames, even if a scene-cut  occurs  earlier.
This  is not recommended and wastes bitrate as scenecuts encoded
as P-frames are just as big as I-frames, but do  not  reset  the
"keyint counter".

(no)intra_refresh
Periodic intra block refresh instead of keyframes (default: dis
abled).  This option disables IDR-frames, and, instead,  uses  a
moving vertical bar of intra-coded blocks. This reduces compres
sion efficiency  but  benefits  low-latency  streaming  and  re
silience to packet loss.

frameref=
Number  of previous frames used as predictors in B- and P-frames
(default: 3).  This is effective in anime,  but  in  live-action
material  the improvements usually drop off very rapidly above 6
or so reference frames.  This has no effect on  decoding  speed,
but does increase the memory needed for decoding.  Some decoders
can only handle a maximum of 15 reference frames.

bframes=
maximum number of consecutive B-frames between I-  and  P-frames
(default: 3)

(no)b_adapt
Automatically  decides  when to use B-frames and how many, up to
the maximum specified above (default: on).  If  this  option  is
disabled, then the maximum number of B-frames is used.

b_bias=
Controls  the  decision  performed  by b_adapt.  A higher b_bias
produces more B-frames (default: 0).

(no)b_pyramid
Allows B-frames to be used as references  for  predicting  other
frames.   For example, consider 3 consecutive B-frames: I0 B1 B2
B3 P4.  Without this option, B-frames follow the same pattern as
MPEG-[124].   So they are coded in the order I0 P4 B1 B2 B3, and
all the B-frames are predicted from I0 and P4.   With  this  op
tion,  they  are  coded  as  I0  P4 B2 B1 B3.  B2 is the same as
above, but B1 is predicted from I0 and B2, and B3  is  predicted
from  B2 and P4.  This usually results in slightly improved com
pression, at almost no speed cost.  However, this is an  experi
mental  option:  it  is not fully tuned and may not always help.
Requires bframes &gt;= 2.  Disadvantage: increases  decoding  delay
to 2 frames.

(no)deblock
Use  deblocking  filter  (default: on).  As it takes very little
time compared to its quality gain, it is not recommended to dis
able it.

deblock=,
The  first  parameter  is  AlphaC0  (default:  0).  This adjusts
thresholds for the H.264 in-loop deblocking filter.  First, this
parameter  adjusts  the maximum amount of change that the filter
is allowed to cause on any one pixel.  Secondly, this  parameter
affects  the threshold for difference across the edge being fil
tered.  A positive value reduces blocking  artifacts  more,  but
will also smear details.
The second parameter is Beta (default: 0).  This affects the de
tail threshold.  Very detailed blocks are  not  filtered,  since
the smoothing caused by the filter would be more noticeable than
the original blocking.
The default behavior of the filter almost always achieves  opti
mal quality, so it is best to either leave it alone, or make on
ly small adjustments.  However, if your source material  already
has  some  blocking  or noise which you would like to remove, it
may be a good idea to turn it up a little bit.

(no)cabac
Use CABAC (Context-Adaptive Binary Arithmetic Coding)  (default:
on).  Slightly slows down encoding and decoding, but should save
10-15% bitrate.  Unless you are looking for decoding speed,  you
should not disable it.

qp_min= (ABR or two pass)
Minimum  quantizer,  10-30  seems to be a useful range (default:
10).

qp_max= (ABR or two pass)
maximum quantizer (default: 51)

qp_step= (ABR or two pass)
maximum value by which the quantizer may  be  incremented/decre
mented between frames (default: 4)

(no)mbtree
Enable  macroblock  tree  ratecontrol (default: enabled).  Use a
large lookahead to track temporal propagation of data and weight
quality accordingly.  In multi-pass mode, this writes to a sepa
rate stats file named .mbtree.

rc_lookahead=
Adjust the mbtree lookahead distance (default: 40).  Larger val
ues  will  be  slower and cause x264 to consume more memory, but
can yield higher quality.

ratetol= (ABR or two pass)
allowed variance in average bitrate (no particular  units)  (de
fault: 1.0)

vbv_maxrate= (ABR or two pass)
maximum local bitrate, in kbits/second (default: disabled)

vbv_bufsize= (ABR or two pass)
averaging  period for vbv_maxrate, in kbits (default: none, must
be specified if vbv_maxrate is enabled)

vbv_init= (ABR or two pass)
initial buffer occupancy, as a fraction of vbv_bufsize (default:
0.9)

ip_factor=
quantizer factor between I- and P-frames (default: 1.4)

pb_factor=
quantizer factor between P- and B-frames (default: 1.3)

qcomp= (ABR or two pass)
quantizer  compression  (default: 0.6).  A lower value makes the
bitrate more constant, while a higher value makes the  quantiza
tion parameter more constant.

cplx_blur= (two pass only)
Temporal  blur  of  the estimated frame complexity, before curve
compression (default: 20).  Lower  values  allow  the  quantizer
value  to  jump around more, higher values force it to vary more
smoothly.  cplx_blur ensures that each I-frame has quality  com
parable  to the following P-frames, and ensures that alternating
high and low complexity frames (e.g. low fps animation)  do  not
waste bits on fluctuating quantizer.

qblur= (two pass only)
Temporal  blur  of  the quantization parameter, after curve com
pression (default: 0.5).  Lower values allow the quantizer value
to jump around more, higher values force it to vary more smooth
ly.

zones=[/[/...]]
User specified quality  for  specific  parts  (ending,  credits,
...).  Each zone is ,, where op
tion may be
q=
quantizer
b=
bitrate multiplier
NOTE: The quantizer option is not strictly enforced.  It affects
only  the planning stage of ratecontrol, and is still subject to
overflow compensation and qp_min/qp_max.

direct_pred=
Determines the type of motion prediction used  for  direct  mac
roblocks in B-frames.
none Direct macroblocks are not used.
spatial
Motion vectors are extrapolated from neighboring blocks.
(default)
temporal
Motion vectors are extrapolated from  the  following  P-
frame.
auto The  codec selects between spatial and temporal for each
frame.
Spatial and temporal are approximately the same speed and  PSNR,
the  choice  between them depends on the video content.  Auto is
slightly better, but slower.  Auto is most effective  when  com
bined with multipass.  direct_pred=none is both slower and lower
quality.

weightp
Weighted P-frame prediction mode (default: 2).
0    disabled (fastest)
1    blind mode (slightly better quality)
2    smart mode (best)

(no)weight_b
Use weighted prediction in B-frames.  Without this option, bidi
rectionally predicted macroblocks give equal weight to each ref
erence frame.  With this option, the weights are  determined  by
the temporal position of the B-frame relative to the references.
Requires bframes &gt; 1.

partitions=
Enable    some    optional    macroblock     types     (default:
p8x8,b8x8,i8x8,i4x4).
p8x8 Enable types p16x8, p8x16, p8x8.
p4x4 Enable types p8x4, p4x8, p4x4.  p4x4 is recommended only
with subq &gt;= 5, and only at low resolutions.
b8x8 Enable types b16x8, b8x16, b8x8.
i8x8 Enable type i8x8.  i8x8 has no effect unless  8x8dct  is
enabled.
i4x4 Enable type i4x4.
all  Enable all of the above types.
none Disable all of the above types.
Regardless  of this option, macroblock types p16x16, b16x16, and
i16x16 are always enabled.
The idea is to find the type and size that best describe a  cer
tain  area  of the picture.  For example, a global pan is better
represented by 16x16 blocks, while small moving objects are bet
ter represented by smaller blocks.

(no)8x8dct
Adaptive  spatial  transform  size: allows macroblocks to choose
between 4x4 and 8x8 DCT.  Also allows the i8x8 macroblock  type.
Without this option, only 4x4 DCT is used.

me=
Select fullpixel motion estimation algorithm.
dia  diamond search, radius 1 (fast)
hex  hexagon search, radius 2 (default)
umh  uneven multi-hexagon search (slow)
esa  exhaustive search (very slow, and no better than umh)

me_range=
radius  of  exhaustive  or multi-hexagon motion search (default:
16)

subq=
Adjust subpel refinement quality.  This parameter controls qual
ity versus speed tradeoffs involved in the motion estimation de
cision process.  subq=5 can  compress  up  to  10%  better  than
subq=1.
0    Runs fullpixel precision motion estimation on all candi
date macroblock types.  Then selects the best type  with
SAD  metric  (faster than subq=1, not recommended unless
you're looking for ultra-fast encoding).
1    Does as 0, then refines the motion of that type to  fast
quarterpixel precision (fast).
2    Runs halfpixel precision motion estimation on all candi
date macroblock types.  Then selects the best type  with
SATD  metric.   Then  refines the motion of that type to
fast quarterpixel precision.
3    As 2, but uses a slower quarterpixel refinement.
4    Runs fast quarterpixel precision  motion  estimation  on
all  candidate  macroblock types.  Then selects the best
type with SATD metric.  Then finishes  the  quarterpixel
refinement for that type.
5    Runs  best quality quarterpixel precision motion estima
tion on all candidate macroblock types, before selecting
the best type.  Also refines the two motion vectors used
in bidirectional macroblocks with  SATD  metric,  rather
than  reusing  vectors  from  the  forward  and backward
searches.
6    Enables rate-distortion optimization of macroblock types
in I- and P-frames.
7    Enables rate-distortion optimization of macroblock types
in all frames (default).
8    Enables rate-distortion optimization of  motion  vectors
and intra prediction modes in I- and P-frames.
9    Enables  rate-distortion  optimization of motion vectors
and intra prediction modes in all frames (best).
In the above, "all candidates" does not exactly mean all enabled
types: 4x4, 4x8, 8x4 are tried only if 8x8 is better than 16x16.

(no)chroma_me
Takes into account chroma  information  during  subpixel  motion
search (default: enabled).  Requires subq&gt;=5.

(no)mixed_refs
Allows each 8x8 or 16x8 motion partition to independently select
a reference frame.  Without this option, a whole macroblock must
use the same reference.  Requires frameref&gt;1.

trellis= (cabac only)
rate-distortion optimal quantization
0    disabled
1    enabled only for the final encode (default)
2    enabled   during  all  mode  decisions  (slow,  requires
subq&gt;=6)

psy-rd=rd[,trell]
Sets the strength of the psychovisual optimization.
rd=
psy optimization strength (requires  subq&gt;=6)  (default:
1.0)
trell=
trellis (requires trellis, experimental) (default: 0.0)

(no)psy
Enable  psychovisual  optimizations  that hurt PSNR and SSIM but
ought to look better (default: enabled).

deadzone_inter=
Set the size of the inter luma quantization  deadzone  for  non-
trellis  quantization  (default: 21).  Lower values help to pre
serve fine details and film grain (typically useful for high bi
trate/quality encode), while higher values help filter out these
details to save bits that can  be  spent  again  on  other  mac
roblocks  and  frames  (typically useful for bitrate-starved en
codes).  It is recommended that  you  start  by  tweaking  dead
zone_intra before changing this parameter.

deadzone_intra=
Set  the  size  of the intra luma quantization deadzone for non-
trellis quantization (default: 11).  This option  has  the  same
effect  as  deadzone_inter  except that it affects intra frames.
It is recommended that you start by tweaking this parameter  be
fore changing deadzone_inter.

(no)fast_pskip
Performs  early  skip  detection in P-frames (default: enabled).
This usually improves speed at no cost,  but  it  can  sometimes
produce artifacts in areas with no details, like sky.

(no)dct_decimate
Eliminate  dct blocks in P-frames containing only a small single
coefficient (default: enabled).  This will remove some  details,
so  it  will  save bits that can be spent again on other frames,
hopefully raising overall subjective quality.  If you  are  com
pressing  non-anime  content with a high target bitrate, you may
want to disable this to preserve as much detail as possible.

nr=
Noise reduction, 0 means disabled.  100-1000 is a  useful  range
for  typical  content, but you may want to turn it up a bit more
for very noisy content (default: 0).  Given its small impact  on
speed, you might want to prefer to use this over filtering noise
away with video filters like denoise3d or hqdn3d.

chroma_qp_offset=
Use a different quantizer for chroma as compared to luma.   Use
ful values are in the range  (default: 0).

aq_mode=
Defines how adaptive quantization (AQ) distributes bits:
0    disabled
1    Avoid moving bits between frames.
2    Move bits between frames (by default).

aq_strength=
Controls  how  much  adaptive quantization (AQ) reduces blocking
and blurring in flat and textured areas (default: 1.0).  A value
of  0.5  will  lead to weak AQ and less details, when a value of
1.5 will lead to strong AQ and more details.

cqm=&lt;flat|jvt|&gt;
Either uses a predefined custom quantization matrix or  loads  a
JM format matrix file.
flat
Use the predefined flat 16 matrix (default).
jvt
Use the predefined JVT matrix.

Use the provided JM format matrix file.
NOTE: Windows CMD.EXE users may experience problems with parsing
the command line if they attempt to use all the CQM lists.  This
is  due to a command line length limitation.  In this case it is
recommended the lists be put into a JM format CQM file and load
ed as specified above.

cqm4iy= (also see cqm)
Custom  4x4  intra luminance matrix, given as a list of 16 comma
separated values in the 1-255 range.

cqm4ic= (also see cqm)
Custom 4x4 intra chrominance matrix, given as a list of 16 comma
separated values in the 1-255 range.

cqm4py= (also see cqm)
Custom  4x4  inter luminance matrix, given as a list of 16 comma
separated values in the 1-255 range.

cqm4pc= (also see cqm)
Custom 4x4 inter chrominance matrix, given as a list of 16 comma
separated values in the 1-255 range.

cqm8iy= (also see cqm)
Custom  8x8  intra luminance matrix, given as a list of 64 comma
separated values in the 1-255 range.

cqm8py= (also see cqm)
Custom 8x8 inter luminance matrix, given as a list of  64  comma
separated values in the 1-255 range.

level_idc=
Set  the  bitstream's  level  as defined by annex A of the H.264
standard (default: 51 - level 5.1).  This is  used  for  telling
the decoder what capabilities it needs to support.  Use this pa
rameter only if you know what it means, and you have a  need  to
set it.

threads=
Spawn  threads  to encode in parallel on multiple CPUs (default:
0).  This has a slight penalty to  compression  quality.   0  or
'auto'  tells  x264 to detect how many CPUs you have and pick an
appropriate number of threads.

(no)sliced_threads
Use slice-based threading (default:  disabled).   Unlike  normal
threading, this option adds no encoding latency, but is slightly
slower and less effective at compression.

slice_max_size=
Maximum slice size in bytes (default: 0).  A value of zero  dis
ables the maximum.

slice_max_mbs=
Maximum  slice  size  in  number of macroblocks (default: 0).  A
value of zero disables the maximum.

slices=
Maximum number of slices per frame (default: 0).  A value of ze
ro disables the maximum.

sync_lookahead=
Adjusts  the size of the threaded lookahead buffer (default: 0).
0 or 'auto' tells x264 to automatically determine buffer size.

(no)deterministic
Use only deterministic optimizations with multithreaded encoding
(default: enabled).

(no)global_header
Causes  SPS and PPS to appear only once, at the beginning of the
bitstream (default: disabled).  Some players, such as  the  Sony
PSP, require the use of this option.  The default behavior caus
es SPS and PPS to repeat prior to each IDR frame.

(no)interlaced
Treat the video content as interlaced.

(no)constrained_intra
Enable constrained intra prediction (default:  disabled).   This
significantly  reduces compression, but is required for the base
layer of SVC encodes.

(no)aud
Write access unit delimeters to the stream (default:  disabled).
Enable this only if your target container format requires access
unit delimiters.

overscan=
Include VUI overscan information in the  stream  (default:  dis
abled).  See doc/vui.txt in the x264 source code for more infor
mation.

videoformat=
Include VUI video format information  in  the  stream  (default:
disabled).   This is a purely informative setting for describing
the original source.  See doc/vui.txt in the  x264  source  code
for more information.

(no)fullrange
Include  VUI full range information in the stream (default: dis
abled).  Use this option if your source video is not range  lim
ited.  See doc/vui.txt in the x264 source code for more informa
tion.

colorprim=
Include color primaries information (default:  disabled).   This
can  be  used for color correction.  See doc/vui.txt in the x264
source code for more information.

transfer=
Include VUI transfer characteristics information in  the  stream
(default:  disabled).   This  can  be used for color correction.
See doc/vui.txt in the x264 source code for more information.

colormatrix=
Include VUI matrix coefficients in  the  stream  (default:  dis
abled).  This can be used for color correction.  See doc/vui.txt
in the x264 source code for more information.

chromaloc=
Include VUI chroma sample location  information  in  the  stream
(default: disabled).  Use this option to ensure alignment of the
chroma and luma  planes  after  color  space  conversions.   See
doc/vui.txt in the x264 source code for more information.

log=
Adjust the amount of logging info printed to the screen.
-1   none
0   Print errors only.
1   warnings
2   PSNR  and other analysis statistics when the encode fin
ishes (default)
3   PSNR, QP, frametype, size, and other statistics for  ev
ery frame

(no)psnr
Print signal-to-noise ratio statistics.
NOTE:  The  'Y',  'U', 'V', and 'Avg' PSNR fields in the summary
are not mathematically sound (they are  simply  the  average  of
per-frame  PSNRs).   They are kept only for comparison to the JM
reference codec.  For all other purposes, please use either  the
'Global' PSNR, or the per-frame PSNRs printed by log=3.

(no)ssim
Print  the Structural Similarity Metric results.  This is an al
ternative to PSNR, and may be better correlated  with  the  per
ceived quality of the compressed video.

(no)visualize
Enable x264 visualizations during encoding.  If the x264 on your
system supports it, a new window will be opened during  the  en
coding  process,  in  which  x264  will  attempt  to  present an
overview of how each frame gets encoded.  Each block type on the
visualized movie will be colored as follows:

dump_yuv=
Dump YUV frames to the specified file.  For debugging use.
red/pink
intra block
blue
inter block
green
skip block
yellow
B-block
This  feature  can  be  considered  experimental  and subject to
change.  In particular, it depends on x264 being  compiled  with
visualizations  enabled.   Note  that  as  of writing this, x264
pauses after encoding and visualizing each  frame,  waiting  for
the  user  to press a key, at which point the next frame will be
encoded.

xvfw (-xvfwopts)
Encoding with Video for Windows codecs is mostly  obsolete  unless  you
wish to encode to some obscure fringe codec.

codec=
The name of the binary codec file with which to encode.

compdata=
The name of the codec settings file (like firstpass.mcf) created
by vfw2menc.

MPEG muxer (-mpegopts)
The MPEG muxer can generate 5 types of streams, each of which has  rea
sonable default parameters that the user can override.  Generally, when
generating MPEG files, it is advisable to disable MEncoder's frame-skip
code  (see  -noskip, -mc as well as the harddup and softskip video fil
ters).

EXAMPLE:
format=mpeg2:tsaf:vbitrate=8000

format=
stream format (default: mpeg2).  pes1 and pes2 are  very  broken
formats  (no  pack header and no padding), but VDR uses them; do
not choose them unless you know exactly what you are doing.

size=
Pack size in bytes, do not change unless you know  exactly  what
you are doing (default: 2048).

muxrate=
Nominal  muxrate  in  kbit/s  used in the pack headers (default:
1800 kb/s).  Will be updated as necessary in the case  of  'for
mat=mpeg1' or 'mpeg2'.

tsaf
Sets  timestamps  on  all  frames, if possible; recommended when
format=dvd.  If dvdauthor complains with a message like "..audio
sector  out  of  range...", you probably did not enable this op
tion.

interleaving2
Uses a better algorithm to interleave audio and  video  packets,
based  on  the  principle that the muxer will always try to fill
the stream with the largest percentage of free space.

vdelay=
Initial video delay time, in milliseconds (default: 0),  use  it
if  you  want  to delay video with respect to audio.  It doesn't
work with :drop.

adelay=
Initial audio delay time, in milliseconds (default: 0),  use  it
if you want to delay audio with respect to video.

drop
When used with vdelay the muxer drops the part of audio that was
anticipated.

vwidth, vheight=
Set the video width and height when video is MPEG-1/2.

vpswidth, vpsheight=
Set pan and scan video width and height when video is MPEG-2.

vaspect=
Sets the display aspect ratio for MPEG-2 video.  Do not  use  it
on  MPEG-1  or  the  resulting  aspect  ratio will be completely
wrong.

vbitrate=
Sets the video bitrate in kbit/s for MPEG-1/2 video.

vframerate=
Sets the framerate for MPEG-1/2 video.  This option will be  ig
nored if used with the telecine option.

telecine
Enables 3:2 pulldown soft telecine mode: The muxer will make the
video stream look like it was encoded at 30000/1001 fps.  It on
ly  works  with  MPEG-2  video  when  the  output  framerate  is
24000/1001 fps, convert it with -ofps if necessary.   Any  other
framerate is incompatible with this option.

film2pal
Enables FILM to PAL and NTSC to PAL soft telecine mode: The mux
er will make the video stream look like it  was  encoded  at  25
fps.   It only works with MPEG-2 video when the output framerate
is 24000/1001 fps, convert it with -ofps if necessary.  Any oth
er framerate is incompatible with this option.

tele_src and tele_dest
Enables  arbitrary  telecining  using  Donand Graft's DGPulldown
code.  You need to specify the original and the desired  framer
ate;  the  muxer will make the video stream look like it was en
coded at the desired framerate.  It only works with MPEG-2 video
when  the  input  framerate is smaller than the output framerate
and the framerate increase is &lt;= 1.5.

EXAMPLE:
tele_src=25,tele_dest=30000/1001
PAL to NTSC telecining

vbuf_size=
Sets the size of the video decoder's buffer, expressed in  kilo
bytes.   Specify  it  only if the bitrate of the video stream is
too high for the chosen format and if you  know  perfectly  well
what  you are doing.  A too high value may lead to an unplayable
movie, depending on the player's capabilities.  When muxing HDTV
video a value of 400 should suffice.

abuf_size=
Sets  the size of the audio decoder's buffer, expressed in kilo
bytes.  The same principle as for vbuf_size applies.

FFmpeg libavformat demuxers (-lavfdopts)
analyzeduration=
Maximum length in seconds to analyze the stream properties.

format=
Force a specific libavformat demuxer.

o==[,=[,...]]
Pass AVOptions to libavformat demuxer.  Note, a  patch  to  make
the  o=  unneeded and pass all unknown options through the AVOp
tion system is welcome.  A full list of AVOptions can  be  found
in  the FFmpeg manual.  Note that some options may conflict with
MPlayer/MEncoder options.

EXAMPLE:
o=ignidx

probesize=
Maximum amount of data to probe during the detection phase.   In
the  case of MPEG-TS this value identifies the maximum number of
TS packets to scan.

cryptokey=
Encryption key the demuxer should use.  This is the  raw  binary
data of the key converted to a hexadecimal string.

FFmpeg libavformat muxers (-lavfopts) (also see -of lavf)
delay=
Currently  only  meaningful  for  MPEG[12]: Maximum allowed dis
tance, in seconds, between the reference  timer  of  the  output
stream  (SCR)  and  the  decoding timestamp (DTS) for any stream
present (demux to decode delay).  Default is 0.7 (as mandated by
the  standards  defined  by MPEG).  Higher values require larger
buffers and must not be used.

format=
Override which container format to mux into (default: autodetect
from output file extension).
mpg
MPEG-1 systems and MPEG-2 PS
asf
Advanced Streaming Format
avi
Audio Video Interleave file
wav
Waveform Audio
swf
Macromedia Flash
flv
Macromedia Flash video files
rm
RealAudio and RealVideo
au
SUN AU format
nut
NUT open container format (experimental)
mov
QuickTime
mp4
MPEG-4 format
ipod
MPEG-4  format with extra header flags required by Apple
iPod firmware
dv
Sony Digital Video container
matroska
Matroska

muxrate=
Nominal bitrate of the multiplex, in bits per second;  currently
it  is  meaningful  only  for MPEG[12].  Sometimes raising it is
necessary in order to avoid "buffer underflows".

o==[,=[,...]]
Pass AVOptions to libavformat muxer.  Note, a patch to make  the
o=  unneeded  and  pass all unknown options through the AVOption
system is welcome.  A full list of AVOptions can be found in the
FFmpeg  manual.   Note  that some options may conflict with MEn
coder options.

EXAMPLE:
o=packetsize=100

packetsize=
Size, expressed in bytes, of the unitary packet for  the  chosen
format.   When  muxing  to  MPEG[12] implementations the default
values are: 2324 for [S]VCD, 2048 for all others formats.

preload=
Currently only meaningful for  MPEG[12]:  Initial  distance,  in
seconds,  between the reference timer of the output stream (SCR)
and the decoding timestamp (DTS) for any stream  present  (demux
to decode delay).

ENVIRONMENT VARIABLES
There are a number of environment variables that can be used to control
the behavior of MPlayer and MEncoder.

MPLAYER_CHARSET (also see -msgcharset)
Convert console messages to the specified charset (default:  au
todetect).  A value of "noconv" means no conversion.

MPLAYER_HOME
Directory where MPlayer looks for user settings.

MPLAYER_VERBOSE (also see -v and -msglevel)
Set  the initial verbosity level across all message modules (de
fault: 0).  The resulting verbosity corresponds to that of  -ms
glevel 5 plus the value of MPLAYER_VERBOSE.

libaf:
LADSPA_PATH
If  LADSPA_PATH  is set, it searches for the specified file.  If
it is not set, you  must  supply  a  fully  specified  pathname.
FIXME: This is also mentioned in the ladspa section.

libdvdcss:
DVDCSS_CACHE
Specify  a  directory  in which to store title key values.  This
will speed up descrambling of DVDs which are in the cache.   The
DVDCSS_CACHE  directory  is  created if it does not exist, and a
subdirectory is created named after the DVD's title or  manufac
turing  date.  If DVDCSS_CACHE is not set or is empty, libdvdcss
will use the default value  which  is  "${HOME}/.dvdcss/"  under
Unix and "C:\Documents and Settings\$USER\Application Data\dvdc
ss\" under Win32.  The special value "off" disables caching.

DVDCSS_METHOD
Sets the authentication and  decryption  method  that  libdvdcss
will  use  to read scrambled discs.  Can be one of title, key or
disc.
key
is the default method.  libdvdcss will use a set of cal
culated  player  keys to try and get the disc key.  This
can fail if the drive does  not  recognize  any  of  the
player keys.
disc
is  a  fallback  method when key has failed.  Instead of
using player keys, libdvdcss will crack the disc key us
ing a brute force algorithm.  This process is CPU inten
sive and requires 64 MB of memory to store temporary da
ta.
title
is  the fallback when all other methods have failed.  It
does not rely on a key exchange with the DVD drive,  but
rather  uses a crypto attack to guess the title key.  On
rare cases this may fail because there is not enough en
crypted  data  on  the disc to perform a statistical at
tack, but in the other hand it is the only  way  to  de
crypt  a  DVD  stored  on a hard disc, or a DVD with the
wrong region on an RPC2 drive.

DVDCSS_RAW_DEVICE
Specify the raw device to use.  Exact usage will depend on  your
operating  system,  the  Linux  utility to set up raw devices is
raw(8) for instance.  Please note that on  most  operating  sys
tems,  using a raw device requires highly aligned buffers: Linux
requires a 2048 bytes alignment (which is the size of a DVD sec
tor).

DVDCSS_VERBOSE
Sets the libdvdcss verbosity level.
0    Outputs no messages at all.
1    Outputs error messages to stderr.
2    Outputs error messages and debug messages to stderr.

DVDREAD_NOKEYS
Skip retrieving all keys on startup.  Currently disabled.

HOME   FIXME: Document this.

libao2:
AO_SUN_DISABLE_SAMPLE_TIMING
FIXME: Document this.

AUDIODEV
FIXME: Document this.

AUDIOSERVER
Specifies the Network Audio System server to which the nas audio
output driver should connect and the transport  that  should  be
used.   If  unset DISPLAY is used instead.  The transport can be
one of  tcp  and  unix.   Syntax  is  tcp/:,
: or [unix]:.  The NAS
base port is 8000 and  is added to that.

EXAMPLES:
AUDIOSERVER=somehost:0
Connect to NAS server on somehost using default port and
transport.
AUDIOSERVER=tcp/somehost:8000
Connect  to NAS server on somehost listening on TCP port
8000.
AUDIOSERVER=(unix)?:0
Connect to NAS server instance 0 on localhost using unix
domain sockets.

DISPLAY
FIXME: Document this.

vidix:
VIDIX_CRT
FIXME: Document this.

VIDIXIVTVALPHA
Set  this  to  'disable'  in order to stop the VIDIX driver from
controlling alphablending settings.  You can then manipulate  it
yourself with 'ivtvfbctl'.

osdep:
TERM   FIXME: Document this.

libvo:
DISPLAY
FIXME: Document this.

FRAMEBUFFER
FIXME: Document this.

HOME   FIXME: Document this.

libmpdemux:
HOME   FIXME: Document this.

HOMEPATH
FIXME: Document this.

http_proxy
FIXME: Document this.

LOGNAME
FIXME: Document this.

USERPROFILE
FIXME: Document this.

GUI:
CHARSET
FIXME: Document this.

DISPLAY
FIXME: Document this.

HOME   FIXME: Document this.

libavformat:
AUDIO_FLIP_LEFT
FIXME: Document this.

BKTR_DEV
FIXME: Document this.

BKTR_FORMAT
FIXME: Document this.

BKTR_FREQUENCY
FIXME: Document this.

http_proxy
FIXME: Document this.

no_proxy
FIXME: Document this.

FILES
/usr/local/etc/mplayer/mplayer.conf
MPlayer system-wide settings

/usr/local/etc/mplayer/mencoder.conf
MEncoder system-wide settings

~/.mplayer/config
MPlayer user settings

~/.mplayer/mencoder.conf
MEncoder user settings

~/.mplayer/input.conf
input bindings (see '-input keylist' for the full list)

~/.mplayer/gui.conf
GUI configuration file

~/.mplayer/gui.pl
GUI playlist

~/.mplayer/font/
font  directory  (There  must be a font.desc file and files with
.RAW extension.)

~/.mplayer/DVDkeys/
cached CSS keys

Assuming that /path/to/movie.avi is played, MPlayer  searches  for  sub
files
in this order:
/path/to/movie.sub
~/.mplayer/sub/movie.sub

EXAMPLES OF MPLAYER USAGE
Quickstart Blu-ray playing:
mplayer br:////path/to/disc
mplayer br:// -bluray-device /path/to/disc

Quickstart DVD playing:
mplayer dvd://1

Play in Japanese with English subtitles:
mplayer dvd://1 -alang ja -slang en

Play only chapters 5, 6, 7:
mplayer dvd://1 -chapter 5-7

Play only titles 5, 6, 7:
mplayer dvd://5-7

Play a multiangle DVD:
mplayer dvd://1 -dvdangle 2

Play from a different DVD device:
mplayer dvd://1 -dvd-device /dev/dvd2

Play DVD video from a directory with VOB files:
mplayer dvd://1 -dvd-device /path/to/directory/

Copy a DVD title to hard disk, saving to file title1.vob :
mplayer dvd://1 -dumpstream -dumpfile title1.vob

Play a DVD with dvdnav from path /dev/sr1:
mplayer dvdnav:////dev/sr1

Stream from HTTP:
mplayer http://mplayer.hq/example.avi

Stream using RTSP:
mplayer rtsp://server.example.com/streamName

Convert subtitles to MPsub format:
mplayer dummy.avi -sub source.sub -dumpmpsub

Convert subtitles to MPsub format without watching the movie:
mplayer /dev/zero -rawvideo pal:fps=xx -demuxer rawvideo -vc null -vo null -noframedrop -benchmark -sub source.sub -dumpmpsub

input from standard V4L:
mplayer tv:// -tv driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv

Playback on Zoran cards (old style, deprecated):
mplayer -vo zr -vf scale=352:288 file.avi

Playback on Zoran cards (new style):
mplayer -vo zr2 -vf scale=352:288,zrmjpeg file.avi

Play DTS-CD with passthrough:
mplayer -ac hwdts -rawaudio format=0x2001 -cdrom-device /dev/cdrom cdda://
You can also use -afm hwac3 instead of -ac hwdts.  Adjust  '/dev/cdrom'
to  match  the CD-ROM device on your system.  If your external receiver
supports decoding raw DTS streams, you can directly play it via cdda://
without setting format, hwac3 or hwdts.

Play a 6-channel AAC file with only two speakers:
mplayer -rawaudio format=0xff -demuxer rawaudio -af pan=2:.32:.32:.39:.06:.06:.39:.17:-.17:-.17:.17:.33:.33 adts_he-aac160_51.aac
You  might  want to play a bit with the pan values (e.g multiply with a
value) to increase volume or avoid clipping.

checkerboard invert with geq filter:
mplayer -vf geq='128+(p(XY)-128)*(0.5-gt(mod(X/SW128)64))*(0.5-gt(mod(Y/SH128)64))*4'

EXAMPLES OF MENCODER USAGE
Encode DVD title #2, only selected chapters:
mencoder dvd://2 -chapter 10-15 -o title2.avi -oac copy -ovc lavc -lavcopts vcodec=mpeg4

Encode DVD title #2, resizing to 640x480:
mencoder dvd://2 -vf scale=640:480 -o title2.avi -oac copy -ovc lavc -lavcopts vcodec=mpeg4

Encode DVD title #2, resizing to 512xHHH (keep aspect ratio):
mencoder dvd://2 -vf scale -zoom -xy 512 -o title2.avi -oac copy -ovc lavc -lavcopts vcodec=mpeg4

The same, but with bitrate set to 1800kbit and optimized macroblocks:
mencoder dvd://2 -o title2.avi -oac copy -ovc lavc -lavcopts vcodec=mpeg4:mbd=1:vbitrate=1800

The same, but with MJPEG compression:
mencoder dvd://2 -o title2.avi -oac copy -ovc lavc -lavcopts vcodec=mjpeg:mbd=1:vbitrate=1800

Encode all *.jpg files in the current directory:
mencoder "mf://*.jpg" -mf fps=25 -o output.avi -ovc lavc -lavcopts vcodec=mpeg4

Encode from a tuner (specify a format with -vf format):
mencoder -tv driver=v4l:width=640:height=480 tv:// -o tv.avi -ovc raw

Encode from a pipe:
rar p test-SVCD.rar | mencoder -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=800 -ofps 24 -

BUGS
Don't panic.  If you find one, report it to us, but  please  make  sure
you  have  read all of the documentation first.  Also look out for smi
leys. :) Many bugs are the result of incorrect setup or  parameter  us
age.  The bug reporting section of the documentation (http://www.mplay
erhq.hu/DOCS/HTML/en/bugreports.html) explains how to create useful bug
reports.

AUTHORS
MPlayer  was initially written by Arpad Gereoffy.  See the AUTHORS file
for a list of some of the many other contributors.

MPlayer is (C) 2000-2009 The MPlayer Team

This man page was written mainly by Gabucino, Jonas Jermann  and  Diego
Biurrun.   It  is maintained by Diego Biurrun.  Please send mails about
it to the MPlayer-DOCS mailing list.  Translation specific mails belong
on the MPlayer-translations mailing list.



The MPlayer Project               2009-03-25                        MPlayer(1)

0 comments :: mplayer

Post a Comment