You are on page 1of 133

MPlayer(1)

The Movie Player

MPlayer(1)

NAME
mplayer movie player mencoder movie encoder

SYNOPSIS
mplayer [options] [le|URL|playlist|] mplayer [options] le1 [specic options] [le2] [specic options] mplayer [options] {group of les and options} [group-specic options] mplayer [dvd|dvdnav]://[title|[start_title]end_title][/device] [options] mplayer vcd://track[/device] mplayer tv://[channel][/input_id] [options] mplayer radio://[channel|frequency][/capture] [options] mplayer pvr:// [options] mplayer dvb://[card_number@]channel [options] mplayer mf://[lemask|@listle] [mf options] [options] mplayer [cdda|cddb]://track[endtrack][:speed][/device] [options] mplayer cue://le[:track] [options] mplayer [le|mms[t]|http|http_proxy|rt[s]p|ftp|udp|unsv|icyx|noicyx|smb]:// [user:pass@]URL[:port] [options] mplayer sdp://le [options] mplayer mpst://host[:port]/URL [options] mplayer tivo://host/[list|llist|fsid] [options] gmplayer [options] [skin skin] mencoder [options] le [le|URL|] [o le | le://le | smb://[user:pass@]host/lepath] mencoder [options] le1 [specic options] [le2] [specic options]

