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 -> 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 -> stronger filtering
: larger -> stronger filtering
: larger -> 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 & 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 & 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 &
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 & 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 & 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 >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>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 >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 <=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 > 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>b, 0 otherwise
lt(a,b)
is 1 if a<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 & DC are most important, losing them looks far worse than
losing the AC and the 1. & 2. partition. (MV & DC) are far
smaller than the 3. partition (AC) meaning that errors will hit
the AC partition much more often than the MV & 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 >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 & 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>0
main no8x8dct cqm=flat qp>0
high qp>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 >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 >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 >= 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 > 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 >= 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>=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>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>=6)
psy-rd=rd[,trell]
Sets the strength of the psychovisual optimization.
rd=
psy optimization strength (requires subq>=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=<flat|jvt|>
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 <= 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