Video Formats Information
Video Formats Information
Video Disc Formats
Video Disc Formats
Linux Video Programs Comparison
Linux Video Programs Comparison
Essential Linux Video Apps
Essential Linux Video Apps
Linux Powered DVD Production Guide
Linux DVD Production Guide
DVD Ripping With Mencoder
DVD Ripping With Mencoder
Back to Linux Information Pages
Linux Information Pages

Back to Video Main Page

Using MEncoder to rip DVDs


MEncoder is what I use to rip and encode DVDs. It comes with MPlayer and requires MPlayer to operate.
It will decode anything that MPlayer will play, which is nearly every format in existence, and it writes to AVI files.
It encodes with Raw RGB24 and the lavc codecs from ffmpeg. NOTE: Your particular version of MEncoder may encode with other codecs such as divx4linux, XviD, Nuppelvideo, libdv, raw YUV (4:2:0), or Quicktime Sorenson Video, it just depends on the libraries available when MEncoder was compiled. 90% of the time you will want to use the lavc codecs, as they are the best quality and support many options.


I have written a simple script to automate ripping with MEncoder. It can be run with the command:

sh dvdripper.sh

If you don't specify any options, it will report back with the proper syntax.
You may download the script here: dvdripper.sh

Here are some of the most used MEncoder options:

-vop    Video options: including scale[=w:h], crop[=w:h:x:y], flip, denoise3d[=luma:chroma:time]  
               e.g.:   mplayer -vop scale=640:480,flip video.avi

-o        Output filename (MEncoder)  e.g.:   mencoder -o output.avi input.avi

-ovc    Output video codec (MEncoder): can be lavc, rawrgb, rawyuv, copy, help, etc. (help displays available codecs)

-oac    Output audio codec (MEncoder): can be mp3lame, lavc, pcm, copy, help, etc. (help displays available codecs)

-oac copy, -ovc copy copy the source stream without re-encoding

-lameopts    Options for lame mp3 encoding if mp3lame is selected as the audio codec
  ***see the man page for options lameopts manpage section
               e.g.:   mencoder -o output.avi -ovc rawrgb -oac mp3lame -lameopts cbr:br=56:mode=3:vol=6 input.avi

-lavcopts    Options for lavc video encoding if lavc is selected as the video codec  
***see the man page for options
 lavcopts manpage section
               e.g.:   mencoder -o output.avi -oac pcm -ovc lavc \
          -lavcopts vcodec=mpeg4:v4mv:vhq:vqmax=5:vbitrate=1200 input.avi




Whenever you need information or help on a Linux command, usually you can obtain it by running the man command; i.e.  man mplayer, man ls, man xterm, etc. For this reason I have tacked on the MPlayer/MEncoder man page to the end of this page after the examples.


Examples:
mencoder dvd://7 -o stolenjools.avi -vop scale -zoom -xy 640 -oac mp3lame -lameopts cbr:br=40:vol=5:mode=3 -ovc lavc -lavcopts vcodec=mpeg4:vhq:v4mv:vbitrate=720
Encodes title 7 of DVD to stolenjools.avi; scales the video to 640 pixels wide and keeps the aspect ratio; uses lavc mpeg4 codec for the output with high-quality and 4MotionVector on at a bitrate of about 720kb/s; encodes audio to mp3 with lame in mono mode at a bitrate of 40kb/s and increases the volume by 50%.

mencoder -o smallvideo.avi -vop scale -zoom -xy 352 -oac mp3lame -lameopts cbr:br=64 -ovc lavc -lavcopts vcodec=mpeg2video:vhq:vqmax=4 bigvideo.mpg
Encodes file bigvideo.mpg to smallvideo.avi; scales the video to 352 and keeps aspect ratio; uses lavc mpeg2 video codec with high quality setting and with a quantizer (video quality) setting of 2-4; encodes audio to joint-stereo mp3 at 64kbps.

mencoder -o rawvideo.avi -vop scale=512:384 -oac copy -ovc rawrgb video.mov
Encodes file video.mov to file rawvideo.avi in Raw RGB format video at 512x384 resolution and takes the source audio from video.mov and copies it into the rawvideo.avi file.

There are also more examples at the end of the man page:

Manpage Examples

Below is the manpage for MPlayer and Mencoder



MPlayer

NAME
SYNOPSIS
DESCRIPTION
KEYBOARD CONTROL
USAGE
GENERAL OPTIONS
PLAYER OPTIONS (MPLAYER ONLY)
DEMUXER/STREAM OPTIONS
OSD/SUB OPTIONS
AUDIO OUTPUT OPTIONS (MPLAYER ONLY)
VIDEO OUTPUT OPTIONS (MPLAYER ONLY)
DECODING/FILTERING OPTIONS
VIDEO FILTERS
VIDEO OUTPUT DRIVERS (MPLAYER ONLY)
GENERAL ENCODING OPTIONS (MENCODER ONLY)
CODEC SPECIFIC ENCODING OPTIONS (MENCODER ONLY)
FILES
EXAMPLES
BUGS
AUTHORS
STANDARD DISCLAIMER

NAME

mplayer - Movie Player for Linux
mencoder - Movie Encoder for Linux

SYNOPSIS

mplayer [options] [ file | URL | playlist | - ]
mplayer [global options] file1 [specific options] [file2] [specific options]
mplayer [global options] {group of files and options} [group specific options]
mplayer [mms[t]|http|http_proxy|rt[s]p|ftp]:// [user:passwd@]URL[:port] [options]
mplayer dvd://title [options]
mplayer vcd://track[/device] [options]
mplayer tv://[channel] [options]
mplayer mf://filemask [options]
mplayer [cdda|cddb]://track[:speed][/device] [options]
mplayer cue://file[:track] [options]
mplayer sdp://file [options]
mplayer mpst://host[:port]/URL [options]
mplayer dvb://channel [options]
mencoder [options] [ file | URL | - ] [-o file]
gmplayer
[options] [-skin skin]

DESCRIPTION