DESCRIPTION
mplayer is a movie player for Linux (runs on many other platforms and CPU architectures, see the documentation). It plays most MPEG/VOB, AVI, ASF/WMA/WMV, RM, QT/MOV/MP4, Ogg/OGM, MKV, VIVO, FLI, NuppelVideo, yuv4mpeg, FILM and RoQ les, supported by many native and binary codecs. You can watch VCD, SVCD, DVD, 3ivx, DivX 3/4/5, WMV and even H.264 movies, too. MPlayer supports a wide range of video and audio output drivers. It works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, AAlib, libcaca, DirectFB, Quartz, Mac OS X CoreVideo, but you can also use GGI, SDL (and all their drivers), VESA (on every VESA-compatible card, even without X11), some low-level cardspecic drivers (for Matrox, 3dfx and ATI) and some hardware MPEG decoder boards, such as the Siemens DVB, Hauppauge PVR (IVTV), DXR2 and DXR3/Hollywood+. Most of them support software or hardware scaling, so you can enjoy movies in fullscreen mode. MPlayer has an onscreen display (OSD) for status information, nice big antialiased shaded subtitles and visual feedback for keyboard controls. European/ISO8859-1,2 (Hungarian, English, Czech, etc), Cyrillic and Korean fonts are supported along with 12 subtitle formats (MicroDVD, SubRip, OGM, SubViewer, Sami, VPlayer, RT, SSA, AQTitle, JACOsub, PJS and our own: MPsub) and DVD subtitles (SPU streams, VOBsub and Closed Captions). mencoder (MPlayers Movie Encoder) is a simple movie encoder, designed to encode MPlayer-playable movies (see above) to other MPlayer-playable formats (see below). It encodes to MPEG-4 (DivX/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 lter system (crop, expand, ip, postprocess, rotate, scale, noise, RGB/YUV conversion) and more. gmplayer is MPlayer with a graphical user interface. It has the same options as MPlayer. Usage examples to get you started quickly can be found at the end of this man page. Also see the HTML documentation!

INTERACTIVE CONTROL
MPlayer has a fully congurable, command-driven control layer which allows you to control MPlayer using keyboard, mouse, joystick or remote control (with LIRC). See the input option for ways to customize

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

it. keyboard control < and > Seek backward/forward 10 seconds. up and down Seek forward/backward 1 minute. pgup and pgdown Seek forward/backward 10 minutes. [ and ] Decrease/increase current playback speed by 10%. { and } Halve/double current playback speed. backspace Reset playback speed to normal. < and > Go backward/forward in the playlist. ENTER Go forward in the playlist, even over the end. HOME and END next/previous playtree entry in the parent list INS and DEL (ASX playlist only) next/previous alternative source. p / SPACE Pause (pressing again unpauses). . Step forward. Pressing once will pause movie, every consecutive press will play one frame and then go into pause mode again (any other key unpauses). q / ESC Stop playing and quit. U Stop playing (and quit if idle is not used). + and Adjust audio delay by +/ 0.1 seconds. / and * Decrease/increase volume. 9 and 0 Decrease/increase volume. ( and ) Adjust audio balance in favor of left/right channel. m Mute sound. _ (MPEG-TS, AVI and libavformat only) Cycle through the available video tracks. # (DVD, MPEG, Matroska, AVI and libavformat only) Cycle through the available audio tracks. TAB (MPEG-TS and libavformat only) Cycle through the available programs. f Toggle fullscreen (also see fs). T Toggle stay-on-top (also see ontop). w and e Decrease/increase pan-and-scan range. o Toggle OSD states: none / seek / seek + timer / seek + timer + total time. d Toggle frame dropping states: none / skip display / skip decoding (see framedrop and hardframedrop). v Toggle subtitle visibility. j Cycle through the available subtitles.

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

y and g Step forward/backward in the subtitle list. F Toggle displaying "forced subtitles". a Toggle subtitle alignment: top / middle / bottom. x and z Adjust subtitle delay by +/ 0.1 seconds. r and t Move subtitles up/down. i (edlout mode only) Set start or end of an EDL skip and write it out to the given le. s (vf screenshot only) Take a screenshot. S (vf screenshot only) Start/stop taking screenshots. I Show lename on the OSD. ! and @ Seek to the beginning of the previous/next chapter. D (vo xvmc, vo vdpau, vf yadif, vf kerndeint only) Activate/deactivate deinterlacer. A Cycle through the available DVD angles. (The following keys are valid only when using a hardware accelerated video output (xv, (x)vidix, (x)mga, etc), the software equalizer (vf eq or vf eq2) or hue lter (vf hue).) 1 and 2 Adjust contrast. 3 and 4 Adjust brightness. 5 and 6 Adjust hue. 7 and 8 Adjust saturation. (The following keys are valid only when using the quartz or macosx video output driver.) command + 0 Resize movie window to half its original size. command + 1 Resize movie window to its original size. command + 2 Resize movie window to double its original size. command + f Toggle fullscreen (also see fs). command + [ and command + ] Set movie window alpha. (The following keys are valid only when using the sdl video output driver.) c n Cycle through available fullscreen modes. Restore original mode.

(The following keys are valid if you have a keyboard with multimedia keys.)

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

PAUSE Pause. STOP Stop playing and quit. PREVIOUS and NEXT Seek backward/forward 1 minute. (The following keys are only valid if GUI support is compiled in and will take precedence over the keys dened above.) ENTER Start playing. ESC Stop playing. l Load le. t Load subtitle. c Open skin browser. p Open playlist. r Open preferences. (The following keys are only valid if you compiled with TV or DVB input support and will take precedence over the keys dened above.) h and k Select previous/next channel. n Change norm. u Change channel list. (The following keys are only valid if you compiled with dvdnav support: They are used to navigate the menus.) keypad 8 Select button up. keypad 2 Select button down. keypad 4 Select button left. keypad 6 Select button right. keypad 5 Return to main menu. keypad 7 Return to nearest menu (the order of preference is: chapter->title->root). keypad ENTER Conrm choice. (The following keys are only valid if teletext support is enabled during compilation: They are used for controlling TV teletext.) X Switch teletext on/off. Q and W Go to next/prev teletext page.

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

mouse control button 3 and button 4 Seek backward/forward 1 minute. button 5 and button 6 Decrease/increase volume. joystick control left and right Seek backward/forward 10 seconds. up and down Seek forward/backward 1 minute. button 1 Pause. button 2 Toggle OSD states: none / seek / seek + timer / seek + timer + total time. button 3 and button 4 Decrease/increase volume.

USAGE
Every ag option has a noag counterpart, e.g. the opposite of the fs option is nofs. If an option is marked as (XXX only), it will only work in combination with the XXX option or if XXX is compiled in. NOTE: The suboption parser (used for example for ao pcm suboptions) supports a special kind of stringescaping intended for use with external GUIs. It has the following format: %n%string_of_length_n EXAMPLES: mplayer ao pcm:le=%10%C:test.wav test.avi Or in a script: mplayer ao pcm:le=%expr length "$NAME"%"$NAME" test.avi

CONFIGURATION FILES
You can put all of the options in conguration les which will be read every time MPlayer/MEncoder is run. The system-wide conguration le mplayer.conf is in your conguration directory (e.g. /etc/mplayer or /usr/local/etc/mplayer), the user specic one is /.mplayer/cong. The conguration le for MEncoder is mencoder.conf in your conguration directory (e.g. /etc/mplayer or /usr/local/etc/mplayer), the user specic one is /.mplayer/mencoder.conf . User specic options override system-wide options and options given on the command line override either. The syntax of the conguration les is option=<value>, everything after a # is considered a comment. Options that work without values can be enabled by setting them to yes or 1 or true and disabled by setting them to no or 0 or false. Even suboptions can be specied in this way. You can also write le-specic conguration les. If you wish to have a conguration le for a le called movie.avi, create a le named movie.avi.conf with the le-specic options in it and put it in /.mplayer/. You can also put the conguration le in the same directory as the le to be played, as long as you give the useledirconf option (either on the command line or in your global cong le). EXAMPLE MPLAYER CONFIGURATION FILE: # Use Matrox driver by default. vo=xmga # I love practicing handstands while watching videos.

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

ip=yes # Decode/encode multiple les from PNG, # start with mf://lemask mf=type=png:fps=25 # Eerie negative images are cool. vf=eq2=1.0:0.8 EXAMPLE MENCODER CONFIGURATION FILE: # Make MEncoder output to a default lename. o=encoded.avi # The next 4 lines allow mencoder tv:// to start capturing immediately. oac=pcm=yes ovc=lavc=yes lavcopts=vcodec=mjpeg tv=driver=v4l2:input=1:width=768:height=576:device=/dev/video0:audiorate=48000 # more complex default encoding option set lavcopts=vcodec=mpeg4:autoaspect=1 lameopts=aq=2:vbr=4 ovc=lavc=1 oac=lavc=1 passlogle=pass1stats.log noautoexpand=1 subfont-autoscale=3 subfont-osd-scale=6 subfont-text-scale=4 subalign=2 subpos=96 spuaa=20

PROFILES
To ease working with different congurations proles can be dened in the conguration les. A prole starts with its name between square brackets, e.g. [my-prole]. All following options will be part of the prole. A description (shown by prole help) can be dened with the prole-desc option. To end the prole, start another one or use the prole name default to continue with normal options. EXAMPLE MPLAYER PROFILE:

[protocol.dvd] prole-desc="prole for dvd:// streams" vf=pp=hb/vb/dr/al/fd alang=en [protocol.dvdnav] prole-desc="prole for dvdnav:// streams" prole=protocol.dvd mouse-movements=yes nocache=yes [extension.v] prole-desc="prole for .v les" ip=yes

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

[vo.pnm] outdir=/tmp [ao.alsa] device=spdif EXAMPLE MENCODER PROFILE:

[mpeg4] prole-desc="MPEG4 encoding" ovc=lacv=yes lavcopts=vcodec=mpeg4:vbitrate=1200 [mpeg4hq] prole-desc="HQ MPEG4 encoding" prole=mpeg4 lavcopts=mbd=2:trell=yes:v4mv=yes

GENERAL OPTIONS
codecsle <lename> (also see afm, ac, vfm, vc) Override the standard search path and use the specied le instead of the builtin codecs.conf. include <conguration le> Specify conguration le to be parsed after the default ones. listoptions Prints all available options. msgcharset <charset> Convert console messages to the specied character set (default: autodetect). Text will be in the encoding specied with the charset congure option. Set this to "noconv" to disable conversion (for e.g. iconv problems). NOTE: The option takes effect after command line parsing has nished. The MPLAYER_CHARSET environment variable can help you get rid of the rst lines of garbled output. msgcolor Enable colorful console output on terminals that support ANSI color. msglevel <all=<level>:<module>=<level>:...> Control verbosity directly for each module. The all module changes the verbosity of all the modules not explicitly specied on the command line. See msglevel help for a list of all modules. NOTE: Some messages are printed before the command line is parsed and are therefore not affected by msglevel. To control these messages you have to use the MPLAYER_VERBOSE environment variable, see its description below for details. Available levels: 1 complete silence 0 fatal messages only 1 error messages 2 warning messages 3 short hints 4 informational messages

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

5 6 7 8 9

status messages (default) verbose messages debug level 2 debug level 3 debug level 4

msgmodule Prepend module name in front of each console message. nocong <options> Do not parse selected conguration les. NOTE: If include or useledirconf options are specied at the command line, they will be honoured. Available options are: all all conguration les gui (GUI only) GUI conguration le system system conguration le user user conguration le quiet Make console output less verbose; in particular, prevents the status line (i.e. A: 0.7 V: 0.6 A-V: 0.068 ...) from being displayed. Particularly useful on slow terminals or broken ones which do not properly handle carriage return (i.e. \r). priority <prio> (Windows and OS/2 only) Set process priority for MPlayer according to the predened priorities available under Windows and OS/2. Possible values of <prio>: idle|belownormal|normal|abovenormal|high|realtime WARNING: Using realtime priority can cause system lockup. prole <prole1,prole2,...> Use the given prole(s), prole help displays a list of the dened proles. reallyquiet (also see quiet) Display even less output and status messages than with quiet. Also suppresses the GUI error message boxes. showprole <prole> Show the description and content of a prole. useledirconf Look for a le-specic conguration le in the same directory as the le that is being played. WARNING: May be dangerous if playing from untrusted media. v Increment verbosity level, one level for each v found on the command line.

PLAYER OPTIONS (MPLAYER ONLY)


autoq <quality> (use with vf [s]pp) Dynamically changes the level of postprocessing depending on the available spare CPU time. The number you specify will be the maximum level used. Usually you can use some big number. You have to use vf [s]pp without parameters in order for this to work.

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

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 audio delay measurements. Specifying autosync 1 will do the same, but will subtly change the A/V correction algorithm. An uneven video framerate in a movie which plays ne 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 of playback. 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 innite 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, xover, xv (see vo xv:ck), xvmc (see vo xv:ck) and directx video output drivers. nocolorkey Disables colorkeying. Only supported by the cvidix, fbdev, svga, vesa, winvidix, xmga, xvidix, xover, xv (see vo xv:ck), xvmc (see vo xv:ck) and directx video output drivers. correctpts (EXPERIMENTAL) Switches MPlayer to an experimental mode where timestamps for video frames are calculated differently and video lters which add new frames or modify timestamps of existing ones are supported. The more accurate timestamps can be visible for example when playing subtitles timed to scene changes with the ass option. Without correctpts the subtitle timing will typically be off by some frames. This option does not work correctly with some demuxers and codecs. crashdebug (DEBUG CODE) Automatically attaches gdb upon crash or SIGTRAP. Support must be compiled in by conguring with enablecrashdebug. doubleclicktime Time in milliseconds to recognize two consecutive button presses as a double-click (default: 300). Set to 0 to let your windowing system decide what a double-click is (vo directx only). NOTE: You will get slightly different behaviour depending on whether you bind MOUSE_BTN0_DBL or MOUSE_BTN0MOUSE_BTN0_DBL. edlout <lename> Creates a new le and writes edit decision list (EDL) records to it. During playback, the user hits i to mark the start or end of a skip block. This provides a starting point from which the user can ne-tune EDL entries later. See http://www.mplayerhq.hu/DOCS/HTML/en/edl.html for details. enqueue (GUI only) Enqueue les given on the command line in the playlist instead of playing them immediately. xedvo Enforces a xed video system for multiple les (one (un)initialization for all les). Therefore only one window will be opened for all les. Currently the following drivers are xed-vo compliant: gl,

The MPlayer Project

2009-03-25

MPlayer(1)

The Movie Player

MPlayer(1)

gl2, mga, svga, x11, xmga, xv, xvidix and dfbmga. framedrop (also see hardframedrop, experimental without nocorrectpts) Skip displaying some frames to maintain A/V sync on slow systems. Video lters are not applied to such frames. For B-frames even decoding is skipped completely. (no)gui Enable or disable the GUI interface (default depends on binary name). Only works as the rst argument on the command line. Does not work as a cong-le option. h, help, help Show short summary of options. hardframedrop (experimental without nocorrectpts) More intense frame dropping (breaks decoding). Leads to image distortion! Note that especially the libmpeg2 decoder may crash with this, so consider using "vc ffmpeg12,". heartbeatcmd Command that is executed every 30 seconds during playback via system() - i.e. using the shell. NOTE: MPlayer uses this command without any checking, it is your responsibility to ensure it does not cause security problems (e.g. make sure to use full paths if "." is in your path like on Windows). It also only works when playing video (i.e. not with novideo but works with vo null). This can be "misused" to disable screensavers that do not support the proper X API (also see stopxscreensaver). If you think this is too complicated, ask the author of the screensaver program to support the proper X APIs. EXAMPLE for xscreensaver: mplayer heartbeatcmd "xscreensavercommand deactivate" le EXAMPLE for GNOME screensaver: mplayer heartbeatcmd "gnomescreensavercommand p" le identify Shorthand for msglevel identify=4. Show le parameters in an easily parseable format. Also prints more detailed information about subtitle and audio track languages and IDs. In some cases you can get more information by using msglevel identify=6. For example, for a DVD it will list the chapters and time length of each title, as well as a disk ID. Combine this with frames 0 to suppress all output. The wrapper script TOOLS/midentify.sh suppresses the other MPlayer output and (hopefully) shellescapes the lenames. idle (also see slave) Makes MPlayer wait idly instead of quitting when there is no le to play. Mostly useful in slave mode where MPlayer can be controlled through input commands. input <commands> This option can be used to congure certain parts of the input system. Paths are relative to /.mplayer/. NOTE: Autorepeat is currently only supported by joysticks. Available commands are:

The MPlayer Project

2009-03-25

10

MPlayer(1)

The Movie Player

MPlayer(1)

conf=<lename> Specify input conguration le other than the default /.mplayer/input.conf. /.mplayer/ <lename> is assumed if no full path is given. ar-dev=<device> Device to be used for Apple IR Remote (default is autodetected, Linux only). ar-delay Delay in milliseconds before we start to autorepeat a key (0 to disable). ar-rate Number of key presses to generate per second on autorepeat. (no)default-bindings Use the key bindings that MPlayer ships with by default. keylist Prints all keys that can be bound to commands. cmdlist Prints all commands that can be bound to keys. js-dev Species the joystick device to use (default: /dev/input/js0). le=<lename> Read commands from the given le. Mostly useful with a FIFO. NOTE: When the given le is a FIFO MPlayer opens both ends so you can do several echo "seek 10" > mp_pipe and the pipe will stay valid. keyfosize <265000> Specify the size of the FIFO that buffers key events (default: 7). A FIFO of size n can buffer (n1) events. If it is too small some events may be lost (leading to "stuck mouse buttons" and similar effects). If it is too big, MPlayer may seem to hang while it processes the buffered events. To get the same behavior as before this option was introduced, set it to 2 for Linux or 1024 for Windows. lircconf <lename> (LIRC only) Species a conguration le for LIRC (default: /.lircrc). listproperties Print a list of the available properties. loop <number> Loops movie playback <number> times. 0 means forever. menu (OSD menu only) Turn on OSD menu support. menucfg <lename> (OSD menu only) Use an alternative menu.conf. menuchroot <path> (OSD menu only) Chroot the le selection menu to a specic location. EXAMPLE: menuchroot /home Will restrict the le selection menu to /home and downward (i.e. no access to / will be possible, but /home/user_name will). menukeepdir (OSD menu only) File browser starts from the last known location instead of current directory.

The MPlayer Project

2009-03-25

11

MPlayer(1)

The Movie Player

MPlayer(1)

menuroot <value> (OSD menu only) Specify the main menu. menustartup (OSD menu only) Display the main menu at MPlayer startup. mousemovements Permit MPlayer to receive pointer events reported by the video output driver. Necessary to select the buttons in DVD menus. Supported for X11 based VOs (x11, xv, xvmc, etc.) and the gl, gl2, direct3d and macosx VOs. noar Turns off AppleIR remote support.

noconsolecontrols Prevent MPlayer from reading key events from standard input. Useful when reading data from standard input. This is automatically enabled when is found on the command line. There are situations where you have to set it manually, e.g. 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 loadle or loadlist slave commands. nojoystick Turns off joystick support. nolirc Turns off LIRC support. nomouseinput Disable mouse button press/release input (mozplayerxps context menu relies on this option). rtc (RTC only) Turns on usage of the Linux RTC (realtime clock /dev/rtc) as timing mechanism. This wakes up the process every 1/1024 seconds to check the current time. Useless with modern Linux kernels congured for desktop use as they already wake up the process with similar accuracy when using normal timed sleep. playingmsg <string> Print out a string before starting playback. The following expansions are supported: ${NAME} Expand to the value of the property NAME. ?(NAME:TEXT) Expand TEXT only if the property NAME is available. ?(!NAME:TEXT) Expand TEXT only if the property NAME is not available. playlist <lename> Play les according to a playlist le (ASX, Winamp, SMIL, or one-le-per-line format). NOTE: This option is considered an entry so options found after it will apply only to the elements of this playlist. FIXME: This needs to be claried and documented thoroughly.

The MPlayer Project

2009-03-25

12

MPlayer(1)

The Movie Player

MPlayer(1)

rtcdevice <device> Use the specied device for RTC timing. shufe Play les in random order. skin <name> (GUI only) Loads a skin from the directory given as parameter below the default skin directories, /usr/local/ share/mplayer/skins/ and /.mplayer/skins/. EXAMPLE: skin ttyfene Tries /usr/local/share/mplayer/skins/ttyfene and afterwards /.mplayer/skins/ttyfene. slave (also see input) Switches on slave mode, in which MPlayer works as a backend for other programs. Instead of intercepting keyboard events, MPlayer will read commands separated by a newline (\n) from stdin. NOTE: See input cmdlist for a list of slave commands and DOCS/tech/slave.txt for their description. Also, this is not intended to disable other inputs, e.g. via the video window, use some other method like input nodefaultbinds:conf=/dev/null for that. softsleep Time frames by repeatedly checking the current time instead of asking the kernel to wake up MPlayer at the correct time. Useful if your kernel timing is imprecise and you cannot use the RTC either. Comes at the price of higher CPU consumption. sstep <sec> Skip <sec> seconds after every frame. The normal framerate of the movie is kept, so playback is accelerated. Since MPlayer can only seek to the next keyframe this may be inexact.

DEMUXER/STREAM OPTIONS
a52drc <level> Select the Dynamic Range Compression level for AC-3 audio streams. <level> is a oat value ranging from 0 to 1, where 0 means no compression and 1 (which is the default) means full compression (make loud passages more silent and vice versa). This option only shows an effect if the AC-3 stream contains the required range compression information. aid <ID> (also see alang) Select audio channel (MPEG: 031, AVI/OGM: 199, ASF/RM: 0127, VOB(AC-3): 128159, VOB(LPCM): 160191, MPEG-TS 178190). MPlayer prints the available audio IDs when run in verbose (v) mode. When playing an MPEG-TS stream, MPlayer/MEncoder will use the rst program (if present) with the chosen audio stream. ausid <ID> (also see alang) Select audio substream channel. Currently the valid range is 0x55..0x75 and applies only to MPEG-TS when handled by the native demuxer (not by libavformat). The format type may not be correctly identied because of how this information (or lack thereof) is embedded in the stream, but it will demux correctly the audio streams when multiple substreams are present. MPlayer prints the available substream IDs when run with identify. alang <language code[,language code,...]> (also see aid) Specify a priority list of audio languages to use. Different container formats employ different language codes. DVDs use ISO 639-1 two letter language codes, Matroska, MPEG-TS and NUT use ISO 639-2 three letter language codes while OGM uses a free-form identier. MPlayer prints the

The MPlayer Project

2009-03-25

13

MPlayer(1)

The Movie Player

MPlayer(1)

available languages when run in verbose (v) mode. EXAMPLE: mplayer dvd://1 alang hu,en Chooses the Hungarian language track on a DVD and falls back on English if Hungarian is not available. mplayer alang jpn example.mkv Plays a Matroska le in Japanese. audiodemuxer <[+]name> (audiole only) Force audio demuxer type for audiole. Use a + before the name to force it, this will skip some checks! Give the demuxer name as printed by audiodemuxer help. For backward compatibility it also accepts the demuxer ID as dened in libmpdemux/demuxer.h. audiodemuxer audio or audiodemuxer 17 forces MP3. audiole <lename> Play audio from an external le (WAV, MP3 or Ogg Vorbis) while viewing a movie. audiolecache <kBytes> Enables caching for the stream used by audiole, using the specied amount of memory. reusesocket (udp:// only) Allows a socket to be reused by other processes as soon as it is closed. bandwidth <value> (network only) Specify the maximum bandwidth for network streaming (for servers that are able to send content in different bitrates). Useful if you want to watch live streamed media behind a slow connection. With Real RTSP streaming, it is also used to set the maximum delivery bandwidth allowing faster cache lling and stream dumping. cache <kBytes> This option species how much memory (in kBytes) to use when precaching a le or URL. Especially useful on slow media. nocache Turns off caching. cachemin <percentage> Playback will start when the cache has been lled up to <percentage> of the total. cacheseekmin <percentage> If a seek is to be made to a position within <percentage> of the cache size from the current position, MPlayer will wait for the cache to be lled to this position rather than performing a stream seek (default: 50). cdda <option1:option2> (CDDA only) This option can be used to tune the CD Audio reading feature of MPlayer. Available options are: speed=<value> Set CD spin speed.

The MPlayer Project

2009-03-25

14

MPlayer(1)

The Movie Player

MPlayer(1)

paranoia=<02> Set paranoia level. Values other than 0 seem to break playback of anything but the rst track. 0: disable checking (default) 1: overlap checking only 2: full data correction and verication generic-dev=<value> Use specied generic SCSI device. sector-size=<value> Set atomic read size. overlap=<value> Force minimum overlap search during verication 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 reconstruction. cdromdevice <path to device> Specify the CD-ROM device (default: /dev/cdrom). channels <number> (also see af channels) Request the number of playback channels (default: 2). MPlayer asks the decoder to decode the audio into as many channels as specied. Then it is up to the decoder to fulll the requirement. This is usually only important when playing videos with AC-3 audio (like DVDs). In that case liba52 does the decoding by default and correctly downmixes the audio into the requested number of channels. To directly control the number of output channels independently of how many channels are decoded, use the channels lter. NOTE: This option is honored by codecs (AC-3 only), lters (surround) and audio output drivers (OSS at least). Available options are: 2 4 6 stereo surround full 5.1

chapter <chapter ID>[<endchapter ID>] (dvd:// and dvdnav:// only) Specify which chapter to start playing at. Optionally specify which chapter to end playing at (default: 1). cookies (network only) Send cookies when making HTTP requests.

The MPlayer Project

2009-03-25

15

MPlayer(1)

The Movie Player

MPlayer(1)

cookiesle <lename> (network only) Read HTTP cookies from <lename> (default: /.mozilla/ and /.netscape/) and skip reading from default locations. The le is assumed to be in Netscape format. delay <sec> audio delay in seconds (positive or negative oat value) Negative values delay the audio, and positive values delay the video. Note that this is the exact opposite of the audiodelay MEncoder option. NOTE: When used with MEncoder, this is not guaranteed to work correctly with ovc copy; use audiodelay instead. ignorestart Ignore the specied starting time for streams in AVI les. In MPlayer, this nullies stream delays in les encoded with the audiodelay option. During encoding, this option prevents MEncoder from transferring original stream start times to the new le; the audiodelay option is not affected. Note that MEncoder sometimes adjusts stream starting times automatically to compensate for anticipated decoding delays, so do not use this option for encoding without testing it rst. demuxer <[+]name> Force demuxer type. Use a + before the name to force it, this will skip some checks! Give the demuxer name as printed by demuxer help. For backward compatibility it also accepts the demuxer ID as dened in libmpdemux/demuxer.h. dumpaudio (MPlayer only) Dumps raw compressed audio stream to ./stream.dump (useful with MPEG/AC-3, in most other cases the resulting le will not be playable). If you give more than one of dumpaudio, dumpvideo, dumpstream on the command line only the last one will work. dumple <lename> (MPlayer only) Specify which le 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. If you give more than one of dumpaudio, dumpvideo, dumpstream on the command line only the last one will work. dumpvideo (MPlayer only) Dump raw compressed video stream to ./stream.dump (not very usable). If you give more than one of dumpaudio, dumpvideo, dumpstream on the command line only the last one will work. dvbin <options> (DVB only) Pass the following parameters to the DVB input module, in order to override the default ones: card=<14> Species using card number 14 (default: 1). le=<lename> Instructs MPlayer to read the channels list from <lename>. Default is /.mplayer/channels.conf.{sat,ter,cbl,atsc} (based on your card type) or /.mplayer/channels.conf as a last resort. timeout=<130> Maximum number of seconds to wait when trying to tune a frequency before giving up (default: 30).

The MPlayer Project

2009-03-25

16

MPlayer(1)

The Movie Player

MPlayer(1)

dvddevice <path to device> (DVD only) Specify the DVD device or .iso lename (default: /dev/dvd). You can also specify a directory that contains les previously copied directly from a DVD (with e.g. vobcopy). dvdspeed <factor or speed in KB/s> (DVD only) Try to limit DVD speed (default: 0, no change). DVD base speed is about 1350KB/s, so a 8x drive can read at speeds up to 10800KB/s. Slower speeds make the drive more quiet, for watching DVDs 2700KB/s should be quiet and fast enough. MPlayer resets the speed to the drive default value on close. Values less than 100 mean multiples of 1350KB/s, i.e. dvdspeed 8 selects 10800KB/s. NOTE: You need write access to the DVD device to change the speed. dvdangle <angle ID> (DVD only) Some DVD discs contain scenes that can be viewed from multiple angles. Here you can tell MPlayer which angles to use (default: 1). edl <lename> 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 le. See http://www.mplayerhq.hu/DOCS/HTML/en/edl.html for details on how to use this. endpos <[[hh:]mm:]ss[.ms]|size[b|kb|mb]> (also see ss and sb) Stop at given time or byte position. NOTE: Byte position is enabled only for MEncoder and will not be accurate, as it can only stop at a frame boundary. When used in conjunction with ss option, endpos time will shift forward by seconds specied with ss. EXAMPLE: endpos 56 Stop at 56 seconds. endpos 01:10:00 Stop at 1 hour 10 minutes. ss 10 endpos 56 Stop at 1 minute 6 seconds. endpos 100mb Encode only 100 MB. forceidx Force index rebuilding. Useful for les with broken index (A/V desync, etc). This will enable seeking in les where seeking was not possible. You can x the index permanently with MEncoder (see the documentation). NOTE: This option only works if the underlying media supports seeking (i.e. not with stdin, pipe, etc). fps <oat value> Override video framerate. Useful if the original value is wrong or missing. frames <number> Play/convert only rst <number> frames, then quit. hrmp3seek (MP3 only) Hi-res MP3 seeking. Enabled when playing from an external MP3 le, as we need to seek to the very exact position to keep A/V sync. Can be slow especially when seeking backwards since it has to rewind to the beginning to nd an exact frame position.

The MPlayer Project

2009-03-25

17

MPlayer(1)

The Movie Player

MPlayer(1)

idx (also see forceidx) Rebuilds index of les if no index was found, allowing seeking. Useful with broken/incomplete downloads, or badly created les. NOTE: This option only works if the underlying media supports seeking (i.e. not with stdin, pipe, etc). noidx Skip rebuilding index le. MEncoder skips writing the index with this option. ipv4onlyproxy (network only) Skip the proxy for IPv6 addresses. It will still be used for IPv4 connections. loadidx <index le> The le from which to read the video index data saved by saveidx. This index will be used for seeking, overriding any index data contained in the AVI itself. MPlayer will not prevent you from loading an index le generated from a different AVI, but this is sure to cause unfavorable results. NOTE: This option is obsolete now that 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 les. Available options are: w=<value> input le width (default: autodetect) h=<value> input le height (default: autodetect) fps=<value> output fps (default: 25) type=<value> input le type (available: jpeg, png, tga, sgi) ni (AVI only) Force usage of non-interleaved AVI parser (xes playback of some bad AVI les). nobps (AVI only) Do not use average byte/second value for A-V sync. Helps with some AVI les with broken header. noextbased Disables extension-based demuxer selection. By default, when the le type (demuxer) cannot be detected reliably (the le has no header or it is not reliable enough), the lename extension is used to select the demuxer. Always falls back on content-based demuxer selection. passwd <password> (also see user) (network only) Specify password for HTTP authentication. preferipv4 (network only) Use IPv4 on network connections. Falls back on IPv6 automatically.

The MPlayer Project

2009-03-25

18

MPlayer(1)

The Movie Player

MPlayer(1)

preferipv6 (IPv6 network only) Use IPv6 on network connections. Falls back on IPv4 automatically. psprobe <byte position> When playing an MPEG-PS or MPEG-PES streams, this option lets you specify how many bytes in the stream you want MPlayer to scan in order to identify the video codec used. This option is needed to play EVO or VDR les containing H.264 streams. pvr <option1:option2:...> (PVR only) This option tunes various encoding properties of the PVR capture module. It has to be used with any hardware MPEG encoder based card supported by the V4L2 driver. The Hauppauge WinTV PVR150/250/350/500 and all IVTV based cards are known as PVR capture cards. Be aware that only Linux 2.6.18 kernel and above is able to handle MPEG stream through V4L2 layer. For hardware capture of an MPEG stream and watching it with MPlayer/MEncoder, use pvr:// as a movie URL. Available options are: aspect=<03> Specify input aspect ratio: 0: 1:1 1: 4:3 (default) 2: 16:9 3: 2.21:1 arate=<3200048000> Specify encoding audio rate (default: 48000 Hz, available: 32000, 44100 and 48000 Hz). alayer=<13> Specify MPEG audio layer encoding (default: 2). abitrate=<32448> Specify audio encoding bitrate in kbps (default: 384). amode=<value> Specify audio encoding mode. Available preset values are stereo, joint_stereo, dual and mono (default: stereo). vbitrate=<value> Specify average video bitrate encoding in Mbps (default: 6). vmode=<value> Specify video encoding mode: vbr: Variable BitRate (default) cbr: Constant BitRate vpeak=<value> Specify peak video bitrate encoding in Mbps (only useful for VBR encoding, default: 9.6). fmt=<value> Choose an MPEG format for encoding: ps: MPEG-2 Program Stream (default) ts: MPEG-2 Transport Stream

The MPlayer Project

2009-03-25

19

MPlayer(1)

The Movie Player

MPlayer(1)

mpeg1: MPEG-1 System Stream vcd: Video CD compatible stream svcd: Super Video CD compatible stream dvd: DVD compatible stream radio <option1:option2:...> (radio only) These options set various parameters of the radio capture module. For listening to radio with MPlayer use radio://<frequency> (if channels option is not given) or radio://<channel_number> (if channels option is given) as a movie URL. You can see allowed frequency range by running MPlayer with v. To start the grabbing subsystem, use radio://<frequency or channel>/capture. If the capture keyword is not given you can listen to radio using the line-in cable only. Using capture to listen is not recommended due to synchronization problems, which makes this process uncomfortable. Available options are: device=<value> Radio device to use (default: /dev/radio0 for Linux and /dev/tuner0 for *BSD). driver=<value> Radio driver to use (default: v4l2 if available, otherwise v4l). Currently, v4l and v4l2 drivers are supported. volume=<0..100> sound volume for radio device (default 100) freq_min=<value> (*BSD BT848 only) minimum allowed frequency (default: 87.50) freq_max=<value> (*BSD BT848 only) maximum allowed frequency (default: 108.00) channels=<frequency><name>,<frequency><name>,... Set channel list. Use _ for spaces in names (or play with quoting ;-). The channel names will then be written using OSD and the slave commands radio_step_channel and radio_set_channel will be usable for a remote control (see LIRC). If given, number in movie URL will be treated as channel position in channel list. EXAMPLE: radio://1, radio://104.4, radio_set_channel 1 adevice=<value> (radio capture only) Name of device to capture sound from. Without such a name capture will be disabled, even if the capture keyword appears in the URL. For ALSA devices use it in the form hw=<card>.<device>. If the device name contains a =, the module will use ALSA to capture, otherwise OSS. arate=<value> (radio capture only) Rate in samples per second (default: 44100). NOTE: When using audio capture set also rawaudio rate=<value> option with the same value as arate. If you have problems with sound speed (runs too quickly), try to play with different rate values (e.g. 48000,44100,32000,...). achannels=<value> (radio capture only) Number of audio channels to capture.

The MPlayer Project

2009-03-25

20

MPlayer(1)

The Movie Player

MPlayer(1)

rawaudio <option1:option2:...> This option lets you play raw audio les. You have to use demuxer rawaudio as well. It may also be used to play audio CDs which are not 44kHz 16-bit stereo. For playing raw AC-3 streams use rawaudio format=0x2000 demuxer rawaudio. Available options are: channels=<value> number of channels rate=<value> rate in samples per second samplesize=<value> sample size in bytes bitrate=<value> bitrate for rawaudio les format=<value> fourcc in hex rawvideo <option1:option2:...> This option lets you play raw video les. You have to use demuxer rawvideo as well. Available options are: 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 i420|yv12|yuy2|y8 set colorspace format=<value> colorspace (fourcc) in hex or string constant. Use rawvideo format=help for a list of possible strings. size=<value> frame size in Bytes EXAMPLE: mplayer foreman.qcif -demuxer rawvideo -rawvideo qcif Play the famous "foreman" sample video. mplayer sample-720x576.yuv -demuxer rawvideo -rawvideo w=720:h=576 Play a raw YUV sample. rtspport Used with rtsp:// URLs to force the clients port number. This option may be useful if you are behind a router and want to forward the RTSP stream from the server to a specic client. rtspdestination Used with rtsp:// URLs to force the destination IP address to be bound. This option may be useful with some RTSP server which do not send RTP packets to the right interface. If the connection to the RTSP server fails, use v to see which IP address MPlayer tries to bind to and try to force it to one assigned to your computer instead.

The MPlayer Project

2009-03-25

21

MPlayer(1)

The Movie Player

MPlayer(1)

rtspstreamovertcp (LIVE555 and NEMESI only) Used with rtsp:// URLs to specify that the resulting 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 internet connection that does not pass incoming UDP packets (see http://www.live555.com/mplayer/). saveidx <lename> Force index rebuilding and dump the index to <lename>. Currently this only works with AVI les. NOTE: This option is obsolete now that MPlayer has OpenDML support. sb <byte position> (also see ss) Seek to byte position. Useful for playback from CD-ROM images or VOB les with junk at the beginning. speed <0.01100> Slow down or speed up playback by the factor given as parameter. Not guaranteed to work correctly with oac copy. srate <Hz> Selects the output sample rate to be used (of course sound cards have limits on this). If the sample frequency selected is different from that of the current media, the resample or lavcresample audio lter will be inserted into the audio lter layer to compensate for the difference. The type of resampling can be controlled by the afadv option. The default is fast resampling that may cause distortion. ss <time> (also see sb) 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 les. 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 IDs. tsprog <165534> 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. tv <option1:option2:...> (TV/PVR only) This option tunes various properties of the TV capture module. For watching TV with MPlayer, use tv:// or tv://<channel_number> or even tv://<channel_name> (see option channels for channel_name below) as a movie URL. You can also use tv:///<input_id> to start watching a movie from a composite or S-Video input (see option input for details). Available options are:

The MPlayer Project

2009-03-25

22

MPlayer(1)

The Movie Player

MPlayer(1)

noaudio no sound automute=<0255> (v4l and v4l2 only) If signal strength reported by device is less than this value, audio and video will be muted. In most cases automute=100 will be enough. Default is 0 (automute disabled). driver=<value> See tv driver=help for a list of compiled-in TV input drivers. available: dummy, v4l, v4l2, bsdbt848 (default: autodetect) device=<value> Specify TV device (default: /dev/video0). NOTE: For the bsdbt848 driver you can provide both bktr and tuner device names separating them with a comma, tuner after bktr (e.g. -tv device=/dev/bktr1,/dev/tuner1). input=<value> Specify input (default: 0 (TV), see console output for available inputs). freq=<value> Specify the frequency to set the tuner to (e.g. 511.250). Not compatible with the channels 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> output window width height=<value> output window height 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> For bsdbt848 and v4l, PAL, SECAM, NTSC are available. For v4l2, see the console output for a list of all available norms, also see the normid option below. normid=<value> (v4l2 only) Sets the TV norm to the given numeric ID. The TV norm depends on the capture card. See the console 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

The MPlayer Project

2009-03-25

23

MPlayer(1)

The Movie Player

MPlayer(1)

channels=<chan><name>[=<norm>],<chan><name>[=<norm>],... Set names for channels. NOTE: If <chan> is an integer greater than 1000, it will be treated as frequency (in kHz) rather than channel name from frequency table. Use _ for spaces in names (or play with quoting ;-). The channel names will then be written using OSD, and the slave commands tv_step_channel, tv_set_channel and tv_last_channel will be usable for a remote control (see LIRC). Not compatible with the frequency parameter. NOTE: The channel number will then be the position in the channels list, beginning with 1. EXAMPLE: tv://1, tv://TV1, tv_set_channel 1, tv_set_channel TV1 [brightness|contrast|hue|saturation]=<100100> Set the image 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=<03> Choose an audio mode: 0: mono 1: stereo 2: language 1 3: language 2 forcechan=<12> By default, the count of recorded audio channels is determined automatically by querying the audio mode from the TV card. This option allows forcing 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. <value> should be /dev/xxx for OSS and a hardware ID for ALSA. You must replace any : by a . in the hardware ID for ALSA. audioid=<value> Choose an audio output of the capture card, if it has more than one. [volume|bass|treble|balance]=<065535> (v4l1) [volume|bass|treble|balance]=<0100> (v4l2) These options set parameters of the mixer on the video capture card. They will have no effect, if your card does not have one. For v4l2 50 maps to the default value of the control, as reported by the driver. gain=<0100> (v4l2) Set gain control for video devices (usually webcams) to the desired value and switch off automatic control. A value of 0 enables automatic control. If this option is omitted, gain control will not be modied.

The MPlayer Project

2009-03-25

24

MPlayer(1)

The Movie Player

MPlayer(1)

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 sound card. 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 decimation 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=<0100> Choose the quality of the JPEG compression (< 60 recommended for full size). tdevice=<value> Specify TV teletext device (example: /dev/vbi0) (default: none). tformat=<format> Specify TV teletext display format (default: 0): 0: opaque 1: transparent 2: opaque with inverted colors 3: transparent with inverted colors tpage=<100899> Specify initial TV teletext page number (default: 100). tlang=<1127> Specify default teletext language code (default: 0), which will be used as primary language until a type 28 packet is received. Useful when the teletext system uses a nonlatin character set, but language codes are not transmitted via teletext type 28 packets for some reason. To see a list of supported language codes set this option to 1. hidden_video_renderer (dshow only) Terminate stream with video renderer instead of Null renderer (default: off). Will help if video freezes but audio does not. NOTE: May not work with vo directx and vf crop combination. hidden_vp_renderer (dshow only) Terminate VideoPort pin stream with video renderer instead of removing it from the graph (default: off). Useful if your card has a VideoPort pin and video is choppy. NOTE: May not work with vo directx and vf crop combination.

The MPlayer Project

2009-03-25

25

MPlayer(1)

The Movie Player

MPlayer(1)

system_clock (dshow only) Use the system clock as sync source instead of the default graph clock (usually the clock from one of the live sources in graph). normalize_audio_chunks (dshow only) Create audio chunks with a time length equal to video frame time length (default: off). Some audio cards create audio chunks about 0.5s in size, resulting in choppy video when using immediatemode=0. tvscan <option1:option2:...> (TV and MPlayer only) Tune the TV channel scanner. MPlayer will also print value for "-tv channels=" option, including existing and just found channels. Available suboptions are: autostart Begin channel scanning immediately after startup (default: disabled). period=<0.12.0> Specify delay in seconds before switching to next channel (default: 0.5). Lower values will cause faster scanning, but can detect inactive TV channels as active. threshold=<1100> Threshold value for the signal strength (in percent), as reported by the device (default: 50). A signal strength higher than this value will indicate that the currently scanning channel is active. user <username> (also see passwd) (network only) Specify username for HTTP authentication. useragent <string> Use <string> as user agent for HTTP streaming. vid <ID> Select video channel (MPG: 015, ASF: 0255, MPEG-TS: 178190). When playing an MPEGTS stream, MPlayer/MEncoder will use the rst program (if present) with the chosen video stream. vivo <suboption> (DEBUG CODE) Force audio parameters for the VIVO demuxer (for debugging purposes). FIXME: Document this.

OSD/SUBTITLE OPTIONS
NOTE: Also see vf expand. ass (FreeType only) Turn on SSA/ASS subtitle rendering. With this option, libass will be used for SSA/ASS external subtitles and Matroska tracks. You may also want to use embeddedfonts. NOTE: Unlike normal OSD, libass uses fontcong by default. To disable it, use nofontcong. assbordercolor <value> Sets the border (outline) color for text subtitles. The color format is RRGGBBAA.

The MPlayer Project

2009-03-25

26

MPlayer(1)

The Movie Player

MPlayer(1)

assbottommargin <value> Adds a black band at the bottom of the frame. The SSA/ASS renderer can place subtitles there (with assusemargins). asscolor <value> Sets the color for text subtitles. The color format is RRGGBBAA. assfontscale <value> Set the scale coefcient to be used for fonts in the SSA/ASS renderer. assforcestyle <[Style.]Param=Value[,...]> Override some style or script info parameters. EXAMPLE: assforcestyle FontName=Arial,Default.Bold=1 assforcestyle PlayResY=768 asshinting <type> Set hinting type. <type> can be: 0 no hinting 1 FreeType autohinter, light mode 2 FreeType autohinter, normal mode 3 font native hinter 0-3 + 4 The same, but hinting will only be performed if the OSD is rendered at screen resolution and will therefore not be scaled. The default value is 7 (use native hinter for unscaled OSD and no hinting otherwise). asslinespacing <value> Set line spacing value for SSA/ASS renderer. assstyles <lename> Load all SSA/ASS styles found in the specied le and use them for rendering text subtitles. The syntax of the le is exactly like the [V4 Styles] / [V4+ Styles] section of SSA/ASS. asstopmargin <value> Adds a black band at the top of the frame. The SSA/ASS renderer can place toptitles there (with assusemargins). assusemargins Enables placing toptitles and subtitles in black borders when they are available. dumpjacosub (MPlayer only) Convert the given subtitle (specied with the sub option) to the time-based JACOsub subtitle format. Creates a dumpsub.js le in the current directory. dumpmicrodvdsub (MPlayer only) Convert the given subtitle (specied with the sub option) to the MicroDVD subtitle format. Creates a dumpsub.sub le in the current directory. dumpmpsub (MPlayer only) Convert the given subtitle (specied with the sub option) to MPlayers subtitle format, MPsub. Creates a dump.mpsub le in the current directory.

The MPlayer Project

2009-03-25

27

MPlayer(1)

The Movie Player

MPlayer(1)

dumpsami (MPlayer only) Convert the given subtitle (specied with the sub option) to the time-based SAMI subtitle format. Creates a dumpsub.smi le in the current directory. dumpsrtsub (MPlayer only) Convert the given subtitle (specied with the sub option) to the time-based SubViewer (SRT) subtitle format. Creates a dumpsub.srt le in the current directory. NOTE: Some broken hardware players choke on SRT subtitle les with Unix line endings. If you are unlucky enough to have such a box, pass your subtitle les through unix2dos or a similar program to replace Unix line endings with DOS/Windows line endings. dumpsub (MPlayer only) (BETA CODE) Dumps the subtitle substream from VOB streams. Also see the dump*sub and vobsubout* options. embeddedfonts (FreeType only) Enables extraction of Matroska embedded fonts (default: disabled). These fonts can be used for SSA/ASS subtitle rendering (ass option). Font les are created in the /.mplayer/fonts directory. NOTE: With FontCong 2.4.2 or newer, embedded fonts are opened directly from memory, and this option is enabled by default. ffactor <number> Resample the font alphamap. Can be: 0 plain white fonts 0.75 very narrow black outline (default) 1 narrow black outline 10 bold black outline iphebrew (FriBiDi only) Turns on ipping subtitles using FriBiDi. noiphebrewcommas Change FriBiDis assumptions about the placements of commas in subtitles. Use this if commas in subtitles are shown at the start of a sentence instead of at the end. font <path to font.desc le, path to font (FreeType), font pattern (Fontcong)> Search for the OSD/SUB fonts in an alternative directory (default for normal fonts: /.mplayer/ font/font.desc, default for FreeType fonts: /.mplayer/subfont.ttf). NOTE: With FreeType, this option determines the path to the text font le. With Fontcong, this option determines the Fontcong font pattern. EXAMPLE: font /.mplayer/arial-14/font.desc font /.mplayer/arialuni.ttf font Bitstream Vera Sans font Bitstream Vera Sans:style=Bold fontcong (fontcong only) Enables the usage of fontcong managed fonts. NOTE: By default fontcong is used for libass-rendered subtitles and not used for OSD. With fontcong it is used for both libass and OSD, with nofontcong it is not used at all.

The MPlayer Project

2009-03-25

28

MPlayer(1)

The Movie Player

MPlayer(1)

forcedsubsonly Display only forced subtitles for the DVD subtitle stream selected by e.g. slang. fribidicharset <charset name> (FriBiDi only) Species the character set that will be passed to FriBiDi when decoding non-UTF-8 subtitles (default: ISO8859-8). ifo <VOBsub IFO le> Indicate the le that will be used to load palette and frame size for VOBsub subtitles. noautosub Turns off automatic subtitle le loading. osdduration <time> Set the duration of the OSD messages in ms (default: 1000). osdlevel <03> (MPlayer only) Species 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 specic formats). sid <ID> (also see slang, vobsubid) Display the subtitle stream specied by <ID> (031). MPlayer prints the available subtitle IDs when run in verbose (v) mode. If you cannot select one of the subtitles on a DVD, also try vobsubid. slang <language code[,language code,...]> (also see sid) Specify a priority list of subtitle languages to use. Different container formats employ different language codes. DVDs use ISO 639-1 two letter language codes, Matroska uses ISO 639-2 three letter language codes while OGM uses a free-form identier. MPlayer prints the available languages when run in verbose (v) mode. EXAMPLE: mplayer dvd://1 slang hu,en Chooses the Hungarian subtitle track on a DVD and falls back on English if Hungarian is not available. mplayer slang jpn example.mkv Plays a Matroska le with Japanese subtitles. spuaa <mode> Antialiasing/scaling mode for DVD/VOBsub. A value of 16 may be added to <mode> in order to force scaling even when original and scaled frame size already match. This can be employed to e.g. smooth subtitles with gaussian blur. Available modes are: 0 none (fastest, very ugly) 1 approximate (broken?) 2 full (slow) 3 bilinear (default, fast and not too bad)

The MPlayer Project

2009-03-25

29

MPlayer(1)

The Movie Player

MPlayer(1)

uses swscaler gaussian blur (looks very good)

spualign <12> Specify how SPU (DVD/VOBsub) subtitles should be aligned. 1 original position 0 Align at top (original behavior, default). 1 Align at center. 2 Align at bottom. spugauss <0.03.0> Variance parameter of gaussian used by spuaa 4. Higher means more blur (default: 1.0). sub <subtitlele1,subtitlele2,...> Use/display these subtitle les. Only one le can be displayed at the same time. subbgalpha <0255> Specify the alpha channel value for subtitles and OSD backgrounds. Big values mean more transparency. 0 means completely transparent. subbgcolor <0255> Specify the color value for subtitles and OSD backgrounds. Currently subtitles are grayscale so this value is equivalent to the intensity of the color. 255 means white and 0 black. subdemuxer <[+]name> (suble only) (BETA CODE) Force subtitle demuxer type for suble. Use a + before the name to force it, this will skip some checks! Give the demuxer name as printed by subdemuxer help. For backward compatibility it also accepts the demuxer ID as dened in subreader.h. subfuzziness <mode> Adjust matching fuzziness when searching for subtitles: 0 exact match 1 Load all subs containing movie name. 2 Load all subs in the current directory. subnotextpp Disables any kind of text post processing done after loading the subtitles. Used for debug purposes. subalign <02> Specify which edge of the subtitles should be aligned at the height given by subpos. 0 Align subtitle top edge (original behavior). 1 Align subtitle center. 2 Align subtitle bottom edge (default). 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 subtitles have not been spotted on DVDs from other regions so far. subcp <codepage> (iconv only) If your system supports iconv(3), you can use this option to specify the subtitle codepage. EXAMPLE: subcp latin2

The MPlayer Project

2009-03-25

30

MPlayer(1)

The Movie Player

MPlayer(1)

subcp cp1250 subcp enca:<language>:<fallback codepage> (ENCA only) You can specify your language using a two letter language code to make ENCA detect the codepage automatically. If unsure, enter anything and watch mplayer v output for available languages. Fallback codepage species the codepage to use, when autodetection fails. EXAMPLE: subcp enca:cs:latin2 Guess the encoding, assuming the subtitles are Czech, fall back on latin 2, if the detection fails. subcp enca:pl:cp1250 Guess the encoding for Polish, fall back on cp1250. subdelay <sec> Delays subtitles by <sec> seconds. Can be negative. suble <lename> (BETA CODE) Currently useless. Same as audiole, but for subtitle streams (OggDS?). subfont <path to font (FreeType), font pattern (Fontcong)> (FreeType only) Sets the subtitle font (see font). If no subfont is given, font is used. subfontautoscale <03> (FreeType only) Sets the autoscale mode. NOTE: 0 means that text scale and OSD scale are font heights in points. The mode can be: 0 1 2 3 no autoscale proportional to movie height proportional to movie width proportional to movie diagonal (default)

subfontblur <08> (FreeType only) Sets the font blur radius (default: 2). subfontencoding <value> (FreeType only) Sets the font encoding. When set to unicode, all the glyphs from the font le will be rendered and unicode will be used (default: unicode). subfontosdscale <0100> (FreeType only) Sets the autoscale coefcient of the OSD elements (default: 6). subfontoutline <08> (FreeType only) Sets the font outline thickness (default: 2). subfonttextscale <0100> (FreeType only) Sets the subtitle text autoscale coefcient as percentage of the screen size (default: 5). subfps <rate> Specify the framerate of the subtitle le (default: movie fps). NOTE: <rate> > movie fps speeds the subtitles up for frame-based subtitle les and slows them down for time-based ones.

The MPlayer Project

2009-03-25

31

MPlayer(1)

The Movie Player

MPlayer(1)

subpos <0100> (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 <10100> 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. notermosd Disable the display of OSD messages on the console when no video output is available. termosdesc <escape sequence> Specify the escape sequence to use before writing an OSD message on the console. The escape sequence should move the pointer to the beginning of the line used for the OSD and clear it (default: [[A\r[[K). unicode Tells MPlayer to handle the subtitle le as unicode. unrarexec <path to unrar executable> (not supported on MingW) Specify the path to the unrar executable so MPlayer can use it to access rar-compressed VOBsub les (default: not set, so the feature is off). The path must include the executables lename, i.e. /usr/local/bin/unrar. utf8 Tells MPlayer to handle the subtitle le as UTF-8.

vobsub <VOBsub le without extension> Specify a VOBsub le to use for subtitles. Has to be the full pathname without extension, i.e. without the .idx, .ifo or .sub. vobsubid <031> Specify the VOBsub subtitle ID.

AUDIO OUTPUT OPTIONS (MPLAYER ONLY)


abs <value> (ao oss only) (OBSOLETE) Override audio driver/card buffer size detection. format <format> (also see the format audio lter) Select the sample format used for output from the audio lter layer to the sound card. The values that <format> can adopt are listed below in the description of the format audio lter. mixer <device> Use a mixer device different from the default /dev/mixer. For ALSA this is the mixer name. mixerchannel <mixer line>[,mixer index] (ao oss and ao alsa only) This option will tell MPlayer to use a different channel for controlling volume than the default PCM. Options for OSS include vol, pcm, line. For a complete list of options look for SOUND_DEVICE_NAMES in /usr/include/linux/soundcard.h. For ALSA you can use the names e.g. alsamixer displays, like Master, Line, PCM. NOTE: ALSA mixer channel names followed by a number must be specied in the <name,number> format, i.e. a channel labeled PCM 1 in alsamixer must be converted to PCM,1.

The MPlayer Project

2009-03-25

32

MPlayer(1)

The Movie Player

MPlayer(1)

softvol Force the use of the software mixer, instead of using the sound card mixer. softvolmax <10.010000.0> Set the maximum amplication level in percent (default: 110). A value of 200 will allow you to adjust the volume up to a maximum of double the current level. With values below 100 the initial volume (which is 100%) will be above the maximum, which e.g. the OSD cannot display correctly. volstep <0100> Set the step size of mixer volume changes in percent of the whole range (default: 3). volume <-1100> (also see af volume) Set the startup volume in the mixer, either hardware or software (if used with softvol). A value of -1 (the default) will not change the volume.

AUDIO OUTPUT DRIVERS (MPLAYER ONLY)


Audio output drivers are interfaces to different audio output facilities. The syntax is: ao <driver1[:suboption1[=value]:...],driver2,...[,]> Specify a priority list of audio output drivers to be used. If the list has a trailing , MPlayer will fall back on drivers not contained in the list. Suboptions are optional and can mostly be omitted. NOTE: See ao help for a list of compiled-in audio output drivers. EXAMPLE: ao alsa,oss, Try the ALSA driver, then the OSS driver, then others. ao alsa:noblock:device=hw=0.3 Sets noblock-mode and the device-name as rst card, fourth device. Available audio output drivers are: alsa ALSA 0.9/1.x audio output driver noblock Sets noblock-mode. device=<device> Sets the device name. Replace any , with . and any : with = in the ALSA device name. For hwac3 output via S/PDIF, use an "iec958" or "spdif" device, unless you really know how to set it correctly. ALSA 0.5 audio output driver OSS audio output driver <dsp-device> Sets the audio output device (default: /dev/dsp). <mixer-device> Sets the audio mixer device (default: /dev/mixer). <mixer-channel> Sets the audio mixer channel (default: pcm).

alsa5 oss

The MPlayer Project

2009-03-25

33

MPlayer(1)

The Movie Player

MPlayer(1)

sdl (SDL only) highly platform independent SDL (Simple Directmedia Layer) library audio output driver <driver> Explicitly choose the SDL audio driver to use (default: let SDL choose). arts esd audio output through the aRts daemon audio output through the ESD daemon <server> Explicitly choose the ESD server to use (default: localhost). audio output through JACK (Jack Audio Connection Kit) port=<name> Connects to the ports with the given name (default: physical ports). name=<client Client name that is passed to JACK (default: MPlayer [<PID>]). Useful if you want to have certain connections established automatically. (no)estimate Estimate the audio delay, supposed to make the video playback smoother (default: enabled). (no)autostart Automatically start jackd if necessary. Note that this seems unreliable and will spam stdout with server messages. audio output through NAS

jack

nas

macosx (Mac OS X only) native Mac OS X audio output driver openal Experimental OpenAL audio output driver pulse PulseAudio audio output driver [<host>][:<output sink>] Specify the host and optionally output sink to use. An empty <host> string uses a local connection, "localhost" uses network transfer (most likely not what you want).

sgi (SGI only) native SGI audio output driver <output device name> Explicitly choose the output device/interface to use (default: system-wide default). For example, Analog Out or Digital Out. sun (Sun only) native Sun audio output driver <device> Explicitly choose the audio device to use (default: /dev/audio). win32 (Windows only) native Windows waveout audio output driver dsound (Windows only) DirectX DirectSound audio output driver

The MPlayer Project

2009-03-25

34

MPlayer(1)

The Movie Player

MPlayer(1)

device=<devicenum> Sets the device number to use. Playing a le with v will show a list of available devices. dart (OS/2 only) OS/2 DART audio output driver (no)share Open DART in shareable or exclusive mode. bufsize=<size> Set buffer size to <size> in samples (default: 2048). dxr2 (also see dxr2) (DXR2 only) Creative DXR2 specic output driver ivtv (IVTV only) IVTV specic MPEG audio output driver. Works with ac hwmpa only. v4l2 (requires Linux 2.6.22+ kernel) Audio output driver for V4L2 cards with hardware MPEG decoder. mpegpes (DVB only) Audio output driver for DVB cards that writes the output to an MPEG-PES le if no DVB card is installed. card=<14> DVB card to use if more than one card is present. If not specied MPlayer will search the rst usable card. le=<lename> output lename null pcm Produces no audio output but maintains video playback speed. Use nosound for benchmarking. raw PCM/wave le writer audio output (no)waveheader Include or do not include the wave header (default: included). When not included, raw PCM will be generated. le=<lename> Write the sound to <lename> instead of the default audiodump.wav. If nowaveheader is specied, the default is audiodump.pcm. fast Try to dump faster than realtime. Make sure the output does not get truncated (usually with "Too many video packets in buffer" message). It is normal that you get a "Your system is too SLOW to play this!" message.

plugin plugin audio output driver

VIDEO OUTPUT OPTIONS (MPLAYER ONLY)


adapter <value> Set the graphics card that will receive the image. You can get a list of available cards when you run this option with v. Currently only works with the directx video output driver. bpp <depth> Override the autodetected color depth. Only supported by the fbdev, dga, svga, vesa video output drivers.

The MPlayer Project

2009-03-25

35

MPlayer(1)

The Movie Player

MPlayer(1)

border Play movie with window border and decorations. Since this is on by default, use noborder to disable the standard window decorations. brightness <100100> Adjust the brightness of the video signal (default: 0). Not supported by all video output drivers. contrast <100100> Adjust the contrast of the video signal (default: 0). Not supported by all video output drivers. display <name> (X11 only) Specify the hostname and display number of the X server you want to display on. EXAMPLE: display xtest.localdomain:0 dr Turns on direct rendering (not supported by all codecs and video outputs) WARNING: May cause OSD/SUB corruption!

dxr2 <option1:option2:...> This option is used to control the dxr2 video output driver. ar-mode=<value> aspect ratio mode (0 = normal, 1 = pan-and-scan, 2 = letterbox (default)) iec958-encoded Set iec958 output mode to encoded. 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 colorstripe) mute mute sound output unmute unmute sound output ucode=<value> path to the microcode TV output 75ire enable 7.5 IRE output mode no75ire disable 7.5 IRE output mode (default) bw b/w TV output

The MPlayer Project

2009-03-25

36

MPlayer(1)

The Movie Player

MPlayer(1)

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=<0500> Set the left cropping value (default: 50). cr-right=<0500> Set the right cropping value (default: 300). cr-top=<0500> Set the top cropping value (default: 0). cr-bottom=<0500> Set the bottom cropping value (default: 0). ck-[r|g|b]=<0255> Set the r(ed), g(reen) or b(lue) gain of the overlay color-key. ck-[r|g|b]min=<0255> minimum value for the respective color key ck-[r|g|b]max=<0255> 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).

The MPlayer Project

2009-03-25

37

MPlayer(1)

The Movie Player

MPlayer(1)

ol[h|w|x|y]-cor=<2020> Adjust the overlay size (h,w) and position (x,y) in case it does not match the window perfectly (default: 0). overlay Activate overlay (default). nooverlay Activate TV-out. overlay-ratio=<12500> Tune the overlay (default: 1000). fbmode <modename> (vo fbdev only) Change video mode to the one that is labeled as <modename> in /etc/fb.modes. NOTE: VESA framebuffer does not support mode changing. fbmodecong <lename> (vo fbdev only) Override framebuffer mode conguration le (default: /etc/fb.modes). fs (also see zoom) Fullscreen playback (centers movie, and paints black bands around it). Not supported by all video output drivers. fsmodedontuse <031> (OBSOLETE, use the fs option) Try this option if you still experience fullscreen problems. fstype <type1,type2,...> (X11 only) Specify a priority list of fullscreen modes to be used. You can negate the modes by prexing them with . If you experience problems like the fullscreen window being covered by other windows try using a different order. NOTE: See fstype help for a full list of available modes. The available types are: above Use the _NETWM_STATE_ABOVE hint if available. below Use the _NETWM_STATE_BELOW hint if available. fullscreen Use the _NETWM_STATE_FULLSCREEN hint if available. layer Use the _WIN_LAYER hint with the default layer. layer=<0...15> Use the _WIN_LAYER hint with the given layer number. netwm Force NETWM style. none Do not set fullscreen window layer. stays_on_top Use _NETWM_STATE_STAYS_ON_TOP hint if available. EXAMPLE:

The MPlayer Project

2009-03-25

38

MPlayer(1)

The Movie Player

MPlayer(1)

layer,stays_on_top,above,fullscreen Default order, will be used as a fallback if incorrect or unsupported modes are specied. fullscreen Fixes fullscreen switching on OpenBox 1.x. geometry x[%][:y[%]] or [WxH][+x+y] Adjust where the output is on the screen initially. The x and y specications are in pixels measured from the top-left of the screen to the top-left of the image being displayed, however if a percentage sign is given after the argument it turns the value into a percentage of the screen size in that direction. It also supports the standard X11 geometry option format. If an external window is specied using the wid option, then the x and y coordinates are relative to the top-left corner of the window rather than the screen. NOTE: This option is only supported by the x11, xmga, xv, xvmc, xvidix, gl, gl2, directx, fbdev and tdfxfb video output drivers. EXAMPLE: 50:40 Places the window at x=50, y=40. 50%:50% Places the window in the middle of the screen. 100% Places the window at the middle of the right edge of the screen. 100%:100% Places the window at the bottom right corner of the screen. guiwid <window ID> (also see wid) (GUI only) This tells the GUI to also use an X11 window and stick itself to the bottom of the video, which is useful to embed a mini-GUI in a browser (with the MPlayer plugin for instance). hue <100100> Adjust the hue of the video signal (default: 0). You can get a colored negative of the image with this option. Not supported by all video output drivers. monitordotclock <range[,range,...]> (vo fbdev and vesa only) Specify the dotclock or pixelclock range of the monitor. monitorhfreq <range[,range,...]> (vo fbdev and vesa only) Specify the horizontal frequency range of the monitor. monitorvfreq <range[,range,...]> (vo fbdev and vesa only) Specify the vertical frequency range of the monitor. monitoraspect <ratio> (also see aspect) Set the aspect ratio of your monitor or TV screen. A value of 0 disables a previous setting (e.g. in the cong le). Overrides the monitorpixelaspect setting if enabled. EXAMPLE: monitoraspect 4:3 or 1.3333 monitoraspect 16:9 or 1.7777 monitorpixelaspect <ratio> (also see aspect) Set the aspect of a single pixel of your monitor or TV screen (default: 1). A value of 1 means square pixels (correct for (almost?) all LCDs).

The MPlayer Project

2009-03-25

39

MPlayer(1)

The Movie Player

MPlayer(1)

nodouble Disables double buffering, mostly for debugging purposes. Double buffering xes icker by storing two frames in memory, and displaying one while decoding another. It can affect OSD negatively, but often removes OSD ickering. nograbpointer Do not grab the mouse pointer after a video mode change (vm). Useful for multihead setups. nokeepaspect Do not keep window aspect ratio when resizing windows. Only works with the x11, xv, xmga, xvidix, directx video output drivers. Furthermore under X11 your window manager has to honor window aspect hints. ontop Makes the player window stay on top of other windows. Supported by video output drivers which use X11, except SDL, as well as directx, macosx, quartz, ggi and gl2. panscan <0.01.0> Enables pan-and-scan functionality (cropping the sides of e.g. a 16:9 movie to make it t a 4:3 display without black bands). The range controls how much of the image is cropped. Only works with the xv, xmga, mga, gl, gl2, quartz, macosx and xvidix video output drivers. NOTE: Values between 1 and 0 are allowed as well, but highly experimental and may crash or worse. Use at your own risk! panscanrange <19.099.0> (experimental) Change the range of the pan-and-scan functionality (default: 1). Positive values mean multiples of the default range. Negative numbers mean you can zoom in up to a factor of panscanrange+1. E.g. panscanrange 3 allows a zoom factor of up to 4. This feature is experimental. Do not report bugs unless you are using vo gl. refreshrate <Hz> Set the monitor refreshrate in Hz. Currently only supported by vo directx combined with the vm option. rootwin Play movie in the root window (desktop background). Desktop background images may cover the movie window, though. Only works with the x11, xv, xmga, xvidix, quartz, macosx and directx video output drivers. saturation <100100> Adjust the saturation of the video signal (default: 0). You can get grayscale output with this option. Not supported by all video output drivers. screenh <pixels> Specify the screen height for video output drivers which do not know the screen resolution like fbdev, x11 and TV-out. screenw <pixels> Specify the screen width for video output drivers which do not know the screen resolution like fbdev, x11 and TV-out. stopxscreensaver (X11 , KDE and GNOME only) Turns off xscreensaver at startup and turns it on again on exit. Note that the GNOME screensaver is disabled only as long as the mouse cursor is kept inside the MPlayer window. If your screen-

The MPlayer Project

2009-03-25

40

MPlayer(1)

The Movie Player

MPlayer(1)

saver supports neither the XSS nor XResetScreenSaver API please use heartbeatcmd instead. vm Try to change to a different video mode. Supported by the dga, x11, xv, sdl and directx video output drivers. If used with the directx video output driver the screenw, screenh, bpp and refreshrate options can be used to set the new display mode.

vsync Enables VBI for the vesa, dfbmga and svga video output drivers. wid <window ID> (also see guiwid) (X11, OpenGL and DirectX only) This tells MPlayer to attach to an existing window. Useful to embed MPlayer in a browser (e.g. the plugger extension). xineramascreen <2...> In Xinerama congurations (i.e. a single desktop that spans across multiple displays) this option tells MPlayer which screen to display the movie on. A value of 2 means fullscreen across the whole virtual display (in this case Xinerama information is completely ignored), 1 means fullscreen on the display the window currently is on. The initial position set via the geometry option is relative to the specied screen. Will usually only work with "fstype fullscreen" or "fstype none". This option is not suitable to only set the startup screen (because it will always display on the given screen in fullscreen mode), geometry is the best that is available for that purpose currently. Supported by the gl, gl2, x11, and xv video output drivers. zrbw (vo zr only) Display in black and white. For optimal performance, this can be combined with lavdopts gray. zrcrop <[width]x[height]+[x offset]+[y offset]> (vo zr only) Select a part of the input image to display, multiple occurrences of this option switch on cinerama mode. In cinerama mode the movie is distributed over more than one TV (or beamer) to create a larger image. Options appearing after the n-th zrcrop apply to the n-th MJPEG card, each card should at least have a zrdev in addition to the zrcrop. For examples, see the output of zrhelp and the Zr section of the documentation. zrdev <device> (vo zr only) Specify the device special le that belongs to your MJPEG card, by default the zr video output driver takes the rst v4l device it can nd. zrfd (vo zr only) Force decimation: Decimation, as specied by zrhdec and zrvdec, only happens if the hardware scaler can stretch the image to its original size. Use this option to force decimation. zrhdec <1|2|4> (vo zr only) Horizontal decimation: Ask the driver to send only every 2nd or 4th line/pixel of the input image to the MJPEG card and use the scaler of the MJPEG card to stretch the image to its original size. zrhelp (vo zr only) Display a list of all zr* options, their default values and a cinerama mode example. zrnorm <norm> (vo zr only) Specify the TV norm as PAL or NTSC (default: no change). zrquality <120> (vo zr only) A number from 1 (best) to 20 (worst) representing the JPEG encoding quality.

The MPlayer Project

2009-03-25

41

MPlayer(1)

The Movie Player

MPlayer(1)

zrvdec <1|2|4> (vo zr only) Vertical decimation: Ask the driver to send only every 2nd or 4th line/pixel of the input image to the MJPEG card and use the scaler of the MJPEG card to stretch the image to its original size. zrxdoff <x display offset> (vo zr only) If the movie is smaller than the TV screen, this option species the x offset from the upper-left corner of the TV screen (default: centered). zrydoff <y display offset> (vo zr only) If the movie is smaller than the TV screen, this option species the y offset from the upper-left corner of the TV screen (default: centered).

VIDEO OUTPUT DRIVERS (MPLAYER ONLY)


Video output drivers are interfaces to different video output facilities. The syntax is: vo <driver1[:suboption1[=value]:...],driver2,...[,]> Specify a priority list of video output drivers to be used. If the list has a trailing , MPlayer will fall back on drivers not contained in the list. Suboptions are optional and can mostly be omitted. NOTE: See vo help for a list of compiled-in video output drivers. EXAMPLE: vo xmga,xv, Try the Matrox X11 driver, then the Xv driver, then others. vo directx:noaccel Uses the DirectX driver with acceleration features turned off. Available video output drivers are: xv (X11 only) Uses the XVideo extension of XFree86 4.x to enable hardware accelerated playback. If you cannot use a hardware specic driver, this is probably the best option. For information about what colorkey is used and how it is drawn run MPlayer with v option and look out for the lines tagged with [xv common] at the beginning. adaptor=<number> Select a specic XVideo adaptor (check xvinfo results). port=<number> Select a specic XVideo port. ck=<cur|use|set> Select the source from which the colorkey is taken (default: cur). cur The default takes the colorkey currently set in Xv. use Use but do not set the colorkey from MPlayer (use colorkey option to change it). set Same as use but also sets the supplied colorkey. ck-method=<man|bg|auto> Sets the colorkey drawing method (default: man). man Draw the colorkey manually (reduces icker in some cases). bg Set the colorkey as window background. auto Let Xv draw the colorkey. x11 (X11 only) Shared memory video output driver without hardware acceleration that works whenever X11 is present.

The MPlayer Project

2009-03-25

42

MPlayer(1)

The Movie Player

MPlayer(1)

xover (X11 only) Adds X11 support to all overlay based video output drivers. Currently only supported by tdfx_vid. <vo_driver> Select the driver to use as source to overlay on top of X11. vdpau (with vc ffmpeg12vdpau, ffwmv3vdpau, ffvc1vdpau or ffh264vdpau) Video output that uses VDPAU to decode video via hardware. Also supports displaying of software-decoded video. sharpen=<11> For positive values, apply a sharpening algorithm to the video, for negative values a blurring algorithm (default: 0). denoise=<01> Apply a noise reduction algorithm to the video (default: 0, no noise reduction). deint=<04> Chooses the deinterlacer (default: 0). All modes > 0 respect elddominance. 0 No deinterlacing. 1 Show only rst eld, similar to vf eld. 2 Bob deinterlacing, similar to vf telds=1. 3 Motion adaptive temporal deinterlacing. May lead to A/V desync with slow video hardware and/or high resolution. This is the default if "D" is used to enable deinterlacing. 4 Motion adaptive temporal deinterlacing with edge-guided spatial interpolation. Needs fast video hardware. chromadeint Makes temporal deinterlacers operate both on luma and chroma (default). Use nochromadeint to solely use luma and speed up advanced deinterlacing. Useful with slow video memory. pullup Try to apply inverse telecine, needs motion adaptive temporal deinterlacing. xvmc (X11 with vc ffmpeg12mc only) Video output driver that uses the XvMC (X Video Motion Compensation) extension of XFree86 4.x to speed up MPEG-1/2 and VCR2 decoding. adaptor=<number> Select a specic XVideo adaptor (check xvinfo results). port=<number> Select a specic XVideo port. (no)benchmark Disables image display. Necessary for proper benchmarking of drivers that change image buffers on monitor retrace only (nVidia). Default is not to disable image display (nobenchmark). (no)bobdeint Very simple deinterlacer. Might not look better than vf telds=1, but it is the only deinterlacer for xvmc (default: nobobdeint). (no)queue Queue frames for display to allow more parallel work of the video hardware. May add a small (not noticeable) constant A/V desync (default: noqueue). (no)sleep Use sleep function while waiting for rendering to nish (not recommended on Linux) (default: nosleep). ck=cur|use|set Same as vo xv:ck (see vo xv).

The MPlayer Project

2009-03-25

43

MPlayer(1)

The Movie Player

MPlayer(1)

ck-method=man|bg|auto Same as vo xv:ck-method (see vo xv). dga (X11 only) Play video through the XFree86 Direct Graphics Access extension. Considered obsolete. sdl (SDL only, buggy/outdated) Highly platform independent SDL (Simple Directmedia Layer) library video output driver. Since SDL uses its own X11 layer, MPlayer X11 options do not have any effect on SDL. Note that it has several minor bugs (vm/novm is mostly ignored, fs behaves like novm should, window is in top-left corner when returning from fullscreen, panscan is not supported, ...) driver=<driver> Explicitly choose the SDL driver to use. (no)forcexv Use XVideo through the sdl video output driver (default: forcexv). (no)hwaccel Use hardware accelerated scaler (default: hwaccel). vidix VIDIX (VIDeo Interface for *niX) is an interface to the video acceleration features of different graphics cards. Very fast video output driver on cards that support it. <subdevice> Explicitly choose the VIDIX subdevice driver to use. Available subdevice drivers are cyberblade, ivtv, mach64, mga_crtc2, mga, nvidia, pm2, pm3, radeon, rage128, s3, sh_veu, sis_vid and unichrome.

xvidix (X11 only) X11 frontend for VIDIX <subdevice> same as vidix cvidix Generic and platform independent VIDIX frontend, can even run in a text console with nVidia cards. <subdevice> same as vidix

winvidix (Windows only) Windows frontend for VIDIX <subdevice> same as vidix direct3d (Windows only) (BETA CODE!) Video output driver that uses the Direct3D interface (useful for Vista). directx (Windows only) Video output driver that uses the DirectX interface. noaccel Turns off hardware acceleration. Try this option if you have display problems. kva (OS/2 only) Video output driver that uses the libkva interface. snap Force SNAP mode. wo Force WarpOverlay! mode. dive Force DIVE mode.

The MPlayer Project

2009-03-25

44

MPlayer(1)

The Movie Player

MPlayer(1)

(no)t23 Enable/disable workaround for T23 laptop (default: not23). Try to enable this option if your video card supports upscaling only. quartz (Mac OS X only) Mac OS X Quartz video output driver. Under some circumstances, it might be more efcient to force a packed YUV output format, with e.g. vf format=yuy2. device_id=<number> Choose the display device to use in fullscreen. fs_res=<width>:<height> Specify the fullscreen resolution (useful on slow systems). macosx (Mac OS X 10.4 or 10.3.9 with QuickTime 7) Mac OS X CoreVideo video output driver device_id=<number> Choose the display device to use for fullscreen or set it to 1 to always use the same screen the video window is on (default: 1 auto). shared_buffer Write output to a shared memory buffer instead of displaying it and try to open an existing NSConnection for communication with a GUI. buffer_name=<name> Name of the shared buffer created with shm_open as well as the name of the NSConnection MPlayer will try to open (default: "mplayerosx"). Setting buffer_name implicitly enables shared_buffer. fbdev (Linux only) Uses the kernel framebuffer to play video. <device> Explicitly choose the fbdev device name to use (e.g. /dev/fb0) or the name of the VIDIX subdevice if the device name starts with vidix (e.g. vidixsis_vid for the sis driver). fbdev2 (Linux only) Uses the kernel framebuffer to play video, alternative implementation. <device> Explicitly choose the fbdev device name to use (default: /dev/fb0). vesa Very general video output driver that should work on any VESA VBE 2.0 compatible card. (no)dga Turns DGA mode on or off (default: on). neotv_pal Activate the NeoMagic TV out and set it to PAL norm. neotv_ntsc Activate the NeoMagic TV out and set it to NTSC norm. vidix Use the VIDIX driver. lvo: Activate the Linux Video Overlay on top of VESA mode. Play video using the SVGA library. <video mode> Specify video mode to use. The mode can be given in a <width>x<height>x<colors> format, e.g. 640x480x16M or be a graphics mode number, e.g. 84.

svga

The MPlayer Project

2009-03-25

45

MPlayer(1)

The Movie Player

MPlayer(1)

bbosd Draw OSD into black bands below the movie (slower). native Use only native drawing functions. This avoids direct rendering, OSD and hardware acceleration. retrace Force frame switch on vertical retrace. Usable only with double. It has the same effect as the vsync option. sq Try to select a video mode with square pixels. vidix Use svga with VIDIX. gl OpenGL video output driver, simple version. Video size must be smaller than the maximum texture size of your OpenGL implementation. Intended to work even with the most basic OpenGL implementations, but also makes use of newer extensions, which allow support for more colorspaces and direct rendering. For optimal speed try something similar to vo gl:yuv=2:rectangle=2:forcepbo:atihack dr noslices The code performs very few checks, so if a feature does not work, this might be because it is not supported by your card/OpenGL implementation even if you do not get any error message. Use glxinfo or a similar tool to display the supported OpenGL extensions. (no)atihack ATI drivers may give a corrupted image when PBOs are used (when using dr or forcepbo). This option xes this, at the expense of using a bit more memory. (no)forcepbo Always uses PBOs to transfer textures even if this involves an extra copy. Currently this gives a little extra speed with NVidia drivers and a lot more speed with ATI drivers. May need noslices and the atihack suboption to work correctly. (no)scaled-osd Changes the way the OSD behaves when the size of the window changes (default: disabled). When enabled behaves more like the other video output drivers, which is better for xed-size fonts. Disabled looks much better with FreeType fonts and uses the borders in fullscreen mode. Does not work correctly with ass subtitles (see ass), you can instead render them without OpenGL support via vf ass. osdcolor=<0xAARRGGBB> Color for OSD (default: 0x00ffffff, corresponds to non-transparent white). rectangle=<0,1,2> Select usage of rectangular textures which saves video RAM, but often is slower (default: 0). 0: Use power-of-two textures (default). 1: Use the GL_ARB_texture_rectangle extension. 2: Use the GL_ARB_texture_non_power_of_two extension. In some cases only supported in software and thus very slow. swapinterval=<n> Minimum interval between two buffer swaps, counted in displayed frames (default: 1). 1 is equivalent to enabling VSYNC, 0 to disabling VSYNC. Values below 0 will leave it at the system default. This limits the framerate to (horizontal refresh rate / n). Requires GLX_SGI_swap_control support to work. With some (most/all?) implementations this only works in fullscreen mode. yuv=<n> Select the type of YUV to RGB conversion. 0: Use software conversion (default). Compatible with all OpenGL versions. Provides brightness, contrast and saturation control. 1: Use register combiners. This uses an nVidia-specic extension (GL_NV_register_combiners). At least three texture units are needed. Provides saturation and hue

The MPlayer Project

2009-03-25

46

MPlayer(1)

The Movie Player

MPlayer(1)

control. This method is fast but inexact. 2: Use a fragment program. Needs the GL_ARB_fragment_program extension and at least three texture units. Provides brightness, contrast, saturation and hue control. 3: Use a fragment program using the POW instruction. Needs the GL_ARB_fragment_program extension and at least three texture units. Provides brightness, contrast, saturation, hue and gamma control. Gamma can also be set independently for red, green and blue. Method 4 is usually faster. 4: Use a fragment program with additional lookup. Needs the GL_ARB_fragment_program extension and at least four texture units. Provides brightness, contrast, saturation, hue and gamma control. Gamma can also be set independently for red, green and blue. 5: Use ATI-specic method (for older cards). This uses an ATI-specic extension (GL_ATI_fragment_shader not GL_ARB_fragment_shader!). At least three texture units are needed. Provides saturation and hue control. This method is fast but inexact. 6: Use a 3D texture to do conversion via lookup. Needs the GL_ARB_fragment_program extension and at least four texture units. Extremely slow (software emulation) on some (all?) ATI cards since it uses a texture with border pixels. Provides brightness, contrast, saturation, hue and gamma control. Gamma can also be set independently for red, green and blue. Speed depends more on GPU memory bandwidth than other methods. ycbcr Use the GL_MESA_ycbcr_texture extension to convert YUV to RGB. In most cases this is probably slower than doing software conversion to RGB. lscale=<n> Select the scaling function to use for luminance scaling. Only valid for yuv modes 2, 3, 4 and 6. 0: Use simple linear ltering (default). 1: Use bicubic B-spline ltering (better quality). Needs one additional texture unit. Older cards will not be able to handle this for chroma at least in fullscreen mode. 2: Use cubic ltering in horizontal, linear ltering in vertical direction. Works on a few more cards than method 1. 3: Same as 1 but does not use a lookup texture. Might be faster on some cards. 4: Use experimental unsharp masking with 3x3 support and a default strength of 0.5 (see lter-strength). 5: Use experimental unsharp masking with 5x5 support and a default strength of 0.5 (see lter-strength). cscale=<n> Select the scaling function to use for chrominance scaling. For details see lscale. lter-strength=<value> Set the effect strength for the lscale/cscale lters that support it. customprog=<lename> Load a custom fragment program from <lename>. See TOOLS/edgedect.fp for an example. customtex=<lename> Load a custom "gamma ramp" texture from <lename>. This can be used in combination with yuv=4 or with the customprog option. (no)customtlin If enabled (default) use GL_LINEAR interpolation, otherwise use GL_NEAREST for customtex texture. (no)customtrect If enabled, use texture_rectangle for customtex texture. Default is disabled. Normally there is no reason to use the following options, they mostly exist for testing purposes.

The MPlayer Project

2009-03-25

47

MPlayer(1)

The Movie Player

MPlayer(1)

(no)glnish Call glFinish() before swapping buffers. Slower but in some cases more correct output (default: disabled). (no)manyfmts Enables support for more (RGB and BGR) color formats (default: enabled). Needs OpenGL version >= 1.2. slice-height=<0...> Number of lines copied to texture in one piece (default: 0). 0 for whole image. NOTE: If YUV colorspace is used (see yuv suboption), special rules apply: If the decoder uses slice rendering (see noslices), this setting has no effect, the size of the slices as provided by the decoder is used. If the decoder does not use slice rendering, the default is 16. (no)osd Enable or disable support for OSD rendering via OpenGL (default: enabled). This option is for testing; to disable the OSD use osdlevel 0 instead. (no)aspect Enable or disable aspect scaling and pan-and-scan support (default: enabled). Disabling might increase speed. gl2 Variant of the OpenGL video output driver. Supports videos larger than the maximum texture size but lacks many of the advanced features and optimizations of the gl driver and is unlikely to be extended further. (no)glnish same as gl (default: enabled) yuv=<n> Select the type of YUV to RGB conversion. If set to anything except 0 OSD will be disabled and brightness, contrast and gamma setting is only available via the global X server settings. Apart from this the values have the same meaning as for vo gl. Produces no video output. Useful for benchmarking. ASCII art video output driver that works on a text console. You can get a list and an explanation of available suboptions by executing mplayer vo aa:help. NOTE: The driver does not handle aspect correctly. HINT: You probably have to specify monitorpixelaspect. Try mplayer vo aa monitorpixelaspect 0.5. Color ASCII art video output driver that works on a text console. Video playback using the Blinkenlights UDP protocol. This driver is highly hardware specic. <subdevice> Explicitly choose the Blinkenlights subdevice driver to use. It is something like arcade:host=localhost:2323 or hdl:le=name1,le=name2. You must specify a subdevice. GGI graphics system video output driver <driver> Explicitly choose the GGI driver to use. Replace any , that would appear in the driver string by a ..

null aa

caca bl

ggi

directfb Play video using the DirectFB library. (no)input Use the DirectFB instead of the MPlayer keyboard code (default: enabled).

The MPlayer Project

2009-03-25

48

MPlayer(1)

The Movie Player

MPlayer(1)

buffermode=single|double|triple Double and triple buffering give best results if you want to avoid tearing issues. Triple buffering is more efcient than double buffering as it does not block MPlayer while waiting for the vertical retrace. Single buffering should be avoided (default: single). eldparity=top|bottom Control the output order for interlaced frames (default: disabled). Valid values are top = top elds rst, bottom = bottom elds rst. This option does not have any effect on progressive lm material like most MPEG movies are. You need to enable this option if you have tearing issues or unsmooth motions watching interlaced lm material. layer=N Will force layer with ID N for playback (default: 1 auto). dfbopts=<list> Specify a parameter list for DirectFB. dfbmga Matrox G400/G450/G550 specic video output driver that uses the DirectFB library to make use of special hardware features. Enables CRTC2 (second head), displaying video independently of the rst head. (no)input same as directfb (default: disabled) buffermode=single|double|triple same as directfb (default: triple) eldparity=top|bottom same as directfb (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 is a full interlaced picture with proper sync to every odd/even eld. tvnorm=pal|ntsc|auto Will set the TV norm of the Matrox card without the need for modifying /etc/directfbrc (default: disabled). Valid norms are pal = PAL, ntsc = NTSC. Special norm is auto (auto-adjust using PAL/NTSC) because it decides which norm to use by looking at the framerate of the movie. mga (Linux only) Matrox specic video output driver that makes use of the YUV back end scaler on Gxxx cards through a kernel module. If you have a Matrox card, this is the fastest option. <device> Explicitly choose the Matrox device name to use (default: /dev/mga_vid). xmga (Linux, X11 only) The mga video output driver, running in an X11 window. <device> Explicitly choose the Matrox device name to use (default: /dev/mga_vid). s3fb (Linux only) (also see vf yuv2 and dr) S3 Virge specic video output driver. This driver supports the cards YUV conversion and scaling, double buffering and direct rendering features. Use vf yuy2 to get hardware-accelerated YUY2 rendering, which is much faster than YV12 on this card.

The MPlayer Project

2009-03-25

49

MPlayer(1)

The Movie Player

MPlayer(1)

<device> Explicitly choose the fbdev device name to use (default: /dev/fb0). wii (Linux only) Nintendo Wii/GameCube specic video output driver. 3dfx (Linux only) 3dfx-specic video output driver that directly uses the hardware on top of X11. Only 16 bpp are supported. tdfxfb (Linux only) This driver employs the tdfxfb framebuffer driver to play movies with YUV acceleration on 3dfx cards. <device> Explicitly choose the fbdev device name to use (default: /dev/fb0). tdfx_vid (Linux only) 3dfx-specic video output driver that works in combination with the tdfx_vid kernel module. <device> Explicitly choose the device name to use (default: /dev/tdfx_vid). dxr2 (also see dxr2) (DXR2 only) Creative DXR2 specic video output driver. <vo_driver> Output video subdriver to use as overlay (x11, xv). dxr3 (DXR3 only) Sigma Designs em8300 MPEG decoder chip (Creative DXR3, Sigma Designs Hollywood Plus) specic video output driver. Also see the lavc video lter. overlay Activates the overlay instead of TV-out. prebuf Turns on prebuffering. sync Will turn on the new sync-engine. norm=<norm> Species the TV norm. 0: Does not change current norm (default). 1: Auto-adjust using PAL/NTSC. 2: Auto-adjust using PAL/PAL-60. 3: PAL 4: PAL-60 5: NTSC <03> Species the device number to use if you have more than one em8300 card. ivtv (IVTV only) Conexant CX23415 (iCompression iTVC15) or Conexant CX23416 (iCompression iTVC16) MPEG decoder chip (Hauppauge WinTV PVR-150/250/350/500) specic video output driver for TV-out. Also see the lavc video lter. <device> Explicitly choose the MPEG decoder device name to use (default: /dev/video16).

The MPlayer Project

2009-03-25

50

MPlayer(1)

The Movie Player

MPlayer(1)

<output> Explicitly choose the TV-out output to be used for the video signal. v4l2 (requires Linux 2.6.22+ kernel) Video output driver for V4L2 compliant cards with built-in hardware MPEG decoder. Also see the lavc video lter. <device> Explicitly choose the MPEG decoder device name to use (default: /dev/video16). <output> Explicitly choose the TV-out output to be used for the video signal. mpegpes (DVB only) Video output driver for DVB cards that writes the output to an MPEG-PES le if no DVB card is installed. card=<14> Species the device number to use if you have more than one DVB output card (V3 API only, such as 1.x.y series drivers). If not specied MPlayer will search the rst usable card. <lename> output lename (default: ./grab.mpg) zr (also see zr* and zrhelp) Video output driver for a number of MJPEG capture/playback cards. zr2 (also see the zrmjpeg video lter) Video output driver for a number of MJPEG capture/playback cards, second generation. dev=<device> Species the video device to use. norm=<PAL|NTSC|SECAM|auto> Species the video norm to use (default: auto). (no)prebuf (De)Activate prebuffering, not yet supported. md5sum Calculate MD5 sums of each frame and write them to a le. Supports RGB24 and YV12 colorspaces. Useful for debugging. outle=<value> Specify the output lename (default: ./md5sums). yuv4mpeg Transforms the video stream into a sequence of uncompressed YUV 4:2:0 images and stores it in a le (default: ./stream.yuv). The format is the same as the one employed by mjpegtools, so this is useful if you want to process the video with the mjpegtools suite. It supports the YV12, RGB (24 bpp) and BGR (24 bpp) format. You can combine it with the xedvo option to concatenate les with the same dimensions and fps value. interlaced Write the output as interlaced frames, top eld rst. interlaced_bf Write the output as interlaced frames, bottom eld rst. le=<lename> Write the output to <lename> instead of the default stream.yuv. NOTE: If you do not specify any option the output is progressive (i.e. not interlaced).

The MPlayer Project

2009-03-25

51

MPlayer(1)

The Movie Player

MPlayer(1)

gif89a Output each frame into a single animated GIF le in the current directory. It supports only RGB format with 24 bpp and the output is converted to 256 colors. <fps> Float value to specify framerate (default: 5.0). <output> Specify the output lename (default: ./out.gif). NOTE: You must specify the framerate before the lename or the framerate will be part of the lename. EXAMPLE: mplayer video.nut vo gif89a:fps=15:output=test.gif jpeg Output each frame into a JPEG le in the current directory. Each le takes the frame number padded with leading zeros as name. [no]progressive Specify standard or progressive JPEG (default: noprogressive). [no]baseline Specify use of baseline or not (default: baseline). optimize=<0100> optimization factor (default: 100) smooth=<0100> smooth factor (default: 0) quality=<0100> quality factor (default: 75) outdir=<dirname> Specify the directory to save the JPEG les to (default: ./). subdirs=<prex> Create numbered subdirectories with the specied prex to save the les in instead of the current directory. maxles=<value> (subdirs only) Maximum number of les to be saved per subdirectory. Must be equal to or larger than 1 (default: 1000). Output each frame into a PNM le in the current directory. Each le takes the frame number padded with leading zeros as name. It supports PPM, PGM and PGMYUV les in both raw and ASCII mode. Also see pnm(5), ppm(5) and pgm(5). ppm Write PPM les (default). pgm Write PGM les. pgmyuv Write PGMYUV les. PGMYUV is like PGM, but it also contains the U and V plane, appended at the bottom of the picture. raw Write PNM les in raw mode (default). ascii Write PNM les in ASCII mode. outdir=<dirname> Specify the directory to save the PNM les to (default: ./). subdirs=<prex> Create numbered subdirectories with the specied prex to save the les in instead of the current directory. maxles=<value> (subdirs only) Maximum number of les to be saved per subdirectory. Must be equal to or larger than 1 (default: 1000).

pnm

The MPlayer Project

2009-03-25

52

MPlayer(1)

The Movie Player

MPlayer(1)

png

Output each frame into a PNG le in the current directory. Each le takes the frame number padded with leading zeros as name. 24bpp RGB and BGR formats are supported. z=<09> Species the compression level. 0 is no compression, 9 is maximum compression. outdir=<dirname> Specify the directory to save the PNG les to (default: ./). alpha Create PNG les with an alpha channel. Note that MPlayer in general does not support alpha, so this will only be useful in some rare cases. Output each frame into a Targa le in the current directory. Each le takes the frame number padded with leading zeros as name. The purpose of this video output driver is to have a simple lossless image writer to use without any external library. It supports the BGR[A] color format, with 15, 24 and 32 bpp. You can force a particular format with the format video lter. EXAMPLE: mplayer video.nut vf format=bgr15 vo tga

tga

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. Use a + before the codec name to force it, this will likely crash! If the list has a trailing , MPlayer will fall back on codecs not contained in the list. NOTE: See ac help for a full list of available codecs. EXAMPLE: ac mp3acm Force the l3codeca.acm MP3 codec. ac mad, Try libmad rst, then fall back on others. ac hwac3,a52, Try hardware AC-3 passthrough, software AC-3, then others. ac hwdts, Try hardware DTS passthrough, then fall back on others. ac ffmp3, Skip FFmpegs MP3 decoder. afadv <force=(07):list=(lters)> (also see af) Specify advanced audio lter options: force=<07> Forces the insertion of audio lters to one of the following: 0: Use completely automatic lter insertion. 1: Optimize for accuracy (default). 2: Optimize for speed. Warning: Some features in the audio lters may silently fail, and the sound quality may drop. 3: Use no automatic insertion of lters and no optimization. Warning: It may be possible to crash MPlayer using this setting. 4: Use automatic insertion of lters according to 0 above, but use oating point processing when possible. 5: Use automatic insertion of lters according to 1 above, but use oating point processing when possible. 6: Use automatic insertion of lters according to 2 above, but use oating point processing when possible.

The MPlayer Project

2009-03-25

53

MPlayer(1)

The Movie Player

MPlayer(1)

7: Use no automatic insertion of lters according to 3 above, and use oating point processing when possible. list=<lters> Same as af. afm <driver1,driver2,...> Specify a priority list of audio codec families to be used, according to their codec name in codecs.conf. Falls back on the default codecs if none of the given codec families work. NOTE: See afm help for a full list of available codec families. EXAMPLE: afm ffmpeg Try FFmpegs libavcodec codecs rst. afm acm,dshow Try Win32 codecs rst. aspect <ratio> (also see zoom) Override movie aspect ratio, in case aspect information is incorrect or missing in the le being played. EXAMPLE: aspect 4:3 or aspect 1.3333 aspect 16:9 or aspect 1.7777 noaspect Disable automatic movie aspect ratio compensation. elddominance <11> Set rst eld for interlaced content. Useful for deinterlacers that double the framerate: vf telds=1, vf yadif=1, vo vdpau:deint and vo xvmc:bobdeint. 1 auto (default): If the decoder does not export the appropriate information, it falls back to 0 (top eld rst). 0 top eld rst 1 bottom eld rst ip Flip image upside-down.

lavdopts <option1:option2:...> (DEBUG CODE) Specify libavcodec decoding parameters. Separate multiple options with a colon. EXAMPLE: lavdopts gray:skiplooplter=all:skipframe=nonref Available options are: bitexact Only use bit-exact algorithms in all decoding steps (for codec testing). bug=<value> Manually work around encoder bugs. 0: nothing 1: autodetect bugs (default) 2 (msmpeg4v3): some old lavc generated msmpeg4v3 les (no autodetection)

The MPlayer Project

2009-03-25

54

MPlayer(1)

The Movie Player

MPlayer(1)

4 (mpeg4): Xvid interlacing bug (autodetected if fourcc==XVIX) 8 (mpeg4): UMP4 (autodetected if fourcc==UMP4) 16 (mpeg4): padding bug (autodetected) 32 (mpeg4): illegal vlc bug (autodetected per fourcc) 64 (mpeg4): Xvid and DivX qpel bug (autodetected per fourcc/version) 128 (mpeg4): old standard qpel (autodetected per fourcc/version) 256 (mpeg4): another qpel bug (autodetected per fourcc/version) 512 (mpeg4): direct-qpel-blocksize bug (autodetected per fourcc/version) 1024 (mpeg4): edge padding bug (autodetected per fourcc/version) debug=<value> Display debugging information. 0: disabled 1: picture info 2: rate control 4: bitstream 8: macroblock (MB) type 16: per-block quantization parameter (QP) 32: motion vector 0x0040: motion vector visualization (use noslices) 0x0080: macroblock (MB) skip 0x0100: startcode 0x0200: PTS 0x0400: error resilience 0x0800: memory management control operations (H.264) 0x1000: bugs 0x2000: Visualize quantization parameter (QP), lower QP are tinted greener. 0x4000: Visualize block types. ec=<value> Set error concealment strategy. 1: Use strong deblock lter for damaged MBs. 2: iterative motion vector (MV) search (slow) 3: all (default) er=<value> Set error resilience strategy. 0: disabled 1: careful (Should work with broken encoders.) 2: normal (default) (Works with compliant encoders.) 3: aggressive (More checks, but might cause problems even for valid bitstreams.) 4: very aggressive fast (MPEG-2, MPEG-4, and H.264 only) Enable optimizations which do not comply to the specication and might potentially cause problems, like simpler dequantization, simpler motion compensation, assuming use of the default quantization matrix, assuming YUV 4:2:0 and skipping a few checks to detect damaged bitstreams. gray grayscale only decoding (a bit faster than with color)

The MPlayer Project

2009-03-25

55

MPlayer(1)

The Movie Player

MPlayer(1)

idct=<099> (see lavcopts) For best decoding quality use the same IDCT algorithm for decoding and encoding. This may come at a price in accuracy, though. lowres=<number>[,<w>] Decode at lower resolutions. Low resolution decoding is not supported by all codecs, and it will often result in ugly artifacts. This is not a bug, but a side effect of not decoding at full resolution. 0: disabled 1: 1/2 resolution 2: 1/4 resolution 3: 1/8 resolution If <w> is specied lowres decoding will be used only if the width of the video is major than or equal to <w>. o=<key>=<value>[,<key>=<value>[,...]] Pass AVOptions to libavcodec decoder. Note, a patch to make the o= unneeded and pass all unknown options through the AVOption system is welcome. A full list of AVOptions can be found in the FFmpeg manual. Note that some options may conict with MEncoder options. EXAMPLE: o=debug=pict sb=<number> (MPEG-2 only) Skip the given number of macroblock rows at the bottom. st=<number> (MPEG-2 only) Skip the given number of macroblock rows at the top. skiplooplter=<skipvalue> (H.264 only) Skips the loop lter (AKA deblocking) during H.264 decoding. Since the ltered frame is supposed to be used as reference for decoding dependent frames this has a worse effect on quality than not doing deblocking on e.g. MPEG-2 video. But at least for high bitrate HDTV this provides a big speedup with no visible quality loss. <skipvalue> can be either one of the following: none: Never skip. default: Skip useless processing steps (e.g. 0 size packets in AVI). nonref: Skip frames that are not referenced (i.e. not used for decoding other frames, the error cannot "build up"). bidir: Skip B-Frames. nonkey: Skip all frames except keyframes. all: Skip all frames. skipidct=<skipvalue> (MPEG-1/2 only) Skips the IDCT step. This degrades quality a lot of in almost all cases (see skiplooplter for available skip values). skipframe=<skipvalue> Skips decoding of frames completely. Big speedup, but jerky motion and sometimes bad artifacts (see skiplooplter for available skip values). threads=<18> (MPEG-1/2 and H.264 only) number of threads to use for decoding (default: 1)

The MPlayer Project

2009-03-25

56

MPlayer(1)

The Movie Player

MPlayer(1)

vismv=<value> Visualize motion vectors. 0: disabled 1: Visualize forward predicted MVs of P-frames. 2: Visualize forward predicted MVs of B-frames. 4: Visualize backward predicted MVs of B-frames. vstats Prints some statistics and stores them in ./vstats_*.log. noslices Disable drawing video by 16-pixel height slices/bands, instead draws the whole frame in a single run. May be faster or slower, depending on video card and available cache. It has effect only with libmpeg2 and libavcodec codecs. nosound Do not play/encode sound. Useful for benchmarking. novideo Do not play/encode video. In many cases this will not work, use vc null vo null instead. pp <quality> (also see vf pp) Set the DLL postprocess level. This option is no longer usable with vf pp. It only works with Win32 DirectShow DLLs with internal postprocessing routines. The valid range of pp values varies by codec, it is mostly 06, where 0=disable, 6=slowest/best. pphelp (also see vf pp) Show a summary about the available postprocess lters and their usage. ssf <mode> Species software scaler parameters. EXAMPLE: vf scale ssf lgb=3.0 lgb=<0100> gaussian blur lter (luma) cgb=<0100> gaussian blur lter (chroma) ls=<100100> sharpen lter (luma) cs=<100100> sharpen lter (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

The MPlayer Project

2009-03-25

57

MPlayer(1)

The Movie Player

MPlayer(1)

sws <software scaler type> (also see vf scale and zoom) Specify the software scaler algorithm to be used with the zoom option. This affects video output drivers which lack hardware acceleration, e.g. x11. Available types are: 0 1 2 3 4 5 6 7 8 9 10 fast bilinear bilinear bicubic (good quality) (default) experimental nearest neighbor (bad quality) area luma bicubic / chroma bilinear gauss sincR lanczos natural bicubic spline

NOTE: Some sws options are tunable. The description of the scale video lter has further information. 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. Use a + before the codec name to force it, this will likely crash! If the list has a trailing , MPlayer will fall back on codecs not contained in the list. NOTE: See vc help for a full list of available codecs. EXAMPLE: vc divx Force Win32/VfW DivX codec, no fallback. vc divxds,divx, Skip Win32 DivX codecs. vc ffmpeg12,mpeg12, Try libavcodecs MPEG-1/2 codec, then libmpeg2, then others. vfm <driver1,driver2,...> Specify a priority list of video codec families to be used, according to their names in codecs.conf. Falls back on the default codecs if none of the given codec families work. NOTE: See vfm help for a full list of available codec families. EXAMPLE: vfm ffmpeg,dshow,vfw Try the libavcodec, then Directshow, then VfW codecs and fall back on others, if they do not work. vfm xanim Try XAnim codecs rst. x <x> (also see zoom) (MPlayer only) Scale image to width <x> (if software/hardware scaling is available). Disables aspect calculations. xvidopts <option1:option2:...> Specify additional parameters when decoding with Xvid. NOTE: Since libavcodec is faster than Xvid you might want to use the libavcodec postprocessing lter (vf pp) and decoder (vfm ffmpeg) instead.

The MPlayer Project

2009-03-25

58

MPlayer(1)

The Movie Player

MPlayer(1)

Xvids internal postprocessing lters: deblock-chroma (also see vf pp) chroma deblock lter deblock-luma (also see vf pp) luma deblock lter dering-luma (also see vf pp) luma deringing lter dering-chroma (also see vf pp) chroma deringing lter lmeffect (also see vf noise) Adds articial lm grain to the video. May increase perceived quality, while lowering true quality. rendering methods: dr2 Activate direct rendering method 2. nodr2 Deactivate direct rendering method 2. xy <value> (also see zoom) value<=8 Scale image by factor <value>. value>8 Set width to value and calculate height to keep correct aspect ratio. y <y> (also see zoom) (MPlayer only) Scale image to height <y> (if software/hardware scaling is available). Disables aspect calculations. zoom Allow software scaling, where available. This will allow scaling with output drivers (like x11, fbdev) that do not support hardware scaling where MPlayer disables scaling by default for performance reasons.

AUDIO FILTERS
Audio lters allow you to modify the audio stream and its properties. The syntax is: af <lter1[=parameter1:parameter2:...],lter2,...> Setup a chain of audio lters. NOTE: To get a full list of available audio lters, see af help. Audio lters are managed in lists. There are a few commands to manage the lter list. afadd <lter1[,lter2,...]> Appends the lters given as arguments to the lter list. afpre <lter1[,lter2,...]> Prepends the lters given as arguments to the lter list. afdel <index1[,index2,...]> Deletes the lters at the given indexes. Index numbers start at 0, negative numbers address the end of the list (1 is the last).

The MPlayer Project

2009-03-25

59

MPlayer(1)

The Movie Player

MPlayer(1)

afclr Completely empties the lter list. Available lters are: resample[=srate[:sloppy[:type]]] Changes the sample rate of the audio stream. Can be used if you have a xed frequency sound card or if you are stuck with an old sound card that is only capable of max 44.1kHz. This lter is automatically enabled if necessary. It only supports 16-bit integer and oat in native-endian format as input. NOTE: With MEncoder, you need to also use srate <srate>. <srate> output sample frequency in Hz. The valid range for this parameter is 8000 to 192000. If the input and output sample frequency are the same or if this parameter is omitted the lter is automatically unloaded. A high sample frequency normally improves the audio quality, especially when used in combination with other lters. <sloppy> Allow (1) or disallow (0) the output frequency to differ slightly from the frequency given by <srate> (default: 1). Can be used if the startup of the playback is extremely slow. <type> Selects which resampling method to use. 0: linear interpolation (fast, poor quality especially when upsampling) 1: polyphase lterbank and integer processing 2: polyphase lterbank and oating point processing (slow, best quality) EXAMPLE: mplayer af resample=44100:0:0 would set the output frequency of the resample lter to 44100Hz using exact output frequency scaling and linear interpolation. lavcresample[=srate[:length[:linear[:count[:cutoff]]]]] Changes the sample rate of the audio stream to an integer <srate> in Hz. It only supports the 16-bit native-endian format. NOTE: With MEncoder, you need to also use srate <srate>. <srate> the output sample rate <length> length of the lter with respect to the lower sampling rate (default: 16) <linear> if 1 then lters will be linearly interpolated between polyphase entries <count> log2 of the number of polyphase entries (..., 10->1024, 11->2048, 12->4096, ...) (default: 10->1024) <cutoff> cutoff frequency (0.01.0), default set depending upon lter length lavcac3enc[=tospdif[:bitrate[:minchn]]] Encode multi-channel audio to AC-3 at runtime using libavcodec. Supports 16-bit native-endian input format, maximum 6 channels. The output is big-endian when outputting a raw AC-3 stream, native-endian when outputting to S/PDIF. The output sample rate of this lter is same with the input sample rate. When input sample rate is 48kHz, 44.1kHz, or 32kHz, this lter directly use it. Otherwise a resampling lter is auto-inserted before this lter to make the input and output sample rate be 48kHz. You need to specify channels N to make the decoder decode audio into N-channel, then the lter can encode the N-channel input to AC-3.

The MPlayer Project

2009-03-25

60

MPlayer(1)

The Movie Player

MPlayer(1)

<tospdif> Output raw AC-3 stream if zero or not set, output to S/PDIF for passthrough when <tospdif> is set non-zero. <bitrate> The bitrate to encode the AC-3 stream. Set it to either 384 or 384000 to get 384kbits. Valid values: 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, 384, 448, 512, 576, 640 Default bitrate is based on the input channel number: 1ch: 96, 2ch: 192, 3ch: 224, 4ch: 384, 5ch: 448, 6ch: 448 <minchn> If the input channel number is less than <minchn>, the lter will detach itself (default: 5). sweep[=speed] Produces a sine sweep. <0.01.0> Sine function delta, use very low values to hear the sweep. sinesuppress[=freq:decay] Remove a sine at the specied frequency. Useful to get rid of the 50/60Hz noise on low quality audio equipment. It probably only works on mono input. <freq> The frequency of the sine which should be removed (in Hz) (default: 50) <decay> Controls the adaptivity (a larger value will make the lter adapt to amplitude and phase changes quicker, a smaller value will make the adaptation slower) (default: 0.0001). Reasonable values are around 0.001. hrtf[=ag] Head-related transfer function: Converts multichannel audio to 2 channel output for headphones, preserving the spatiality of the sound. Flag Meaning m matrix decoding of the rear channel s 2-channel matrix decoding 0 no matrix decoding (default) equalizer=[g1:g2:g3:...:g10] 10 octave band graphic equalizer, implemented using 10 IIR band pass lters. This means that it works regardless of what type of audio is being played back. The center frequencies for the 10 bands are: No. frequency 0 31.25 Hz 1 62.50 Hz 2 125.00 Hz 3 250.00 Hz 4 500.00 Hz 5 1.00 kHz 6 2.00 kHz 7 4.00 kHz 8 8.00 kHz 9 16.00 kHz If the sample rate of the sound being played is lower than the center frequency for a frequency

The MPlayer Project

2009-03-25

61

MPlayer(1)

The Movie Player

MPlayer(1)

band, then that band will be disabled. A known bug with this lter is that the characteristics for the uppermost band are not completely symmetric if the sample rate is close to the center frequency of that band. This problem can be worked around by upsampling the sound using the resample lter before it reaches this lter. <g1>:<g2>:<g3>:...:<g10> oating point numbers representing the gain in dB for each frequency band (1212) EXAMPLE: mplayer af equalizer=11:11:10:5:0:12:0:5:12:12 media.avi Would amplify the sound in the upper and lower frequency region while canceling it almost completely around 1kHz. channels=nch[:nr:from1:to1:from2:to2:from3:to3:...] Can be used for adding, removing, routing and copying audio channels. If only <nch> is given the default routing is used, it works as follows: If the number of output channels is bigger than the number of input channels empty channels are inserted (except mixing from mono to stereo, then the mono channel is repeated in both of the output channels). If the number of output channels is smaller than the number of input channels the exceeding channels are truncated. <nch> number of output channels (16) <nr> number of routes (16) <from1:to1:from2:to2:from3:to3:...> Pairs of numbers between 0 and 5 that dene where to route each channel. EXAMPLE: mplayer af channels=4:4:0:1:1:0:2:2:3:3 media.avi Would change the number of channels to 4 and set up 4 routes that swap channel 0 and channel 1 and leave channel 2 and 3 intact. Observe that if media containing two channels was played back, channels 2 and 3 would contain silence but 0 and 1 would still be swapped. mplayer af channels=6:4:0:0:0:1:0:2:0:3 media.avi Would change the number of channels to 6 and set up 4 routes that copy channel 0 to channels 0 to 3. Channel 4 and 5 will contain silence. format[=format] (also see format) Convert between different sample formats. Automatically enabled when needed by the sound card or another lter. <format> Sets the desired format. The general form is sbe, where s denotes the sign (either s for signed or u for unsigned), b denotes the number of bits per sample (16, 24 or 32) and e denotes the endianness (le means little-endian, be big-endian and ne the endianness of the computer MPlayer is running on). Valid values (amongst others) are: s16le, u32be and u24ne. Exceptions to this rule that are also valid format speciers: u8, s8, oatle, oatbe, oatne, mulaw, alaw, mpeg2, ac3 and imaadpcm. volume[=v[:sc]] Implements software volume control. Use this lter with caution since it can reduce the signal to noise ratio of the sound. In most cases it is best to set the level for the PCM sound to max, leave this lter out and control the output level to your speakers with the master volume control of the mixer. In case your sound card has a digital PCM mixer instead of an analog one, and you hear distortion, use the MASTER mixer instead. If there is an external amplier connected to the computer (this is almost always the case), the noise level can be minimized by adjusting the master level and the volume knob on the amplier until the hissing noise in the background is gone.

The MPlayer Project

2009-03-25

62

MPlayer(1)

The Movie Player

MPlayer(1)

This lter has a second feature: It measures the overall maximum sound level and prints out that level when MPlayer exits. This volume estimate can be used for setting the sound level in MEncoder such that the maximum dynamic range is utilized. NOTE: This lter is not reentrant and can therefore only be enabled once for every audio stream. <v> Sets the desired gain in dB for all channels in the stream from 200dB to +60dB, where 200dB mutes the sound completely and +60dB equals a gain of 1000 (default: 0). <sc> Turns soft clipping on (1) or off (0). Soft-clipping can make the sound more smooth if very high volume levels are used. Enable this option if the dynamic range of the loudspeakers is very low. WARNING: This feature creates distortion and should be considered a last resort. EXAMPLE: mplayer af volume=10.1:0 media.avi Would amplify the sound by 10.1dB and hard-clip if the sound level is too high. pan=n[:L00:L01:L02:...L10:L11:L12:...Ln0:Ln1:Ln2:...] Mixes channels arbitrarily. Basically a combination of the volume and the channels lter that can be used to down-mix many channels to only a few, e.g. stereo to mono or vary the "width" of the center speaker in a surround sound system. This lter is hard to use, and will require some tinkering before the desired result is obtained. The number of options for this lter depends on the number of output channels. An example how to downmix a six-channel le to two channels with this lter can be found in the examples section near the end. <n> number of output channels (16) <Lij> How much of input channel i is mixed into output channel j (01). So in principle you rst have n numbers saying what to do with the rst input channel, then n numbers that act on the second input channel etc. If you do not specify any numbers for some input channels, 0 is assumed. EXAMPLE: mplayer af pan=1:0.5:0.5 media.avi Would down-mix from stereo to mono. mplayer af pan=3:1:0:0.5:0:1:0.5 media.avi Would give 3 channel output leaving channels 0 and 1 intact, and mix channels 0 and 1 into output channel 2 (which could be sent to a subwoofer for example). sub[=fc:ch] Adds a subwoofer channel to the audio stream. The audio data used for creating the subwoofer channel is an average of the sound in channel 0 and channel 1. The resulting sound is then lowpass ltered by a 4th order Butterworth lter with a default cutoff frequency of 60Hz and added to a separate channel in the audio stream. Warning: Disable this lter when you are playing DVDs with Dolby Digital 5.1 sound, otherwise this lter will disrupt the sound to the subwoofer. <fc> cutoff frequency in Hz for the low-pass lter (20Hz to 300Hz) (default: 60Hz) For the best result try setting the cutoff frequency as low as possible. This will improve the stereo or surround sound experience. <ch> Determines the channel number in which to insert the sub-channel audio. Channel number can be between 0 and 5 (default: 5). Observe that the number of channels will automatically be increased to <ch> if necessary.

The MPlayer Project

2009-03-25

63

MPlayer(1)

The Movie Player

MPlayer(1)

EXAMPLE: mplayer af sub=100:4 channels 5 media.avi Would add a sub-woofer channel with a cutoff frequency of 100Hz to output channel 4. center Creates a center channel from the front channels. May currently be low quality as it does not implement a high-pass lter for proper extraction yet, but averages and halves the channels instead. <ch> Determines the channel number in which to insert the center channel. Channel number can be between 0 and 5 (default: 5). Observe that the number of channels will automatically be increased to <ch> if necessary. surround[=delay] Decoder for matrix encoded surround sound like Dolby Surround. Many les with 2 channel audio actually contain matrixed surround sound. Requires a sound card supporting at least 4 channels. <delay> delay time in ms for the rear speakers (0 to 1000) (default: 20) This delay should be set as follows: If d1 is the distance from the listening position to the front speakers and d2 is the distance from the listening position to the rear speakers, then the delay should be set to 15ms if d1 <= d2 and to 15 + 5*(d1-d2) if d1 > d2. EXAMPLE: mplayer af surround=15 channels 4 media.avi Would add surround sound decoding with 15ms delay for the sound to the rear speakers. delay[=ch1:ch2:...] Delays the sound to the loudspeakers such that the sound from the different channels arrives at the listening position simultaneously. It is only useful if you have more than 2 loudspeakers. ch1,ch2,... The delay in ms that should be imposed on each channel (oating point number between 0 and 1000). To calculate the required delay for the different channels do as follows: 1. Measure the distance to the loudspeakers in meters in relation to your listening position, giving you the distances s1 to s5 (for a 5.1 system). There is no point in compensating for the subwoofer (you will not hear the difference anyway). 2. Subtract the distances s1 to s5 from the maximum distance, i.e. s[i] = max(s) s[i]; i = 1...5. 3. Calculate the required delays in ms as d[i] = 1000*s[i]/342; i = 1...5. EXAMPLE: mplayer af delay=10.5:10.5:0:0:7:0 media.avi Would delay front left and right by 10.5ms, the two rear channels and the sub by 0ms and the center channel by 7ms. export[=mmapped_le[:nsamples]] Exports the incoming signal to other processes using memory mapping (mmap()). Memory mapped areas contain a header: int nch /*number of channels*/ int size /*buffer size*/ unsigned long long counter /*Used to keep sync, updated every

The MPlayer Project

2009-03-25

64

MPlayer(1)

The Movie Player

MPlayer(1)

time new data is exported.*/ The rest is payload (non-interleaved) 16 bit data. <mmapped_le> le to map data to (default: /.mplayer/mplayer-af_export) <nsamples> number of samples per channel (default: 512) EXAMPLE: mplayer af export=/tmp/mplayer-af_export:1024 media.avi Would export 1024 samples per channel to /tmp/mplayer-af_export. extrastereo[=mul] (Linearly) increases the difference between left and right channels which adds some sort of "live" effect to playback. <mul> Sets the difference coefcient (default: 2.5). 0.0 means mono sound (average of both channels), with 1.0 sound will be unchanged, with 1.0 left and right channels will be swapped. volnorm[=method:target] Maximizes the volume without distorting the sound. <method> Sets the used method. 1: Use a single sample to smooth the variations via the standard weighted mean over past samples (default). 2: Use several samples to smooth the variations via the standard weighted mean over past samples. <target> Sets the target amplitude as a fraction of the maximum for the sample type (default: 0.25). ladspa=le:label[:controls...] Load a LADSPA (Linux Audio Developers Simple Plugin API) plugin. This lter is reentrant, so multiple LADSPA plugins can be used at once. <le> Species the LADSPA plugin library le. If LADSPA_PATH is set, it searches for the specied le. If it is not set, you must supply a fully specied pathname. <label> Species the lter within the library. Some libraries contain only one lter, but others contain many of them. Entering help here, will list all available lters within the specied library, which eliminates the use of listplugins from the LADSPA SDK. <controls> Controls are zero or more oating point values that determine the behavior of the loaded plugin (for example delay, threshold or gain). In verbose mode (add v to the MPlayer command line), all available controls and their valid ranges are printed. This eliminates the use of analyseplugin from the LADSPA SDK. comp Compressor/expander lter usable for microphone input. Prevents artifacts on very loud sound and raises the volume on very low sound. This lter is untested, maybe even unusable. Noise gate lter similar to the comp audio lter. This lter is untested, maybe even unusable.

gate

The MPlayer Project

2009-03-25

65

MPlayer(1)

The Movie Player

MPlayer(1)

karaoke Simple voice removal lter exploiting the fact that voice is usually recorded with mono gear and later center mixed onto the nal audio stream. Beware that this lter will turn your signal into mono. Works well for 2 channel tracks; do not bother trying it on anything but 2 channel stereo. scaletempo[=option1:option2:...] Scales audio tempo without altering pitch, optionally synced to playback speed (default). This works by playing stride ms of audio at normal speed then consuming stride*scale ms of input audio. It pieces the strides together by blending overlap% of stride with audio following the previous stride. It optionally performs a short statistical analysis on the next search ms of audio to determine the best overlap position. scale=<amount> Nominal amount to scale tempo. Scales this amount in addition to speed. (default: 1.0) stride=<amount> Length in milliseconds to output each stride. Too high of value will cause noticable skips at high scale amounts and an echo at low scale amounts. Very low values will alter pitch. Increasing improves performance. (default: 60) overlap=<percent> Percentage of stride to overlap. Decreasing improves performance. (default: .20) search=<amount> Length in milliseconds to search for best overlap position. Decreasing improves performance greatly. On slow systems, you will probably want to set this very low. (default: 14) speed=<tempo|pitch|both|none> Set response to speed change. tempo Scale tempo in sync with speed (default). pitch Reverses effect of lter. Scales pitch without altering tempo. Add [ speed_mult 0.9438743126816935 and ] speed_mult 1.059463094352953 to your input.conf to step by musical semi-tones. WARNING: Loses sync with video. both Scale both tempo and pitch. none Ignore speed changes. EXAMPLE: mplayer af scaletempo speed 1.2 media.ogg Would playback media at 1.2x normal speed, with audio at normal pitch. Changing playback speed, would change audio tempo to match. mplayer af scaletempo=scale=1.2:speed=none speed 1.2 media.ogg Would playback media at 1.2x normal speed, with audio at normal pitch, but changing playback speed has no effect on audio tempo. mplayer af scaletempo=stride=30:overlap=.50:search=10 media.ogg Would tweak the quality and performace parameters. mplayer af format=oatne,scaletempo media.ogg Would make scaletempo use oat code. Maybe faster on some platforms. mplayer af scaletempo=scale=1.2:speed=pitch audio.ogg Would playback audio le at 1.2x normal speed, with audio at normal pitch. Changing playback speed, would change pitch, leaving audio tempo at 1.2x. stats Collects and prints statistics about the audio stream, especially the volume. These statistics are especially intended to help adjusting the volume while avoiding clipping. The volumes are printed in dB and compatible with the volume audio lter.

The MPlayer Project

2009-03-25

66

MPlayer(1)

The Movie Player

MPlayer(1)

VIDEO FILTERS
Video lters allow you to modify the video stream and its properties. The syntax is: vf <lter1[=parameter1:parameter2:...],lter2,...> Setup a chain of video lters. Many parameters are optional and set to default values if omitted. To explicitly use a default value set a parameter to 1. Parameters w:h means width x height in pixels, x:y means x;y position counted from the upper left corner of the bigger image. NOTE: To get a full list of available video lters, see vf help. Video lters are managed in lists. There are a few commands to manage the lter list. vfadd <lter1[,lter2,...]> Appends the lters given as arguments to the lter list. vfpre <lter1[,lter2,...]> Prepends the lters given as arguments to the lter list. vfdel <index1[,index2,...]> Deletes the lters at the given indexes. Index numbers start at 0, negative numbers address the end of the list (1 is the last). vfclr Completely empties the lter list. With lters that support it, you can access parameters by their name. vf <lter>=help Prints the parameter names and parameter value ranges for a particular lter. vf <lter=named_parameter1=value1[:named_parameter2=value2:...]> Sets a named parameter to the given value. Use on and off or yes and no to set ag parameters. Available lters 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 original width and height. <x>,<y> Position of the cropped picture, defaults to center. cropdetect[=limit:round] Calculates necessary cropping parameters and prints the recommended parameters to stdout. <limit> Threshold, which can be optionally specied from nothing (0) to everything (255) (default: 24). <round> Value which the width/height should be divisible by (default: 16). The offset is automatically adjusted to center the video. Use 2 to get only even dimensions (needed for 4:2:2 video). 16 is best when encoding to most video codecs.

The MPlayer Project

2009-03-25

67

MPlayer(1)

The Movie Player

MPlayer(1)

rectangle[=w:h:x:y] Draws a rectangle of the requested width and height at the specied coordinates over the image and prints current rectangle parameters to the console. This can be used to nd optimal cropping parameters. If you bind the input.conf directive change_rectangle to keystrokes, you can move and resize the rectangle on the y. <w>,<h> width and height (default: 1, maximum possible width where boundaries are still visible.) <x>,<y> top left corner position (default: 1, uppermost leftmost) expand[=w:h:x:y:o:a:r] Expands (not scales) movie resolution to the given value and places the unscaled original at coordinates x, y. Can be used for placing subtitles/OSD in the resulting black bands. <w>,<h> Expanded width,height (default: original width,height). Negative values for w and h are treated as offsets to the original size. EXAMPLE: expand=0:50:0:0 Adds a 50 pixel border to the bottom of the picture. <x>,<y> position of original image on the expanded image (default: center) <o> OSD/subtitle rendering 0: disable (default) 1: enable <a> Expands to t an aspect instead of a resolution (default: 0). EXAMPLE: expand=800:::::4/3 Expands to 800x600, unless the source is higher resolution, in which case it expands to ll a 4/3 aspect. <r> Rounds up to make both width and height divisible by <r> (default: 1).

ip (also see ip) Flips the image upside down. mirror Mirrors the image on the Y axis. rotate[=<07>] Rotates the image by 90 degrees and optionally ips it. For values between 47 rotation is only done if the movie geometry is portrait and not landscape. 0 Rotate by 90 degrees clockwise and ip (default).

The MPlayer Project

2009-03-25

68

MPlayer(1)

The Movie Player

MPlayer(1)

1 2 3

Rotate by 90 degrees clockwise. Rotate by 90 degrees counterclockwise. Rotate by 90 degrees counterclockwise and ip.

scale[=w:h[:ilaced[:chr_drop[:par[:par2[:presize[:noup[:arnd]]]]]]]] Scales the image with the software scaler (slow) and performs a YUV<>RGB colorspace conversion (also see sws). <w>,<h> scaled width/height (default: original width/height) NOTE: If zoom is used, and underlying lters (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 dimension and the prescaled aspect ratio. 3: Calculate w/h using the other dimension and the original aspect ratio. (n+8): Like n above, but rounding the dimension to the closest multiple of 16. <ilaced> Toggle interlaced scaling. 0: off (default) 1: on <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. <par>[:<par2>] (also see sws) Set some scaling parameters depending on the type of scaler selected with sws. sws 2 (bicubic): B (blurring) and C (ringing) 0.00:0.60 default 0.00:0.75 VirtualDubs "precise bicubic" 0.00:0.50 Catmull-Rom spline 0.33:0.33 Mitchell-Netravali spline 1.00:0.00 cubic B-spline sws 7 (gaussian): sharpness (0 (soft) 100 (sharp)) sws 9 (lanczos): lter length (110) <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)

The MPlayer Project

2009-03-25

69

MPlayer(1)

The Movie Player

MPlayer(1)

<noup> Disallow upscaling past the original dimensions. 0: Allow upscaling (default). 1: Disallow upscaling if one dimension exceeds its original value. 2: Disallow upscaling if both dimensions exceed their original values. <arnd> Accurate rounding for the vertical scaler, which may be faster or slower than the default rounding. 0: Disable accurate rounding (default). 1: Enable accurate rounding. dsize[=aspect|w:h:aspect-method:r] Changes the intended display size/aspect at an arbitrary point in the lter chain. Aspect can be given as a fraction (4/3) or oating point number (1.33). Alternatively, you may specify the exact display width and height desired. Note that this lter does not do any scaling itself; it just affects what later scalers (software or hardware) will do when auto-scaling to correct aspect. <w>,<h> New display width and height. Can also be these special values: 0: original display width and height 1: original video width and height (default) 2: Calculate w/h using the other dimension and the original display aspect ratio. 3: Calculate w/h using the other dimension and the original video aspect ratio. EXAMPLE: dsize=800:2 Species a display resolution of 800x600 for a 4/3 aspect video, or 800x450 for a 16/9 aspect video. <aspect-method> Modies width and height according to original aspect ratios. 1: Ignore original aspect ratio (default). 0: Keep display aspect ratio by using <w> and <h> as maximum resolution. 1: Keep display aspect ratio by using <w> and <h> as minimum resolution. 2: Keep video aspect ratio by using <w> and <h> as maximum resolution. 3: Keep video aspect ratio by using <w> and <h> as minimum resolution. EXAMPLE: dsize=800:600:0 Species a display resolution of at most 800x600, or smaller, in order to keep aspect. <r> yuy2 Rounds up to make both width and height divisible by <r> (default: 1).

Forces software YV12/I420/422P to YUY2 conversion. Useful for video cards/drivers with slow YV12 but fast YUY2 support. Forces software YVU9 to YV12 colorspace conversion. Deprecated in favor of the software scaler.

yvu9

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

The MPlayer Project

2009-03-25

70

MPlayer(1)

The Movie Player

MPlayer(1)

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 lter without doing any conversion. Use together with the scale lter for a real conversion. NOTE: 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 lter without doing any conversion. Unlike the format lter, this will allow any colorspace except the one you specify. NOTE: For a list of available formats see noformat=fmt=help. <fourcc> format name like rgb15, bgr24, yv12, etc (default: yv12) pp[=lter1[:option1[:option2...]]/[]lter2...] (also see pphelp) Enables the specied chain of postprocessing sublters. Sublters must be separated by / and can be disabled by prepending a . Each sublter and some options have a short and a long name that can be used interchangeably, i.e. dr/dering are the same. All sublters share common options to determine their scope: a/autoq Automatically switch the sublter off if the CPU is too slow. c/chrom Do chrominance ltering, too (default). y/nochrom Do luminance ltering only (no chrominance). n/noluma Do chrominance ltering only (no luminance). NOTE: pphelp shows a list of available sublters. Available sublters are hb/hdeblock[:difference[:atness]] horizontal deblocking lter <difference>: Difference factor where higher values mean more deblocking (default: 32). <atness>: Flatness threshold where lower values mean more deblocking (default: 39). vb/vdeblock[:difference[:atness]] vertical deblocking lter <difference>: Difference factor where higher values mean more deblocking (default: 32). <atness>: Flatness threshold where lower values mean more deblocking (default: 39).

The MPlayer Project

2009-03-25

71

MPlayer(1)

The Movie Player

MPlayer(1)

ha/hadeblock[:difference[:atness]] accurate horizontal deblocking lter <difference>: Difference factor where higher values mean more deblocking (default: 32). <atness>: Flatness threshold where lower values mean more deblocking (default: 39). va/vadeblock[:difference[:atness]] accurate vertical deblocking lter <difference>: Difference factor where higher values mean more deblocking (default: 32). <atness>: Flatness threshold where lower values mean more deblocking (default: 39). The horizontal and vertical deblocking lters share the difference and atness values so you cannot set different horizontal and vertical thresholds.

h1/x1hdeblock experimental horizontal deblocking lter v1/x1vdeblock experimental vertical deblocking lter dr/dering deringing lter tn/tmpnoise[:threshold1[:threshold2[:threshold3]]] temporal noise reducer <threshold1>: larger -> stronger ltering <threshold2>: larger -> stronger ltering <threshold3>: larger -> stronger ltering al/autolevels[:f/fullyrange] automatic brightness / contrast correction f/fullyrange: Stretch luminance to (0255). lb/linblenddeint Linear blend deinterlacing lter that deinterlaces the given block by ltering all lines with a (1 2 1) lter. li/linipoldeint Linear interpolating deinterlacing lter that deinterlaces the given block by linearly interpolating every second line. ci/cubicipoldeint Cubic interpolating deinterlacing lter deinterlaces the given block by cubically interpolating every second line. md/mediandeint Median deinterlacing lter that deinterlaces the given block by applying a median lter to every second line.

The MPlayer Project

2009-03-25

72

MPlayer(1)

The Movie Player

MPlayer(1)

fd/ffmpegdeint FFmpeg deinterlacing lter that deinterlaces the given block by ltering every second line with a (1 4 2 4 1) lter. l5/lowpass5 Vertically applied FIR lowpass deinterlacing lter that deinterlaces the given block by ltering all lines with a (1 2 6 2 1) lter. fq/forceQuant[:quantizer] Overrides the quantizer table from the input with the constant quantizer you specify. <quantizer>: quantizer to use de/default default pp lter combination (hb:a,vb:a,dr:a) fa/fast fast pp lter combination (h1:a,v1:a,dr:a) ac high quality pp lter combination (ha:a:128:7,va:a,dr:a)

EXAMPLE: vf pp=hb/vb/dr/al horizontal and vertical deblocking, deringing and automatic brightness/contrast vf pp=de/al default lters without brightness/contrast correction vf pp=default/tmpnoise:1:2:3 Enable default lters & temporal denoiser. vf pp=hb:y/vb:a Horizontal deblocking on luminance only, and switch vertical deblocking on or off automatically depending on available CPU time. spp[=quality[:qp[:mode]]] Simple postprocessing lter that compresses and decompresses the image at several (or in the case of quality level 6 all) shifts and averages the results. <quality> 06 (default: 3) <qp> Force quantization parameter (default: 0, use QP from video). <mode> 0: hard thresholding (default) 1: soft thresholding (better deringing, but blurrier) 4: like 0, but also use B-frames QP (may cause icker) 5: like 1, but also use B-frames QP (may cause icker) uspp[=quality[:qp]] Ultra simple & slow postprocessing lter that compresses and decompresses the image at several (or in the case of quality level 8 all) shifts and averages the results. The way this differs from the behavior of spp is that uspp actually encodes & decodes each case with libavcodec Snow, whereas spp uses a simplied intra only 8x8 DCT similar to MJPEG.

The MPlayer Project

2009-03-25

73

MPlayer(1)

The Movie Player

MPlayer(1)

<quality> 08 (default: 3) <qp> Force quantization parameter (default: 0, use QP from video). fspp[=quality[:qp[:strength[:bframes]]]] faster version of the simple postprocessing lter <quality> 45 (equivalent to spp; default: 4) <qp> Force quantization parameter (default: 0, use QP from video). <1532> Filter strength, lower values mean more details but also more artifacts, while higher values make the image smoother but also blurrier (default: 0 PSNR optimal). <bframes> 0: do not use QP from B-frames (default) 1: use QP from B-frames too (may cause icker) pp7[=qp[:mode]] Variant of the spp lter, similar to spp=6 with 7 point DCT where only the center sample is used after IDCT. <qp> Force quantization parameter (default: 0, use QP from video). <mode> 0: hard thresholding 1: soft thresholding (better deringing, but blurrier) 2: medium thresholding (default, good results) qp=equation quantization parameter (QP) change lter <equation> some equation like "2+2*sin(PI*qp)" geq=equation generic equation change lter <equation> Some equation, e.g. p(W-X\,Y) to ip the image horizontally. You can use whitespace to make the equation more readable. There are a couple of constants that can be used in the equation: PI: the number pi E: the number e X / Y: the coordinates of the current sample W / H: width and height of the image SW / SH: width/height scale depending on the currently ltered plane, e.g. 1,1 and 0.5,0.5 for YUV 4:2:0.

The MPlayer Project

2009-03-25

74

MPlayer(1)

The Movie Player

MPlayer(1)

p(x,y): returns the value of the pixel at location x/y of the current plane. test Generate various test patterns.

rgbtest[=width:height] Generate an RGB test pattern useful for detecting RGB vs BGR issues. You should see a red, green and blue stripe from top to bottom. <width> Desired width of generated image (default: 0). 0 means width of input image. <height> Desired height of generated image (default: 0). 0 means height of input image. lavc[=quality:fps] Fast software YV12 to MPEG-1 conversion with libavcodec for use with DVB/DXR3/IVTV/ V4L2. <quality> 131: xed qscale 32: xed bitrate in kbits <fps> force output fps (oat value) (default: 0, autodetect based on height) dvbscale[=aspect] Set up optimal scaling for DVB cards, scaling the x axis in hardware and calculating the y axis scaling in software to keep aspect. Only useful together with expand and scale. <aspect> Control aspect ratio, calculate as DVB_HEIGHT*ASPECTRATIO 576*4/3=768), set it to 576*(16/9)=1024 for a 16:9 TV. EXAMPLE: vf dvbscale,scale=1:0,expand=1:576:1:1:1,lavc FIXME: Explain what this does. noise[=luma[u][t|a][h][p]:chroma[u][t|a][h][p]] Adds noise. <0100> luma noise <0100> chroma noise u uniform noise (gaussian otherwise) t temporal noise (noise pattern changes between frames) a averaged temporal noise (smoother, but a lot slower) h high quality (slightly better looking, slightly slower) p mix random noise with a (semi)regular pattern denoise3d[=luma_spatial:chroma_spatial:luma_tmp:chroma_tmp] This lter aims to reduce image noise producing smooth images and making still images really still (This should enhance compressibility.).

(default:

The MPlayer Project

2009-03-25

75

MPlayer(1)

The Movie Player

MPlayer(1)

<luma_spatial> spatial luma strength (default: 4) <chroma_spatial> spatial chroma strength (default: 3) <luma_tmp> luma temporal strength (default: 6) <chroma_tmp> chroma temporal strength (default: luma_tmp*chroma_spatial/luma_spatial) hqdn3d[=luma_spatial:chroma_spatial:luma_tmp:chroma_tmp] High precision/quality version of the denoise3d lter. Parameters and usage are the same. ow[=depth[:luma_strength[:chroma_strength]]] Overcomplete Wavelet denoiser. <depth> Larger depth values will denoise lower frequency components more, but slow down ltering (default: 8). <luma_strength> luma strength (default: 1.0) <chroma_strength> chroma strength (default: 1.0) eq[=brightness:contrast] (OBSOLETE) 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, either for xing poorly captured movies, or for slightly reducing contrast to mask artifacts and get by with lower bitrates. <100100> initial brightness <100100> initial contrast eq2[=gamma:contrast:brightness:saturation:rg:gg:bg:weight] Alternative software equalizer that uses lookup tables (very slow), allowing gamma correction in addition to simple brightness and contrast adjustment. Note that it uses the same MMX optimized code as vf eq if all gamma values are 1.0. The parameters are given as oating point values. <0.110> initial gamma value (default: 1.0) <22> initial contrast, where negative values result in a negative image (default: 1.0) <11> initial brightness (default: 0.0) <03> initial saturation (default: 1.0) <0.110> gamma value for the red component (default: 1.0) <0.110> gamma value for the green component (default: 1.0) <0.110> gamma value for the blue component (default: 1.0) <01> 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 overamplied 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

The MPlayer Project

2009-03-25

76

MPlayer(1)

The Movie Player

MPlayer(1)

(default: 1.0). hue[=hue:saturation] Software equalizer with interactive controls just like the hardware equalizer, for cards/drivers that do not support hue and saturation controls in hardware. <180180> initial hue (default: 0.0) <100100> initial saturation, where negative values result in a negative chroma (default: 1.0) halfpack[=f] Convert planar YUV 4:2:0 to half-height packed 4:2:2, downsampling luma but keeping all chroma samples. Useful for output to low-resolution display devices when hardware downscaling is poor quality or is not available. Can also be used as a primitive luma-only deinterlacer with very low CPU usage. <f> By default, halfpack averages pairs of lines when downsampling. Any value different from 0 or 1 gives the default (averaging) behavior. 0: Only use even lines when downsampling. 1: Only use odd lines when downsampling. ilpack[=mode] When interlaced video is stored in YUV 4:2:0 formats, chroma interlacing does not line up properly due to vertical downsampling of the chroma channels. This lter 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 eld. <mode> Select the sampling mode. 0: nearest-neighbor sampling, fast but incorrect 1: linear interpolation (default) harddup Only useful with MEncoder. If harddup is used when encoding, it will force duplicate frames to be encoded in the output. This uses slightly more space, but is necessary for output to MPEG les or if you plan to demux and remux the video stream after encoding. Should be placed at or near the end of the lter chain unless you have a good reason to do otherwise. softskip Only useful with MEncoder. Softskip moves the frame skipping (dropping) step of encoding from before the lter chain to some point during the lter chain. This allows lters which need to see all frames (inverse telecine, temporal denoising, etc.) to function properly. Should be placed after the lters which need to see all frames and before any subsequent lters that are CPU-intensive. decimate[=max:hi:lo:frac] Drops frames that do not differ greatly from the previous frame in order to reduce framerate. The main use of this lter is for very-low-bitrate encoding (e.g. streaming over dialup modem), but it could in theory be used for xing movies that were inverse-telecined incorrectly. <max> Sets the maximum number of consecutive frames which can be dropped (if positive), or the minimum interval between dropped frames (if negative). <hi>,<lo>,<frac> 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

The MPlayer Project

2009-03-25

77

MPlayer(1)

The Movie Player

MPlayer(1)

each pixel, or the same spread out differently over the block. dint[=sense:level] The drop-deinterlace (dint) lter detects and drops the rst from a set of interlaced video frames. <0.01.0> relative difference between neighboring pixels (default: 0.1) <0.01.0> What part of the image has to be detected as interlaced to drop the frame (default: 0.15). lavcdeint (OBSOLETE) FFmpeg deinterlacing lter, same as vf pp=fd kerndeint[=thresh[:map[:order[:sharp[:twoway]]]]] Donald Grafts adaptive kernel deinterlacer. Deinterlaces parts of a video if a congurable threshold is exceeded. <0255> threshold (default: 10) <map> 0: Ignore pixels exceeding the threshold (default). 1: Paint pixels exceeding the threshold white. <order> 0: Leave elds alone (default). 1: Swap elds. <sharp> 0: Disable additional sharpening (default). 1: Enable additional sharpening. <twoway> 0: Disable twoway sharpening (default). 1: Enable twoway sharpening. unsharp[=l|cWxH:amount[:l|cWxH:amount]] unsharp mask / gaussian blur l c Apply effect on luma component. Apply effect on chroma components.

<width>x<height> 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.51.5). <0: blur >0: sharpen swapuv Swap U & V plane.

The MPlayer Project

2009-03-25

78

MPlayer(1)

The Movie Player

MPlayer(1)

il[=d|i][s][:[d|i][s]] (De)interleaves lines. The goal of this lter is to add the ability to process interlaced images preeld without deinterlacing them. You can lter your interlaced DVD and play it on a TV without breaking the interlacing. While deinterlacing (with the postprocessing lter) removes interlacing permanently (by smoothing, averaging, etc) deinterleaving splits the frame into 2 elds (so called half pictures), so you can process (lter) them independently and then re-interleave them. d deinterleave (placing one above the other) i interleave s swap elds (exchange even & odd lines) l[=i|d] (De)interleaves lines. This lter is very similar to the il lter but much faster, the main disadvantage is that it does not always work. Especially if combined with other lters it may produce randomly messed up images, so be happy if it works but do not complain if it does not for your combination of lters. d Deinterleave elds, placing them side by side. i Interleave elds again (reversing the effect of l=d). eld[=n] Extracts a single eld from an interlaced image using stride arithmetic to avoid wasting CPU time. The optional argument n species whether to extract the even or the odd eld (depending on whether n is even or odd). detc[=var1=value1:var2=value2:...] Attempts to reverse the telecine process to recover a clean, non-interlaced stream at lm framerate. This was the rst and most primitive inverse telecine lter to be added to MPlayer/MEncoder. It works by latching onto the telecine 3:2 pattern and following it as long as possible. This makes it suitable for perfectly-telecined material, even in the presence of a fair degree of noise, but it will fail in the presence of complex post-telecine edits. Development on this lter is no longer taking place, as ivtc, pullup, and lmdint are better for most applications. The following arguments (see syntax above) may be used to control detcs behavior: <dr> Set the frame dropping mode. 0: Do not drop frames to maintain xed output framerate (default). 1: Always drop a frame when there have been no drops or telecine merges in the past 5 frames. 2: Always maintain exact 5:4 input to output frame ratio. NOTE: Use mode 1 or 2 with MEncoder. <am> Analysis mode. 0: Fixed pattern with initial frame number specied by <fr>. 1: aggressive search for telecine pattern (default) <fr> Set initial frame number in sequence. 02 are the three clean progressive frames; 3 and 4 are the two interlaced frames. The default, 1, means not in telecine sequence. The number specied here is the type for the imaginary previous frame before the movie starts. <t0>, <t1>, <t2>, <t3> Threshold values to be used in certain modes.

The MPlayer Project

2009-03-25

79

MPlayer(1)

The Movie Player

MPlayer(1)

ivtc[=1] Experimental stateless inverse telecine lter. Rather than trying to lock on to a pattern like the detc lter does, ivtc makes its decisions independently for each frame. This will give much better results for material that has undergone heavy editing after telecine was applied, but as a result it is not as forgiving of noisy input, for example TV capture. The optional parameter (ivtc=1) corresponds to the dr=1 option for the detc lter, and should be used with MEncoder but not with MPlayer. As with detc, you must specify the correct output framerate (ofps 24000/1001) when using MEncoder. Further development on ivtc has stopped, as the pullup and lmdint lters appear to be much more accurate. pullup[=jl:jr:jt:jb:sb:mp] Third-generation pulldown reversal (inverse telecine) lter, capable of handling mixed hardtelecine, 24000/1001 fps progressive, and 30000/1001 fps progressive content. The pullup lter is designed to be much more robust than detc or ivtc, by taking advantage of future context in making its decisions. Like ivtc, pullup is stateless in the sense that it does not lock onto a pattern to follow, but it instead looks forward to the following elds in order to identify matches and rebuild progressive frames. It is still under development, but believed to be quite accurate. jl, jr, jt, and jb These options set the amount of "junk" to ignore at the left, right, top, and bottom of the image, respectively. Left/right are in units of 8 pixels, while top/bottom are in units of 2 lines. The default is 8 pixels on each side. sb (strict breaks) Setting this option to 1 will reduce the chances of pullup generating an occasional mismatched frame, but it may also cause an excessive number of frames to be dropped during high motion sequences. Conversely, setting it to 1 will make pullup match elds more easily. This may help processing of video where there is slight blurring between the elds, but may also cause there to be interlaced frames in the output. mp (metric plane) This option may be set to 1 or 2 to use a chroma plane instead of the luma plane for doing pullups computations. This may improve accuracy on very clean source material, but more likely will decrease accuracy, especially if there is chroma noise (rainbow effect) or any grayscale video. The main purpose of setting mp to a chroma plane is to reduce CPU load and make pullup usable in realtime on slow machines. NOTE: Always follow pullup with the softskip lter when encoding to ensure that pullup is able to see each frame. Failure to do so will lead to incorrect output and will usually crash, due to design limitations in the codec/lter layer. lmdint[=options] Inverse telecine lter, similar to the pullup lter 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 nd the frame breaks. If a eld has no match, it is deinterlaced with simple linear approximation. If the source is MPEG-2, this must be the rst lter to allow access to the eld-ags set by the MPEG-2 decoder. Depending on the source MPEG, you may be ne ignoring this advice, as long as you do not see lots of "Bottom-rst eld" warnings. With no options it does normal inverse telecine, and should be used together with mencoder fps 30000/1001 ofps 24000/1001. When this lter 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 specied separated by /.

The MPlayer Project

2009-03-25

80

MPlayer(1)

The Movie Player

MPlayer(1)

crop=<w>:<h>:<x>:<y> Just like the crop lter, but faster, and works on mixed hard and soft telecined content as well as when y is not a multiple of 4. If x or y would require cropping fractional 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 lter will output ofps frames. The ratio of ifps/ofps should match the fps/ofps ratio. This could be used to lter movies that are broadcast on TV at a frame rate different from their original framerate. 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 elds. mmx2=<n> On x86, if n=1, use MMX2 optimized functions, if n=2, use 3DNow! optimized functions, otherwise, use plain C. If this option is not specied, MMX2 and 3DNow! are auto-detected, use this option to override auto-detection. fast=<n> The larger n will speed up the lter at the expense of accuracy. The default value is n=3. If n is odd, a frame immediately following a frame marked with the REPEAT_FIRST_FIELD MPEG ag is assumed to be progressive, thus lter will not spend any time on soft-telecined MPEG-2 content. This is the only effect of this ag if MMX2 or 3DNow! is available. Without MMX2 and 3DNow, if n=0 or 1, the same calculations will be used as with n=2 or 3. If n=2 or 3, the number of luma levels used to nd the frame breaks is reduced from 256 to 128, which results in a faster lter without losing much accuracy. If n=4 or 5, a faster, but much less accurate metric will be used to nd the frame breaks, which is more likely to misdetect high vertical 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-interlacing of unmatched frames. Larger value 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 elds. Defaults to 128. diff_thres=<n> Threshold to detect temporal change of a eld. Default is 128. sad_thres=<n> Sum of Absolute Difference threshold, default is 64. softpulldown This lter works only correct with MEncoder and acts on the MPEG-2 ags used for soft 3:2 pulldown (soft telecine). If you want to use the ivtc or detc lter on movies that are partly soft telecined, inserting this lter before them should make them more reliable.

The MPlayer Project

2009-03-25

81

MPlayer(1)

The Movie Player

MPlayer(1)

divtc[=options] Inverse telecine for deinterlaced video. If 3:2-pulldown telecined video has lost one of the elds or is deinterlaced using a method that keeps one eld and interpolates the other, the result is a juddering video that has every fourth frame duplicated. This lter is intended to nd and drop those duplicates and restore the original lm framerate. When using this lter, you must specify ofps that is 4/5 of the fps of the input le and place the softskip later in the lter chain to make sure that divtc sees all the frames. Two different modes are available: One pass mode is the default and is straightforward to use, but has the disadvantage that any changes in the telecine phase (lost frames or bad edits) cause momentary judder until the lter can resync again. Two pass mode avoids this by analyzing the whole video beforehand so it will have forward knowledge about the phase changes and can resync at the exact spot. These passes do not correspond to pass one and two of the encoding process. You must run an extra pass using divtc pass one before the actual encoding throwing the resulting video away. Use nosound ovc raw o /dev/null to avoid wasting CPU power for this pass. You may add something like crop=2:2:0:0 after divtc to speed things up even more. Then use divtc pass two for the actual encoding. If you use multiple encoder passes, use divtc pass two for all of them. The options are: pass=1|2 Use two pass mode. le=<lename> Set the two pass log lename (default: "framediff.log"). threshold=<value> Set the minimum strength the telecine pattern must have for the lter 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 improves the reaction time to the changes in the telecine phase. This only affects the one pass mode. The two pass mode currently uses xed window that extends to both future 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 nds it, but this option can be used to x the possible juddering at the beginning. The rst pass of the two pass mode also uses this, so if you save the output from the rst pass, you get constant phase result. deghost=<value> Set the deghosting threshold (0255 for one pass mode, 255255 for two pass mode, default 0). If nonzero, deghosting mode is used. This is for video that has been deinterlaced by blending the elds together instead of dropping one of the elds. Deghosting amplies any compression artifacts in the blended frames, so the parameter value is used as a threshold to exclude those pixels from deghosting that differ from the previous frame less than specied value. If two pass mode is used, then negative value can be used to make the lter analyze the whole video in the beginning of pass-2 to determine whether it needs deghosting or not and then select either zero or the absolute value of the parameter. Specify this option for pass-2, it makes no difference on pass-1.

The MPlayer Project

2009-03-25

82

MPlayer(1)

The Movie Player

MPlayer(1)

phase[=t|b|p|a|u|T|B|A|U][:v] Delay interlaced video by one eld time so that the eld order changes. The intended use is to x PAL movies that have been captured with the opposite eld order to the lm-to-video transfer. The options are: t b p Capture eld order top-rst, transfer bottom-rst. Filter will delay the bottom eld. Capture bottom-rst, transfer top-rst. Filter will delay the top eld. Capture and transfer with the same eld order. This mode only exists for the documentation of the other options to refer to, but if you actually select it, the lter will faithfully do nothing ;-) Capture eld order determined automatically by eld ags, transfer opposite. Filter selects among t and b modes on a frame by frame basis using eld ags. If no eld information is available, then this works just like u. Capture unknown or varying, transfer opposite. Filter selects among t and b on a frame by frame basis by analyzing the images and selecting the alternative that produces best match between the elds. Capture top-rst, transfer unknown or varying. Filter selects among t and p using image analysis. Capture bottom-rst, transfer unknown or varying. Filter selects among b and p using image analysis. Capture determined by eld ags, transfer unknown or varying. Filter selects among t, b and p using eld ags and image analysis. If no eld information is available, then this works just like U. This is the default mode. Both capture and transfer unknown or varying. Filter selects among t, b and p using image analysis only. Verbose operation. Prints the selected mode for each frame and the average squared difference between elds for t, b, and p alternatives.

telecine[=start] Apply 3:2 telecine process to increase framerate by 20%. This most likely will not work correctly with MPlayer, but it can be used with mencoder fps 30000/1001 ofps 30000/1001 vf telecine. Both fps options are essential! (A/V sync will break if they are wrong.) The optional start parameter tells the lter where in the telecine pattern to start (03). tinterlace[=mode] Temporal eld interlacing merge pairs of frames into an interlaced frame, halving the framerate. Even frames are moved into the upper eld, odd frames to the lower eld. This can be used to fully reverse the effect of the telds lter (in mode 0). Available modes are: 0 Move odd frames into the upper eld, even into the lower eld, generating a full-height frame at half 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 unchanged.

The MPlayer Project

2009-03-25

83

MPlayer(1)

The Movie Player

MPlayer(1)

Interleave even lines from even frames with odd lines from odd frames. Height unchanged at half framerate.

telds[=mode[:eld_dominance]] Temporal eld separation split elds into frames, doubling the output framerate. Like the telecine lter, telds will only work properly with MEncoder, and only if both fps and ofps are set to the desired (double) framerate! <mode> 0: Leave elds unchanged (will jump/icker). 1: Interpolate missing lines. (The algorithm used might not be so good.) 2: Translate elds by 1/4 pixel with linear interpolation (no jump). 4: Translate elds by 1/4 pixel with 4tap lter (higher quality) (default). <eld_dominance> (DEPRECATED) 1: auto (default) Only works if the decoder exports the appropriate information and no other lters which discard that information come before telds in the lter chain, otherwise it falls back to 0 (top eld rst). 0: top eld rst 1: bottom eld rst NOTE: This option will possibly be removed in a future version. Use elddominance instead. yadif=[mode[:eld_dominance]] Yet another deinterlacing lter <mode> 0: Output 1 frame for each frame. 1: Output 1 frame for each eld. 2: Like 0 but skips spatial interlacing check. 3: Like 1 but skips spatial interlacing check. <eld_dominance> (DEPRECATED) Operates like telds. NOTE: This option will possibly be removed in a future version. Use elddominance instead. mcdeint=[mode[:parity[:qp]]] Motion compensating deinterlacer. It needs one eld per frame as input and must thus be used together with telds=1 or yadif=1/3 or equivalent. <mode> 0: fast 1: medium 2: slow, iterative motion estimation 3: extra slow, like 2 plus multiple reference frames <parity> 0 or 1 selects which eld to use (note: no autodetection yet!). <qp> Higher values should result in a smoother motion vector eld but less optimal individual vectors. boxblur=radius:power[:radius:power] box blur <radius> blur lter strength <power> number of lter applications

The MPlayer Project

2009-03-25

84

MPlayer(1)

The Movie Player

MPlayer(1)

sab=radius:pf:colorDiff[:radius:pf:colorDiff] shape adaptive blur <radius> blur lter strength (0.14.0) (slower if larger) <pf> prelter strength (0.12.0) <colorDiff> maximum difference between pixels to still be considered (0.1100.0) smartblur=radius:strength:threshold[:radius:strength:threshold] smart blur <radius> blur lter strength (0.15.0) (slower if larger) <strength> blur (0.01.0) or sharpen (1.00.0) <threshold> lter all (0), lter at areas (030) or lter edges (300) perspective=x0:y0:x1:y1:x2:y2:x3:y3:t Correct the perspective of movies not lmed perpendicular to the screen. <x0>,<y0>,... coordinates of the top left, top right, bottom left, bottom right corners <t> linear (0) or cubic resampling (1) 2xsai 1bpp Scale and smooth the image with the 2x scale and interpolate algorithm. 1bpp bitmap to YUV/BGR 8/15/16/32 conversion

down3dright[=lines] Reposition and resize stereoscopic images. Extracts both stereo elds 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:fo The bitmap overlay lter reads bitmaps from a FIFO and displays them on top of the movie, allowing some transformations on the image. Also see TOOLS/bmovl-test.c for a small bmovl test program. <hidden> Set the default value of the hidden ag (0=visible, 1=hidden). <opaque> Set the default value of the opaque ag (0=transparent, 1=opaque). <fo> path/lename for the FIFO (named pipe connecting mplayer vf bmovl to the controlling application) FIFO commands are: RGBA32 width height xpos ypos alpha clear followed by width*height*4 Bytes of raw RGBA32 data. ABGR32 width height xpos ypos alpha clear followed by width*height*4 Bytes of raw ABGR32 data. RGB24 width height xpos ypos alpha clear followed by width*height*3 Bytes of raw RGB24 data.

The MPlayer Project

2009-03-25

85

MPlayer(1)

The Movie Player

MPlayer(1)

BGR24 width height xpos ypos alpha clear followed by width*height*3 Bytes of raw BGR24 data. ALPHA width height xpos ypos alpha Change alpha transparency of the specied area. CLEAR width height xpos ypos Clear area. OPAQUE Disable all alpha transparency. Send "ALPHA 0 0 0 0 0" to enable it again. HIDE Hide bitmap. SHOW Show bitmap. Arguments are: <width>, <height> image/area size <xpos>, <ypos> Start blitting at position x/y. <alpha> Set alpha difference. If you set this to 255 you can then send a sequence of ALPHAcommands to set the area to 225, 200, 175 etc for a nice fade-in-effect! ;) 0: same as original 255: Make everything opaque. 255: Make everything transparent. <clear> Clear the framebuffer before blitting. 0: The image will just be blitted on top of the old one, so you do not need to send 1.8MB of RGBA32 data every time a small part of the screen is updated. 1: clear framestep=I|[i]step Renders only every nth frame or every intra frame (keyframe). If you call the lter with I (uppercase) as the parameter, then only keyframes are rendered. For DVDs it generally means one in every 15/12 frames (IBBPBBPBBPBBPBB), for AVI it means every scene change or every keyint value (see lavcopts keyint= value if you use MEncoder to encode the video). When a keyframe is found, an I! string followed by a newline character is printed, leaving the current line of MPlayer/MEncoder output on the screen, because it contains the time (in seconds) and frame number of the keyframe (You can use this information to split the AVI.). If you call the lter with a numeric parameter step then only one in every step frames is rendered. If you put an i (lowercase) before the number then an I! is printed (like the I parameter). If you give only the i then nothing is done to the frames, only I! is printed. tile=xtiles:ytiles:output:start:delta Tile a series of images into a single, bigger image. If you omit a parameter or use a value less than 0, then the default value is used. You can also stop when you are satised (... vf tile=10:5 ...). It is probably a good idea to put the scale lter before the tile :-)

The MPlayer Project

2009-03-25

86

MPlayer(1)

The Movie Player

MPlayer(1)

The parameters are: <xtiles> number of tiles on the x axis (default: 5) <ytiles> 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. Missing tiles are left blank. You could, for example, write an 8 * 7 tile every 50 frames to have one image every 2 seconds @ 25 fps. <start> outer border thickness in pixels (default: 2) <delta> inner border thickness in pixels (default: 4) delogo[=x:y:w:h:t] Suppresses a TV station logo by a simple interpolation of the surrounding pixels. Just set a rectangle covering the logo and watch it disappear (and sometimes something even uglier appear your mileage may vary). <x>,<y> top left corner of the logo <w>,<h> width and height of the cleared rectangle <t> Thickness of the fuzzy edge of the rectangle (added to w and h). When set to 1, a green rectangle is drawn on the screen to simplify nding the right x,y,w,h parameters. removelogo=/path/to/logo_bitmap_le_name.pgm Suppresses a TV station logo, using a PGM or PPM image le to determine which pixels comprise the logo. The width and height of the image le must match those of the video stream being processed. Uses the lter image and a circular blur algorithm to remove the logo. /path/to/logo_bitmap_le_name.pgm [path] + lename of the lter image. 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 lter layer currently cannot query those). {dc10+,dc10,buz,lml33}-{PAL|NTSC} Use these options to set maxwidth and maxheight automatically to the values known for card/mode combo. For example, valid options are: dc10-PAL and buz-NTSC (default: 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.

The MPlayer Project

2009-03-25

87

MPlayer(1)

The Movie Player

MPlayer(1)

vdec={1,2,4} Vertical decimation 1, 2 or 4. quality=120 Set JPEG compression quality [BEST] 1 20 [VERY BAD]. fd|nofd By default, decimation is only performed if the Zoran hardware can upscale the resulting MJPEG images to the original size. The option fd instructs the lter to always perform the requested decimation (ugly). screenshot Allows acquiring screenshots of the movie using slave mode commands that can be bound to keypresses. See the slave mode documentation and the INTERACTIVE CONTROL section for details. Files named shotNNNN.png will be saved in the working directory, using the rst available number no les will be overwritten. The lter has no overhead when not used and accepts an arbitrary colorspace, so it is safe to add it to the conguration le. ass Moves SSA/ASS subtitle rendering to an arbitrary point in the lter chain. Only useful with the ass option. EXAMPLE: vf ass,screenshot Moves SSA/ASS rendering before the screenshot lter. Screenshots taken this way will contain subtitles. blackframe[=amount:threshold] Detect frames that are (almost) completely black. Can be useful to detect chapter transitions or commercials. Output lines consist of the frame number of the detected frame, the percentage of blackness, the frame type and the frame number of the last encountered keyframe. <amount> Percentage of the pixels that have to be below the threshold (default: 98). <threshold> Threshold below which a pixel value is considered black (default: 32).

GENERAL ENCODING OPTIONS (MENCODER ONLY)


audiodelay <any oating-point number> Delays either audio or video by setting a delay eld in the header (default: 0.0). This does not delay either stream while encoding, but the player will see the delay eld and compensate accordingly. Positive values delay the audio, and negative values delay the video. Note that this is the exact opposite of the delay option. For example, if a video plays correctly with delay 0.2, you can x the video with MEncoder by using audiodelay 0.2. Currently, this option only works with the default muxer (of avi). If you are using a different muxer, then you must use delay instead. audiodensity <150> 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.

The MPlayer Project

2009-03-25

88

MPlayer(1)

The Movie Player

MPlayer(1)

audiopreload <0.02.0> Sets up the audio buffering time interval (default: 0.5s). fafmttag <format> Can be used to override the audio format tag of the output le. EXAMPLE: fafmttag 0x55 Will have the output le contain 0x55 (mp3) as audio format tag. ffourcc <fourcc> Can be used to override the video fourcc of the output le. EXAMPLE: ffourcc div3 Will have the output le contain div3 as video fourcc. forceaviaspect <0.23.0> Override the aspect stored in the AVI OpenDML vprp header. This can be used to change the aspect ratio with ovc copy. framenole <lename> (DEPRECATED) Specify the name of the audio le with framenumber mappings created in the rst (audio only) pass of a special three pass encoding mode. NOTE: Using this mode will most likely give you A-V desync. Do not use it. It is kept for backwards compatibility only and will possibly be removed in a future version. hredlseek Use a more precise, but much slower method for skipping areas. Areas marked for skipping are not seeked over, instead all frames are decoded, but only the necessary frames are encoded. This allows starting at non-keyframe boundaries. NOTE: Not guaranteed to work right with ovc copy. info <option1:option2:...> (AVI only) Specify the info header of the resulting AVI le. Available options are: help Show this description. name=<value> title of the work artist=<value> artist or author of the work genre=<value> original work category subject=<value> contents of the work

The MPlayer Project

2009-03-25

89

MPlayer(1)

The Movie Player

MPlayer(1)

copyright=<value> copyright information srcform=<value> original format of the digitized material comment=<value> general comments about the work noautoexpand Do not automatically insert the expand lter into the MEncoder lter chain. Useful to control at which point of the lter chain subtitles are rendered when hardcoding subtitles onto a movie. noencodedups Do not attempt to encode duplicate frames in duplicate; always output zero-byte frames to indicate duplicates. Zero-byte frames will be written anyway unless a lter or encoder capable of doing duplicate encoding is loaded. Currently the only such lter is harddup. noodml (of avi only) Do not write OpenDML index for AVI les >1GB. noskip Do not skip frames. o <lename> Outputs to the given lename. If you want a default output lename, you can put this option in the MEncoder cong le. oac <codec name> Encode with the given audio codec (no default set). NOTE: Use oac help to get a list of available audio codecs. EXAMPLE: oac copy no encoding, just streamcopy oac pcm Encode to uncompressed PCM. oac mp3lame Encode to MP3 (using LAME). oac lavc Encode with a libavcodec codec. of <format> (BETA CODE!) Encode to the specied container format (default: AVI). NOTE: Use of help to get a list of available container formats. EXAMPLE: of avi Encode to AVI. of mpeg Encode to MPEG (also see mpegopts). of lavf Encode with libavformat muxers (also see lavfopts).

The MPlayer Project

2009-03-25

90

MPlayer(1)

The Movie Player

MPlayer(1)

of rawvideo raw video stream (no muxing one video stream only) of rawaudio raw audio stream (no muxing one audio stream only) ofps <fps> Specify a frames per second (fps) value for the output le, which can be different from that of the source material. Must be set for variable fps (ASF, some MOV) and progressive (30000/1001 fps telecined MPEG) les. ovc <codec name> Encode with the given video codec (no default set). NOTE: Use ovc help to get a list of available video codecs. EXAMPLE: ovc copy no encoding, just streamcopy ovc raw Encode to an arbitrary uncompressed format (use vf format to select). ovc lavc Encode with a libavcodec codec. passlogle <lename> Dump rst pass information to <lename> instead of the default divx2pass.log in two pass encoding mode. skiplimit <value> Specify the maximum number of frames that may be skipped after encoding one frame (noskiplimit for unlimited). vobsubout <basename> Specify the basename for the output .idx and .sub les. This turns off subtitle rendering in the encoded movie and diverts it to VOBsub subtitle les. vobsuboutid <langid> Specify the language two letter code for the subtitles. This overrides what is read from the DVD or the .ifo le. vobsuboutindex <index> Specify the index of the subtitles in the output les (default: 0).

CODEC SPECIFIC ENCODING OPTIONS (MENCODER ONLY)


You can specify codec specic encoding parameters using the following syntax: <codec>opts <option1[=value1]:option2[=value2]:...> Where <codec> may be: lavc, xvidenc, mp3lame, toolame, twolame, nuv, xvfw, faac, x264enc, mpeg, lavf. mp3lame (lameopts) help get help vbr=<04> variable bitrate method

The MPlayer Project

2009-03-25

91

MPlayer(1)

The Movie Player

MPlayer(1)

0 1 2 3 4 abr cbr

cbr mt rh (default) abr mtrh

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

br=<01024> bitrate in kbps (CBR and ABR only) q=<09> quality (0 highest, 9 lowest) (VBR only) aq=<09> algorithmic quality (0 best/slowest, 9 worst/fastest) ratio=<1100> compression ratio vol=<010> audio input gain mode=<03> (default: auto) 0 stereo 1 joint-stereo 2 dualchannel 3 mono padding=<02> 0 none 1 all 2 adjust fast Switch on faster encoding on subsequent VBR presets modes. This results in slightly lower quality and higher bitrates.

highpassfreq=<freq> Set a highpass ltering frequency in Hz. Frequencies below the specied one will be cut off. A value of 1 will disable ltering, a value of 0 will let LAME choose values automatically. lowpassfreq=<freq> Set a lowpass ltering frequency in Hz. Frequencies above the specied one will be cut off. A value of 1 will disable ltering, a value of 0 will let LAME choose values automatically. preset=<value> preset values help Print additional options and information about presets settings.

The MPlayer Project

2009-03-25

92

MPlayer(1)

The Movie Player

MPlayer(1)

medium VBR encoding, good quality, 150180 kbps bitrate range standard VBR encoding, high quality, 170210 kbps bitrate range extreme VBR encoding, very high quality, 200240 kbps bitrate range insane CBR encoding, highest preset quality, 320 kbps bitrate <8320> ABR encoding at average given kbps bitrate EXAMPLES: fast:preset=standard suitable for most people and most music types and already quite high quality cbr:preset=192 Encode with ABR presets at a 192 kbps forced constant bitrate. preset=172 Encode with ABR presets at a 172 kbps average bitrate. preset=extreme for people with extremely good hearing and similar equipment toolame and twolame (toolameopts and twolameopts respectively) br=<32384> In CBR mode this parameter indicates the bitrate in kbps, when in VBR mode it is the minimum bitrate allowed per frame. VBR mode will not work with a value below 112. vbr=<5050> (VBR only) variability range; if negative the encoder shifts the average bitrate towards the lower limit, if positive towards the higher. When set to 0 CBR is used (default). maxvbr=<32384> (VBR only) maximum bitrate allowed per frame, in kbps mode=<stereo | jstereo | mono | dual> (default: mono for 1-channel audio, stereo otherwise) psy=<14> psychoacoustic model (default: 2) errprot=<0 | 1> Include error protection. debug=<010> debug level faac (faacopts) br=<bitrate> average bitrate in kbps (mutually exclusive with quality)

The MPlayer Project

2009-03-25

93

MPlayer(1)

The Movie Player

MPlayer(1)

quality=<11000> quality mode, the higher the better (mutually exclusive with br) object=<14> object type complexity 1 MAIN (default) 2 LOW 3 SSR 4 LTP (extremely slow) mpeg=<2|4> MPEG version (default: 4) tns Enables temporal noise shaping.

cutoff=<0sampling_rate/2> cutoff frequency (default: sampling_rate/2) raw Stores the bitstream as raw payload with extradata in the container header (default: 0, corresponds to ADTS). Do not set this ag if not explicitly required or you will not be able to remux the audio stream later on.

lavc (lavcopts) Many libavcodec (lavc for short) options are tersely documented. Read the source for full details. EXAMPLE: vcodec=msmpeg4:vbitrate=1800:vhq:keyint=250 o=<key>=<value>[,<key>=<value>[,...]] Pass AVOptions to libavcodec encoder. Note, a patch to make the o= unneeded and pass all unknown options through the AVOption system is welcome. A full list of AVOptions can be found in the FFmpeg manual. Note that some AVOptions may conict with MEncoder options. EXAMPLE: o=bt=100k acodec=<value> audio codec (default: mp2) ac3 Dolby Digital (AC-3) adpcm_* Adaptive PCM formats see the HTML documentation for details. ac Free Lossless Audio Codec (FLAC) g726 G.726 ADPCM libamr_nb 3GPP Adaptive Multi-Rate (AMR) narrow-band libamr_wb 3GPP Adaptive Multi-Rate (AMR) wide-band libfaac Advanced Audio Coding (AAC) using FAAC libmp3lame MPEG-1 audio layer 3 (MP3) using LAME

The MPlayer Project

2009-03-25

94

MPlayer(1)

The Movie Player

MPlayer(1)

mp2 MPEG-1 audio layer 2 (MP2) pcm_* PCM formats see the HTML documentation for details. roq_dpcm Id Software RoQ DPCM sonic experimental simple lossy codec sonicls experimental simple lossless codec vorbis Vorbis wmav1 Windows Media Audio v1 wmav2 Windows Media Audio v2 abitrate=<value> audio bitrate in kbps (default: 224) atag=<value> Use the specied Windows audio format tag (e.g. atag=0x55). bit_exact Use only bit exact algorithms (except (I)DCT). Additionally bit_exact disables several optimizations and thus should only be used for regression tests, which need binary identical les even if the encoder 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. threads=<18> Maximum number of threads to use (default: 1). May have a slight negative effect on motion estimation. vcodec=<value> Employ the specied codec (default: mpeg4). asv1 ASUS Video v1 asv2 ASUS Video v2 dvvideo Sony Digital Video ffv1 FFmpegs lossless video codec ffvhuff nonstandard 20% smaller HuffYUV using YV12 v Sorenson H.263 used in Flash Video h261 H.261 h263 H.263 h263p H.263+ huffyuv HuffYUV

The MPlayer Project

2009-03-25

95

MPlayer(1)

The Movie Player

MPlayer(1)

libtheora Theora libx264 x264 H.264/AVC MPEG-4 Part 10 libxvid Xvid MPEG-4 Part 2 (ASP) ljpeg Lossless JPEG mjpeg Motion JPEG mpeg1video MPEG-1 video mpeg2video MPEG-2 video mpeg4 MPEG-4 (DivX 4/5) msmpeg4 DivX 3 msmpeg4v2 MS MPEG4v2 roqvideo ID Software RoQ Video rv10 an old RealVideo codec snow (also see: vstrict) FFmpegs experimental wavelet-based codec svq1 Apple Sorenson Video 1 wmv1 Windows Media Video, version 1 (AKA WMV7) wmv2 Windows Media Video, version 2 (AKA WMV8) vqmin=<131> minimum quantizer 1 Not recommended (much larger le, 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). Recommended for normal mpeg4/mpeg1video encoding (default). Recommended for h263(p)/msmpeg4. The reason for preferring 3 over 2 is that 2 could lead to overows. (This will be xed for h263(p) by changing the quantizer per MB in the future, msmpeg4 cannot be xed as it does not support that.)

2 3

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

The MPlayer Project

2009-03-25

96

MPlayer(1)

The Movie Player

MPlayer(1)

lmax=<0.01255.0> maximum Lagrange multiplier for ratecontrol (default: 31.0) mblmin=<0.01255.0> Minimum macroblock-level Lagrange multiplier for ratecontrol (default:2.0). This parameter affects adaptive quantization options like qprd, lumi_mask, etc.. mblmax=<0.01255.0> Maximum macroblock-level Lagrange multiplier for ratecontrol (default: 31.0). vqscale=<031> Constant quantizer / constant quality encoding (selects xed quantizer mode). A lower value means better quality but larger les (default: 1). In case of snow codec, value 0 means lossless encoding. Since the other codecs do not support this, vqscale=0 will have an undened effect. 1 is not recommended (see vqmin for details). vqmax=<131> Maximum quantizer, 1031 should be a sane range (default: 31). mbqmin=<131> obsolete, use vqmin mbqmax=<131> obsolete, use vqmax vqdiff=<131> maximum quantizer difference between consecutive I- or P-frames (default: 3) vmax_b_frames=<04> maximum number of B-frames between non-B-frames: 0 no B-frames (default) 02 sane range for MPEG-4 vme=<05> motion estimation method. Available methods are: 0 none (very low quality) 1 full (slow, currently unmaintained and disabled) 2 log (low quality, currently unmaintained and disabled) 3 phods (low quality, currently unmaintained and disabled) 4 EPZS: size=1 diamond, size can be adjusted with the *dia options (default) 5 X1 (experimental, currently aliased to EPZS) 8 iter (iterative overlapped block, only used in snow) NOTE: 03 currently ignores the amount of bits spent, so quality may be low. me_range=<09999> motion estimation search range (default: 0 (unlimited)) mbd=<02> (also see *cmp, qpel) Macroblock decision algorithm (high quality mode), encode each macro block in all modes and choose the best. This is slow but results in better quality and le size. When mbd is set to 1 or 2, the value of mbcmp is ignored when comparing macroblocks (the mbcmp value is still used in other places though, in particular the motion search algorithms). If any comparison setting (precmp, subcmp, cmp, or mbcmp) is nonzero, however, a slower but better half-pel motion search will be

The MPlayer Project

2009-03-25

97

MPlayer(1)

The Movie Player

MPlayer(1)

used, regardless of what mbd is set to. If qpel is set, quarter-pel motion search will be used regardless. 0 Use comparison function given by mbcmp (default). 1 Select the MB mode which needs the fewest bits (=vhq). 2 Select the MB mode which has the best rate distortion. vhq v4mv obmc loop Same as mbd=1, kept for compatibility reasons. Allow 4 motion vectors per macroblock (slightly better quality). Works better if used with mbd>0. overlapped block motion compensation (H.263+) loop lter (H.263+) note, this is broken

inter_threshold <10001000> Does absolutely nothing at the moment. keyint=<0300> maximum interval between keyframes in frames (default: 250 or one keyframe every ten seconds in a 25fps movie. This is the recommended default for MPEG-4). Most codecs require regular keyframes in order to limit the accumulation of mismatch error. Keyframes are also needed for seeking, as seeking is only possible to a keyframe but keyframes need more space than other frames, so larger numbers here mean slightly smaller les but less precise seeking. 0 is equivalent to 1, which makes every frame a keyframe. Values >300 are not recommended as the quality might be bad depending upon decoder, encoder and luck. It is common for MPEG-1/2 to use values <=30. sc_threshold=<10000000001000000000> Threshold for scene change detection. A keyframe is inserted by libavcodec when it detects a scene change. You can specify the sensitivity of the detection with this option. 1000000000 means there is a scene change detected at every frame, 1000000000 means no scene changes are detected (default: 0). sc_factor=<any positive integer> Causes frames with higher quantizers to be more likely to trigger a scene change detection and make libavcodec use an I-frame (default: 1). 116 is a sane range. Values between 2 and 6 may yield increasing PSNR (up to approximately 0.04 dB) and better placement of I-frames in highmotion scenes. Higher values than 6 may give very slightly better PSNR (approximately 0.01 dB more than sc_factor=6), but noticably worse visual quality. vb_strategy=<02> (pass one only) strategy to choose between I/P/B-frames: 0 Always use the maximum number of B-frames (default). 1 Avoid B-frames in high motion scenes. See the b_sensitivity option to tune this strategy. 2 Places B-frames more or less optimally to yield maximum quality (slower). You may want to reduce the speed impact of this option by tuning the option brd_scale. b_sensitivity=<any integer greater than 0> Adjusts how sensitively vb_strategy=1 detects motion and avoids using B-frames (default: 40). Lower sensitivities will result in more B-frames. Using more B-frames usually improves PSNR, but too many B-frames can hurt quality in high-motion scenes. Unless there is an extremely high amount of motion, b_sensitivity can safely be lowered below the default; 10 is a reasonable value in most cases.

The MPlayer Project

2009-03-25

98

MPlayer(1)

The Movie Player

MPlayer(1)

brd_scale=<010> Downscales frames for dynamic B-frame decision (default: 0). Each time brd_scale is increased by one, the frame dimensions are divided by two, which improves speed by a factor of four. Both dimensions of the fully downscaled frame must be even numbers, so brd_scale=1 requires the original dimensions to be multiples of four, brd_scale=2 requires multiples of eight, etc. In other words, the dimensions of the original frame must both be divisible by 2(brd_scale+1) with no remainder. bidir_rene=<04> Rene the two motion vectors used in bidirectional macroblocks, rather than re-using vectors from the forward and backward searches. This option has no effect without B-frames. 0 Disabled (default). 14 Use a wider search (larger values are slower). vpass=<13> Activates internal two (or more) pass mode, only specify if you wish to use two (or more) pass encoding. 1 rst pass (also see turbo) 2 second pass 3 Nth pass (second and subsequent passes of N-pass encoding) Here is how it works, and how to use it: The rst pass (vpass=1) writes the statistics le. You might want to deactivate some CPU-hungry options, like "turbo" mode does. In two pass mode, the second pass (vpass=2) reads the statistics le and bases ratecontrol decisions on it. In N-pass mode, the second pass (vpass=3, that is not a typo) does both: It rst reads the statistics, then overwrites them. You might want to backup divx2pass.log before doing this if there is any possibility that you will have to cancel MEncoder. You can use all encoding options, except very CPU-hungry options like "qns". You can run this same pass over and over to rene the encode. Each subsequent pass will use the statistics from the previous pass to improve. The nal pass can include any CPU-hungry encoding options. If you want a 2 pass encode, use rst vpass=1, and then vpass=2. If you want a 3 or more pass encode, use vpass=1 for the rst pass and then vpass=3 and then vpass=3 again and again until you are satised with the encode. huffyuv: pass 1 Saves statistics. pass 2 Encodes with an optimal Huffman table based upon statistics from the rst pass. turbo (two pass only) Dramatically speeds up pass one using faster algorithms and disabling CPU-intensive options. This will probably reduce global PSNR a little bit (around 0.01dB) and change individual frame type and PSNR a little bit more (up to 0.03dB). aspect=<x/y> Store movie aspect internally, just like with MPEG les. Much nicer than rescaling, because quality is not decreased. Only MPlayer will play these les correctly, other players will display them with wrong aspect. The aspect parameter can be given as a ratio or a oating point number. EXAMPLE:

The MPlayer Project

2009-03-25

99

MPlayer(1)

The Movie Player

MPlayer(1)

aspect=16/9 or aspect=1.78 autoaspect Same as the aspect option, but automatically computes aspect, taking into account all the adjustments (crop/expand/scale/etc.) made in the lter chain. Does not incur a performance penalty, so you can safely leave it always on. vbitrate=<value> Specify bitrate (default: 800). WARNING: 1kbit = 1000 bits 416000 (in kbit) 1600124000000 (in bit) vratetol=<value> approximated le size tolerance in kbit. 1000100000 is a sane range. (warning: 1kbit = 1000 bits) (default: 8000) NOTE: vratetol should not be too large during the second pass or there might be problems if vrc_(min|max)rate is used. vrc_maxrate=<value> maximum bitrate in kbit/sec (default: 0, unlimited) vrc_minrate=<value> minimum bitrate in kbit/sec (default: 0, unlimited) vrc_buf_size=<value> buffer size in kbit For MPEG-1/2 this also sets the vbv buffer size, use 327 for VCD, 917 for SVCD and 1835 for DVD. vrc_buf_aggressivity currently useless vrc_strategy Ratecontrol method. Note that some of the ratecontrol-affecting options will have no effect if vrc_strategy is not set to 0. 0 Use internal lavc ratecontrol (default). 1 Use Xvid ratecontrol (experimental; requires MEncoder to be compiled with support for Xvid 1.1 or higher). vb_qfactor=<31.031.0> quantizer factor between B- and non-B-frames (default: 1.25) vi_qfactor=<31.031.0> quantizer factor between I- and non-I-frames (default: 0.8) vb_qoffset=<31.031.0> quantizer offset between B- and non-B-frames (default: 1.25) vi_qoffset=<31.031.0> (default: 0.0) if v{b|i}_qfactor > 0 I/B-frame quantizer = P-frame quantizer * v{b|i}_qfactor + v{b|i}_qoffset

The MPlayer Project

2009-03-25

100

MPlayer(1)

The Movie Player

MPlayer(1)

else do normal ratecontrol (do not lock to next P-frame quantizer) and set q= q * v{b|i}_qfactor + v{b|i}_qoffset HINT: To do constant quantizer encoding with different quantizers for I/P- and B-frames you can use: lmin= <ip_quant>:lmax= <ip_quant>:vb_qfactor= <b_quant/ip_quant>. vqblur=<0.01.0> (pass one) Quantizer blur (default: 0.5), larger values will average the quantizer more over time (slower change). 0.0 Quantizer blur disabled. 1.0 Average the quantizer over all previous frames. vqblur=<0.099.0> (pass two) Quantizer gaussian blur (default: 0.5), larger values will average the quantizer more over time (slower change). vqcomp=<0.01.0> Quantizer compression, vrc_eq depends upon this (default: 0.5). NOTE: Perceptual quality will be optimal somewhere in between the ranges extremes. vrc_eq=<equation> main ratecontrol equation 1+(tex/avgTex-1)*qComp approximately the equation of the old ratecontrol code texqComp with qcomp 0.5 or something like that (default) inx 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

The MPlayer Project

2009-03-25

101

MPlayer(1)

The Movie Player

MPlayer(1)

avgBPTex average non-intra texture complexity in B-frames mv bits used for motion vectors fCode maximum length of motion vector in log2 scale iCount number of intra macroblocks / number of macroblocks var spatial complexity

mcVar temporal complexity qComp qcomp from the command line isI, isP, isB Is 1 if picture type is I/P/B else 0. Pi,E See your favorite math book. functions: max(a,b),min(a,b) maximum / minimum gt(a,b) is 1 if a>b, 0 otherwise lt(a,b) is 1 if a<b, 0 otherwise eq(a,b) is 1 if a==b, 0 otherwise sin, cos, tan, sinh, cosh, tanh, exp, log, abs vrc_override=<options> User specied quality for specic parts (ending, credits, ...). The options are <start-frame>, <endframe>, <quality>[/<start-frame>, <end-frame>, <quality>[/...]]: quality (231) quantizer quality (5000) quality correction in % vrc_init_cplx=<01000> initial complexity (pass 1)

The MPlayer Project

2009-03-25

102

MPlayer(1)

The Movie Player

MPlayer(1)

vrc_init_occupancy=<0.01.0> initial buffer occupancy, as a fraction of vrc_buf_size (default: 0.9) vqsquish=<0|1> Specify how to keep the quantizer between qmin and qmax. 0 Use clipping. 1 Use a nice differentiable function (default). vlelim=<10001000> Sets single coefcient elimination threshold for luminance. Negative values will also consider the DC coefcient (should be at least 4 or lower for encoding at quant=1): 0 disabled (default) 4 JVT recommendation vcelim=<10001000> Sets single coefcient elimination threshold for chrominance. Negative values will also consider the DC coefcient (should be at least 4 or lower for encoding at quant=1): 0 disabled (default) 7 JVT recommendation vstrict=<2|1|0|1> strict standard compliance 0 disabled 1 Only recommended if you want to feed the output into the MPEG-4 reference decoder. 1 Allow libavcodec specic extensions (default). 2 Enables experimental codecs and features which may not be playable with future MPlayer versions (snow). vdpart Data partitioning. Adds 2 Bytes per video packet, improves error-resistance when transferring over unreliable channels (e.g. streaming over the internet). Each video packet will be encoded in 3 separate partitions: 1. MVs movement 2. DC coefcients low res picture 3. AC coefcients details MV & DC are most important, losing them looks far worse than losing the AC and the 1. & 2. partition. (MV & DC) are far smaller than the 3. partition (AC) meaning that errors will hit the AC partition much more often than the MV & DC partitions. Thus, the picture will look better with partitioning than without, as without partitioning an error will trash AC/DC/MV equally. vpsize=<010000> (also see vdpart) Video packet size, improves error-resistance. 0 disabled (default) 1001000 good choice ss gray slice structured mode for H.263+ grayscale only encoding (faster)

The MPlayer Project

2009-03-25

103

MPlayer(1)

The Movie Player

MPlayer(1)

vfdct=<010> DCT algorithm 0 Automatically select a good one (default). 1 fast integer 2 accurate integer 3 MMX 4 mlib 5 AltiVec 6 oating point AAN idct=<099> IDCT algorithm NOTE: To the best of our knowledge all these IDCTs do pass the IEEE1180 tests. 0 Automatically select a good one (default). 1 JPEG reference integer 2 simple 3 simplemmx 4 libmpeg2mmx (inaccurate, do not use for encoding with keyint >100) 5 ps2 6 mlib 7 arm 8 AltiVec 9 sh4 10 simplearm 11 H.264 12 VP3 13 IPP 14 xvidmmx 15 CAVS 16 simplearmv5te 17 simplearmv6 lumi_mask=<0.01.0> Luminance masking is a psychosensory setting that is supposed to make use of the fact that the human eye tends to notice fewer details in very bright parts of the picture. Luminance masking compresses bright areas stronger than medium ones, so it will save bits that can be spent again on other frames, raising overall subjective quality, while possibly reducing PSNR. WARNING: Be careful, overly large values can cause disastrous things. WARNING: Large values might look good on some monitors but may look horrible on other monitors. 0.0 disabled (default) 0.00.3 sane range dark_mask=<0.01.0> Darkness masking is a psychosensory setting that is supposed to make use of the fact that the human eye tends to notice fewer details in very dark parts of the picture. Darkness masking compresses dark areas stronger than medium ones, so it will save bits that can be spent again on other frames, raising overall subjective quality, while possibly reducing PSNR. WARNING: Be careful, overly large values can cause disastrous things. WARNING: Large values might look good on some monitors but may look horrible on other monitors / TV / TFT. 0.0 disabled (default)

The MPlayer Project

2009-03-25

104

MPlayer(1)

The Movie Player

MPlayer(1)

0.00.3 sane range tcplx_mask=<0.01.0> Temporal complexity masking (default: 0.0 (disabled)). Imagine a scene with a bird ying across the whole scene; tcplx_mask will raise the quantizers of the birds macroblocks (thus decreasing their quality), as the human eye usually does not have time to see all the birds details. Be warned that if the masked object stops (e.g. the bird lands) it is likely to look horrible for a short period of time, until the encoder gures out that the object is not moving and needs rened blocks. The saved bits will be spent on other parts of the video, which may increase subjective quality, provided that tcplx_mask is carefully chosen. scplx_mask=<0.01.0> Spatial complexity masking. Larger values help against blockiness, if no deblocking lter is used for decoding, which is maybe not a good idea. Imagine a scene with grass (which usually has great spatial complexity), a blue sky and a house; scplx_mask will raise the quantizers of the grass macroblocks, thus decreasing its quality, in order to spend more bits on the sky and the house. HINT: Crop any black borders completely as they will reduce the quality of the macroblocks (also applies without scplx_mask). 0.0 disabled (default) 0.00.5 sane range NOTE: This setting does not have the same effect as using a custom matrix that would compress high frequencies harder, as scplx_mask will reduce the quality of P blocks even if only DC is changing. The result of scplx_mask will probably not look as good. p_mask=<0.01.0> (also see vi_qfactor) Reduces the quality of inter blocks. This is equivalent to increasing the quality of intra blocks, because the same average bitrate will be distributed by the rate controller to the whole video sequence (default: 0.0 (disabled)). p_mask=1.0 doubles the bits allocated to each intra block. border_mask=<0.01.0> border-processing for MPEG-style encoders. Border processing increases the quantizer for macroblocks which are less than 1/5th of the frame width/height away from the frame border, since they are often visually less important. naq Normalize adaptive quantization (experimental). When using adaptive quantization (*_mask), the average per-MB quantizer may no longer match the requested frame-level quantizer. Naq will attempt to adjust the per-MB quantizers to maintain the proper average. Use interlaced DCT. Use interlaced motion estimation (mutually exclusive with qpel). Use alternative scantable.

ildct ilme alt

top=<11> 1 0 1

automatic bottom eld rst top eld rst

The MPlayer Project

2009-03-25

105

MPlayer(1)

The Movie Player

MPlayer(1)

format=<value> YV12 default 444P for ffv1 422P for HuffYUV, lossless JPEG, dv and ffv1 411P for lossless JPEG, dv and ffv1 YVU9 for lossless JPEG, ffv1 and svq1 BGR32 for lossless JPEG and ffv1 pred (for HuffYUV) 0 left prediction 1 plane/gradient prediction 2 median prediction (for lossless JPEG) 0 left prediction 1 top prediction 2 topleft prediction 3 plane/gradient prediction 6 mean prediction (for ffv1) 0 vlc coding (Golomb-Rice) 1 arithmetic coding (CABAC)

pred

coder

context (for ffv1) 0 small context model 1 large context model (for ffvhuff) 0 predetermined Huffman tables (builtin or two pass) 1 adaptive Huffman tables qpel Use quarter pel motion compensation (mutually exclusive with ilme). HINT: This seems only useful for high bitrate encodings.

mbcmp=<02000> Sets the comparison function for the macroblock decision, has only an effect if mbd=0. This is also used for some motion search functions, in which case it has an effect regardless of mbd setting. 0 (SAD) sum of absolute differences, fast (default) 1 (SSE) sum of squared errors 2 (SATD) sum of absolute Hadamard transformed differences 3 (DCT) sum of absolute DCT transformed differences

The MPlayer Project

2009-03-25

106

MPlayer(1)

The Movie Player

MPlayer(1)

4 (PSNR) sum of squared quantization errors (avoid, low quality) 5 (BIT) number of bits needed for the block 6 (RD) rate distortion optimal, slow 7 (ZERO) 0 8 (VSAD) sum of absolute vertical differences 9 (VSSE) sum of squared vertical differences 10 (NSSE) noise preserving sum of squared differences 11 (W53) 5/3 wavelet, only used in snow 12 (W97) 9/7 wavelet, only used in snow +256 Also use chroma, currently does not work (correctly) with B-frames. ildctcmp=<02000> Sets the comparison function for interlaced DCT decision (see mbcmp for available comparison functions). precmp=<02000> Sets the comparison function for motion estimation pre pass (see mbcmp for available comparison functions) (default: 0). cmp=<02000> Sets the comparison function for full pel motion estimation (see mbcmp for available comparison functions) (default: 0). subcmp=<02000> Sets the comparison function for sub pel motion estimation (see mbcmp for available comparison functions) (default: 0). skipcmp=<02000> FIXME: Document this. nssew=<01000000> This setting controls NSSE weight, where larger weights will result in more noise. 0 NSSE is identical to SSE You may nd this useful if you prefer to keep some noise in your encoded video rather than ltering it away before encoding (default: 8). predia=<996> diamond type and size for motion estimation pre-pass dia=<996> Diamond type & size for motion estimation. Motion search is an iterative process. Using a small diamond does not limit the search to nding only small motion vectors. It is just somewhat more likely to stop before nding the very best motion vector, especially when noise is involved. Bigger diamonds allow a wider search for the best motion vector, thus are slower but result in better quality.

The MPlayer Project

2009-03-25

107

MPlayer(1)

The Movie Player

MPlayer(1)

Big normal diamonds are better quality than shape-adaptive diamonds. Shape-adaptive diamonds are a good tradeoff between speed and quality. NOTE: The sizes of the normal diamonds and shape adaptive ones do not have the same meaning. 3 2 1 1 shape adaptive (fast) diamond with size 3 shape adaptive (fast) diamond with size 2 uneven multi-hexagon search (slow) normal size=1 diamond (default) =EPZS type diamond 0 000 0 normal size=2 diamond 0 000 00000 000 0

trell

Trellis searched quantization. This will nd the optimal encoding for each 8x8 block. Trellis searched quantization is quite simply an optimal quantization in the PSNR versus bitrate sense (Assuming that there would be no rounding errors introduced by the IDCT, which is obviously not the case.). It simply nds a block for the minimum of error and lambda*bits. lambda quantization parameter (QP) dependent constant bits amount of bits needed to encode the block error sum of squared errors of the quantization Rate distorted optimal coded block pattern. Will select the coded block pattern which minimizes distortion + lambda*rate. This can only be used together with trellis quantization. Try to encode each MB with MV=<0,0> and choose the better one. This has no effect if mbd=0.

cbp

mv0

mv0_threshold=<any non-negative integer> When surrounding motion vectors are <0,0> and the motion estimation score of the current block is less than mv0_threshold, <0,0> is used for the motion vector and further motion estimation is skipped (default: 256). Lowering mv0_threshold to 0 can give a slight (0.01dB) PSNR increase and possibly make the encoded video look slightly better; raising mv0_threshold past 320 results in diminished PSNR and visual quality. Higher values speed up encoding very slightly (usually less than 1%, depending on the other options used). NOTE: This option does not require mv0 to be enabled. qprd (mbd=2 only) rate distorted optimal quantization parameter (QP) for the given lambda of each macroblock last_pred=<099> amount of motion predictors from the previous frame 0 (default) a Will use 2a+1 x 2a+1 macroblock square of motion vector predictors from the previous frame.

The MPlayer Project

2009-03-25

108

MPlayer(1)

The Movie Player

MPlayer(1)

preme=<02> motion estimation pre-pass 0 disabled 1 only after I-frames (default) 2 always subq=<18> subpel renement quality (for qpel) (default: 8 (high quality)) NOTE: This has a signicant effect on speed. refs=<18> number of reference frames to consider for motion compensation (Snow only) (default: 1) psnr print the PSNR (peak signal to noise ratio) for the whole video after encoding and store the per frame PSNR in a le 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. aic Enable AC prediction for MPEG-4 or advanced intra prediction for H.263+. This will improve quality very slightly (around 0.02 dB PSNR) and slow down encoding very slightly (about 1%). NOTE: vqmin should be 8 or larger for H.263+ AIC. alternative inter vlc for H.263+ unlimited MVs (H.263+ only) Allows encoding of arbitrarily long MVs.

aiv umv

ibias=<256256> intra quantizer bias (256 equals 1.0, MPEG style quantizer default: 96, H.263 style quantizer default: 0) NOTE: The H.263 MMX quantizer cannot handle positive biases (set vfdct=1 or 2), the MPEG MMX quantizer cannot handle negative biases (set vfdct=1 or 2). pbias=<256256> inter quantizer bias (256 equals 1.0, MPEG style quantizer default: 0, H.263 style quantizer default: 64) NOTE: The H.263 MMX quantizer cannot handle positive biases (set vfdct=1 or 2), the MPEG MMX quantizer cannot handle negative biases (set vfdct=1 or 2). HINT: A more positive bias (32 16 instead of 64) seems to improve the PSNR. nr=<0100000> Noise reduction, 0 means disabled. 0600 is a useful range for typical content, but you may want to turn it up a bit more for very noisy content (default: 0). Given its small impact on speed, you might want to prefer to use this over ltering noise away with video lters like denoise3d or hqdn3d. qns=<03> Quantizer noise shaping. Rather than choosing quantization to most closely match the source video in the PSNR sense, it chooses quantization such that noise (usually ringing) will be masked by similar-frequency content in the image. Larger values are slower but may not result in better quality. This can and should be used together with trellis quantization, in which case the trellis quantization (optimal for constant weight) will be used as startpoint for the iterative search.

The MPlayer Project

2009-03-25

109

MPlayer(1)

The Movie Player

MPlayer(1)

0 1 2 3

disabled (default) Only lower the absolute value of coefcients. Only change coefcients before the last non-zero coefcient + 1. 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 dc intra DC precision in bits (default: 8). If you specify vcodec=mpeg2video this value can be 8, 9, 10 or 11.

cgop (also see sc_threshold) Close all GOPs. Currently it only works if scene change detection is disabled (sc_threshold=1000000000). gmc Enable Global Motion Compensation.

(no)lowdelay Sets the low delay ag for MPEG-1/2 (disables B-frames). vglobal=<03> Control writing global video headers. 0 Codec decides where to write global headers (default). 1 Write global headers only in extradata (needed for .mp4/MOV/NUT). 2 Write global headers only in front of keyframes. 3 Combine 1 and 2. aglobal=<03> Same as vglobal for audio headers. level=<value> Set CodecContext Level. Use 31 or 41 to play video on a Playstation 3. skip_exp=<01000000> FIXME: Document this. skip_factor=<01000000> FIXME: Document this. skip_threshold=<01000000> FIXME: Document this. nuv (nuvopts) Nuppel video is based on RTJPEG and LZO. By default frames are rst encoded with RTJPEG and then compressed with LZO, but it is possible to disable either or both of the two passes. As a result, you can in

The MPlayer Project

2009-03-25

110

MPlayer(1)

The Movie Player

MPlayer(1)

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=<020> chrominance threshold (default: 1) l=<020> luminance threshold (default: 1) lzo nolzo Enable LZO compression (default). Disable LZO compression.

q=<3255> quality level (default: 255) raw Disable RTJPEG encoding.

rtjpeg Enable RTJPEG encoding (default). xvidenc (xvidencopts) There are three modes available: constant bitrate (CBR), xed quantizer and two pass. pass=<1|2> Specify the pass in two pass mode. turbo (two pass only) Dramatically speeds up pass one using faster algorithms and disabling CPU-intensive options. This will probably reduce global PSNR a little bit and change individual frame type and PSNR a little bit more. bitrate=<value> (CBR or two pass mode) Sets the bitrate to be used in kbits/second if <16000 or in bits/second if >16000. If <value> is negative, Xvid will use its absolute value as the target size (in kBytes) of the video and compute the associated bitrate automagically (default: 687 kbits/s). xed_quant=<131> Switch to xed quantizer mode and specify the quantizer to be used. zones=<zone0>[/<zone1>[/...]] (CBR or two pass mode) User specied quality for specic parts (ending, credits, ...). Each zone is <startframe>,<mode>,<value> where <mode> may be q Constant quantizer override, where value=<2.031.0> represents the quantizer value. w Ratecontrol weight override, where value=<0.012.00> represents the quality correction in %. EXAMPLE: zones=90000,q,20 Encodes all frames starting with frame 90000 at constant quantizer 20. zones=0,w,0.1/10001,w,1.0/90000,q,20 Encode frames 010000 at 10% bitrate, encode frames 90000 up to the end at constant quantizer 20. Note that the second zone is needed to delimit the rst zone, as without it everything up until frame 89999 would be encoded at 10% bitrate.

The MPlayer Project

2009-03-25

111

MPlayer(1)

The Movie Player

MPlayer(1)

me_quality=<06> This option controls the motion estimation subsystem. The higher the value, the more precise the estimation should be (default: 6). The more precise the motion estimation is, the more bits can be saved. Precision is gained at the expense of CPU time so decrease this setting if you need realtime encoding. (no)qpel MPEG-4 uses a half pixel precision for its motion search by default. The standard proposes a mode where encoders are allowed to use quarter pixel precision. This option usually results in a sharper image. Unfortunately it has a great impact on bitrate and sometimes the higher bitrate use will prevent it from giving a better image quality at a xed bitrate. It is better to test with and without this option and see whether it is worth activating. (no)gmc Enable Global Motion Compensation, which makes Xvid generate special frames (GMC-frames) which are well suited for Pan/Zoom/Rotating images. Whether or not the use of this option will save bits is highly dependent on the source material. (no)trellis Trellis Quantization is a kind of adaptive quantization method that saves bits by modifying quantized coefcients to make them more compressible by the entropy encoder. Its impact on quality is good, and if VHQ uses too much CPU for you, this setting can be a good alternative to save a few bits (and gain quality at xed bitrate) at a lesser cost than with VHQ (default: on). (no)cartoon Activate this if your encoded sequence is an anime/cartoon. It modies some Xvid internal thresholds so Xvid takes better decisions on frame types and motion vectors for at looking cartoons. (no)chroma_me The usual motion estimation algorithm uses only the luminance information to nd the best motion vector. However for some video material, using the chroma planes can help nd better vectors. This setting toggles the use of chroma planes for motion estimation (default: on). (no)chroma_opt Enable a chroma optimizer prelter. It will do some extra magic on color information to minimize the stepped-stairs effect on edges. It will improve quality at the cost of encoding speed. It reduces PSNR by nature, as the mathematical deviation to the original picture will get bigger, but the subjective image quality will raise. Since it works with color information, you might want to turn it off when encoding in grayscale. (no)hq_ac Activates high-quality prediction of AC coefcients for intra frames from neighbor blocks (default: on). vhq=<04> The motion search algorithm is based on a search in the usual color domain and tries to nd a motion vector that minimizes the difference between the reference frame and the encoded frame. With this setting activated, Xvid will also use the frequency domain (DCT) to search for a motion vector that minimizes not only the spatial difference but also the encoding length of the block. Fastest to slowest: 0 off 1 mode decision (inter/intra MB) (default) 2 limited search

The MPlayer Project

2009-03-25

112

MPlayer(1)

The Movie Player

MPlayer(1)

3 4

medium search wide search

(no)lumi_mask Adaptive quantization allows the macroblock quantizers to vary inside each frame. This is a psychosensory setting that is supposed to make use of the fact that the human eye tends to notice fewer details in very bright and very dark parts of the picture. It compresses those areas more strongly than medium ones, which will save bits that can be spent again on other frames, raising overall subjective quality and possibly reducing PSNR. (no)grayscale Make Xvid discard chroma planes so the encoded video is grayscale only. Note that this does not speed up encoding, it just prevents chroma data from being written in the last stage of encoding. (no)interlacing Encode the elds of interlaced video material. Turn this option on for interlaced content. NOTE: Should you rescale the video, you would need an interlace-aware resizer, which you can activate with vf scale=<width>:<height>:1. min_iquant=<031> minimum I-frame quantizer (default: 2) max_iquant=<031> maximum I-frame quantizer (default: 31) min_pquant=<031> minimum P-frame quantizer (default: 2) max_pquant=<031> maximum P-frame quantizer (default: 31) min_bquant=<031> minimum B-frame quantizer (default: 2) max_bquant=<031> maximum B-frame quantizer (default: 31) min_key_interval=<value> (two pass only) minimum interval between keyframes (default: 0) max_key_interval=<value> maximum interval between keyframes (default: 10*fps) quant_type=<h263|mpeg> Sets the type of quantizer to use. For high bitrates, you will nd that MPEG quantization preserves more detail. For low bitrates, the smoothing of H.263 will give you less block noise. When using custom matrices, MPEG quantization must be used. quant_intra_matrix=<lename> Load a custom intra matrix le. You can build such a le with xvid4confs matrix editor. quant_inter_matrix=<lename> Load a custom inter matrix le. You can build such a le with xvid4confs matrix editor.

The MPlayer Project

2009-03-25

113

MPlayer(1)

The Movie Player

MPlayer(1)

keyframe_boost=<01000> (two pass mode only) Shift some bits from the pool for other frame types to intra frames, thus improving keyframe quality. This amount is an extra percentage, so a value of 10 will give your keyframes 10% more bits than normal (default: 0). kfthreshold=<value> (two pass mode only) Works together with kfreduction. Determines the minimum distance below which you consider that two frames are considered consecutive and treated differently according to kfreduction (default: 10). kfreduction=<0100> (two pass mode only) The above two settings can be used to adjust the size of keyframes that you consider too close to the rst (in a row). kfthreshold sets the range in which keyframes are reduced, and kfreduction determines the bitrate reduction they get. The last I-frame will get treated normally (default: 30). max_bframes=<04> Maximum number of B-frames to put between I/P-frames (default: 2). bquant_ratio=<01000> quantizer ratio between B- and non-B-frames, 150=1.50 (default: 150) bquant_offset=<10001000> quantizer offset between B- and non-B-frames, 100=1.00 (default: 100) bf_threshold=<255255> This setting allows you to specify what priority to place on the use of B-frames. The higher the value, the higher the probability of B-frames being used (default: 0). Do not forget that B-frames usually have a higher quantizer, and therefore aggressive production of B-frames may cause worse visual quality. (no)closed_gop This option tells Xvid to close every GOP (Group Of Pictures bounded by two I-frames), which makes GOPs independent from each other. This just implies that the last frame of the GOP is either a P-frame or a N-frame but not a B-frame. It is usually a good idea to turn this option on (default: on). (no)packed This option is meant to solve frame-order issues when encoding to container formats like AVI that cannot cope with out-of-order frames. In practice, most decoders (both software and hardware) are able to deal with frame-order themselves, and may get confused when this option is turned on, so you can safely leave if off, unless you really know what you are doing. WARNING: This will generate an illegal bitstream, and will not be decodable by ISO-MPEG-4 decoders except DivX/libavcodec/Xvid. WARNING: This will also store a fake DivX version in the le so the bug autodetection of some decoders might be confused. frame_drop_ratio=<0100> (max_bframes=0 only) This setting allows the creation of variable framerate video streams. The value of the setting species a threshold under which, if the difference of the following frame to the previous frame is below or equal to this threshold, a frame gets not coded (a so called n-vop is placed in the stream). On playback, when reaching an n-vop the previous frame will be displayed. WARNING: Playing with this setting may result in a jerky video, so use it at your own risks!

The MPlayer Project

2009-03-25

114

MPlayer(1)

The Movie Player

MPlayer(1)

rc_reaction_delay_factor=<value> This parameter controls the number of frames the CBR rate controller will wait before reacting to bitrate changes and compensating for them to obtain a constant bitrate over an averaging range of frames. rc_averaging_period=<value> Real CBR is hard to achieve. Depending on the video material, bitrate can be variable, and hard to predict. Therefore Xvid uses an averaging period for which it guarantees a given amount of bits (minus a small variation). This settings expresses the "number of frames" for which Xvid averages bitrate and tries to achieve CBR. rc_buffer=<value> size of the rate control buffer curve_compression_high=<0100> This setting allows Xvid to take a certain percentage of bits away from high bitrate scenes and give them back to the bit reservoir. You could also use this if you have a clip with so many bits allocated to high-bitrate scenes that the low(er)-bitrate scenes start to look bad (default: 0). curve_compression_low=<0100> This setting allows Xvid to give a certain percentage of extra bits to the low bitrate scenes, taking a few bits from the entire clip. This might come in handy if you have a few low-bitrate scenes that are still blocky (default: 0). overow_control_strength=<0100> During pass one of two pass encoding, a scaled bitrate curve is computed. The difference between that expected curve and the result obtained during encoding is called overow. Obviously, the two pass rate controller tries to compensate for that overow, distributing it over the next frames. This setting controls how much of the overow is distributed every time there is a new frame. Low values allow lazy overow control, big rate bursts are compensated for more slowly (could lead to lack of precision for small clips). Higher values will make changes in bit redistribution more abrupt, possibly too abrupt if you set it too high, creating artifacts (default: 5). NOTE: This setting impacts quality a lot, play with it carefully! max_overow_improvement=<0100> During the frame bit allocation, overow control may increase the frame size. This parameter species the maximum percentage by which the overow control is allowed to increase the frame size, compared to the ideal curve allocation (default: 5). max_overow_degradation=<0100> During the frame bit allocation, overow control may decrease the frame size. This parameter species the maximum percentage by which the overow control is allowed to decrease the frame size, compared to the ideal curve allocation (default: 5). container_frame_overhead=<0...> Species a frame average overhead per frame, in bytes. Most of the time users express their target bitrate for video w/o taking care of the video container overhead. This small but (mostly) constant overhead can cause the target le size to be exceeded. Xvid allows users to set the amount of overhead per frame the container generates (give only an average per frame). 0 has a special meaning, it lets Xvid use its own default values (default: 24 AVI average overhead). prole=<prole_name> Restricts options and VBV (peak bitrate over a short period) according to the Simple, Advanced Simple and DivX proles. The resulting videos should be playable on standalone players adhering

The MPlayer Project

2009-03-25

115

MPlayer(1)

The Movie Player

MPlayer(1)

to these prole specications. unrestricted no restrictions (default) sp0 simple prole at level 0 sp1 simple prole at level 1 sp2 simple prole at level 2 sp3 simple prole at level 3 asp0 advanced simple prole at level 0 asp1 advanced simple prole at level 1 asp2 advanced simple prole at level 2 asp3 advanced simple prole at level 3 asp4 advanced simple prole at level 4 asp5 advanced simple prole at level 5 dxnhandheld DXN handheld prole dxnportntsc DXN portable NTSC prole dxnportpal DXN portable PAL prole dxnhtntsc DXN home theater NTSC prole dxnhtpal DXN home theater PAL prole dxnhdtv DXN HDTV prole NOTE: These proles should be used in conjunction with an appropriate ffourcc. Generally DX50 is applicable, as some players do not recognize Xvid but most recognize DivX. par=<mode> Species the Pixel Aspect Ratio mode (not to be confused with DAR, the Display Aspect Ratio). PAR is the ratio of the width and height of a single pixel. So both are related like this: DAR = PAR * (width/height). MPEG-4 denes 5 pixel aspect ratios and one extended one, giving the opportunity to specify a specic pixel aspect ratio. 5 standard modes can be specied: vga11 It is the usual PAR for PC content. Pixels are a square unit. pal43 PAL standard 4:3 PAR. Pixels are rectangles. pal169 same as above ntsc43 same as above ntsc169 same as above (Do not forget to give the exact ratio.) ext Allows you to specify your own pixel aspect ratio with par_width and par_height. NOTE: In general, setting aspect and autoaspect options is enough.

The MPlayer Project

2009-03-25

116

MPlayer(1)

The Movie Player

MPlayer(1)

par_width=<1255> (par=ext only) Species the width of the custom pixel aspect ratio. par_height=<1255> (par=ext only) Species the height of the custom pixel aspect ratio. aspect=<x/y | f (oat value)> Store movie aspect internally, just like MPEG les. Much nicer solution than rescaling, because quality is not decreased. MPlayer and a few others players will play these les correctly, others will display them with the wrong aspect. The aspect parameter can be given as a ratio or a oating point number. (no)autoaspect Same as the aspect option, but automatically computes aspect, taking into account all the adjustments (crop/expand/scale/etc.) made in the lter chain. psnr Print the PSNR (peak signal to noise ratio) for the whole video after encoding and store the per frame PSNR in a le with a name like psnr_hhmmss.log in the current directory. Returned values are in dB (decibel), the higher the better. Save per-frame statistics in ./xvid.dbg. (This is not the two pass control le.)

debug

The following option is only available in Xvid 1.1.x. bvhq=<0|1> This setting allows vector candidates for B-frames to be used for the encoding chosen using a rate distortion optimized operator, which is what is done for P-frames by the vhq option. This produces nicer-looking B-frames while incurring almost no performance penalty (default: 1). The following option is only available in the 1.2.x version of Xvid. threads=<0n> Create n threads to run the motion estimation (default: 0). The maximum number of threads that can be used is the picture height divided by 16. x264enc (x264encopts) bitrate=<value> Sets the average bitrate to be used in kbits/second (default: off). Since local bitrate may vary, this average may be inaccurate for very short videos (see ratetol). Constant bitrate can be achieved by combining this with vbv_maxrate, at signicant reduction in quality. qp=<051> This selects the quantizer to use for P-frames. I- and B-frames are offset from this value by ip_factor and pb_factor, respectively. 2040 is a useful range. Lower values result in better delity, but higher bitrates. 0 is lossless. Note that quantization in H.264 works differently from MPEG-1/2/4: H.264s quantization parameter (QP) is on a logarithmic scale. The mapping is approximately H264QP = 12 + 6*log2(MPEGQP). For example, MPEG at QP=2 is equivalent to H.264 at QP=18. crf=<1.050.0> Enables constant quality mode, and selects the quality. The scale is similar to QP. Like the bitrate-based modes, this allows each frame to use a different QP based on the frames complexity.

The MPlayer Project

2009-03-25

117

MPlayer(1)

The Movie Player

MPlayer(1)

pass=<13> Enable 2 or 3-pass mode. It is recommended to always encode in 2 or 3-pass mode as it leads to a better bit distribution and improves overall quality. 1 rst pass 2 second pass (of two pass encoding) 3 Nth pass (second and third passes of three pass encoding) Here is how it works, and how to use it: The rst pass (pass=1) collects statistics on the video and writes them to a le. You might want to deactivate some CPU-hungry options, apart from the ones that are on by default. In two pass mode, the second pass (pass=2) reads the statistics le and bases ratecontrol decisions on it. In three pass mode, the second pass (pass=3, that is not a typo) does both: It rst reads the statistics, then overwrites them. You can use all encoding options, except very CPU-hungry options. The third pass (pass=3) is the same as the second pass, except that it has the second pass statistics to work from. You can use all encoding options, including CPU-hungry ones. The rst pass may use either average bitrate or constant quantizer. ABR is recommended, since it does not require guessing a quantizer. Subsequent passes are ABR, and must specify bitrate. turbo=<02> Fast rst pass mode. During the rst pass of a two or more pass encode it is possible to gain speed by disabling some options with negligible or even no impact on the nal pass output quality. 0 disabled (default) 1 Reduce subq, frameref and disable some inter-macroblock partition analysis modes. 2 Reduce subq and frameref to 1, use a diamond ME search and disable all partition analysis modes. Level 1 can increase rst pass speed up to 2x with no change in the global PSNR of the nal pass compared to a full quality rst pass. Level 2 can increase rst pass speed up to 4x with about +/ 0.05dB change in the global PSNR of the nal pass compared to a full quality rst pass. keyint=<value> Sets maximum interval between IDR-frames (default: 250). Larger values save bits, thus improve quality, at the cost of seeking precision. Unlike MPEG-1/2/4, H.264 does not suffer from DCT drift with large values of keyint. keyint_min=<1keyint/2> Sets minimum interval between IDR-frames (default: 25). If scenecuts appear within this interval, they are still encoded as I-frames, but do not start a new GOP. In H.264, I-frames do not necessarily bound a closed GOP because it is allowable for a P-frame to be predicted from more frames than just the one frame before it (also see frameref). Therefore, I-frames are not necessarily seekable. IDR-frames restrict subsequent P-frames from referring to any frame prior to the IDR-frame. scenecut=<1100> Controls how aggressively to insert extra I-frames (default: 40). With small values of scenecut, the codec often has to force an I-frame when it would exceed keyint. Good values of scenecut may nd a better location for the I-frame. Large values use more I-frames than necessary, thus wasting bits. 1 disables scene-cut detection, so I-frames are inserted only once every other keyint frames, even if a scene-cut occurs earlier. This is not recommended and wastes bitrate as scenecuts encoded as P-frames are just as big as I-frames, but do not reset the "keyint counter". frameref=<116> Number of previous frames used as predictors in B- and P-frames (default: 1). This is effective in anime, but in live-action material the improvements usually drop off very rapidly above 6 or so reference frames. This has no effect on decoding speed, but does increase the memory needed for

The MPlayer Project

2009-03-25

118

MPlayer(1)

The Movie Player

MPlayer(1)

decoding. Some decoders can only handle a maximum of 15 reference frames. bframes=<016> maximum number of consecutive B-frames between I- and P-frames (default: 0) (no)b_adapt Automatically decides when to use B-frames and how many, up to the maximum specied above (default: on). If this option is disabled, then the maximum number of B-frames is used. b_bias=<100100> Controls the decision performed by b_adapt. A higher b_bias produces more B-frames (default: 0). (no)b_pyramid Allows B-frames to be used as references for predicting other frames. For example, consider 3 consecutive B-frames: I0 B1 B2 B3 P4. Without this option, B-frames follow the same pattern as MPEG-[124]. So they are coded in the order I0 P4 B1 B2 B3, and all the B-frames are predicted from I0 and P4. With this option, they are coded as I0 P4 B2 B1 B3. B2 is the same as above, but B1 is predicted from I0 and B2, and B3 is predicted from B2 and P4. This usually results in slightly improved compression, at almost no speed cost. However, this is an experimental option: it is not fully tuned and may not always help. Requires bframes >= 2. Disadvantage: increases decoding delay to 2 frames. (no)deblock Use deblocking lter (default: on). As it takes very little time compared to its quality gain, it is not recommended to disable it. deblock=<66>,<66> The rst parameter is AlphaC0 (default: 0). This adjusts thresholds for the H.264 in-loop deblocking lter. First, this parameter adjusts the maximum amount of change that the lter is allowed to cause on any one pixel. Secondly, this parameter affects the threshold for difference across the edge being ltered. A positive value reduces blocking artifacts more, but will also smear details. The second parameter is Beta (default: 0). This affects the detail threshold. Very detailed blocks are not ltered, since the smoothing caused by the lter would be more noticeable than the original blocking. The default behavior of the lter almost always achieves optimal quality, so it is best to either leave it alone, or make only small adjustments. However, if your source material already has some blocking or noise which you would like to remove, it may be a good idea to turn it up a little bit. (no)cabac Use CABAC (Context-Adaptive Binary Arithmetic Coding) (default: on). Slightly slows down encoding and decoding, but should save 1015% bitrate. Unless you are looking for decoding speed, you should not disable it. qp_min=<151> (ABR or two pass) Minimum quantizer, 1030 seems to be a useful range (default: 10). qp_max=<151> (ABR or two pass) maximum quantizer (default: 51) qp_step=<150> (ABR or two pass) maximum value by which the quantizer may be incremented/decremented between frames (default: 4)

The MPlayer Project

2009-03-25

119

MPlayer(1)

The Movie Player

MPlayer(1)

ratetol=<0.1100.0> (ABR or two pass) allowed variance in average bitrate (no particular units) (default: 1.0) vbv_maxrate=<value> (ABR or two pass) maximum local bitrate, in kbits/second (default: disabled) vbv_bufsize=<value> (ABR or two pass) averaging period for vbv_maxrate, in kbits (default: none, must be specied if vbv_maxrate is enabled) vbv_init=<0.01.0> (ABR or two pass) initial buffer occupancy, as a fraction of vbv_bufsize (default: 0.9) ip_factor=<value> quantizer factor between I- and P-frames (default: 1.4) pb_factor=<value> quantizer factor between P- and B-frames (default: 1.3) qcomp=<01> (ABR or two pass) quantizer compression (default: 0.6). A lower value makes the bitrate more constant, while a higher value makes the quantization parameter more constant. cplx_blur=<0999> (two pass only) Temporal blur of the estimated frame complexity, before curve compression (default: 20). Lower values allow the quantizer value to jump around more, higher values force it to vary more smoothly. cplx_blur ensures that each I-frame has quality comparable to the following P-frames, and ensures that alternating high and low complexity frames (e.g. low fps animation) do not waste bits on uctuating quantizer. qblur=<099> (two pass only) Temporal blur of the quantization parameter, after curve compression (default: 0.5). Lower values allow the quantizer value to jump around more, higher values force it to vary more smoothly. zones=<zone0>[/<zone1>[/...]] User specied quality for specic parts (ending, credits, ...). Each zone is <start-frame>,<endframe>,<option> where option may be q=<051> quantizer b=<0.01100.0> bitrate multiplier NOTE: The quantizer option is not strictly enforced. It affects only the planning stage of ratecontrol, and is still subject to overow compensation and qp_min/qp_max. direct_pred=<name> Determines the type of motion prediction used for direct macroblocks in B-frames. none Direct macroblocks are not used. spatial Motion vectors are extrapolated from neighboring blocks. (default) temporal Motion vectors are extrapolated from the following P-frame. auto The codec selects between spatial and temporal for each frame. Spatial and temporal are approximately the same speed and PSNR, the choice between them depends on the video content. Auto is slightly better, but slower. Auto is most effective when com-

The MPlayer Project

2009-03-25

120

MPlayer(1)

The Movie Player

MPlayer(1)

bined with multipass. direct_pred=none is both slower and lower quality. (no)weight_b Use weighted prediction in B-frames. Without this option, bidirectionally predicted macroblocks give equal weight to each reference frame. With this option, the weights are determined by the temporal position of the B-frame relative to the references. Requires bframes > 1. partitions=<list> Enable some optional macroblock types (default: p8x8,b8x8,i8x8,i4x4). p8x8 Enable types p16x8, p8x16, p8x8. p4x4 Enable types p8x4, p4x8, p4x4. p4x4 is recommended only with subq >= 5, and only at low resolutions. b8x8 Enable types b16x8, b8x16, b8x8. i8x8 Enable type i8x8. i8x8 has no effect unless 8x8dct is enabled. i4x4 Enable type i4x4. all Enable all of the above types. none Disable all of the above types. Regardless of this option, macroblock types p16x16, b16x16, and i16x16 are always enabled. The idea is to nd the type and size that best describe a certain area of the picture. For example, a global pan is better represented by 16x16 blocks, while small moving objects are better represented by smaller blocks. (no)8x8dct Adaptive spatial transform size: allows macroblocks to choose between 4x4 and 8x8 DCT. Also allows the i8x8 macroblock type. Without this option, only 4x4 DCT is used. me=<name> Select fullpixel motion estimation algorithm. dia diamond search, radius 1 (fast) hex hexagon search, radius 2 (default) umh uneven multi-hexagon search (slow) esa exhaustive search (very slow, and no better than umh) me_range=<464> radius of exhaustive or multi-hexagon motion search (default: 16) subq=<09> Adjust subpel renement quality. This parameter controls quality versus speed tradeoffs involved in the motion estimation decision process. subq=5 can compress up to 10% better than subq=1. 0 Runs fullpixel precision motion estimation on all candidate macroblock types. Then selects the best type with SAD metric (faster than subq=1, not recommended unless youre looking for ultra-fast encoding). 1 Does as 0, then renes the motion of that type to fast quarterpixel precision (fast). 2 Runs halfpixel precision motion estimation on all candidate macroblock types. Then selects the best type with SATD metric. Then renes the motion of that type to fast quarterpixel precision. 3 As 2, but uses a slower quarterpixel renement. 4 Runs fast quarterpixel precision motion estimation on all candidate macroblock types. Then selects the best type with SATD metric. Then nishes the quarterpixel renement for that type. 5 Runs best quality quarterpixel precision motion estimation on all candidate macroblock types, before selecting the best type. Also renes the two motion vectors used in bidirectional macroblocks with SATD metric, rather than reusing vectors from the forward and backward searches.

The MPlayer Project

2009-03-25

121

MPlayer(1)

The Movie Player

MPlayer(1)

Enables rate-distortion optimization of macroblock types in I- and P-frames (default). Enables rate-distortion optimization of macroblock types in all frames. Enables rate-distortion optimization of motion vectors and intra prediction modes in Iand P-frames. 9 Enables rate-distortion optimization of motion vectors and intra prediction modes in all frames (best). In the above, "all candidates" does not exactly mean all enabled types: 4x4, 4x8, 8x4 are tried only if 8x8 is better than 16x16. (no)chroma_me Takes into account chroma information during subpixel motion search (default: enabled). Requires subq>=5. (no)mixed_refs Allows each 8x8 or 16x8 motion partition to independently select a reference frame. Without this option, a whole macroblock must use the same reference. Requires frameref>1. trellis=<02> (cabac only) rate-distortion optimal quantization 0 disabled (default) 1 enabled only for the nal encode 2 enabled during all mode decisions (slow, requires subq>=6) psy-rd=rd[,trell] Sets the strength of the psychovisual optimization. rd=<0.010.0> psy optimization strength (requires subq>=6) (default: 1.0) trell=<0.010.0> trellis (requires trellis, experimental) (default: 0.0) deadzone_inter=<032> Set the size of the inter luma quantization deadzone for non-trellis quantization (default: 21). Lower values help to preserve ne details and lm grain (typically useful for high bitrate/quality encode), while higher values help lter out these details to save bits that can be spent again on other macroblocks and frames (typically useful for bitrate-starved encodes). It is recommended that you start by tweaking deadzone_intra before changing this parameter. deadzone_intra=<032> Set the size of the intra luma quantization deadzone for non-trellis quantization (default: 11). This option has the same effect as deadzone_inter except that it affects intra frames. It is recommended that you start by tweaking this parameter before changing deadzone_inter. (no)fast_pskip Performs early skip detection in P-frames (default: enabled). This usually improves speed at no cost, but it can sometimes produce artifacts in areas with no details, like sky. (no)dct_decimate Eliminate dct blocks in P-frames containing only a small single coefcient (default: enabled). This will remove some details, so it will save bits that can be spent again on other frames, hopefully raising overall subjective quality. If you are compressing non-anime content with a high target bitrate, you may want to disable this to preserve as much detail as possible.

6 7 8

The MPlayer Project

2009-03-25

122

MPlayer(1)

The Movie Player

MPlayer(1)

nr=<0100000> Noise reduction, 0 means disabled. 1001000 is a useful range for typical content, but you may want to turn it up a bit more for very noisy content (default: 0). Given its small impact on speed, you might want to prefer to use this over ltering noise away with video lters like denoise3d or hqdn3d. chroma_qp_offset=<1212> Use a different quantizer for chroma as compared to luma. Useful values are in the range <22> (default: 0). aq_mode=<02> Denes how adaptive quantization (AQ) distributes bits: 0 disabled 1 Avoid moving bits between frames. 2 Move bits between frames (by default). aq_strength=<positive oat value> Controls how much adaptive quantization (AQ) reduces blocking and blurring in at and textured areas (default: 1.0). A value of 0.5 will lead to weak AQ and less details, when a value of 1.5 will lead to strong AQ and more details. cqm=<at|jvt|<lename>> Either uses a predened custom quantization matrix or loads a JM format matrix le. at Use the predened at 16 matrix (default). jvt Use the predened JVT matrix. <lename> Use the provided JM format matrix le. NOTE: Windows CMD.EXE users may experience problems with parsing the command line if they attempt to use all the CQM lists. This is due to a command line length limitation. In this case it is recommended the lists be put into a JM format CQM le and loaded as specied above. cqm4iy=<list> (also see cqm) Custom 4x4 intra luminance matrix, given as a list of 16 comma separated values in the 1255 range. cqm4ic=<list> (also see cqm) Custom 4x4 intra chrominance matrix, given as a list of 16 comma separated values in the 1255 range. cqm4py=<list> (also see cqm) Custom 4x4 inter luminance matrix, given as a list of 16 comma separated values in the 1255 range. cqm4pc=<list> (also see cqm) Custom 4x4 inter chrominance matrix, given as a list of 16 comma separated values in the 1255 range. cqm8iy=<list> (also see cqm) Custom 8x8 intra luminance matrix, given as a list of 64 comma separated values in the 1255 range. cqm8py=<list> (also see cqm) Custom 8x8 inter luminance matrix, given as a list of 64 comma separated values in the 1255 range.

The MPlayer Project

2009-03-25

123

MPlayer(1)

The Movie Player

MPlayer(1)

level_idc=<1051> Set the bitstreams level as dened by annex A of the H.264 standard (default: 51 level 5.1). This is used for telling the decoder what capabilities it needs to support. Use this parameter only if you know what it means, and you have a need to set it. threads=<016> Spawn threads to encode in parallel on multiple CPUs (default: 1). This has a slight penalty to compression quality. 0 or auto tells x264 to detect how many CPUs you have and pick an appropriate number of threads. (no)global_header Causes SPS and PPS to appear only once, at the beginning of the bitstream (default: disabled). Some players, such as the Sony PSP, require the use of this option. The default behavior causes SPS and PPS to repeat prior to each IDR frame. (no)interlaced Treat the video content as interlaced. log=<13> Adjust the amount of logging info printed to the screen. 1 none 0 Print errors only. 1 warnings 2 PSNR and other analysis statistics when the encode nishes (default) 3 PSNR, QP, frametype, size, and other statistics for every frame (no)psnr Print signal-to-noise ratio statistics. NOTE: The Y, U, V, and Avg PSNR elds in the summary are not mathematically sound (they are simply the average of per-frame PSNRs). They are kept only for comparison to the JM reference codec. For all other purposes, please use either the Global PSNR, or the per-frame PSNRs printed by log=3. (no)ssim Print the Structural Similarity Metric results. This is an alternative to PSNR, and may be better correlated with the perceived quality of the compressed video. (no)visualize Enable x264 visualizations during encoding. If the x264 on your system supports it, a new window will be opened during the encoding process, in which x264 will attempt to present an overview of how each frame gets encoded. Each block type on the visualized movie will be colored as follows: red/pink intra block blue inter block green skip block yellow B-block This feature can be considered experimental and subject to change. In particular, it depends on x264 being compiled with visualizations enabled. Note that as of writing this, x264 pauses after encoding and visualizing each frame, waiting for the user to press a key, at which point the next frame will be encoded.

The MPlayer Project

2009-03-25

124

MPlayer(1)

The Movie Player

MPlayer(1)

xvfw (xvfwopts) Encoding with Video for Windows codecs is mostly obsolete unless you wish to encode to some obscure fringe codec. codec=<name> The name of the binary codec le with which to encode. compdata=<le> The name of the codec settings le (like rstpass.mcf) created by vfw2menc. MPEG muxer (mpegopts) The MPEG muxer can generate 5 types of streams, each of which has reasonable default parameters that the user can override. Generally, when generating MPEG les, it is advisable to disable MEncoders frame-skip code (see noskip, mc as well as the harddup and softskip video lters). EXAMPLE: format=mpeg2:tsaf:vbitrate=8000 format=<mpeg1 | mpeg2 | xvcd | xsvcd | dvd | pes1 | pes2> stream format (default: mpeg2). pes1 and pes2 are very broken formats (no pack header and no padding), but VDR uses them; do not choose them unless you know exactly what you are doing. size=<up to 65535> Pack size in bytes, do not change unless you know exactly what you are doing (default: 2048). muxrate=<int> Nominal muxrate in kbit/s used in the pack headers (default: 1800 kb/s). Will be updated as necessary in the case of format=mpeg1 or mpeg2. tsaf Sets timestamps on all frames, if possible; recommended when format=dvd. If dvdauthor complains with a message like "..audio sector out of range...", you probably did not enable this option.

interleaving2 Uses a better algorithm to interleave audio and video packets, based on the principle that the muxer will always try to ll the stream with the largest percentage of free space. vdelay=<132760> Initial video delay time, in milliseconds (default: 0), use it if you want to delay video with respect to audio. It doesnt work with :drop. adelay=<132760> Initial audio delay time, in milliseconds (default: 0), use it if you want to delay audio with respect to video. drop When used with vdelay the muxer drops the part of audio that was anticipated.

vwidth, vheight=<14095> Set the video width and height when video is MPEG-1/2. vpswidth, vpsheight=<14095> Set pan and scan video width and height when video is MPEG-2.

The MPlayer Project

2009-03-25

125

MPlayer(1)

The Movie Player

MPlayer(1)

vaspect=<1 | 4/3 | 16/9 | 221/100> Sets the display aspect ratio for MPEG-2 video. Do not use it on MPEG-1 or the resulting aspect ratio will be completely wrong. vbitrate=<int> Sets the video bitrate in kbit/s for MPEG-1/2 video. vframerate=<24000/1001 | 24 | 25 | 30000/1001 | 30 | 50 | 60000/1001 | 60 > Sets the framerate for MPEG-1/2 video. This option will be ignored if used with the telecine option. telecine Enables 3:2 pulldown soft telecine mode: The muxer will make the video stream look like it was encoded at 30000/1001 fps. It only works with MPEG-2 video when the output framerate is 24000/1001 fps, convert it with ofps if necessary. Any other framerate is incompatible with this option. lm2pal Enables FILM to PAL and NTSC to PAL soft telecine mode: The muxer will make the video stream look like it was encoded at 25 fps. It only works with MPEG-2 video when the output framerate is 24000/1001 fps, convert it with ofps if necessary. Any other framerate is incompatible with this option. tele_src and tele_dest Enables arbitrary telecining using Donand Grafts DGPulldown code. You need to specify the original and the desired framerate; the muxer will make the video stream look like it was encoded at the desired framerate. It only works with MPEG-2 video when the input framerate is smaller than the output framerate and the framerate increase is <= 1.5. EXAMPLE: tele_src=25,tele_dest=30000/1001 PAL to NTSC telecining vbuf_size=<401194> Sets the size of the video decoders buffer, expressed in kilobytes. Specify it only if the bitrate of the video stream is too high for the chosen format and if you know perfectly well what you are doing. A too high value may lead to an unplayable movie, depending on the players capabilities. When muxing HDTV video a value of 400 should sufce. abuf_size=<464> Sets the size of the audio decoders buffer, expressed in kilobytes. The same principle as for vbuf_size applies. FFmpeg libavformat demuxers (lavfdopts) analyzeduration=<value> Maximum length in seconds to analyze the stream properties. format=<value> Force a specic libavformat demuxer. o=<key>=<value>[,<key>=<value>[,...]] Pass AVOptions to libavformat demuxer. Note, a patch to make the o= unneeded and pass all unknown options through the AVOption system is welcome. A full list of AVOptions can be found in the FFmpeg manual. Note that some options may conict with MPlayer/MEncoder options.

The MPlayer Project

2009-03-25

126

MPlayer(1)

The Movie Player

MPlayer(1)

EXAMPLE: o=ignidx probesize=<value> Maximum amount of data to probe during the detection phase. In the case of MPEG-TS this value identies the maximum number of TS packets to scan. cryptokey=<hexstring> Encryption key the demuxer should use. This is the raw binary data of the key converted to a hexadecimal string. FFmpeg libavformat muxers (lavfopts) (also see of lavf) delay=<value> Currently only meaningful for MPEG[12]: Maximum allowed distance, in seconds, between the reference timer of the output stream (SCR) and the decoding timestamp (DTS) for any stream present (demux to decode delay). Default is 0.7 (as mandated by the standards dened by MPEG). Higher values require larger buffers and must not be used. format=<container_format> Override which container format to mux into (default: autodetect from output le extension). mpg MPEG-1 systems and MPEG-2 PS asf Advanced Streaming Format avi Audio Video Interleave le wav Waveform Audio swf Macromedia Flash v Macromedia Flash video les rm RealAudio and RealVideo au SUN AU format nut NUT open container format (experimental) mov QuickTime mp4 MPEG-4 format ipod MPEG-4 format with extra header ags required by Apple iPod rmware dv Sony Digital Video container matroska Matroska muxrate=<rate> Nominal bitrate of the multiplex, in bits per second; currently it is meaningful only for MPEG[12]. Sometimes raising it is necessary in order to avoid "buffer underows". o=<key>=<value>[,<key>=<value>[,...]] Pass AVOptions to libavformat muxer. Note, a patch to make the o= unneeded and pass all unknown options through the AVOption system is welcome. A full list of AVOptions can be found in the FFmpeg manual. Note that some options may conict with MEncoder options. EXAMPLE: o=packetsize=100

The MPlayer Project

2009-03-25

127

MPlayer(1)

The Movie Player

MPlayer(1)

packetsize=<size> Size, expressed in bytes, of the unitary packet for the chosen format. When muxing to MPEG[12] implementations the default values are: 2324 for [S]VCD, 2048 for all others formats. preload=<distance> Currently only meaningful for MPEG[12]: Initial distance, in seconds, between the reference timer of the output stream (SCR) and the decoding timestamp (DTS) for any stream present (demux to decode delay).

ENVIRONMENT VARIABLES
There are a number of environment variables that can be used to control the behavior of MPlayer and MEncoder. MPLAYER_CHARSET (also see msgcharset) Convert console messages to the specied charset (default: autodetect). A value of "noconv" means no conversion. MPLAYER_HOME Directory where MPlayer looks for user settings. MPLAYER_VERBOSE (also see v and msglevel) Set the initial verbosity level across all message modules (default: 0). The resulting verbosity corresponds to that of msglevel 5 plus the value of MPLAYER_VERBOSE. libaf: LADSPA_PATH If LADSPA_PATH is set, it searches for the specied le. If it is not set, you must supply a fully specied pathname. FIXME: This is also mentioned in the ladspa section. libdvdcss: DVDCSS_CACHE Specify a directory in which to store title key values. This will speed up descrambling of DVDs which are in the cache. The DVDCSS_CACHE directory is created if it does not exist, and a subdirectory is created named after the DVDs title or manufacturing date. If DVDCSS_CACHE is not set or is empty, libdvdcss will use the default value which is "${HOME}/.dvdcss/" under Unix and "C:\Documents and Settings\$USER\Application Data\dvdcss\" under Win32. The special value "off" disables caching. DVDCSS_METHOD Sets the authentication and decryption method that libdvdcss will use to read scrambled discs. Can be one of title, key or disc. key is the default method. libdvdcss will use a set of calculated player keys to try and get the disc key. This can fail if the drive does not recognize any of the player keys. disc is a fallback method when key has failed. Instead of using player keys, libdvdcss will crack the disc key using a brute force algorithm. This process is CPU intensive and requires 64 MB of memory to store temporary data. title is the fallback when all other methods have failed. It does not rely on a key exchange with the DVD drive, but rather uses a crypto attack to guess the title key. On rare cases this may fail because there is not enough encrypted data on the disc to perform a statistical attack, but in the other hand it is the only way to decrypt a DVD stored on a hard disc, or a DVD with the wrong region on an RPC2 drive.

The MPlayer Project

2009-03-25

128

MPlayer(1)

The Movie Player

MPlayer(1)

DVDCSS_RAW_DEVICE Specify the raw device to use. Exact usage will depend on your operating system, the Linux utility to set up raw devices is raw(8) for instance. Please note that on most operating systems, using a raw device requires highly aligned buffers: Linux requires a 2048 bytes alignment (which is the size of a DVD sector). DVDCSS_VERBOSE Sets the libdvdcss verbosity level. 0 Outputs no messages at all. 1 Outputs error messages to stderr. 2 Outputs error messages and debug messages to stderr. DVDREAD_NOKEYS Skip retrieving all keys on startup. Currently disabled. HOME FIXME: Document this. libao2: AO_SUN_DISABLE_SAMPLE_TIMING FIXME: Document this. AUDIODEV FIXME: Document this. AUDIOSERVER Species the Network Audio System server to which the nas audio output driver should connect and the transport that should be used. If unset DISPLAY is used instead. The transport can be one of tcp and unix. Syntax is tcp/<somehost>:<someport>, <somehost>:<instancenumber> or [unix]:<instancenumber>. The NAS base port is 8000 and <instancenumber> is added to that. EXAMPLES: AUDIOSERVER=somehost:0 Connect to NAS server on somehost using default port and transport. AUDIOSERVER=tcp/somehost:8000 Connect to NAS server on somehost listening on TCP port 8000. AUDIOSERVER=(unix)?:0 Connect to NAS server instance 0 on localhost using unix domain sockets. DISPLAY FIXME: Document this. vidix: VIDIX_CRT FIXME: Document this. VIDIXIVTVALPHA Set this to disable in order to stop the VIDIX driver from controlling alphablending settings. You can then manipulate it yourself with ivtvfbctl. osdep: TERM FIXME: Document this.

The MPlayer Project

2009-03-25

129

MPlayer(1)

The Movie Player

MPlayer(1)

libvo: DISPLAY FIXME: Document this. FRAMEBUFFER FIXME: Document this. HOME FIXME: Document this. libmpdemux: HOME FIXME: Document this. HOMEPATH FIXME: Document this. http_proxy FIXME: Document this. LOGNAME FIXME: Document this. USERPROFILE FIXME: Document this. libmpcodecs: XANIM_MOD_DIR FIXME: Document this. GUI: CHARSET FIXME: Document this. DISPLAY FIXME: Document this. HOME FIXME: Document this. libavformat: AUDIO_FLIP_LEFT FIXME: Document this. BKTR_DEV FIXME: Document this. BKTR_FORMAT FIXME: Document this. BKTR_FREQUENCY FIXME: Document this.

The MPlayer Project

2009-03-25

130

MPlayer(1)

The Movie Player

MPlayer(1)

http_proxy FIXME: Document this. no_proxy FIXME: Document this.

FILES
/usr/local/etc/mplayer/mplayer.conf MPlayer system-wide settings /usr/local/etc/mplayer/mencoder.conf MEncoder system-wide settings /.mplayer/cong MPlayer user settings /.mplayer/mencoder.conf MEncoder user settings /.mplayer/input.conf input bindings (see input keylist for the full list) /.mplayer/gui.conf GUI conguration le /.mplayer/gui.pl GUI playlist /.mplayer/font/ font directory (There must be a font.desc le and les with .RAW extension.) /.mplayer/DVDkeys/ cached CSS keys Assuming that /path/to/movie.avi is played, MPlayer searches for sub les in this order: /path/to/movie.sub /.mplayer/sub/movie.sub

EXAMPLES OF MPLAYER USAGE


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 57 Play only titles 5, 6, 7: mplayer dvd://57 Play a multiangle DVD: mplayer dvd://1 dvdangle 2

The MPlayer Project

2009-03-25

131

MPlayer(1)

The Movie Player

MPlayer(1)

Play from a different DVD device: mplayer dvd://1 dvddevice /dev/dvd2 Play DVD video from a directory with VOB les: mplayer dvd://1 dvddevice /path/to/directory/ Copy a DVD title to hard disk, saving to le title1.vob : mplayer dvd://1 dumpstream dumple title1.vob Play a DVD with dvdnav from path /dev/sr1: mplayer dvdnav:////dev/sr1 Stream from HTTP: mplayer http://mplayer.hq/example.avi Stream using RTSP: mplayer rtsp://server.example.com/streamName Convert subtitles to MPsub format: mplayer dummy.avi sub source.sub dumpmpsub

Convert subtitles to MPsub format without watching the movie: mplayer /dev/zero rawvideo pal:fps=xx demuxer rawvideo vc null vo null noframedrop benchmark sub source.su input from standard V4L: mplayer tv:// tv driver=v4l:width=640:height=480:outfmt=i420 vc rawi420 vo xv Playback on Zoran cards (old style, deprecated): mplayer vo zr vf scale=352:288 le.avi Playback on Zoran cards (new style): mplayer vo zr2 vf scale=352:288,zrmjpeg le.avi Play DTS-CD with passthrough: mplayer ac hwdts rawaudio format=0x2001 cdromdevice /dev/cdrom cdda:// You can also use afm hwac3 instead of ac hwdts. Adjust /dev/cdrom to match the CD-ROM device on your system. If your external receiver supports decoding raw DTS streams, you can directly play it via cdda:// without setting format, hwac3 or hwdts.

Play a 6-channel AAC le with only two speakers: mplayer rawaudio format=0xff demuxer rawaudio af pan=2:.32:.32:.39:.06:.06:.39:.17:-.17:-.17:.17:.33:.33 adts_he-aa You might want to play a bit with the pan values (e.g multiply with a value) to increase volume or avoid clipping. checkerboard invert with geq lter: mplayer vf geq=128+(p(XY)128)*(0.5gt(mod(X/SW128)64))*(0.5gt(mod(Y/SH128)64))*4

EXAMPLES OF MENCODER USAGE


Encode DVD title #2, only selected chapters: mencoder dvd://2 chapter 1015 o title2.avi oac copy ovc lavc lavcopts vcodec=mpeg4 Encode DVD title #2, resizing to 640x480: mencoder dvd://2 vf scale=640:480 o title2.avi oac copy ovc lavc lavcopts vcodec=mpeg4

The MPlayer Project

2009-03-25

132

MPlayer(1)

The Movie Player

MPlayer(1)

Encode DVD title #2, resizing to 512xHHH (keep aspect ratio): mencoder dvd://2 vf scale zoom xy 512 o title2.avi oac copy ovc lavc lavcopts vcodec=mpeg4 The same, but with bitrate set to 1800kbit and optimized macroblocks: mencoder dvd://2 o title2.avi oac copy ovc lavc lavcopts vcodec=mpeg4:mbd=1:vbitrate=1800 The same, but with MJPEG compression: mencoder dvd://2 o title2.avi oac copy ovc lavc lavcopts vcodec=mjpeg:mbd=1:vbitrate=1800 Encode all *.jpg les in the current directory: mencoder "mf://*.jpg" mf fps=25 o output.avi ovc lavc lavcopts vcodec=mpeg4 Encode from a tuner (specify a format with vf format): mencoder tv driver=v4l:width=640:height=480 tv:// o tv.avi ovc raw Encode from a pipe: rar p test-SVCD.rar | mencoder ovc lavc lavcopts vcodec=mpeg4:vbitrate=800 ofps 24

BUGS
Dont panic. If you nd one, report it to us, but please make sure you have read all of the documentation rst. Also look out for smileys. :) Many bugs are the result of incorrect setup or parameter usage. The bug reporting section of the documentation (http://www.mplayerhq.hu/DOCS/HTML/en/bugreports.html) explains how to create useful bug reports.

AUTHORS
MPlayer was initially written by Arpad Gereoffy. See the AUTHORS le for a list of some of the many other contributors. MPlayer is (C) 20002009 The MPlayer Team This man page was written mainly by Gabucino, Jonas Jermann and Diego Biurrun. It is maintained by Diego Biurrun. Please send mails about it to the MPlayer-DOCS mailing list. Translation specic mails belong on the MPlayer-translations mailing list.

The MPlayer Project

2009-03-25

133

You might also like