mplayer is a movie player for LINUX (runs on many other Unices and non-x86 CPUs, see the documentation). It plays most MPEG/VOB, AVI, ASF/WMA/WMV, RM, QT/MOV/MP4, OGG/OGM, VIVO, FLI, NuppelVideo, yuv4mpeg, FILM and RoQ files, sup- ported by many native, XAnim, and Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, 3ivx, DivX 3/4/5 and even WMV movies, too (without using the avifile library).
Another great feature of MPlayer is the wide range of sup- ported output drivers. It works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, AAlib, libcaca, DirectFB, Quartz, but you can also use GGI, SDL (and all their drivers), VESA (on every VESA compatible card, even without X11), some low level card-specific drivers (for Matrox, 3Dfx and ATI) and some hardware MPEG decoder boards, such as the Siemens DVB, DXR2 and DXR3/Hollywood+. Most of them sup- port software or hardware scaling, so you can enjoy movies in fullscreen.
MPlayer has an onscreen display (OSD) for status informa- tion, nice big antialiased shaded subtitles and visual feedback for keyboard controls. European/ISO 8859-1,2 (Hungarian, English, Czech, etc), Cyrillic and Korean fonts are supported along with 11 subtitle formats (Mi- croDVD, SubRip, SubViewer, Sami, VPlayer, RT, SSA, AQTi- tle, JACOsub, PJS and our own: MPsub) and DVD subtitles (SPU streams, VobSub and Closed Captions).
mencoder (MPlayer's Movie Encoder) is a simple movie en- coder, designed to encode MPlayer-playable movies (see above) to other MPlayer-playable formats (see below). It encodes to DivX4, XviD, one of the libavcodec codecs and PCM/MP3/VBRMP3 audio in 1, 2 or 3 passes. Furthermore it has stream copying abilities, a powerful plugin system (crop, expand, flip, postprocess, rotate, scale, noise, rgb/yuv conversion) and more.
gmplayer is MPlayer with a graphical user interface. It has the same options as MPlayer.
Also see the HTML documentation!

KEYBOARD CONTROL

MPlayer has a fully configurable, command driven, control layer which allow you to control MPlayer using keyboard, mouse, joystick or remote control (using lirc).
The default configuration file for the input system is ~/.mplayer/input.conf but it can be overriden using the -input conf option.
These keys may/may not work, depending on your video out- put driver.
general control
<- and ->
seek backward/forward 10 seconds
up and down
seek backward/forward 1 minute
pgup and pgdown
seek backward/forward 10 minutes
< and >
backward/forward in playlist
HOME and END
go to next/previous playtree entry in the parent list
INS and DEL
go to next/previous alternative source (asx playlist only)
p / SPACE
pause movie (any key unpauses)
q / ESC
stop playing and quit
+ and -
adjust audio delay by +/- 0.1 second
/ and *
decrease/increase volume
9 and 0
decrease/increase volume
m
mute sound
f
toggle fullscreen
T
toggle stay-on-top. Supported by drivers which use X11, except SDL, as well as di- rectx and gl2 under Windows.
w and e
decrease/increase panscan range
o
toggle between OSD states: none / seek / seek+timer
d
toggle between frame dropping states: none / skip display / skip decoding (see -frame- drop and -hardframedrop)
v
toggle subtitle visibility
j
switch subtitle language
F
toggle display of "forced subtitles"
a
toggle subtitle aligment: top/middle/bottom
z and x
adjust subtitle delay by +/- 0.1 second
r and t
adjust subtitle position
i
set EDL mark
(The following keys are valid only when using a hardware accelerated video output (xv, (x)vidix, (x)mga, etc), or the software equalizer filter (-vf eq or -vf eq2).
1 and 2
adjust contrast
3 and 4
adjust brightness
5 and 6
adjust hue
7 and 8
adjust saturation
GUI keyboard control
ENTER
start playing
s
stop playing
l
load file
c
skin browser
p
toggle playlist
TV input control
h and k
select previous/next channel
n
change norm
u
change channel list

USAGE

Every 'flag' option has a 'noflag' counterpart, e.g. the opposite of the -fs option is -nofs.
You can put all of the options in a configuration file which will be read every time MPlayer is run. The sys- tem-wide configuration file 'mplayer.conf' is in your con- figuration directory (e.g. /etc/mplayer or /usr/local/etc/ mplayer), the user specific one is '~/.mplayer/config'. User specific options override system-wide options and op- tions given on the command line override either. The syn- tax of the configuration files is 'option=<value>', every- thing after a '#' is considered a comment. Options that work without values can be enabled by setting them to 'yes' or '1' and disabled by setting them to 'no' or '0'. Even suboptions can be specified in this way.
EXAMPLE:
# Use Matrox driver by default.
vo=xmga
# I love practicing handstands while watching videos.
flip=yes
# Decode/encode multiple files from png,
# start with mf://filemask
mf=type=png:fps=25
# Eerie negative images are cool.
vf=eq2=1.0:-0.8
You can also write file-specific configuration files. If you wish to have a configuration file for a file called 'movie.avi', create a file named 'movie.avi.conf' with the file-specific options in it and put it in ~/.mplayer or in the same directory as the file.

GENERAL OPTIONS

-codecs-file <filename>
Use the specified file instead of system wide in- stalled or builtin codecs.conf. See also -afm, -ac, -vfm and -vc.
-include <configuration file>
Specify configuration file to be parsed after the default ones.
-quiet
With this option the status line (i.e. A: 0.7 V: 0.6 A-V: 0.068 ...) will not be displayed. Par- ticularly useful on slow terminals or broken ones that do not properly handle carriage return (i.e. r).
-v, -verbose
Increment verbose level (more -v means more ver- bosity).
0
only some informational output (default)
1
some basic debug infos, avi header, func- tion values (init debug)
2
print avi indexes, chunk inputs, more debug infos (player debug)
3
prints everything related to input parsers (parser debug)

PLAYER OPTIONS (MPLAYER ONLY)

-autoq <quality> (use with -vf [s]pp)
Dynamically changes the level of postprocessing de- pending on available spare CPU time. The number you specify will be the maximum level used. Usual- ly you can use some big number. You have to use -vf [s]pp without parameters in order to use this.
-autosync <factor>
Gradually adjusts the A/V sync based on audio delay measurements. Specifying -autosync 0, the default, will cause frame timing to be based entirely on au- dio delay measurements. Specifying -autosync 1 will do the same, but will subtly change the A/V correction algorithm used. An uneven video frame rate in a movie which plays fine with -nosound can often be helped by setting this to an integer value greater than 1. The higher the value, the closer the timing will be to -nosound. Try -autosync 30 to smooth out problems with sound drivers which do not implement a perfect audio delay measurement. With this value, if large A/V sync offsets occur, they will only take about 1 or 2 seconds to settle out. This delay in reaction time to sudden A/V offsets should be the only side-effect of turning this option on, for all sound drivers.
-benchmark
Prints some statistics on CPU usage and dropped frames at the end. Use in combination with -nosound and -vo null for benchmarking only the video codec.
NOTE:
With this option MPlayer will also ignore frame duration when playing only video (you can think of that as infinite fps).
-colorkey <number>
Changes the colorkey to an RGB value of your choice. 0x000000 is black and 0xffffff is white. Only supported by the cvidix, fbdev, svga, vesa, winvidix, xmga, xvidix and xover video out drivers.
-nocolorkey
Disables colorkeying. Only supported by the cvidix, fbdev, svga, vesa, winvidix, xmga, xvidix and xover video out drivers.
-edl <filename>
Enables edit decision list (EDL) actions during playback. Video will be skipped over and audio will be muted and unmuted according to the entries in the given file. See DOCS/HTML/en/edl.html for details on how to use this.
-edlout <filename>
Creates a new file and writes edit decision list (EDL) records to that file. During playback, when the user hits 'i', an entry to skip over the last two seconds of playback will be written to the file. This provides a starting point from which the user can fine-tune EDL entries later. See DOCS/HTML/en/edl.html for details.
-enqueue (GUI only)
Enqueue files given on the command line in the playlist instead of playing them immediately.
-fixed-vo (BETA CODE!)
Enforces a fixed video system for multiple files (one (un)initialisation for all files). Therefore only one window will be opened for all files. Cur- rently the following drivers are fixed-vo compli- ant: gl2, mga, svga, x11, xmga, xv and xvidix.
-framedrop (also see -hardframedrop)
Skip displaying some frames to maintain A/V sync on slow systems. Video filters are not applied to such frames. For B frames even decoding is skipped completely.
-h, -help, --help
Show short summary of options.
-hardframedrop
More intense frame dropping (breaks decoding). Leads to image distortion!
-identify
Show file parameters in easy parsable format. The wrapper script TOOLS/midentify suppresses the other MPlayer output and (hopefully) shellescapes the filenames.
-input <commands>
This option can be used to configure certain parts of the input system. Paths are relative to ~/ .mplayer/.
NOTE:
Autorepeat is currently only supported by joysticks.
Available commands are:
conf=<file>
Read alternative input.conf. If given without pathname, ~/.mplayer is assumed.
ar-delay
Delay in msec before we start to autorepeat a key (0 to disable).
ar-rate
How many key presses per second when we au- torepeat.
keylist
Prints all keys that can be bound.
cmdlist
Prints all commands that can be bound.
js-dev
Specifies the joystick device to use (de- fault is /dev/input/js0).
file
Read commands from the given file. Mostly useful with a fifo.
NOTE:
When the given file is a fifo MPlayer opens both ends so you can do several 'echo "seek 10" > mp_pipe' and the pipe will stay valid.
-lircconf <file>
Specifies a configuration file for LIRC (Linux In- frared Remote Control, see http://www.lirc.org) if you don't like the default ~/.lircrc.
-list-options
Prints out all the available options.
-loop <number>
Loops movie playback <number> times. 0 means for- ever.
-menu (BETA CODE)
Turn on OSD menu support.
-menu-cfg <file> (BETA CODE)
Use an alternative menu.conf.
-menu-root <value> (BETA CODE)
Specify the main menu.
-nojoystick
Turns off joystick support. Default is on, if com- piled in.
-nolirc
Turns off LIRC support.
-nomouseinput
Disable mouse button press/release input (mozplay- erxp's context menu relies on this option).
-nortc
Turns off usage of the Linux RTC (real-time clock - /dev/rtc) as timing mechanism.
-playlist <file>
Play files according to a playlist (1 file per row or Winamp or ASX format).
NOTE:
This option is considered an entry so options found after it will apply only to the elements of this playlist.
-really-quiet
Display even less output and status messages.
-shuffle
Play files in random order.
-skin <skin directory> (GUI only)
Load skin from the given directory (WITHOUT path name).
EXAMPLE:
-skin fittyfene
tries Skin/fittyfene. It first checks /usr/local/share/mplayer/ and afterwards ~/.mplayer/.
-slave
This option switches on slave mode. This is in- tended for use of MPlayer as a backend to other programs. Instead of intercepting keyboard events, MPlayer will read simplistic command lines from its stdin.
-softsleep
Uses high quality software timers. As precise as the RTC without requiring special privileges. Comes at the price of higher CPU consumption.
-speed <0.01-100>
Set playback speed rate.
-sstep <sec>
Specifies seconds between displayed frames. Useful for slideshows.
-use-stdin
The standard input (aka. stdin) will be used to read data instead of key events. If you open /dev/stdin (or the equivalent on your system), use stdin in a playlist or intend to read from stdin later on via the loadfile or loadlist commands you need this option.

DEMUXER/STREAM OPTIONS

-aid <id> (also see -alang option)
Select audio channel [MPEG: 0-31 AVI/OGM: 1-99 ASF/ RM: 0-127 VOB(AC3): 128-159 VOB(LPCM): 160-191 MPEG-TS 17-8190]. MPlayer prints the available IDs when running in verbose (-v) mode. When playing an MPEG-TS stream, MPlayer/Mencoder will use the first program (if present) with the chosen audio stream.
-alang <two letter country code> (also see -aid option)
Works only for DVD playback. It selects the DVD audio language and always tries to play audio streams whose language matches the given code. For the list of available languages, use with the -v option and look at the output.
EXAMPLE:
-alang hu,en
Plays Hungarian and falls back to English if Hungarian is not available.
-audio-demuxer <number> (-audiofile only)
Force audio demuxer type for -audiofile. Give the demuxer ID as defined in libmpdemux/demuxer.h. Use -audio-demuxer 17 to force .mp3 detection.
-audiofile <filename>
Play audio from an external file (WAV, MP3 or Ogg Vorbis) while viewing a movie.
-audiofile-cache <kBytes>
Enables caching for the stream used by -audiofile, using the specified amount of memory.
-bandwidth <value>
Specify the maximum bandwidth for network streaming (for servers that are able to send content in dif- ferent bitrates). Useful if you want to watch live streamed media behind a slow connection.
-cdrom-device <path to device>
Override default CDROM drive name /dev/cdrom.
-cache <kBytes>
This option specifies how much memory (in kBytes) to use when precaching a file/URL. Especially use- ful on slow media (default is -nocache).
-cdda <option1:option2>
This option can be used to tune the CD Audio read- ing feature of MPlayer.
Available options are:
speed=<value>
set CD spin speed
paranoia=<0-2>
set paranoia level
0: disable checking
1: overlap checking only (default)
2: full data correction and verification
generic-dev=<value>
use specified generic SCSI device
sector-size=<value>
atomic read size
overlap=<value>
force minimum overlap search during verifi- cation to <value> sectors.
toc-bias
Assume that the beginning offset of track 1 as reported in the TOC will be addressed as LBA 0. Some Toshiba drives need this for getting track boundaries correct.
toc-offset=<value>
Add <value> sectors to the values reported when addressing tracks. May be negative.
(no)skip
(never) accept imperfect data reconstruc- tion.
-channels <number>
Change the number of playback channels, defaults to '2' if not specified. If the number of output channels is bigger than the number of input chan- nels empty channels are inserted (unless mixing from mono to stereo, then the mono channel is re- peated in both output channels). If the number of output channels is smaller than the number of input channels, results depend on the audio decoder (-afm). MPlayer asks the decoder to decode the au- dio into as many channels as specified. Now it's up to the decoder to fulfill the requirement. If the decoder outputs more channels than requested, the exceeding channels are truncated. This is usu- ally only important when playing videos with AC3 audio (like DVDs). In that case liba52 does the decoding by default and correctly downmixes the au- dio into the requested number of channels.
NOTE:
This option is honored by codecs (AC3 only) filters (surround) and ao drivers (OSS at least).
Available options are:
2
stereo
4
surround
6
full 5.1
-chapter <chapter id>[-<end chapter id>]
Specify which chapter to start playing at. Option- ally specify which chapter to end playing at (de- fault: 1). Examples can be found below.
-cookies
Send cookies when making HTTP requests.
-cookies-file <filename>
Read HTTP cookies from this file. The file is as- sumed to be in Netscape format. If you use this option, MPlayer will not look for cookies in ~/.netscape/ and ~/.mozilla/.
-demuxer <number>
Force demuxer type. Give the demuxer ID as defined in libmpdemux/demuxer.h. Use -demuxer 17 to force .mp3 detection.
-dumpaudio (MPLAYER only)
Dumps raw compressed audio stream to ./stream.dump (useful with mpeg/ac3).
-dumpfile <filename> (MPLAYER only)
Specify which file MPlayer should dump to. Should be used together with -dumpaudio / -dumpvideo / -dumpstream.
-dumpstream (MPLAYER only)
Dumps the raw stream to ./stream.dump. Useful when ripping from DVD or network.
-dumpvideo (MPLAYER only)
Dump raw compressed video stream to ./stream.dump (not very usable).
-dvbin <options>
Pass the following parameters to the DVB input mod- ule, in order to override the default ones:
card=<1-4>
Specifies using card number 1-4 (default: 1).
file=<file>
Instructs MPlayer to read the channels list from <file>. Default is ~/.mplayer/chan- nels.conf.{sat,ter,cbl} (based on your card type) or ~/.mplayer/channels.conf as a last resort.
-dvd-device <path to device>
Override default DVD device name /dev/dvd.
-dvdangle <angle id>
Some DVD discs contain scenes that can be viewed from multiple angles. Here you can tell MPlayer which angles to use (default: 1). Examples can be found below.
-forceidx
Force rebuilding of INDEX. Useful for files with broken index (desyncs, etc). Seeking will be pos- sible. You can fix the index permanently with MEn- coder (see the documentation).
NOTE:
You can only use this option if the underly- ing media supports seeking (i.e. not with stdin, pipe, etc).
-fps <value>
Override video framerate (if value is wrong/missing in the header) (float number).
-frames <number>
Play/convert only first <number> frames, then quit.
-hr-mp3-seek (MP3 only)
Hi-res mp3 seeking. Default is: enabled when play- ing from external MP3 file, as we need to seek to the very exact position to keep A/V sync. It can be slow especially when seeking backwards - it has to rewind to the beginning to find the exact frame.
-idx (also see -forceidx)
Rebuilds INDEX of the AVI if no INDEX was found, thus allowing seeking. Useful with broken/incom- plete downloads, or badly created AVIs.
NOTE:
You can only use this option if the underly- ing media supports seeking (i.e. not with stdin, pipe, etc).
-ipv4-only-proxy
Skip the proxy for IPv6 addresses. It will still be used for IPv4 connections.
-loadidx <filename>
The file name from which to read the video INDEX data, as saved by -saveidx. MPlayer will read the index from filename and use this data for seeking. This data will override any index data contained in the AVI itself. Further, MPlayer won't prevent you from loading an index file generated from a differ- ent AVI, but this is sure to cause unfavorable re- sults.
NOTE:
This option is obsolete, because MPlayer has OpenDML support.
-mc <seconds/frame>
Maximum A-V sync correction per frame (in seconds).
-mf <option1:option2:...>
Used when decoding from multiple PNG or JPEG files.
Available options are:
w=<value>
width of the output (autodetect)
h=<value>
height of the output (autodetect)
fps=<value>
fps of the output (default: 25)
type=<value>
type of input files (available types: jpeg, png, tga, sgi)
-ni (AVI only)
Force usage of non-interleaved AVI parser (fixes playing of some bad AVI files).
-nobps (AVI only)
Do not use average byte/sec value for A-V sync (AVI). Helps with some AVI files with broken head- er.
-noextbased
Disables filename-extension based demuxer selec- tion. By default, when file type (demuxer) cannot be detected reliably (the file has no header or it is not reliable enough), the filename extension is used to select demuxer. It always falls back to content-based demuxer selection.
-passwd <password> (see -user option too)
Specify password for http authentication.
-prefer-ipv4
Use IPv4 on network connections. Falls back to IPv6 automatically.
-prefer-ipv6
Use IPv6 on network connections. Falls back to IPv4 automatically.
-rawaudio <option1:option2:...>
This option lets you play raw audio files. It may also be used to play audio CDs which are not 44KHz 16Bit stereo.
Available options are:
on
use raw audio demuxer
channels=<value>
number of channels
rate=<value>
rate in samples per second
samplesize=<value>
sample size in byte
format=<value>
fourcc in hex
-rawvideo <option1:option2:...>
This option lets you play raw video files.
Available options are:
on
use raw video demuxer
fps=<value>
rate in frames per second, default 25.0
sqcif|qcif|cif|4cif|pal|ntsc
set standard image size
w=<value>
image width in pixels
h=<value>
image height in pixels
y420|yv12|yuy2|y8
set colorspace
format=<value>
colorspace (fourcc) in hex
size=<value>
frame size in Bytes
-rtsp-stream-over-tcp
Used with 'rtsp://' URLs to specify that the re- sulting incoming RTP and RTCP packets be streamed over TCP (using the same TCP connection as RTSP). This option may be useful if you have a broken In- ternet connection that does not pass incoming UDP packets (see http://www.live.com/mplayer/).
-saveidx <filename>
Force rebuilding of INDEX and output to a separate file specified by the argument filename. Currently this only works with AVI files.
NOTE:
This option is obsolete, because MPlayer has OpenDML support.
-sb <byte position> (see -ss option too)
Seek to byte position. Useful for playback from CDROM images / .VOB files with junk at the begin- ning.
-srate <Hz>
Selects the given output sampling rate, resampling if necessary. MEncoder passes this value to lame for resampling.
-ss <time> (see -sb option too)
Seek to given time position.
EXAMPLE:
-ss 56
seeks to 56 seconds
-ss 01:10:00
seeks to 1 hour 10 min
-tskeepbroken
Tells MPlayer not to discard TS packets reported as broken in the stream. Sometimes needed to play corrupted MPEG-TS files.
-tsprog <1-65534>
When playing an MPEG-TS stream, you can specify with this option which program (if present) you want to play. Can be used with -vid and -aid.
-tsprobe <byte position>
When playing an MPEG-TS stream, this option lets you specify how many bytes in the stream you want MPlayer to search for the desired audio and video pids.
-tv <option1:option2:...>
This option tunes various properties of the TV cap- ture module. For watching TV with MPlayer, use 'tv://' or 'tv://<channel_number>' or even 'tv://<channel_name> (see option channels for chan- nel_name below) as a movie URL.
NOTE:
MPlayer doesn't accept colons so type dots instead in the device ID (e.g. hw.0,0 instead of hw:0,0).
Be advised that although you can select any sam- plerate when using ALSA, the LAME audio codec is able to encode only the 'standard' samplerates. You'll get an .avi file with no sound when you choose an odd samplerate and use this codec.
Available options are:
noaudio
no sound
driver=<value>
available: dummy, v4l, v4l2, bsdbt848
device=<value>
Specify other device than the default /dev/ video0.
input=<value>
Specify other input than the default 0 (Television) (see output for a list)
freq=<value>
Specify the frequency to set the tuner to (e.g. 511.250). Not compatible with chan- nels parameter.
outfmt=<value>
Specify the output format of the tuner with a preset value supported by the V4L driver (yv12, rgb32, rgb24, rgb16, rgb15, uyvy, yuy2, i420) or an arbitrary format given as hex value. Try outfmt=help for a list of all available formats.
width=<value>
width of the output window
height=<value>
height of the output window
fps=<value>
framerate at which to capture video (frames per second)
buffersize=<value>
maximum size of the capture buffer in megabytes (default: dynamical)
norm=<value>
available: PAL, SECAM, NTSC. For v4l2 use the normid option below.
normid=<value>
v4l2 only. See MPlayer output for a list of available TV norms.
channel=<value>
Set tuner to <value> channel.
chanlist=<value>
available: europe-east, europe-west, us-bcast, us-cable, etc
channels=<chan- nel>-<name>,<channel>-<name>,...
Set names for channels. Use _ for spaces in names (or play with quoting ;-). The channel names will then be written using OSD, and the commands tv_step_channel, tv_set_channel and tv_last_channel will then be usable using a remote (see lirc). Not compatible with frequency parameter. Warning: The channel number will then be the position in the 'channels' list, begin- ning with 1. Example: use tv://1, tv://2, tv://TV1, tv_set_channel 1, tv_set_channel 2, tv_set_channel TV1, etc.
[brightness|con- trast|hue|saturation]=<-100-100>
set the color equalizer on the card
audiorate=<value>
set audio capture bitrate
forceaudio
capture audio even if there are no audio sources reported by v4l
alsa
capture from ALSA
amode=<0-3>
choose an audio mode:
0: mono
1: stereo
2: language 1
3: language 2
forcechan=<1-2>
By default, the count of recorded audio channels is determined automatically by querying the audio mode from the tv card. This option allows to force stereo/mono recording regardless of the amode option and the values returned by v4l. This can be used for troubleshooting when the tv card is unable to report the current audio mode.
adevice=<value>
set an audio device
/dev/... for OSS
hardware ID for ALSA
audioid=<value>
choose an audio output of the capture card, if it has more of them
[volume|bass|treble|bal- ance]=<0-65535>
[volume|bass|treble|bal- ance]=<0-100>
These options set parameters of the mixer on the video capture card. They will have no effect, if your card doesn't have one. For v4l1, 0-65535 is a valid range. For v4l2, the valid range is 0 to 100, and 50 maps to the default value of the control, as reported by the driver.
immediatemode=<bool>
A value of 0 means capture and buffer audio and video together (default for MEncoder). A value of 1 (default for MPlayer) means to do video capture only and let the audio go through a loopback cable from the TV card to the soundcard.
mjpeg
Use hardware mjpeg compression (if the card supports it). When using this option, you do not need to specify the width and height of the output window, because MPlayer will determine it automatically from the decima- tion value (see below).
decimation=<1,2,4>
choose the size of the picture that will be compressed by hardware mjpeg compression:
1: full size 704x576 PAL 704x480 NTSC
2: medium size 352x288 PAL 352x240 NTSC
4: small size 176x144 PAL 176x120 NTSC
quality=<0-100>
choose the quality of the jpeg compression
(quality < 60 recommended for full size)
-user <user name> (see -passwd option too)
Specify user name for http authentication.
-user-agent <string>
Use string as User-Agent for HTTP streaming.
-vid <id>
Select video channel [MPG: 0-15 ASF: 0-255 MPEG-TS: 17-8190]. When playing an MPEG-TS stream, MPlay- er/Mencoder will use the first program (if present) with the chosen video stream.
-vivo <sub-options> (DEBUG CODE)
Force audio parameters for the .vivo demuxer (for debugging purposes).

OSD/SUB OPTIONS

NOTE: See -vf expand too.
-dumpjacosub (MPLAYER only)
Convert the given subtitle (specified with the -sub option) to the time-based JACOsub subtitle format. Creates a dumpsub.js file in the current directory.
-dumpmicrodvdsub (MPLAYER only)
Convert the given subtitle (specified with the -sub option) to the MicroDVD subtitle format. Creates a dumpsub.sub file in the current directory.
-dumpmpsub (MPLAYER only)
Convert the given subtitle (specified with the -sub option) to MPlayer's subtitle format, MPsub. Cre- ates a dump.mpsub file in the current directory.
-dumpsami (MPLAYER only)
Convert the given subtitle (specified with the -sub option) to the time-based SAMI subtitle format. Creates a dumpsub.smi file in the current directo- ry.
-dumpsrtsub (MPLAYER only)
Convert the given subtitle (specified with the -sub option) to the time-based SubViewer (SRT) subtitle format. Creates a dumpsub.srt file in the current directory.
-dumpsub (MPLAYER only) (BETA CODE)
Dumps the subtitle substream from VOB streams. See -dump*sub and -vobsubout* options too.
-ffactor <number>
Resample alphamap of the font. Can be:
0
plain white fonts
0.75
very narrow black outline (default)
1
narrow black outline
10
bold black outline
-flip-hebrew
Turns on flipping subtitles using FriBiDi.
-font <path to font.desc file>
Search for the OSD/SUB fonts in an alternative di- rectory (default for normal fonts: ~/.mplayer/font/ font.desc, default for FreeType fonts: ~/.mplayer/ subfont.ttf).
NOTE:
With FreeType, this option determines path to the text font file.
With Fontconfig, this option determines the font- config font name.
EXAMPLE:
-font ~/.mplayer/arial-14/font.desc
-font ~/.mplayer/arialuni.ttf
-font 'Bitstream Vera Sans'
-fontconfig
Enables the usage of fontconfig managed fonts.
-forcedsubsonly
Display only forced subtitles for the DVD subtitle stream selected by e.g. -slang.
-fribidi-charset <charset name>
Specifies the charset that will be passed to FriBi- Di when decoding a non-UTF8 subtitles (default: ISO8859-8).
-ifo <vobsub ifo file>
Indicate the file that will be used to load palette and frame size for VOBSUB subtitles.
-noautosub
Turns off automatic loading of subtitle files.
-osdlevel <0-3> (MPLAYER only)
Specifies which mode the OSD should start in.
0
subtitles only
1
volume + seek (default)
2
volume + seek + timer + percentage
3
volume + seek + timer + percentage + total time
-overlapsub
Allows the next subtitle to be displayed while the current one is still visible (default is to enable the support only for specific formats).
-sid <id> (also see -slang option)
Turns on DVD subtitle displaying. Also, you MUST specify a number which corresponds to a DVD subti- tle language (0-31). For the list of available subtitles, use with the -v option and look at the output.
-slang <two letter country code> (also see -sid option)
For DVD playback, turns on/selects DVD subtitle language. For the list of available subtitles, use with the -v option and look at the output.
Otherwise, determines an optional subtitle suffix which gets a higher priority when searching for subtitles.
EXAMPLE:
-slang hu,en
Selects Hungarian and falls back to English if Hungarian is not available.
-spuaa <mode>
Antialiasing/scaling mode for DVD/VobSub. A value of 16 may be added to mode in order to force scal- ing even when original and scaled frame size al- ready match, for example to smooth subtitles with the gaussian blur. The available modes are:
0
none (fastest, very ugly)
1
approximate (broken?)
2
full (slow)
3
bilinear (default, fast and not too bad)
4
uses swscaler gaussian blur (looks very good)
-spualign <-1-2>
Specify how spu (DVD/VobSub) subtitles should be aligned. Values are the same as for -subalign, with the extra choice -1 for original position.
-spugauss <0.0-3.0>
Variance parameter of gaussian used by -spuaa 4. Higher means more blur. The default is 1.0.
-sub <subtitlefile1,subtitlefile2,...>
Use/display these subtitle files. Only one file can be displayed at the same time and the files can be switched with 'j'.
-sub-bg-alpha <0-255>
Specify the alpha channel value for subtitles and OSD backgrounds. Big values mean more transparen- cy. The 0 value is an exception and means complet- ly transparent.
-sub-bg-color <0-255>
Specify the color value for subtitles and OSD back- grounds. Currently subtitles are grayscale so this value is equivalente to the intensity of the color. The 255 value means white and 0 black.
-sub-demuxer <number> (-subfile only) (BETA CODE)
Force subtitle demuxer type for -subfile. Give the demuxer ID as defined in subreader.h.
-sub-fuzziness <mode>
Adjust matching fuzziness when searching for subti- tles:
0
exact match
1
load all subs containing movie name
2
load all subs in the current directory
-sub-no-text-pp
Disables any kind of text post processing done af- ter loading the subtitles. Used for debug purpos- es.
-subalign <0-2>
Specify how subtitles should be aligned with sub- pos. 0 means align at top (original/default behav- ior), 1 means align at center, and 2 means align at bottom.
-subcc
Display DVD Closed Caption (CC) subtitles. These are NOT the VOB subtitles, these are special ASCII subtitles for the hearing impaired encoded in the VOB userdata stream on most region 1 DVDs. CC sub- titles have not been spotted on DVDs from other re- gions so far.
-subcp <codepage>
If your system supports iconv(3), you can use this option to specify codepage of the subtitle.
EXAMPLE:
-subcp latin2
-subcp cp1250
-subdelay <sec>
Delays subtitles by <sec> seconds. Can be nega- tive.
-subfile <filename> (BETA CODE)
Currently useless. Same as -audiofile, but for subtitle streams (OggDS?).
-subfont-autoscale <0-3> (FreeType only)
Sets the autoscale mode.
NOTE:
Zero means that text-scale and osd-scale are font heights in points.
The mode can be:
0
no autoscale
1
proportional to movie height
2
proportional to movie width
3
proportional to movie diagonal (default)
-subfont-blur <0-8> (FreeType only)
Sets the font blur radius (default: 2).
-subfont-encoding <value> (FreeType only)
Sets the font encoding. When set to 'unicode', all the glyphs from the font file will be rendered and unicode will be used (default: unicode).
-subfont-osd-scale <0-100> (FreeType only)
Sets the osd elements autoscale coefficient (de- fault: 6).
-subfont-outline <0-8> (FreeType only)
Sets the font outline thickness (default: 2).
-subfont-text-scale <0-100> (FreeType only)
Sets the subtitle text autoscale coefficient (per- centage of the screen size) (default: 5).
-subfps <rate>
Specify frame/sec rate of subtitle file (float num- ber), default: the same fps as the movie.
NOTE:
ONLY for frame-based SUB files, i.e. NOT Mi- croDVD format.
-subpos <0-100> (useful with -vf expand)
Specify the position of subtitles on the screen. The value is the vertical position of the subtitle in % of the screen height.
-subwidth <10-100>
Specify the maximum width of subtitles on the screen. Useful for TV-out. The value is the width of the subtitle in % of the screen width.
-unicode
Tells MPlayer to handle the subtitle file as UNI- CODE.
-utf8
Tells MPlayer to handle the subtitle file as UTF8.
-vobsub <vobsub file without extension>
Specify the VobSub files that are to be used for subtitle. This is the full pathname without exten- sions, i.e. without the '.idx', '.ifo' or '.sub'.
-vobsubid <0-31>
Specify the VobSub subtitle id.

AUDIO OUTPUT OPTIONS (MPLAYER ONLY)

-abs <value> (OBSOLETE)
Override audio driver/card buffer size detection, -ao oss only
-ao <driver1[:device],driver2,...[,]>
Specify a priority list of audio output drivers (optionally with device) to be used. With SDL 'de- vice' is valid, too, it means subdriver then.
NOTE:
To get a full list of available drivers, see -ao help.
If the list has a trailing ',' it will fallback to drivers not listed.
EXAMPLE:
-ao oss:/dev/dsp2,oss:/dev/ dsp1,
try to use OSS with the specified sound de- vices and fallback to others if it fails
-ao sdl:esd
specify the SDL subdriver
-aofile <filename>
Filename for -ao pcm.
-aop <list=plugin1,plugin2...:option1=val- ue1:opt2=val2...>
Specify audio plugin(s) and their options (see doc- umentation too).
Available options are:
list=[plugins]
comma separated list of plugins (resample, surround, format, volume, extrastereo, vol- norm)
delay=<sec>
example plugin, do not use.
format=<format>
output format (format plugin only)
fout=<Hz>
output frequency (resample plugin only)
volume=<0-255>
volume (volume plugin only)
mul=<value>
stereo coefficient (default: 2.5) (ex- trastereo plugin only)
softclip
compressor / 'soft-clipping' capabilities (volume plugin only)
-delay <sec>
Audio delay in seconds (may be +/- float value).
-format <0-8192>
Select the format used for output from the filter layer (according to the defines in libao2/afmt.h):
1
Mu-Law
2
A-Law
4
Ima-ADPCM
8
Signed 8-bit
16
Unsigned 8-bit
32
Unsigned 16-bit (Little-Endian)
64
Unsigned 16-bit (Big-Endian)
128
Signed 16-bit (Little-Endian)
256
Signed 16-bit (Big-Endian)
512
MPEG (2) Audio
1024
AC3
4096
Signed 32-bit (Little-Endian)
8192
Signed 32-bit (Big-Endian)
-mixer <device>
This option will tell MPlayer to use a different device for mixing than /dev/mixer.
-mixer-channel <mixer line> (-ao oss only)
This option will tell MPlayer to use a different channel for controlling volume than the default PCM. Options include vol, pcm, line. For a com- plete list of options look for SOUND_DEVICE_NAMES in /usr/include/linux/soundcard.h.
-nowaveheader (-ao pcm only)
Don't include wave header. Used for RAW PCM.

VIDEO OUTPUT OPTIONS (MPLAYER ONLY)

-aa* (-vo aa only)
You can get a list and an explanation of available options executing mplayer -aahelp
-adapter <value> (-vo directx only)
Set the graphics card that will receive the image. Needs the -vm option to work. You can get a list of available cards when you run this option with -v.
-bpp <depth>
Use different color depth than autodetect. Not all -vo drivers support it (fbdev, dga2, svga, vesa).
-brightness <-100-100>
Adjust brightness of video output (default 0). It changes intensity of RGB components of video signal from black to white screen.
-contrast <-100-100>
Adjust contrast of video output (default 0). Works in similar manner as brightness.
-dfbopts <value> (-vo directfb only)
Specify a parameter list for the directfb driver.
-display <name>
Specify the hostname and display number of the X server you want to display on.
EXAMPLE:
-display xtest.localdomain:0
-double
Enables doublebuffering. Fixes flicker by storing two frames in memory, and displaying one while de- coding another. Can affect OSD. Needs twice the memory of a single buffer, so it won't work on cards with very little video memory.
-dr
Turns on direct rendering (not supported by all codecs and video outputs) (default is off). Warn- ing: may cause OSD/SUB corruption!
-dxr2 <option1:option2:...>
This option is used to control the dxr2 driver.
ar-mode=<value>
aspect ratio mode (0 = normal, 1 = pan scan, 2 = letterbox (default))
iec958-encoded
iec958 output mode
iec958-decoded
set iec958 output mode to decoded (default)
macrovision=<value>
macrovision mode (0 = off (default), 1 = agc, 2 = agc 2 colorstripe, 3 = agc 4 col- orstripe)
mute
mute sound output
unmute
unmute sound output
ucode=<value>
path to the microcode
TV Out
75ire
enable 7.5 IRE output mode
no75ire
disable 7.5 IRE output mode (default)
bw
b/w TV output
color
color TV output (default)
interlaced
interlaced TV output (default)
nointerlaced
disable interlaced TV output
norm=<value>
TV norm (ntsc (default), pal, pal60, palm, paln, palnc)
square-pixel
set pixel mode to square
ccir601-pixel
set pixel mode to ccir601
Overlay
cr-left=<0-500>
set the left cropping value (default: 50)
cr-right=<0-500>
set the right cropping value (default: 300)
cr-top=<0-500>
set the top cropping value (default: 0)
cr-bottom=<0-500>
set the bottom cropping value (default: 0)
ck-[r|g|b]=<0-255>
set the r(ed), g(reen) or b(lue) gain of the overlay color-key
ck-[r|g|b]min=<0-255>
minimum value for the respective color key
ck-[r|g|b]max=<0-255>
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=<-20-20>
adjust the overlay size (h,w) and position (x,y) in case it doesn't match the window perfectly (default: 0)
overlay
activate overlay (default)
nooverlay
activate TVout
overlay-ratio=<1-2500>
tune the overlay (default 1000)
-fb <device> (fbdev or DirectFB only) (OBSOLETE)
Specifies the framebuffer device to use. By de- fault it uses /dev/fb0.
-fbmode <modename> (fbdev only)
Change video mode to the one that is labelled as <modename> in /etc/fb.modes.
NOTE:
VESA framebuffer doesn't support mode chang- ing.
-fbmodeconfig <filename> (fbdev only)
Use this configuration file instead of the default /etc/fb.modes. Only valid for the fbdev driver.
-forcexv (SDL only)
Force using XVideo.
-fs
Fullscreen playing (centers movie, and makes black bands around it). Toggle it with the 'f' key (not all video outputs support it). See also -zoom.
-fsmode-dontuse <0-31> (OBSOLETE) (use -fs op- tion)
Try this option if you still experience fullscreen problems.
-fstype <type1,type2,...>
Specify a priority list of fullscreen layer setting modes to be used. The available types are:
above
Use _NETWM_STATE_ABOVE hint if available.
below
Use _NETWM_STATE_BELOW hint if available.
fullscreen
Use _NETWM_STATE_FULLSCREEN hint if avail- able.
layer
Use _WIN_LAYER hint with default layer.
layer=<0..15>
Use _WIN_LAYER hint with layer number.
netwm
Force NETWM style.
none
Don't set fullscreen window layer.
stays_on_top
Use _NETWM_STATE_STAYS_ON_TOP hint if available.
You can negate the modes by prefixing them with '-'.
The default order is lay- er,stays_on_top,above,fullscreen. It will be used as a fallback in case of specifying incorrect or unsupported modes.
OpenBox 1.x users have to use -fstype -fullscreen to achieve working fs switching.
If you experience problems with fullscreen window being covered by other windows try using a differ- ent order.
NOTE:
See -fstype help for a full list of available modes.
-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 direc- tion. It also supports the standard option format to the standard X -geometry option. The values given must be integers.
NOTE:
This option is only supported by vo x11, xm- ga, xv, xvmc, xvidix, directx and tdfxfb.
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 cor- ner of the screen.
-guiwid <window id>
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 <-100-100>
Adjust hue of video signal (default: 0). You can get colored negative of image with this option.
-jpeg <option1:option2:...> (-vo jpeg only)
Specify options for the JPEG output.
Available options are:
[no]progressive
Specify standard or progressive JPEG.
[no]baseline
Specify use of baseline or not.
optimize=<value>
Optimization factor [0-100]
smooth=<value>
Smooth factor [0-100]
quality=<value>
Quality factor [0-100]
outdir=<value>
Directory to save the JPEG files
-monitor-dotclock <dotclock (or pixelclock) range> (fbdev and vesa only)
Look into etc/example.conf for further information and in DOCS/HTML/en/devices.html#video-dev.
-monitor-hfreq <horizontal frequency range> (fbdev and vesa only)
-monitor-vfreq <vertical frequency range> (fbdev and vesa only)
-monitoraspect <ratio>
Set aspect ratio of your monitor or TV screen. See also -aspect for movie aspect.
EXAMPLE:
-monitoraspect 4:3 or 1.3333
-monitoraspect 16:9 or 1.7777
-nograbpointer
Do not grab mouse pointer after VidMode change (-vm), useful for multihead setup.
-nokeepaspect
Do not keep window aspect ratio when resizing X11 windows (Works currently only with -vo x11, xv, xm- ga and xvidix and your window manager needs to un- derstand window aspect hints.).
-noxv (SDL only)
Disables XVideo SDL driver.
-ontop
Makes the player window stay on top other windows. Supported by drivers which use X11, except SDL, as well as directx and gl2 under Windows.
-panscan <0.0-1.0>
Enables Pan & Scan functionality, i.e. in order to display a 16:9 movie on a 4:3 display, the sides of the movie are cropped to get a 4:3 image which fits the screen. This function works only with the xv, xmga, mga and xvidix video out drivers.
The range controls how much of the image is cropped.
-refreshrate <Hz>
Set the monitor refreshrate in Hz. Currently only supported by -vo directx combined with the -vm op- tion.
-rootwin
Play movie in the root window (desktop background) instead of opening a new one. Works only with x11, xv, xmga and xvidix drivers.
-saturation <-100-100>
Adjust saturation of video output (default: 0). You can get grayscale output with this option.
-screenh <pixels> -screenw <pixels>
If you use an output driver which can't know the resolution of the screen (fbdev/x11 and/or TVout) this is where you can specify the horizontal and vertical resolution.
-stop-xscreensaver
Turns off xscreensaver at startup and turns it on again on exit.
-vm
Try to change to a better video mode. dga, x11/xv (XF86VidMode) and sdl output drivers support it. If it is used with the directx video output driver the -screenw, -screenh, -bpp and -refreshrate op- tions can be used to set the new display mode.
-vsync
Enables VBI for vesa.
-wid <window id>
This tells MPlayer to use a X11 window, which is useful to embed MPlayer in a browser (with the plugger extension for instance).
-xineramascreen <0-...>
In Xinerama configurations (i.e. a single desktop that spans across multiple displays) this option tells MPlayer which screen to display movie on.
-z <0-9>
Specifies compression level for PNG output (-vo png)
0
no compression
9
max compression
-zrbw (-vo zr only)
Display in black and white (for optimal perfor- mance, this option can be combined with the 'decode only in black and white' option for codecs belong- ing to the FFmpeg family).
-zrcrop <[width]x[height]+[x offset]+[y offset]> (-vo zr only)
Select a part of the input image for display, mul- tiple occurences of this option switch on cinerama mode. In cinerama mode the movie is distributed over more than one TV (or beamer) to create a larg- er screen. Options appearing after the n-th -zr- crop 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 <device> (-vo zr only)
Specify the device special file that belongs to your MJPEG card, by default this 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 image to its original size. Use this option to force decimation.
-zrhelp (-vo zr only)
Display a list of all -zr* options, their default values and an example of cinerama mode.
-zrnorm <norm> (-vo zr only)
Specify norm PAL/NTSC, the default is 'no change'.
-zrquality <1-20> (-vo zr only)
A number from 1 to 20 representing the jpeg encod- ing quality. 1 gives the best quality and 20 gives very bad quality.
-zrvdec <1,2,4> -zrhdec <1,2,4> (-vo zr only)
Vertical/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 strech the image to its original size.
-zrxdoff <x display offset>, -zrydoff <y display offset> (-vo zr only)
If the movie is smaller than the TV screen, these options control the position of the movie relative to the upper left corner of the screen. The movie is centered by default.

DECODING/FILTERING OPTIONS

-ac <[-]codec1,[-]codec2,...[,]>
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.
NOTE:
See -ac help for a full list of available codecs.
If the list has a trailing ',' it will fallback to codecs not listed.
EXAMPLE:
-ac mp3acm
force l3codeca.acm MP3 codec
-ac mad,
try libmad first, then fallback to others
-ac hwac3,a52,
try hardware AC3 passthrough, then software AC3 codec, then others
-ac -ffmp3,
try other codecs except FFmpeg's MP3 de- coder
-af <plugin1[=options],plugin2,...>
Activate a comma separated list of audio filters and their options.
Available filters are:
resample[=srate[:slop- py][:type]]
Changes the sample rate of the audio stream to an integer srate (Hz). It only supports the 16 bit little endian format.
channels[=nch]
Change the number of channels to nch output channels. 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 repeated in both of the output chan- nels). If the number of output channels is smaller than the number of input channels the exceeding channels are truncated.
format[=bps,f]
Select the format f and bytes per sample bps used for output from the filter layer. The option bps is an integer and denotes Bytes per sample. The format f is a string containing a concatenated mix of:
alaw, mulaw or imaadpcm
float or int
unsigned or signed
le or be (little or big endian)
volume[=v:sc]
Select the output volume level. This fil- ter is not reentrant and can therefore only be enabled once for every audio stream.
v: desired gain in dB for all channels in the stream. The gain can be set from -200dB to +40dB (where -200dB mutes the sound completely and +40dB equals a gain of 1000).
sc: enable soft clipping.
pan[=n:l01:l02:..l10:l11:l12:...ln0:ln1:ln2:...]
Mixes channels arbitrarily, see DOCS/HTML/en/devices.html#audio-dev for de- tails.
n: number of output channels (1-6).
lij: how much of input channel j is mixed into output channel i.
sub[=fc:ch]
Add sub-woofer channel.
fc: Cutoff frequency for low-pass filter (20Hz to 300Hz) default is 60Hz.
ch: channel number for the sub-channel.
surround[=d]
Decoder for matrix encoded surround sound, works on many 2 channel files.
d: delay time in ms for the rear speak- ers (0ms to 1000ms) default is 15ms.
delay[=ch1:ch2:...]
Delays the sound output. Specify the delay separately for each channel in milliseconds (floating point number between 0 and 1000).
export[=mmapped_file[:nsam- ples]]
Exports the incoming signal to other pro- cesses using memory mapping (mmap()).
mmapped_file: File to map data to (de- fault: ~/.mplayer/mplayer-af_export).
nsamples: number of samples per channel (default: 512)
-af-adv <force=(0-3):list=(filters)> (see -af op- tion too)
Specify advanced audio filter options:
force=<0-3>
Forces the insertion of audio filters to one of the following:
0: Completely automatic insertion of filters (default)
1: Optimize for accuracy
2: Optimize for speed
3: Turn off auto
list=<filters>
Same as -af (see -af option).
-afm <driver1,driver2,...>
Specify a priority list of audio drivers to be used, according to their driver name in codecs.conf. It falls back to default if none is ok.
NOTE:
See -afm help for a full list of available drivers.
EXAMPLE:
-afm ffmpeg
try FFmpeg's libavcodec (mp1/2/3) codecs first
-afm acm,dshow
try Win32 codecs first
-aspect <ratio>
Override aspect ratio of movies. It's autodetected on MPEG files, but can't be autodetected on most AVI files.
EXAMPLE:
-aspect 4:3 or -aspect 1.3333
-aspect 16:9 or -aspect 1.7777
-noaspect
Disable automatic movie aspect ratio compensation.
-flip
Flip image upside-down.
-lavdopts <option1:option2:...> (DEBUG CODE)
If decoding with libavcodec, you can specify its parameters here.
EXAMPLE:
-lavdopts bug=1
NOTE: Just add the values of the things you want to enable.
Available options are:
ec
error concealment:
1: use strong deblock filter for damaged MBs
2: iterative MV search (slow)
3: all (default)
er=<value>
error resilience:
0: disabled
1: careful (should work with broken en- coders)
2: normal (default) (works with compli- ant encoders)
3: agressive (more checks but might cause problems even for valid bit- streams)
4: very agressive
debug=<value>
debug:
0: disabled
1: picture info
2: rate control
4: bitstream
8: MB type
16: QP
32: Motion vector
0x0040: Motion vector visualization (use -noslices)
0x0080: MB skip
0x0100: startcode
0x0200: PTS
0x0400: error resilience
0x0800: memory management control opera- tions (H264)
0x1000: bugs
vismv=<value>
vismv:
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
bug=<value>
manually work around encoder bugs:
0: nothing
1: autodetect bugs (default)
2 (msmpeg4v3): some old lavc generated msmpeg4v3 files (no autodetect)
4 (mpeg4): XviD interlacing bug (autode- tected if fourcc==XVIX)
8 (mpeg4): UMP4 (autodetected if four- cc==UMP4)
16 (mpeg4): padding bug (autodetected)
32 (mpeg4): illegal vlc bug (autodetect- ed per fourcc)
64 (mpeg4): XviD and DivX qpel bug (au- todetected per fourcc/ver)
128 (mpeg4): old standard qpel (autode- tected per fourcc/ver)
256 (mpeg4): another qpel bug (autode- tected per fourcc/ver)
512 (mpeg4): direct-qpel-blocksize bug (autodetected per fourcc/ver)
1024 (mpeg4): edge padding bug (autode- tected per fourcc/ver)
idct=<0-99>
(see lavcopts) For best decoding quality use the same idct algorithm for decoding and encoding. This may come at a price in accuracy, though.
gray
grayscale only decoding (a bit faster than with color)
-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 card/ cache. It has effect only with libmpeg2 and libav- codec codecs.
-nosound
Do not play/encode sound.
-novideo
Do not play/encode video.
-oldpp <quality> (OBSOLETE)
Use the opendivx postprocessing code instead of the internal one. Superseded by -pp, the internal postprocessing offers better quality and perfor- mance. The valid range of -oldpp values varies by codec, mostly 0-6, where 0=disable 6=slowest/best.
-pp <quality> (see -vf pp option too!)
Set postprocess level of the DLL. This option is NO LONGER USABLE with MPlayer's postprocess filter, but only with Win32 DirectShow DLLs which have in- ternal postprocessing routines. The valid range of -pp values varies by codec, mostly 0-6, where 0=disable 6=slowest/best.
-pphelp (see -vf pp option too)
Show a summary about the available postprocess fil- ters and their usage.
-ssf <mode>
Specifies SwScaler parameters.
EXAMPLE:
-vf scale -ssf lgb=3.0
lgb=<0-100>
Gaussian blur filter (luma)
cgb=<0-100>
Gaussian blur filter (chroma)
ls=<0-100>
sharpen filter (luma)
cs=<0-100>
sharpen filter (chroma)
chs=<h>
chroma horizontal shifting
cvs=<v>
chroma vertical shifting
-stereo <mode>
Select type of MP2/MP3 stereo output.
0
Stereo
1
Left channel
2
Right channel
-sws <software scaler type> (see -vf scale option too)
This option sets the quality (and speed, respec- tively) of the software scaler, with the -zoom op- tion. For example with x11 or other outputs which lack hardware acceleration. Possible settings are:
NOTE:
For -sws 2 and 7, the sharpness can be set with the scaling parameter (p) of -vf scale (0 (soft) - 100 (sharp)), for -sws 9, it specifies the filter length (1 - 10).
0
fast bilinear (default)
1
bilinear
2
bicubic (good quality)
3
experimental
4
nearest neighbour (bad quality)
5
area
6
luma bicubic / chroma bilinear
7
gauss
8
sincR
9
lanczos
10
bicubic spline
-vc <[-]codec1,[-]codec2,...[,]>
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.
NOTE:
See -vc help for a full list of available codecs.
If the list has a trailing ',' it will fallback to codecs not listed.
EXAMPLE:
-vc divx
force Win32/VFW DivX codec, no fallback
-vc divx4,
try divx4linux codec first, then fallback to others
-vc -divxds,-divx,
try other codecs except Win32 DivX codecs
-vc ffmpeg12,mpeg12,
try libavcodec's MPEG1/2 codec, then libm- peg2, then others
-vfm <driver1,driver2,...>
Specify a priority list of video codecs to be used, according to their names in codecs.conf. It falls back to default if none is ok.
NOTE:
If libdivxdecore support was compiled in, then odivx and divx4 now contains just the same Di- vX4 codec, but different APIs to reach it. For difference between them and when to use which, check the DivX4 section in the documentation.
See -vfm help for a full list of available drivers.
EXAMPLE:
-vfm ffmpeg,dshow,vfw
try the libavcodec, then Directshow, then VFW codecs and fallback to the others, if still none is ok
-vfm xanim
try XAnim codecs first
-x <x> (MPLAYER only)
Scale image to x width (if sw/hw scaling avail- able). Disables aspect calculations.
-xvidopts <option1:option2:...>
Specify additional parameters when decoding with XviD.
deblock-chroma
Activate XviD internal postprocessing fil- ter: chroma deblock filter. See also -vf pp, which is faster than XviD's own filter.
deblock-luma
Activate XviD internal postprocessing fil- ter: luma deblock filter. See also -vf pp, which is faster than XviD's own filter.
dr2
Activate direct rendering method 2.
nodr2
Deactivate direct rendering method 2.
filmeffect
Activate XviD internal film grain effect. Adds artificial film grain to the video. May increase perceived quality, while low- ering true quality. Also see -vf noise.
-xy <value>
value<=8
Scale image by factor <value>.
value>8
Set width to value and calculate height to keep correct aspect ratio.
-y <y> (MPLAYER only)
Scale image to y height (if sw/hw scaling avail- able). Disables aspect calculations.
-zoom
Allow software scaling, where available. Could be used to force scaling with -vf scale.
NOTE:
-vf scale will IGNORE options -x / -y / -xy / -fs / -aspect without -zoom.

VIDEO FILTERS

Video filter are plugins that allow you to modify the video stream and its properties. The syntax is:
-vf <filter1[=parameters],filter2,...>
Setup a chain of video filters.
-vop <...,filter3[=parameters],filter2,filter1> (OBSOLETE)
Setup a chain of video filters, to be applied in reverse order. Deprecated in favor of -vf.
The parameters are optional and if omitted, some of them are set to default values. Use '-1' to keep the default value. 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 filters, see -vf help.
Filters are managed in lists. There are a few commands to manage the filter list.
-vf-add <filter1[,filter2,...]>
Appends the filters given as arguments to the fil- ter list.
-vf-pre <filter1[,filter2,...]>
Prepends the filters given as arguments to the fil- ter list.
-vf-del <index1[,index2,...]>
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 <filter>=help
Prints the parameter names and parameter value ranges for a particular filter.
-vf <filter=named_parameter1=value1[:named_parame- ter2=val- ue2:...]>
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.
w,h
Cropped width and height, defaults to orig- inal width and height.
x,y
Position of the cropped picture, defaults to center.
cropdetect[=0-255]
Calculates necessary cropping parameters and prints the recommended parameters to stdout. The thresh- old can be optionally specified from nothing (0) to everything (255). (default: 24)
rectangle[=w:h:x:y]
The plugin responds to the input.conf directive 'change_rectangle' that takes two parameters.
w,h
width and height (default: -1, maximum pos- sible width where boundaries are still vis- ible.
x,y
top left corner position (default: -1, up- permost leftmost)
expand[=w:h:x:y:o]
Expands (not scales) movie resolution to the given value and places the unscaled original at coordi- nates x, y. Can be used for placing subtitles/OSD in the resulting black bands.
w,h
expanded width,height (default: original width,height). Negative values for w and h are treated as offsets to the original size.
EXAMPLE:
ex- pand=0:-50:0:0
adds a 50 pixel border to the bottom of the picture
x,y
position of original image on the expanded image (default: center)
o
OSD/subtitle rendering
0: disable (default)
1: enable
flip
Flips the image upside down. See also option -flip.
mirror
Mirrors the image on the Y axis.
rotate[=<0-7>]
Rotates and flips (optional) the image +/- 90 de- grees. For parameters between 4-7 rotation is only done if the movie's geometry is portrait and not landscape.
scale[=w:h[:interlaced[:chr_drop[:param[:pre- size]]]]]
Scales the image with the software scaler (slow) and performs a YUV<->RGB colorspace conversion (al- so see -sws option).
w,h
scaled width/height (default: original width/height)
NOTE:
If -zoom is used, and underlying fil- ters (including 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 di- mension and the prescaled aspect ratio.
-3: Calculate w/h using the other di- mension and the original aspect ratio.
interlaced
Toggle interlaced scaling.
chr_drop
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
param
scaling parameter (depends upon the scaling method used)
-sws 2 (bicubic): sharpness (0 (soft) - 100 (sharp))
-sws 7 (gaussian): sharpness (0 (soft) - 100 (sharp))
-sws 9 (lanczos): filter length (1-10)
presize
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)
dsize={aspect|w:h}
Changes the intended display size/aspect at an ar- bitrary 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 filter does NOT do any scaling itself; it just af- fects what later scalers (software or hardware) will do when auto-scaling to correct aspect.
yuy2
Forces software YV12/I420 or 422P to YUY2 conver- sion. Useful for video cards/drivers with slow YV12 but fast YUY2 support.
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 with- out doing real conversion.
rgb2bgr[=swap]
RGB 24/32 <-> BGR 24/32 colorspace conversion.
swap
Also perform R <-> B swapping.
palette
RGB/BGR 8 -> 15/16/24/32bpp colorspace conversion using palette.
format[=fourcc]
Restricts the colorspace for the next filter with- out doing any conversion. Use together with the scale filter for a real conversion. For a list of available formats see format=fmt=help.
fourcc
format name like rgb15, bgr24, yv12, etc (default: yuy2)
noformat[=fourcc]
Restricts the colorspace for the next filter with- out doing any conversion. Unlike the format fil- ter, this will allow any colorspace except the one you specify. For a list of available formats see noformat=fmt=help.
fourcc
format name like rgb15, bgr24, yv12, etc (default: yv12)
pp[=filter1[:option1[:option2...]]/[-]filter2...] (see -pphelp too)
This option enables usage of MPlayer's internal postprocessing filter, and also gives an interface where you can pass options to the named filter. To get a list of available filters, use -pphelp. Note that each sub-filter must be separated with a / sign.
Each filter defaults to 'c' (chrominance).
The keywords accept a '-' prefix to disable the op- tion.
A ':' followed by a letter may be appended to the option to indicate its scope:
a
Automatically switches the filter off if the CPU is too slow.
c
Do chrominance filtering, too.
y
Do not do chrominance filtering (only lumi- nance filtering).
EXAMPLE:
-vf pp=hb/vb/dr/al
horizontal and vertical deblocking, dering- ing and automatic brightness/contrast
-vf pp=hb/vb/dr/al/lb
horizontal and vertical deblocking, dering- ing, automatic brightness/contrast and lin- ear blend deinterlacer
-vf pp=de/-al
default filters without brightness/contrast correction
-vf pp=de/tn:1:2:3
Enable default filters & temporal denoiser.
-vf pp=hb:y/vb:a -autoq 6
Deblock horizontal only luminance and switch vertical deblocking on or off auto- matically depending on available CPU time.
spp[=quality[:qp[:mode]]]
simple postprocessing filter
quality
0-6 (default: 3)
qp
force quantization parameter (default: 0, use qp from video)
mode
0: hard thresholding (default)
1: soft thresholding (better deringing, but blurrier)
qp=equation
qp change filter
equation
some equation like "2+2*sin(PI*qp)"
test
Generate various test patterns.
rgbtest
Generate an RGB test pattern useful for detecting RGB vs BGR issues. You should see a red, green and blue stripe from top to bottom.
lavc[=quality:fps]
Fast software YV12 to MPEG1 conversion with libav- codec for use with DVB/DXR3. Faster and of better quality than -vf fame.
quality
1-31: fixed qscale
32-: fixed bitrate in kBits
fps
force output fps (float value) (default: 0, autodetect based on height)
fame
Fast software YV12 to MPEG1 conversion with libfame for use with DVB/DXR3.
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. It's only useful to- gether with expand+scale (-vf dvb- scale,scale=-1:0,expand=-1:576:-1:-1:1,lavc).
aspect
control aspect ratio, calculate as DVB_HEIGHT*ASPECTRATIO (default: 576*4/3=768), set it to 576*(16/9)=1024 for a 16:9 TV.
noise[=luma[u][t|a][h][p]:chroma[u][t|a][h][p]]
Adds noise.
<0-100>
luma noise
<0-100>
chroma noise
u
uniform noise (gaussian otherwise)
t
temporal noise (noise pattern changes be- tween 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 pat- tern
denoise3d[=luma:chroma:time]
This filter aims to reduce image noise producing smooth images and making still images really still (This should enhance compressibility.). It can be given from 0 to 3 parameters. If you omit a param- eter, a reasonable value will be inferred.
luma
spatial luma strength (default = 4)
chroma
spatial chroma strength (default = 3)
time
temporal strength (default = 6)
hqdn3d[=luma:chroma:time]
High precision/quality version of the denoise3d filter. Parameters and usage are the same.
eq[=bright:cont]
Software equalizer with interactive controls just like the hardware equalizer, for cards/drivers that do not support brightness and contrast controls in hardware. Might also be useful with MEncoder, ei- ther for fixing poorly captured movies, or for slightly reducing contrast to mask artifacts and get by with lower bitrates. Initial values in the range -100-100 may be given on the command line.
eq2[=gamma:contrast:brightness:satura- tion:rg:gg:bg:weight]
Alternative software equalizer that uses lookup ta- bles (very slow), allowing gamma correction in ad- dition to simple brightness and contrast adjust- ment. Note that it uses the same MMX optimized code as -vf eq if all gamma values are 1.0. The parameters are given as floating point values. Pa- rameters rg, gg, bg are the independent gamma val- ues for the Red, Green and Blue components. 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 value of 0.0 turns the gamma correction all the way down while 1.0 leaves it at its full strength. Defaults are gamma=1.0, contrast=1.0, brightness=0.0, saturation=1.0, weight=1.0. Value ranges are 0.1-10 for gamma, -2-2 for contrast (negative values result in a negative image), -1-1 for brightness, 0-3 for saturation and 0-1 for weight.
hue[=hue:saturation]
Defaults are hue=0.0, saturation=1.0. Value ranges are -180-180 for hue, -2-2 for saturation (negative values result in a negative chroma).
halfpack[=f]
Convert planar YUV 4:2:0 to half-height packed 4:2:2, downsampling luma but keeping all chroma samples. Useful for output to low-resolution dis- play 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 downsampling. The optional parameter f can be 0 to only use even lines, or 1 to only use odd lines. Any other value for f gives the default (averaging) behavior.
ilpack[=mode]
When interlaced video is stored in YUV 4:2:0 for- mats, chroma interlacing does not line up properly due to vertical downsampling of the chroma chan- nels. 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. The optional argument selects the sampling mode. By default, linear interpolation (mode 1) is used. Mode 0 uses nearest-neighbor sampling, which is fast but incorrect.
decimate[=max:hi:lo:frac]
Drops frames that don't differ greatly from the previous frame in order to reduce framerate. The argument max (if positive) sets the maximum number of consecutive frames which can be dropped, or (if negative) the minimum interval between dropped frames. A frame is a candidate for dropping if no 8x8 region differs by more than a threshold of hi, and if not more than frac portion (1 meaning the whole image) differs by more than a threshold of lo. Values of hi and lo are for 8x8 pixel blocks and represent actual pixel value differences, so a threshold of 64 corresponds to 1 unit of difference for each pixel, or the same spread out differently over the block. The main use of this filter is for very-low-bitrate encoding (e.g. streaming over di- alup modem), but it could in theory be used for fixing movies that were inverse-telecined incor- rectly.
dint[=sense:level]
Detects and drops first of interlaced frames in video stream. Values can be from 0.0 to 1.0 - first (default 0.1) is relative difference between neighbor pixels, second (default 0.15) is what part of image have to be detected as interlaced to drop the frame.
lavcdeint
Use libavcodec's deinterlace filter.
kerndeint[=thresh[:map[:order[:sharp[:twoway]]]]]
Donald Graft's adaptive kernel deinterlacer. Dein- terlaces parts of a video if a configurable thresh- old is exceeded.
thresh (0 - 255)
Threshold (default 10).
map (0 or 1)
Paint pixels which exceed the threshold white (default: 0).
order (0 or 1)
Swap fields if 1 (default: 0).
sharp (0 or 1)
Enable additional sharpening (default: 0).
twoway (0 or 1)
Enable twoway sharpening (default: 0).
unsharp=l|cWxH:amount[:l|cWxH:amount]
Unsharp mask / gaussian blur.
l
Apply effect on luma component.
c
Apply effect on chroma components.
WxH
width and height of the matrix, odd sized in both directions (min = 3x3, max = 13x11 or 11x13, usually something 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: blur
>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 deinterlacing them. You can fil- ter your interlaced DVD and play it on a TV without breaking the interlacing. While deinterlacing (with the postprocessing filter) removes interlac- ing 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 disad- vantage is that it doesn't always work. Especially if combined with other filters it may produce ran- domly messed up images, so be happy if it works but don't complain if it doesn't for your combination of filters.
d
Deinterleave fields, placing them side by side.
i
Interleave fields again (reversing the ef- fect 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 ex- tract the even or the odd field (depending on whether n is even or odd).
detc[=var1=value2:var2=value2:...]
Attempts to reverse the 'telecine' process to re- cover a clean, non-interlaced stream at film fram- erate. This filter is still experimental but seems to be usable. Please be aware that there is abso- lutely no use in this filter unless you see inter- lacing when playing the movie! The following argu- ments (see syntax above) may be used to control its behavior:
dr
Set the frame dropping mode. 0 (default) means don't drop frames to maintain fixed output framerate. 1 means always drop a frame when there have been no drops or telecine merges in the past 5 frames. 2 means always maintain exact 5:4 input to output frame ratio. NOTE: Use mode 1 with MEncoder.
am
Analysis mode. Available values are 0 (fixed pattern with initial frame number specified by fr=#) and 1 (agressive search for telecine pattern). Default is 1.
fr
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 be- fore the movie starts.
tr0, tr1, tr2, tr3
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 indepen- dently for each frame. This will give much better results for material that has undergone heavy edit- ing 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) corre- sponds 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 23.976) when using MEncoder.
pullup
Third-generation pulldown reversal (inverse telecine) filter, capable of handling mixed hard-telecine, 24 fps progressive, and 30 fps pro- gressive content. The pullup filter is designed to be much more robust than detc or ivtc, but it is still under development. No configuration options are available yet. As the underlying pulldown re- versal engine is designed to take advantage of the new features in MPlayer G2, the current implementa- tion in G1 is meant to serve mainly as a testbed. NOTE: Presently pullup lacks any way to cap the output framerate, so during 30 fps progressive se- quences or stills, it will output more than 24 fps, meaning you'll have trouble if you use it with men- coder -ofps 23.976.
filmdint[=options]
Inverse telecine filter, similar to the pullup fil- ter 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, and this must be the first filter to allow access to the field-flags set by the MPEG-2 de- coder. 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 29.97 -ofps 23.976. 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=w:h:x:y
Just like the crop filter, but faster, and works on mixed hard and soft telecined con- tent as well as when y is not a multiple of 4. If x or y would require cropping frac- tional pixels from the chroma planes, the crop area is extended. This usually means that x and y must be even.
io=ifps:ofps
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 frame rate.
luma_only=n
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=n
On x86, if n=1, use MMX2 optimized func- tions, if n=2, use 3DNow! optimized func- tions, othewise, use plain C. If this op- tion is not specified, MMX2 and 3DNow! are auto-detected, use this option to override auto-detection.
fast=n
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 calcula- tions 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 ver- tical detail as interlaced content.
verbose=n
If n is nonzero, print the detailed metrics for each frame. Useful for debugging.
dint_thres=n
Deinterlace threshold. Used during de-in- terlacing of unmatched frames. Larger val- ue means less deinterlacing, use n=256 to completely turn off deinterlacing. Default is n=8.
comb_thres=n
Threshold for comparing a top and bottom fields. Defaults to 128.
diff_thres=n
Threshold to detect temporal change of a field. Default is 128.
sad_thres=n
Sum of Absolute Difference threshold, de- fault is 64.
softpulldown
This filter works only correct with MEncoder and acts on the MPEG2 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. Currently only libmpeg2 exports the needed flags. If used on material that does not set them, the filter does nothing.
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 duplicates and restore the original film frame rate. When using this filter, you must spec- ify -ofps that is 4/5 of the fps of the input file (23.976 if the input is 29.97fps). The options are:
pass=1|2
Use two-pass mode. This produces best re- sults. Pass 1 analyzes the video and writes the results to a log file. Pass 2 then reads this log file and uses the in- formation to do the actual work. Note that these passes do NOT correspond to pass 1 and 2 of the encoding process. In order to use divtc two-pass with two-pass video en- coding, you must perform three passes: first divtc pass 1 and encoder pass 1, then divtc pass 2 and encoder pass 1, and final- ly divtc pass 2 and encoder pass 2.
file=filename
Set the 2-pass log file name (default: "framediff.log").
threshold=value
Set the minimum strength the telecine pat- tern 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=numframes
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 im- proves 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 extends to both fu- ture and past.
phase=0|1|2|3|4
Sets the initial telecine phase for one-pass mode (default: 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 pos- sible 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=value
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 togeth- er instead of dropping one of the fields. Deghosting amplifies any compression arti- facts in the blended frames, so the parame- ter value is used as a threshold to exclude those pixels from deghosting that differ from the previous frame less than specified value. If two-pass mode is used, then neg- ative 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 parame- ter. 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 op- posite 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 docu- mentation of the other options to refer to, but if you actually select it, the filter will faithfully do nothing ;-)
a
Capture field order determined automatical- ly by field flags, transfer opposite. Fil- ter 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 oppo- site. Filter selects among t and b on a frame by frame basis by analyzing the im- ages 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 us- ing image analysis.
B
Capture bottom-first, transfer unknown or varying. Filter selects among b and p us- ing 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 default mode.
U
Both capture and transfer unknown or vary- ing. 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 29.97 -ofps 29.97 -vf telecine'. Both fps op- tions 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 interlaced frame, halving the framerate. Even frames are moved into the upper field, odd frames to the lower field. This can be used to ful- ly reverse the effect of the tfields filter (in mode 0). Available modes are:
0
odd frames into upper field, even to lower, generating a full-height frame at half the framerate
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 un- changed
tfields[=mode]
Temporal field separation - split fields into frames, doubling the output framerate. Like the telecine filter, tfields will only work properly with MEncoder, and only if both -fps and -ofps are set to the desired (double) framerate! Available modes are:
0
leave fields unchanged (this will jump/flicker)
1
interpolate missing lines (the algorithm used might not be so good)
2
translate fields by 1/4 pixel with linear interp (no jump)
4
translate fields by 1/4 pixel with 4tap filter (higher quality)
boxblur=radius:power[:radius:power]
box blur
radius
size of the filter
power
How often the filter should be applied.
sab=rad:pf:colorDiff[:rad:pf:colorDiff]
shape adaptive blur
rad
blur filter strength (~0.1-4.0) (slower if larger)
pf
prefilter strength (~0.1-2.0)
colorDiff
How different the pixels are allowed to be considered. (~0.1-100.0)
smart- blur=rad:strength:thresh[:rad:strength:thresh]
smart blur
rad
blur filter strength (~0.1-5.0) (slower if larger)
strength
blur (0.0-1.0) or sharpen (-1.0-0.0)
thresh
filter all (0), filter flat areas (0-30) or filter edges (-30-0)
perspective=x0:y0:x1:y1:x2:y2:x3:y3:t
perspective correction
x0,y0,...
coordinates of the top left, top right, bottom left, bottom right corners
t
linear (0) or cubic resampling (1)
2xsai
Use the 2x scale and interpolate algorithm for scaling and smoothing images.
1bpp
1bpp bitmap to YUV/BGR 8/15/16/32 conversion
down3dright[=lines]
Reposition and resize stereoscopic images. Ex- tracts both stereo fields and places them side by side, resizing them to maintain the original movie aspect.
lines
number of lines to select from the middle of the image (default: 12)
bmovl=hidden:opaque:<fifo>
Read bitmaps from a FIFO and display them in a win- dow.
hidden
sets the default value of the 'hidden' flag (boolean)
opaque
flag switching between alphablended (trans- parent) and opaque (fast) mode
fifo
path/filename for the FIFO (named pipe con- necting mplayer -vf bmovl to the control- ling application)
FIFO commands are:
RGBA32 width height xpos ypos alpha clear
followed by width*height*4 Bytes of raw RG- BA32 data.
ABGR32 width height xpos ypos alpha clear
followed by width*height*4 Bytes of raw AB- GR32 data.
RGB24 width height xpos ypos alpha clear
followed by width*height*3 Bytes of raw RGB32 data.
BGR24 width height xpos ypos alpha clear
followed by width*height*3 Bytes of raw BGR32 data.
ALPHA width height xpos ypos alpha
change alpha for area
CLEAR width height xpos ypos
clear area
OPAQUE
disable all alpha transparency. Send "AL- PHA 0 0 0 0 0" to enable it again.
HIDE
hide bitmap
SHOW
show bitmap
Arguments are:
width, height
size of image/area
xpos, ypos
start blitting at X/Y position
alpha
set alpha difference. If you set this to -255 you can then send a sequence of AL- PHA-commands to set the area to -225, -200, -175 etc for a nice fade-in-effect! ;)
0: same as original
255: makes everything opaque
-255: makes everything transparent
clear
clear the framebuffer before blitting.
0: The image will just be blitted on top of the old one, so you don't need to send 1,8MB of RGBA32 data everytime a small part of the screen is updated.
1: clear
framestep=I|[i]step
Renders only every nth frame or every Intra (key) frame.
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 key frame is found, an 'I!' string followed by a newline character is printed, leaving the cur- rent line of mplayer/mencoder output on the screen, because it contains the time (in seconds) and frame number of the keyframe (You can use this informa- tion to split the AVI.).
If you call the filter with a numeric parameter 'step' then only one in every 'step' frames is ren- dered.
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=xtile:ytile:output:start:delta
Tile a series of images into a single, bigger im- age. If you omit a parameter or use a value less than 0, then the default value is used. You can al- so stop when you're OK (... -vf tile=10:5 ...) It is probably a good idea to put the scale filter be- fore the tile :-)
The parameters are:
xtile
number of tiles on the x axis (default: 5)
ytile
number of tiles on the y axis (default: 5)
output
Render the tile when 'output' number of frames are reached, where 'output' should be a number less than xtile * ytile. Miss- ing 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.
start
pixel at the start (x/y) (default: 2)
delta
pixel between 2 tiles, (x/y) (default: 4)
delogo[=x:y:w:h:t]
Suppresses a TV station logo by a simple interpola- tion of the surrounding pixels. Just set a rectan- gle covering the logo and watch it disappear (and sometimes something even uglier appear - your mileage may vary).
x,y
Position of the top left corner of the lo- go.
w,h
Width and height of the cleared rectangle.
t
Thickness of the fuzzy edge of the rectan- gle (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.
zrmjpeg[=options]
Software YV12 to MJPEG encoder for use with the zr2 video output device.
maxheight=h|maxwidth=w
These options set the maximum width and height the zr card can handle (the MPlayer filter layer currently cannot query those).
{dc10+,dc10,buz,lml33}-{PAL|NTSC}
Use these options to set maxwidth and max- height automatically to the values known for card/mode combo. For example, 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 result- ing MJPEG images to the original size. The option fd instructs the filter to always perform the requested decimation (ugly).

VIDEO OUTPUT DRIVERS (MPLAYER ONLY)

Video output drivers are interfaces to different output facilities. The syntax is:
-vo <driver1[:option],driver2,...[,]>
Specify a priority list of video output drivers to be used.
If the list has a trailing ',' it will fall back to drivers not listed on the command line. Suboptions are optional and can mostly be omitted.
NOTE:
See -vo help for a list of compiled-in drivers.
EXAMPLE:
-vo xmga,xv,
Try the Matrox X11 driver, then the Xv driver, then others.
-vo directx:noaccel
Uses the DirectX driver with acceleration features turned off.
Available output drivers are:
xv (X11 only)
Uses the XVideo extension of XFree86 4.x to enable hardware accelerated playback. If you cannot use a hardware specific driver, this is probably the best option.
port=<number>
Select a specific XVideo port.
x11 (X11 only)
Shared memory output driver without hardware accel- eration 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.
xvmc (X11 only)
This video output driver employs the XvMC (X Video Motion Compensation) extension of XFree86 4.x.
dga (X11 only)
Output video through the XFree86 Direct Graphics Access extension. Considered obsolete.
sdl
Highly platform independent SDL (Simple Directmedia Layer) library output driver.
vidix
VIDIX (VIDeo Interface for *niX) is an interface to the video acceleration features of different graph- ics cards. Very fast output driver on cards that support it.
xvidix (X11 only)
VIDIX running under X11.
cvidix
VIDIX running in a console.
winvidix (Windows only)
Windows version of the VIDIX driver.
directx (Windows only)
Output driver that uses the DirectX interface.
noaccel
Turns off hardware acceleration. Try this option if you have display problems.
quartz (Mac OS X only)
Mac OS X Quartz output driver.
fbdev (Linux only)
Uses the kernel framebuffer to output video.
fbdev2 (Linux only)
Uses the kernel framebuffer to output video, alter- native implementation.
vesa
Very general output driver that should work on any VESA VBE 2.0 compatible card.
dga
Turns on DGA mode.
nodga
Turns off DGA mode.
vidix
FIXME: document this
lvo
FIXME: document this
svga
Output video using the SVGA library.
gl
OpenGL output driver. Very simple version, no OSD support and video size must be smaller than the maximum texture size of your OpenGL implementation. Intended to work even with the most simple OpenGL implementations.
manyfmts
Enables support for more (RGB and BGR) col- or formats. Needs OpenGL version >= 1.2, NOT yet WORKING correctly.
slice-height=<0-...>
Number of lines copied to texture in one piece (default: 4). 0 for whole image.
gl2
OpenGL output driver, second generation. Supports OSD and videos larger than maximum texture size.
null
Produces no video output. Useful for benchmarking.
aa
ASCII art output driver that works on a text con- sole.
caca
Colour AsCii Art output driver that works on a text console.
bl
Video playback using the Blinkenlights UDP proto- col. This driver is highly hardware specific.
ggi
Output driver for the GGI graphics system.
directfb
Play video using the DirectFB library.
(no)input
Use the DirectFB instead of the MPlayer keyboard code (default: enabled).
buffermode=single|dou- ble|triple
Double and triple buffering give best re- sults if you want to avoid tearing issues. Triple buffering is more efficent than dou- ble buffering as it doesn't block MPlayer while waiting for the vertical retrace. Single buffering should be avoided (de- fault: 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 doesn't have any effect on progressive film material like most MPEG movies are. You need to enable this option if you have tearing issues/un- smooth motions watching interlaced film ma- terial.
layer=N
Will force layer with id N for playback (default: -1 - auto).
dfbmga
Matrox G400/G450/G550 specific output driver that uses the DirectFB library. Enables CRTC2 (second head), displaying video independently of the first head.
(no)bes
Enable the use of the Matrox BES (backend scaler) (default: disabled). Gives very good results concerning speed and output quality as interpolated picture processing 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's a full interlaced picture with proper sync to every odd/even field.
(no)input
Use the DirectFB instead of the MPlayer keyboard code (default: disabled).
buffermode=single|dou- ble|triple
Double and triple buffering give best re- sults if you want to avoid tearing issues. Triple buffering is more efficent than dou- ble buffering as it doesn't block MPlayer while waiting for the vertical retrace. Single buffering should be avoided (de- fault: triple).
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 doesn't have any effect on progressive film material like most MPEG movies are. You need to enable this option if you have tearing issues/un- smooth motions watching interlaced film ma- terial.
tvnorm=pal|ntsc|auto
Will set the TV norm of the Matrox card without the need for modifying /etc/di- rectfbrc (default: disabled). Valid norms are pal = PAL, ntsc = NTSC. Special norm is auto (auto-adjust using PAL/NTSC) be- cause it decides which norm to use by look- ing at the frame rate of the movie.
mga (Linux only)
Matrox specific 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.
xmga (Linux, X11 only)
The mga output driver, running in an X11 window.
syncfb
Video output driver for the SyncFB kernel module, which provides special hardware features of Matrox Gxxx cards like hardware deinterlacing, scaling and synchronizing your video output to the vertical re- trace of your monitor.
3dfx (Linux only)
This driver employs the tdfx framebuffer driver to play movies with YUV acceleration.
tdfx_vid (Linux only)
3Dfx specific output driver. Works in conjunction with a kernel module.
dxr2
Creative DXR2 specific output driver. Also see the -dxr2 option.
x11
Enables overlay.
xv
Enables overlay.
dxr3
Sigma Designs em8300 MPEG decoder chip (Creative DXR3, Sigma Designs Hollywood Plus) specific output driver. Also see the lavc video filter.
overlay
Activates the overlay instead of TVOut.
prebuf
Turns on prebuffering.
sync
Will turn on the new sync-engine.
norm=<norm>
Specifies the TV norm.
0: Does not change current norm (de- fault).
1: Auto-adjust using PAL/NTSC.
2: Auto-adjust using PAL/PAL-60.
3: PAL
4: PAL-60
5: NTSC
device=<number>
Specifies the device number to use if you have more than one em8300 card.
mpegpes
DVB specific output driver.
zr
Output driver for a number of MJPEG capture/play- back cards. Also see the -zr* options and -zrhelp.
zr2
Output driver for a number of MJPEG capture/play- back cards, second generation. Also see the zr- mjpeg video filter.
md5
Writes md5sums for each frame into a file called 'md5' in the current directory. Useful for debug- ging.
yuv4mpeg
Transforms the video stream into a sequence of un- compressed YUV 4:2:0 images and stores it in a file called 'stream.yuv' in the current directory. Use- ful if you want to process the video with the mjpegtools suite.
gif89a
Output each frame into a GIF file in the current directory. Each file takes the frame number padded with leading zeros as name.
jpeg
Output each frame into a JPEG file in the current directory. Each file takes the frame number padded with leading zeros as name.
pgm
Output each frame into a PGM file in the current directory. Each file takes the frame number padded with leading zeros as name.
png
Output each frame into a PNG file in the current directory. Each file takes the frame number padded with leading zeros as name.
tga
Output each frame into a Targa file in the current directory. Each file takes the frame number padded with leading zeros as name.

GENERAL ENCODING OPTIONS (MENCODER ONLY)

-audio-delay <0.0-...>
Sets the audio delay field in the header. Default is 0.0, negative values do not work. This does not delay the audio while encoding, but the player will see the default audio delay, sparing you the use of the -delay option.
-audio-density <1-50>
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 <0.0-2.0>
Sets up audio buffering time interval (default: 0.5s).
-endpos <[[hh:]mm:]ss[.ms]|size[b|kb|mb]> (see -ss and -sb option too)
Stop encoding at given time or byte position. Can be specified in many ways:
NOTE:
Byte position won't be accurate, as it can only stop at a frame boundary.
EXAMPLE:
-endpos 56
encode only 56 seconds
-endpos 01:10:00
encode only 1 hour 10 minutes
-endpos 100mb
encode only 100 MBytes
-ffourcc <fourcc>
Can be used to override the video fourcc of the output file.
EXAMPLE:
-ffourcc div3
will have the output file contain 'div3' as video fourcc.
-force-avi-aspect <0.2-3.0>
Override the aspect stored in the AVI OpenDML vprp header. This can be used to change the aspect ra- tio with -ovc copy.
-info <option1:option2:...> (AVI only)
Specify the info header of the resulting AVI file.
Available options are:
help
show this description
name=<value>
title of the subject of the file
artist=<value>
artist or author of the original subject of the file
genre=<value>
original work category
subject=<value>
contents of the file
copyright=<value>
copyright information for the file
srcform=<value>
original form of the material that was dig- itized
comment=<value>
general comments about the file or the sub- ject of the file
-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 ren- dered when hardcoding subtitles onto a movie.
-noskip
Do not skip frames.
-o <filename>
Outputs to the given filename, instead of the de- fault 'test.avi'.
-oac <codec name>
Encode with the given audio codec. Use -oac help to get a list of available codecs. (no default set)
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 <format> (BETA CODE!)
Encode to the specified format. Use -of help to get a list of available formats.
EXAMPLE:
-of avi
encode to avi (default)
-of mpeg
encode to mpeg
-of rawvideo
raw video stream (no muxing - video only, one stream only)
-ofps <fps>
The output file will have different frame/sec than the source. You MUST set it for variable fps (asf, some mov) and progressive (29.97fps telecined mpeg) files.
-ovc <codec name>
Encode with the given video codec. Use -ovc help to get a list of available codecs. (no default set)
EXAMPLE:
-ovc copy
no encoding, just streamcopy
-ovc divx4
encode to DivX4/DivX5
-ovc raw
encode to arbitrary uncompressed format (use -vf format to select)
-ovc lavc
encode with a libavcodec codecs
-passlogfile <filename>
When encoding in 2pass mode, MEncoder dumps first pass' informations to the given file instead of the default divx2pass.log.
-skiplimit <value>
Maximum skippable frames after non-skipped one (-noskiplimit for unlimited number).
-vobsubout <basename>
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 <langid>
Specify the language two letter code for the subti- tles. This overrides what is read from the DVD or the .ifo file.
-vobsuboutindex <index>
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:
-<codec>opts <option1[=value],option2,...>
Where <codec> may be: lavc, xvidenc, divx4, lame
divx4 (-divx4opts)
DivX4 is obsolete and only supported for completeness. For details about DivX4 options, read the source, most op- tions are not described here.
help
get help
br=<value>
specify bitrate
4-16000
(in kbit)
16001-24000000
(in bit)
key=<value>
maximum keyframe interval (in frames)
deinterlace
enable deinterlacing (avoid it, DivX4 is buggy)
q=<1-5>
quality (1-fastest, 5-best)
min_quant=<1-31>
minimum quantizer
max_quant=<1-31>
maximum quantizer
rc_period=<value>
rate control period
rc_reaction_period=<value>
rate control reaction period
rc_reaction_ratio=<value>
rate control reaction ratio
crispness=<0-100>
specify crispness/smoothness
pass=<1-2>
With this you can encode 2pass DivX4 files. First encode with pass=1, then with the same parameters, encode with pass=2.
vbrpass=<0-2>
Override the pass argument and use XviD VBR Library instead of DivX4 VBR. Available options are:
0
one pass encoding (as in not putting pass on the command line)
1
Analysis (first) pass of two pass encoding. The resulting AVI file can be directed to /dev/null.
2
Final (second) pass of two pass encoding.
lame (-lameopts)
help
get help
vbr=<0-4>
variable bitrate method
0
cbr
1
mt
2
rh (default)
3
abr
4
mtrh
abr
average bitrate
cbr
constant bitrate.
Forces also CBR mode encoding on subsequent ABR presets modes
br=<0-1024>
specify bitrate in kBit (CBR and ABR only)
q=<0-9>
quality (0-highest, 9-lowest) (only for VBR)
aq=<0-9>
algorithmic quality (0-best/slowest, 9-worst/ fastest)
ratio=<1-100>
compression ratio
vol=<0-10>
set audio input gain
mode=<0-3>
(default: auto)
0
stereo
1
joint-stereo
2
dualchannel
3
mono
padding=<0-2>
0
no
1
all
2
adjust
fast
switch on faster encoding on subsequent VBR presets modes, slightly lower quality and higher bitrates.
highpassfreq=<freq>
Set a highpass filtering frequency in Hz. Frequen- cies below the specified one will be cut off. A value of -1 will disable filtering, a value of 0 will let lame choose values automatically.
lowpassfreq=<freq>
Set a lowpass filtering frequency in Hz. Frequen- cies above the specified one will be cut off. A value of -1 will disable filtering, a value of 0 will let lame choose values automatically.
preset=<value>
preset values
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.
<8-320>
ABR encoding at average given kbps bitrate.
EXAMPLE:
fast:preset=standard
for most people on most music and already quite high in 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 aver- age bitrate.
preset=extreme
for people with extremely good hearing and similar equipment.
preset=help
print additional options and informations on presets settings.
lavc (-lavcopts)
Many lavc options are very specialized and tersely docu- mented. Read the source for full details.
EXAMPLE:
vcodec=msmpeg4:vbi- trate=1800:vhq:keyint=250
acodec=<value>
Audio codec (default: mp2):
mp2
MPEG Layer 2
mp3
MPEG Layer 3
ac3
AC3
adpcm_ima_wav
IMA Adaptive PCM (4bits per sample, 4:1 compression)
abitrate=<value>
Audio bitrate in kBit (default 224).
atag=<value>
Use the specified Windows audio format tag (e.g. atag=0x55).
bit_exact
Use only bit exact algorithms (except (i)dct). Ad- ditionally bit_exact disables several optimizations and thus should only be used for regression tests, which need binary identical files even if the en- coder version changes. This also suppresses the user_data header in MPEG-4 streams. Do not use this option unless you know exactly what you are doing.
vcodec=<value>
use the specified codec (default: mpeg4):
mjpeg
Motion JPEG
ljpeg
Lossless JPEG
h263
H263
h263p
H263 Plus
mpeg4
DivX 4/5
msmpeg4
DivX 3
msmpeg4v2
MS MPEG4v2
wmv1
Windows Media Video, version 1 (aka WMV7)
wmv2
Windows Media Video, version 2 (aka WMV8)
rv10
an old RealVideo codec
mpeg1video
MPEG1 video
mpeg2video
MPEG2 video
huffyuv
HuffYUV
asv1
ASUS Video v1
asv2
ASUS Video v2
ffv1
FFmpeg's lossless video codec
vqmin=<1-31>
minimum quantizer (pass 1/2)
1
Not recommended (much larger file, little quality difference 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 en- coding (default).
3
Recommended for h263(p)/msmpeg4. The rea- son for preferring 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=<0.01-255.0>
Minimum lagrange multiplier for ratecontrol, you probably want it to be equal to or lower than vqmin. (default: 2.0)
lmax=<0.01-255.0>
Maximum lagrange multiplier for ratecontrol. (de- fault: 31.0)
vqscale=<1-31>
Constant quantizer / constant quality encoding (se- lects fixed quantizer mode). A lower value means better quality but larger files (default: 0 (dis- abled)). 1 is not recommended (see -vqmin for de- tails).
vqmax=<1-31>
maximum quantizer (pass 1/2) 10-31 should be a sane range (default: 31)
mbqmin=<1-31>
minimum macroblock quantizer (pass 1/2) (default: 2)
mbqmax=<1-31>
maximum macroblock quantizer (pass 1/2) (default: 31)
vqdiff=<1-31>
maximum quantizer difference between I or P frames (pass 1/2) (default: 3)
vmax_b_frames=<0-4>
maximum number of B frames between non B frames:
0
no B frames (default)
0-2
sane range for MPEG4
vme=<0-5>
motion estimation method. NOTE: 0-3 currently ig- nores the amount of Bits spent, so quality may be low. Available methods are:
0
none (very low quality)
1
full (slow)
2
log (low quality)
3
phods (low quality)
4
EPZS (default)
5
X1 (experimental)
me_range=<0-9999>
motion estimation search range, 0 (default) means unlimited
mbd=<0-2>
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.
0
use 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). (default: disabled)
obmc
overlapped block motion compensation (H263+)
loop
loop filter (H263+) note, this is broken
inter_threshold <-1000-1000>
Does absolutely nothing at the moment.
keyint=<0-300>
maximum interval between keyframes in frames. Keyframes are needed for seeking as seeking is only possible to a keyframe but keyframes need more space than other frames so larger numbers here mean slightly smaller files, but less precise seeking, 0 means no key frames. Values >300 are not recom- mended as the quality might be bad depending upon decoder, encoder and luck. For a strict MPEG1/2/4 compliance this would have to be <=132. (default: 250 or one key frame every ten seconds in a 25fps movie)
sc_threshold=<-1000000-1000000>
Threshold for scene change detection. Libavcodec inserts a keyframe when it detects a scene change. You can specify the sensitivity of the detection with this option. -1000000 means there is a scene change detected at every frame, 1000000 means no scene changes are detected (default 0).
vb_strategy=<0-1>
strategy to choose between I/P/B frames (pass 2):
0
always use the maximum number of B frames (default)
1
avoid B frames in high motion scenes (will cause bitrate misprediction)
vpass=<1-2>
Activates internal two pass mode, only specify if you wish to use two pass encoding (default: dis- abled).
1
first pass
2
second pass
huffyuv:
pass
saves statistics
pass
encodes with an optimal Huffman table based upon pass 1 statistics.
aspect=<x/y>
Store movie aspect internally, just like MPEG files. Much nicer solution than rescaling, because quality isn't decreased. Only MPlayer will play these files correctly, other players will display 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 com- putes aspect, taking into account all the adjust- ments (crop/expand/scale/etc.) made in the filter chain.
vbitrate=<value>
specify bitrate (pass 1/2). Warning: 1kBit = 1000 Bits.
4-16000
(in kbit)
16001-24000000
(in bit)
800
default
vratetol=<value>
approximated filesize tolerance in kBit. 1000-100000 is a sane range. (warning: 1kBit = 1000 Bits) (default: 8000)
vrc_maxrate=<value>
maximum bitrate in kbit/sec (pass 1/2)
vrc_minrate=<value>
minimum bitrate in kbit/sec (pass 1/2)
vrc_buf_size=<value>
buffer size in kbit (pass 1/2). For MPEG1/2 this also sets the vbv buffer size, use 327 for VCD, 917 for SVCD and 1835 for DVD. NOTE: vratetol should not be too large during the second pass or there might be problems if vrc_(min|max)rate is used.
vrc_buf_aggressivity
currently useless
vrc_strategy
Dummy, reserved for future use.
vb_qfactor=<-31.0-31.0>
quantizer factor between B and non B frames (pass 1/2) (default: 1.25)
vi_qfactor=<-31.0-31.0>
(pass 1/2) (default: 0.8)
vb_qoffset=<-31.0-31.0>
quantizer offset between B and non B frames (pass 1/2) (default: 1.25)
vi_qoffset=<-31.0-31.0>
(pass 1/2) (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 (dont lock to next P frame quantizer) and set q= -q * v{b|i}_qfactor + v{b|i}_qoffset
Tip: To do constant quantizer encoding with differ- ent quantizers for I/P and B frames you can use: lmin= <ip_quant>:lmax= <ip_quant>:vb_qfactor= <b_quant/ip_quant>
vqblur=<0.0-1.0> (pass 1)
Quantizer blur, larger values will average the quantizer more over time (slower change).
0.0
qblur disabled
0.5
(default)
1.0
average the quantizer over all previous frames
vqblur=<0.0-99.0> (pass 2)
Quantizer gaussian blur, larger values will average the quantizer more over time (slower change) (de- fault: 0.5).
vqcomp=<value>
quantizer compression, depends upon vrc_eq (pass 1/ 2) (default: 0.5)
vrc_eq=<equation>
main ratecontrol equation (pass 1/2):
1
constant bitrate
tex
constant quality
1+(tex/avgTex-1)*qComp
approximately the equation of the old rate- control code
tex^qComp
with qcomp 0.5 or something like that (de- fault)
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 macro blocks / number of macro blocks
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=<options>
User specified quality for specific parts (ending, credits, ..) (pass 1/2). The options are <start-frame>, <end-frame>, <quality>[/ <start-frame>, <end-frame>, <quality>[/...]]:
quality (2-31)
quantizer
quality (-500-0)
quality correction in %
vrc_init_cplx=<0-1000>
initial complexity (pass 1)
vqsquish=<0,1>
specify how to keep the quantizer between qmin and qmax (pass 1/2):
0
use clipping
1
use a nice differentiable function (de- fault)
vlelim=<-1000-1000>
single coefficient elimination threshold for lumi- nance. Negative values will also consider the dc coefficient (should be at least -4 or lower for en- coding at quant=1):
0
disabled (default)
-4
(JVT recommendation)
vcelim=<-1000-1000>
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=<-1,0,1>
strict standard compliance
0
disabled (default)
1
only recommended if you want to feed the output into the mpeg4 reference decoder
-1
allows non-standard YV12 huffyuv encoding (20% smaller files, but cannot be played by the official huffyuv codec)
vdpart
data partitioning. Adds 2 Bytes per video packet, improves error-resistance when transferring over unreliable channels (eg. streaming over the inter- net) Each video packet will be encoded in 3 sepa- rate partitions:
1. MVs
(movement)
2. DC coefficients
(low res picture)
3. AC coefficients
(details)
MV & DC are most important, loosing them looks far worse than loosing the AC and the 1. & 2. parti- tion. (MV&DC) are far smaller than the 3. parti- tion (AC) meaning that errors will hit the AC par- tition much more often than the MV&DC partitions. Thus, the picture will look better with partition- ing than without, as without partitioning an error will trash AC/DC/MV equally.
vpsize=<0-10000>
video packet size, improves error-resistance (see -vdpart option too):
0
disabled (default)
100-1000
good choice
ss
slice structured mode for H263+
gray
grayscale only encoding (faster) (default: dis- abled)
vfdct=<0-10>
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=<0-99>
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, DON'T USE for en- coding with keyint >100)
5
ps2
6
mlib
7
arm
8
altivec
9
sh4
lumi_mask=<0.0-1.0>
luminance masking. Warning: Be careful, too large values can cause disastrous things. Warning2: 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=<0.0-1.0>
darkness masking. Warning: be careful, too large values can cause disasterous things. Warning2: 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=<0.0-1.0>
temporal complexity masking (default: 0.0 (dis- abled))
scplx_mask=<0.0-1.0>
spatial complexity masking. Larger values help against blockiness, if no deblocking filter is used for decoding. Tip: Crop any black borders com- pletely as they will reduce the quality of the macro blocks (also applies without scplx_mask).
0.0
disabled (default)
0.0-0.5
sane range
p_mask=<0.0-1.0>
inter MB masking (default: 0.0 (disabled))
naq
Normalize adaptive quantization (experimental). When using adaptive quantization (*_mask), the av- erage per-MB quantizer may no longer match the re- quested 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
alt
use alternative scantable
top=<-1-1>
-1
automatic
0
bottom field first
1
top field first
format=<value>
YV12
default
444P
for ffv1
422P
for huffyuv, lossless jpeg and ffv1
411P,YVU9
for lossless jpeg and ffv1
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
qpel
use quarter pel motion compensation Tip: This seems only useful for high bitrate encodings.
ildctcmp=<0-2000>
comparison function for interlaced dct decision
precmp=<0-2000>
comparison function for motion estimation pre pass
cmp=<0-2000>
comparison function for full pel motion estimation
subcmp=<0-2000>
comparison function for sub pel motion estimation
mbcmp=<0-2000>
comparison function for the macroblock decision, only used if mbd=0
0 (SAD)
sum of absolute differences, fast (default)
1 (SSE)
sum of squared errors
2 (SATD)
sum of absolute hadamard transformed dif- ferences
3 (DCT)
sum of absolute dct transformed differences
4 (PSNR)
sum of the squared quantization errors (don't use, 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
+256
use chroma too, doesn't work (correctly) with B frames currently
predia=<-99-6>
Diamond type and size for motion estimation pre pass
dia=<-99-6>
Diamond type & size for motion estimation. NOTE: The sizes of the normal diamonds and shape adaptive ones don't have the same meaning.
-3
shape adaptive (fast) diamond with size 3
-2
shape adaptive (fast) diamond with size 2
-1
experimental
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 encoding for each 8x8 block. Trellis searched quantization is quite simple a optimal quantization in the PSNR vs bitrate sense (assuming that there would be no rounding errors introduced by the IDCT, which is obviously not the case) it simply finds a block for the minimum of error and lambda*bits.
lambda
qp dependant 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 se- lect the coded block pattern which minimizes dis- tortion + lambda*rate this can only be used togeth- er with trellis quantization
mv0
try to encode each MB with MV=<0,0> and choose the better one this has no effect if mbd=0
qprd
rate distorted optimal QP for the given lambda of each macroblock
last_pred=<0-99>
Amount of motion predictors from the previous frame
0
(default)
a
will use 2a+1 x 2a+1 macro block square of motion vector predictors from the previous frame
preme=<0-2>
motion estimation pre-pass
0
disabled
1
only after I frames (default)
2
always
subq=<1-8>
subpel refinement quality (for qpel) (default: 8). NOTE: This has a significant effect on speed.
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 (decibel), the higher the better.
mpeg_quant
use MPEG quantizers instead of H.263. (default: disabled) (i.e. use H.263 quantizers)
aic
ac prediction (=advanced intra prediction for H.263+) NOTE: vqmin should be 8 or larger for AIC H263+.
aiv
alternatice inter vlc for H.263+
umv
unlimited MVs (H.263+ only) Allow encoding of abri- tarily long MVs.
ibias=<-256-256>
intra quantizer bias (256 == 1.0)
mpeg style quantizer default: 96
h263 style quantizer default: 0
NOTE:
The h263 MMX quantizer cannot handle positive biases (set vfdct=1or2), the mpeg MMX quantizer cannot handle negative biases (set vfdct=1or2).
pbias=<-256-256>
inter quantizer bias (256 == 1.0)
mpeg style quantizer default: 0
h263 style quantizer default: -64
NOTE:
The h263 MMX quantizer cannot handle positive biases (set vfdct=1or2), the mpeg MMX quantizer cannot handle negative biases (set vfdct=1or2).
Tip: a more positive bias (-32 - -16 instead of -64) seems to improve the PSNR
nr=<0-100000>
noise reduction, 0 is disabled
qns=<0-3>
quantizer noise shaping, reduces ringing artefacts, larger values are slower but may not result in bet- ter quality this can and should be used together with trellis quantization, in which case the trel- lis quantization (optimal for constant weight) will be used as startpoint for the iterative search.
0
disabled (default)
1
only lower the absolute value of coeffi- cients
2
only change coefficients before the last non zero coefficient + 1
3
try all
inter_matrix=<comma separated matrix>
Use custom inter matrix. It needs a comma separated string of 64 integers.
intra_matrix=<comma separated matrix>
Use custom intra matrix. It needs a comma separated string of 64 integers.
vqmod_amp
experimental quantizer modulation
vqmod_freq
experimental quantizer modulation
nuv (-nuvopts)
Nuppel video is based on rtjpeg and lzo. By default frames are first encoded with rtjpeg and then compressed with lzo. But both passes can be enabled or not. So you can in fact output raw i420, lzo compressed i420, rtjpeg, or the default lzo compressed rtjpeg.
NOTE:
The nuvrec documentation contains some advice and examples about the settings to use for the most common TV encodings.
c=<0-20>
chrominance threshold
l=<0-20>
luminance threshold
nolzo
Disable the lzo compression.
q=<3-255>
Set the quality level.
raw
Disable rtjpeg encoding.
rtjpeg
Enable rtjpeg encoding.
xvidenc (-xvidencopts)
There are three modes available: constant bitrate (CBR), fixed quantizer and 2pass.
pass=<1|2>
specify the pass in 2pass mode
bitrate=<value>
sets the bitrate to be used in kbits/second if <16000 or in bits/second if >16000 (CBR or 2pass mode, default=687 kbits/s)
fixed_quant=<1-31>
switch to fixed quantizer mode and specify the quantizer to be used
me_quality=<0-6>
specify the motion detection quality (default=6)
interlacing
enable support for interlaced content (default=off)
4mv
use 4 motion vectors per macro-block, might give better compression at the cost of a slower encoding (default=off)
rc_reaction_delay_factor=<value>
specify how fast the rate control reacts, lower values are faster
rc_averaging_period=<value>
period to reach the required average
rc_buffer=<value>
size of the rate control buffer
quant_range=<1-31>-<1-31>[/<1-31>-<1-31>]
min & max quantizer for all frames (default=2-31, CBR mode)
min & max quantizer for I/P frames (de- fault=2-31/2-31, 2pass mode)
min_key_interval=<value>
minimum interval between key frames (default=0, 2pass only)
max_key_interval=<value>
maximum interval between key frames (de- fault=10*fps)
mpeg_quant
use MPEG quantizers instead of H.263 (default=off)
mod_quant
decide whether to use MPEG or H.263 quantizers on a frame-by-frame basis. (default=off, 2pass mode on- ly)
greyscale
encode in black & white (default=off)
debug
Save per-frame statistics in xvid.dbg (de- fault=off). This is NOT the 2pass control file.
keyframe_boost=<0-1000>
(default=0, 2pass mode only)
kfthreshold=<value>
(default=10, 2pass mode only)
kfreduction=<0-100>
(default=30, 2pass mode only)
The following options are only available with the latest stable XviD 0.9.2 (api3) version and are marked as experi- mental and unstable. The newest development version of XviD 1.0 (api4) supports them fully.
packed
create a bitstream that can be decoded delay-free (default=off)
WARNING:
this will generate an illegal bitstream, and WILL NOT be decodeable by ISO-MPEG4 decoders except DivX/libavcodec/XviD
WARNING:
this will also store a fake DivX version in the file so the bug autodetection of some de- coders might be confused
divx5bvop
generate DivX5 compatible B-frames (default=on)
qpel
enable quarter-pixel motion estimation (de- fault=off)
gmc
enable global motion compensation, may save bits on panning scenes (default=off)
chroma_me
uses chroma information to estimate motion (de- fault=off)
chroma_opt
enable a chroma optimizer prefilter (default=off)
reduced
enable encoding reduced resolution frames (de- fault=off)
max_bframes=<0-4>
maximum number of B frames to put between I/P frames (default=0)
bquant_ratio=<0-1000>
quantizer ratio between B and non B frames, 150=1.50 (default=150)
bquant_offset=<-1000-1000>
quantizer offset between B and non B frames, 100=1.00 (default=100)
bf_threshold=<-255-255>
change the probability of a frame to be a bframe (default=0)
hq_ac
enable a better prediction of AC component (de- fault=off)
vhq=<0-4>
enable a higher quality ME search using DCT, faster to slower:
0
off (default)
1
mode decision (inter/intra MB)
2
limited search
3
medium search
4
wide search
aspect=<x/y | f (float value)>
Store movie aspect internally, just like MPEG files. Much nicer solution than rescaling, because quality isn't decreased. MPlayer and few others players will play these files correctly, others will display them with the wrong aspect. The as- pect parameter can be given as a ratio or a float- ing point number.
autoaspect
Same as the aspect option, but automatically com- putes aspect, taking into account all the adjust- ments (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'. Returned values are in dB (decibel), the higher the better.

FILES

/etc/mplayer/mplayer.conf
system-wide settings
~/.mplayer/config
user settings
~/.mplayer/input.conf
input bindings (see '-input keylist' for full keylist)
~/.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
Sub files are searched for in this order (for example /mnt/cdrom/movie.avi):
/mnt/cdrom/movie.sub
~/.mplayer/sub/movie.sub
~/.mplayer/default.sub

EXAMPLES

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
Multiangle DVD playing
mplayer dvd://1 -dvdangle 2
Playing from a different DVD device
mplayer dvd://1 -dvd-device /dev/dvd2
Stream from HTTP
mplayer http://mplayer.hq/example.avi
Stream using RTSP
mplayer rtsp://server.example.com/streamName
Convert subtitle to MPsub (to ./dump.mpsub)
mplayer dummy.avi -sub source.sub -dumpmpsub
Convert subtitle to MPsub without watching the movie
mplayer /dev/zero -rawvideo on:pal:fps=xx -vc null -vo null -noframedrop -benchmark -sub source.sub -dumpmpsub
Input from standard V4L
mplayer tv:// -tv driv- er=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv
Playback on Zoran card (old style, deprecated)
mplayer -vo zr -vf scale=352:288 file.avi
Playback on Zoran card (new style)
mplayer -vo zr2 -vf scale=352:288,zrmjpeg file.avi
Encoding DVD title #2, only selected chapters
mencoder dvd://2 -chapter 10-15 -o title2.avi -oac copy -ovc divx4
Encoding DVD title #2, resizing to 640x480
mencoder dvd://2 -vf scale=640:480 -o title2.avi -oac copy -ovc divx4
Encoding DVD title #2, resizing to 512xHHH (keep aspect ratio)
mencoder dvd://2 -vf scale -zoom -xy 512 -o ti- tle2.avi -oac copy -ovc divx4
The same, but with libavcodec family, MPEG4 (Di- vx5) com- pression
mencoder dvd://2 -o title2.avi -ovc lavc -lavcopts vcodec=mpeg4:vhq:vbitrate=1800 -oac copy
The same, but with libavcodec family, MJPEG com- pression
mencoder dvd://2 -o titel2.avi -ovc lavc -lavcopts vcodec=mjpeg:vhq:vbitrate=1800 -oac copy
Encoding all *.jpg files in the current dir
mencoder "mf://*.jpg" -mf fps=25 -o output.avi -ovc divx4
Encoding from tuner
mencoder -tv driver=v4l:width=640:height=480 tv:// -o tv.avi -ovc raw
Encoding from a pipe
rar p test-SVCD.rar | mencoder -ovc divx4 -di- vx4opts br=800 -ofps 24 -

BUGS

If you find one, report it to us, but please make sure you have read all of the documentation first. Many bugs are the result of incorrect setup or parameter usage. The bug reporting section of the documentation (DOCS/HTML/en/bu- greports.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 contrib- utors.
MPlayer is (C) 2000-2004
The MPlayer Team
This man page is written and maintained by
Gabucino
Diego Biurrun
Jonas Jermann
Please send mails about it to the MPlayer-DOCS mailing list.

STANDARD DISCLAIMER

Use only at your own risk! There may be errors and inac- curacies that could be damaging to your system or your eye. Proceed with caution, and although this is highly unlikely, the authors don't take any responsibility for that!





N1GG Homepage   Linux Information Pages   Linux Video  
Video Formats   Video Disc Formats   Linux Video Programs Comparison   Essential Linux Video Apps  
Linux DVD Production Guide   Encoding DVDs With Mencoder  



N1GG Homepage   Linux Information Pages   Linux Video  
Photography   Silicon Graphics Computers   Music   Ham Radio  

Powered By Linux

Copyright ©2006 RT