aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar wm4 <wm4@nowhere>2012-08-02 21:37:33 +0200
committerGravatar wm4 <wm4@nowhere>2012-08-02 22:05:27 +0200
commit504e2336b7631fac55413d660adad5c734dac10a (patch)
treef21fddfbf68577b3586605684a01668eb9a98d3b
parented3f0c3e4b91b672b3a16ef884cd5a4ec3f6a12c (diff)
manpage: merge new manpage
About a year ago, ubitux converted most of the old manpage from the hard to maintain nroff format to reStructuredText. This was not merged back into the master repository immediately. The argument was that the new manpage still required work to be done. However, progress was very slow. Even worse: the old manpage wasn't updated, because it was scheduled for deletion, and updating it would have meant useless work. Now the situation is that the new manpage still isn't finished, and the old manpage is grossly out of sync with the player. This is not helpful for users. Additionally, keeping the new manpage in a separate branch, while the normal development repository for code had the old manpage, was very inconvenient, because you couldn't just update the documentation in the same commit as the code. Even though the new manpage isn't finished yet, merging it now seems to be the best course of action. Squash-merge the manpage development branch [1], revision e89f5dd3f2, which branches from the mplayer2 master branch after revision 159102e0cb. Committers: * Clément Bœsch <ubitux@gmail.com> (Initial conversion to RST.) * Uoti Urpala <uau@mplayer2.org> (Many updates.) * Myself (Minor edits.) Most text of the manpage has been directly taken from the old manpage, because this is a conversion, not a complete rewrite. [1] http://git.mplayer2.org/uau/mplayer2.git/log/?h=man
-rw-r--r--.gitignore2
-rw-r--r--DOCS/man/en/af.rst551
-rw-r--r--DOCS/man/en/ao.rst152
-rw-r--r--DOCS/man/en/mplayer-old.1 (renamed from DOCS/man/en/mplayer.1)0
-rw-r--r--DOCS/man/en/mplayer.rst685
-rw-r--r--DOCS/man/en/options.rst2517
-rw-r--r--DOCS/man/en/vf.rst1452
-rw-r--r--DOCS/man/en/vo.rst731
-rw-r--r--Makefile20
9 files changed, 6107 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore
index c9db19a836..1cb98731e4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,3 +19,5 @@
/libmpdemux/ebml_types.h
/libvo/vdpau_template.c
/sub/osd_font.h
+DOCS/man/*/mplayer.1
+
diff --git a/DOCS/man/en/af.rst b/DOCS/man/en/af.rst
new file mode 100644
index 0000000000..0f1f10d9b8
--- /dev/null
+++ b/DOCS/man/en/af.rst
@@ -0,0 +1,551 @@
+.. _audio_filters:
+
+AUDIO FILTERS
+=============
+
+Audio filters allow you to modify the audio stream and its properties. The
+syntax is:
+
+--af=<filter1[=parameter1:parameter2:...],filter2,...>
+ Setup a chain of audio filters.
+
+*NOTE*: To get a full list of available audio filters, see ``--af=help``.
+
+Audio filters are managed in lists. There are a few commands to manage the
+filter list.
+
+--af-add=<filter1[,filter2,...]>
+ Appends the filters given as arguments to the filter list.
+
+--af-pre=<filter1[,filter2,...]>
+ Prepends the filters given as arguments to the filter list.
+
+--af-del=<index1[,index2,...]>
+ Deletes the filters at the given indexes. Index numbers start at 0,
+ negative numbers address the end of the list (-1 is the last).
+
+--af-clr
+ Completely empties the filter list.
+
+Available filters are:
+
+resample[=srate[:sloppy[:type]]]
+ Changes the sample rate of the audio stream. Can be used if you have a
+ fixed frequency sound card or if you are stuck with an old sound card that
+ is only capable of max 44.1kHz. This filter is automatically enabled if
+ necessary. It only supports 16-bit integer and float in native-endian
+ format as input.
+
+ <srate>
+ output sample frequency in Hz. The valid range for this parameter is
+ 8000 to 192000. If the input and output sample frequency are the same
+ or if this parameter is omitted the filter is automatically unloaded.
+ A high sample frequency normally improves the audio quality,
+ especially when used in combination with other filters.
+ <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>
+ Select which resampling method to use.
+
+ :0: linear interpolation (fast, poor quality especially when
+ upsampling)
+ :1: polyphase filterbank and integer processing
+ :2: polyphase filterbank and floating point processing
+ (slow, best quality)
+
+ *EXAMPLE*:
+
+ ``mplayer --af=resample=44100:0:0``
+ would set the output frequency of the resample filter to 44100Hz using
+ exact output frequency scaling and linear interpolation.
+
+lavcresample[=srate[:length[:linear[:count[:cutoff]]]]]
+ Changes the sample rate of the audio stream to an integer <srate> in Hz.
+ It only supports the 16-bit native-endian format.
+
+ <srate>
+ the output sample rate
+ <length>
+ length of the filter with respect to the lower sampling rate (default:
+ 16)
+ <linear>
+ if 1 then filters 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.0-1.0), default set depending upon filter length
+
+lavcac3enc[=tospdif[:bitrate[:minchn]]]
+ Encode multi-channel audio to AC-3 at runtime using libavcodec. Supports
+ 16-bit native-endian input format, maximum 6 channels. The output is
+ big-endian when outputting a raw AC-3 stream, native-endian when
+ outputting to S/PDIF. The output sample rate of this filter is same with
+ the input sample rate. When input sample rate is 48kHz, 44.1kHz, or 32kHz,
+ this filter directly use it. Otherwise a resampling filter is
+ auto-inserted before this filter to make the input and output sample rate
+ be 48kHz. You need to specify ``--channels=N`` to make the decoder decode
+ audio into N-channel, then the filter can encode the N-channel input to
+ AC-3.
+
+ <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 filter will
+ detach itself (default: 5).
+
+sweep[=speed]
+ Produces a sine sweep.
+
+ <0.0-1.0>
+ Sine function delta, use very low values to hear the sweep.
+
+sinesuppress[=freq:decay]
+ Remove a sine at the specified frequency. Useful to get rid of the 50/60Hz
+ noise on low quality audio equipment. It probably only works on mono input.
+
+ <freq>
+ The frequency of the sine which should be removed (in Hz) (default:
+ 50)
+ <decay>
+ Controls the adaptivity (a larger value will make the filter adapt to
+ amplitude and phase changes quicker, a smaller value will make the
+ adaptation slower) (default: 0.0001). Reasonable values are around
+ 0.001.
+
+bs2b[=option1:option2:...]
+ Bauer stereophonic to binaural transformation using ``libbs2b``. Improves
+ the headphone listening experience by making the sound similar to that
+ from loudspeakers, allowing each ear to hear both channels and taking into
+ account the distance difference and the head shadowing effect. It is
+ applicable only to 2 channel audio.
+
+ fcut=<300-1000>
+ Set cut frequency in Hz.
+ feed=<10-150>
+ Set feed level for low frequencies in 0.1*dB.
+ profile=<value>
+ Several profiles are available for convenience:
+
+ :default: will be used if nothing else was specified (fcut=700,
+ feed=45)
+ :cmoy: Chu Moy circuit implementation (fcut=700, feed=60)
+ :jmeier: Jan Meier circuit implementation (fcut=650, feed=95)
+
+ If fcut or feed options are specified together with a profile, they will
+ be applied on top of the selected profile.
+
+hrtf[=flag]
+ Head-related transfer function: Converts multichannel audio to 2 channel
+ output for headphones, preserving the spatiality of the sound.
+
+ ==== ===================================
+ Flag Meaning
+ ==== ===================================
+ m matrix decoding of the rear channel
+ s 2-channel matrix decoding
+ 0 no matrix decoding (default)
+ ==== ===================================
+
+equalizer=[g1:g2:g3:...:g10]
+ 10 octave band graphic equalizer, implemented using 10 IIR band pass
+ filters. This means that it works regardless of what type of audio is
+ being played back. The center frequencies for the 10 bands are:
+
+ === ==========
+ No. frequency
+ === ==========
+ 0 31.25 Hz
+ 1 62.50 Hz
+ 2 125.00 Hz
+ 3 250.00 Hz
+ 4 500.00 Hz
+ 5 1.00 kHz
+ 6 2.00 kHz
+ 7 4.00 kHz
+ 8 8.00 kHz
+ 9 16.00 kHz
+ === ==========
+
+ If the sample rate of the sound being played is lower than the center
+ frequency for a frequency band, then that band will be disabled. A known
+ bug with this filter is that the 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 filter before it reaches this filter.
+
+ <g1>:<g2>:<g3>:...:<g10>
+ floating point numbers representing the gain in dB for each frequency
+ band (-12-12)
+
+ *EXAMPLE*:
+
+ ``mplayer --af=equalizer=11:11:10:5:0:-12:0:5:12:12 media.avi``
+ Would amplify the sound in the upper and lower frequency region while
+ canceling it almost completely around 1kHz.
+
+channels=nch[:nr:from1:to1:from2:to2:from3:to3:...]
+ Can be used for adding, removing, routing and copying audio channels. If
+ only <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 (1-8)
+ <nr>
+ number of routes (1-8)
+ <from1:to1:from2:to2:from3:to3:...>
+ Pairs of numbers between 0 and 7 that define where to route each
+ channel.
+
+ *EXAMPLE*:
+
+ ``mplayer --af=channels=4:4:0:1:1:0:2:2:3:3 media.avi``
+ Would change the number of channels to 4 and set up 4 routes that swap
+ channel 0 and channel 1 and leave 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]
+ Convert between different sample formats. Automatically enabled when
+ needed by the sound card or another filter. See also ``--format``.
+
+ <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 specifiers: u8, s8, floatle, floatbe,
+ floatne, mulaw, alaw, mpeg2, ac3 and imaadpcm.
+
+volume[=v[:sc]]
+ Implements software volume control. Use this filter 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 filter out and
+ control the output level to your speakers with the master volume control
+ of the mixer. In case your sound card has a digital PCM mixer instead of
+ an analog one, and you hear distortion, use the MASTER mixer instead. If
+ there is an external amplifier connected to the computer (this is almost
+ always the case), the noise level can be minimized by adjusting the master
+ level and the volume knob on the amplifier until the hissing noise in the
+ background is gone.
+
+ This filter has a second feature: It measures the overall maximum sound
+ level and prints out that level when MPlayer exits. This feature currently
+ only works with floating-point data, use e.g. ``--af-adv=force=5``, or use
+ ``--af=stats``.
+
+ *NOTE*: This filter 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 filter that can be used to down-mix many channels to only a few,
+ e.g. stereo to mono or vary the "width" of the center speaker in a
+ surround sound system. This filter is hard to use, and will require some
+ tinkering before the desired result is obtained. The number of options for
+ this filter depends on the number of output channels. An example how to
+ downmix a six-channel file to two channels with this filter can be found
+ in the examples section near the end.
+
+ <n>
+ number of output channels (1-8)
+ <Lij>
+ How much of input channel i is mixed into output channel j (0-1). So
+ in principle you first have n numbers saying what to do with the first
+ 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 low-pass filtered by a 4th order
+ Butterworth filter with a default cutoff frequency of 60Hz and added to a
+ separate channel in the audio stream.
+
+ *Warning*: Disable this filter when you are playing DVDs with Dolby
+ Digital 5.1 sound, otherwise this filter will disrupt the sound to the
+ subwoofer.
+
+ <fc>
+ cutoff frequency in Hz for the low-pass filter (20Hz to 300Hz)
+ (default: 60Hz) For the best result try setting the cutoff frequency
+ as low as possible. This will 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 7 (default: 5). Observe
+ that the number of channels will automatically be increased to <ch> if
+ necessary.
+
+ *EXAMPLE*:
+
+ ``mplayer --af=sub=100:4 --channels=5 media.avi``
+ Would add a sub-woofer channel with a cutoff frequency of 100Hz to
+ output channel 4.
+
+center
+ Creates a center channel from the front channels. May currently be low
+ quality as it does not implement a high-pass filter for proper extraction
+ yet, but averages and halves the channels instead.
+
+ <ch>
+ Determines the channel number in which to insert the center channel.
+ Channel number can be between 0 and 7 (default: 5). Observe that the
+ number of channels will automatically be increased to <ch> if
+ necessary.
+
+surround[=delay]
+ Decoder for matrix encoded surround sound like Dolby Surround. Many files
+ 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 (floating point
+ number between 0 and 1000).
+
+ To calculate the required delay for the different channels do as follows:
+
+ 1. Measure the distance to the loudspeakers in meters in 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_file[: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 time new data is exported. \*/
+
+ The rest is payload (non-interleaved) 16 bit data.
+
+ <mmapped_file>
+ file 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 coefficient (default: 2.5). 0.0 means mono sound
+ (average of both channels), with 1.0 sound will be unchanged, with
+ -1.0 left and right 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=file:label[:controls...]
+ Load a LADSPA (Linux Audio Developer's Simple Plugin API) plugin. This
+ filter is reentrant, so multiple LADSPA plugins can be used at once.
+
+ <file>
+ Specifies the LADSPA plugin library file. If ``LADSPA_PATH`` is set,
+ it searches for the specified file. If it is not set, you must supply
+ a fully specified pathname.
+ <label>
+ Specifies the filter within the library. Some libraries contain only
+ one filter, but others contain many of them. Entering 'help' here,
+ will list all available filters within the specified library, which
+ eliminates the use of 'listplugins' from the LADSPA SDK.
+ <controls>
+ Controls are zero or more floating 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 filter usable for microphone input. Prevents artifacts
+ on very loud sound and raises the volume on very low sound. This filter is
+ untested, maybe even unusable.
+
+gate
+ Noise gate filter similar to the comp audio filter. This filter is
+ untested, maybe even unusable.
+
+karaoke
+ Simple voice removal filter exploiting the fact that voice is usually
+ recorded with mono gear and later 'center' mixed onto the final audio
+ stream. Beware that this filter will turn your signal into mono. Works
+ well for 2 channel tracks; do not 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 filter. Scales pitch without altering tempo.
+ Add ``[ speed_mult 0.9438743126816935`` and ``] speed_mult
+ 1.059463094352953`` to your ``input.conf`` to step by musical
+ semi-tones.
+
+ *WARNING*: Loses sync with video.
+ both
+ Scale both tempo and pitch.
+ none
+ Ignore speed changes.
+
+ *EXAMPLE*:
+
+ ``mplayer --af=scaletempo --speed=1.2 media.ogg``
+ Would playback media at 1.2x normal speed, with audio at normal pitch.
+ Changing playback speed, would change 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=floatne,scaletempo media.ogg``
+ Would make scaletempo use float code. Maybe faster on some platforms.
+
+ ``mplayer --af=scaletempo=scale=1.2:speed=pitch audio.ogg``
+ Would playback audio file at 1.2x normal speed, with 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 filter.
diff --git a/DOCS/man/en/ao.rst b/DOCS/man/en/ao.rst
new file mode 100644
index 0000000000..4f817774ed
--- /dev/null
+++ b/DOCS/man/en/ao.rst
@@ -0,0 +1,152 @@
+.. _audio_outputs:
+
+AUDIO OUTPUT DRIVERS
+====================
+
+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 first 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.
+
+alsa5
+ ALSA 0.5 audio output driver
+
+oss
+ 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).
+
+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).
+
+jack
+ 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 (default: disabled). Note that
+ this seems unreliable and will spam stdout with server messages.
+
+nas
+ audio output through NAS
+
+coreaudio (Mac OS X only)
+ native Mac OS X audio output driver
+
+ device_id=<id>
+ ID of output device to use (0 = default device)
+ help
+ List all available output devices with their IDs.
+
+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).
+
+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
+
+ device=<devicenum>
+ Sets the device number to use. Playing a file with ``-v`` will show a
+ list of available devices.
+
+ivtv (IVTV only)
+ IVTV specific 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
+ file if no DVB card is installed.
+
+ card=<1-4>
+ DVB card to use if more than one card is present. If not specified
+ MPlayer will search the first usable card.
+ file=<filename>
+ output filename
+
+null
+ Produces no audio output but maintains video playback speed. Use
+ ``--nosound`` for benchmarking.
+
+pcm
+ raw PCM/wave file writer audio output
+
+ (no-)waveheader
+ Include or do not include the wave header (default: included). When
+ not included, raw PCM will be generated.
+ file=<filename>
+ Write the sound to <filename> instead of the default
+ ``audiodump.wav``. If nowaveheader is specified, the default is
+ ``audiodump.pcm``.
+
+rsound
+ audio output to an RSound daemon
+
+ host=<name/path>
+ Set the address of the server (default: localhost). Can be either a
+ network hostname for TCP connections or a Unix domain socket path
+ starting with '/'.
+ port=<number>
+ Set the TCP port used for connecting to the server (default: 12345).
+ Not used if connecting to a Unix domain socket.
+
+plugin
+ plugin audio output driver
diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer-old.1
index 0e1ff45516..0e1ff45516 100644
--- a/DOCS/man/en/mplayer.1
+++ b/DOCS/man/en/mplayer-old.1
diff --git a/DOCS/man/en/mplayer.rst b/DOCS/man/en/mplayer.rst
new file mode 100644
index 0000000000..621df0431c
--- /dev/null
+++ b/DOCS/man/en/mplayer.rst
@@ -0,0 +1,685 @@
+mplayer2 manual page
+####################
+
+Synopsis
+========
+
+| **mplayer** [options] [file|URL|playlist|-]
+| **mplayer** [options] file1 [specific options] [file2] [specific options]
+| **mplayer** [options] {group of files and options} [group-specific options]
+| **mplayer** [br]://[title][/device] [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://[filemask|\@listfile] [-mf options] [options]
+| **mplayer** [cdda|cddb]://track[-endtrack][:speed][/device] [options]
+| **mplayer** \cue://file[:track] [options]
+| **mplayer** [file|mms[t]|http|http\_proxy|rt[s]p|ftp|udp|unsv|icyx|noicyx|smb]:// [user:pass\@]URL[:port] [options]
+| **mplayer** \sdp://file [options]
+| **mplayer** \mpst://host[:port]/URL [options]
+| **mplayer** \tivo://host/[list|llist|fsid] [options]
+
+
+DESCRIPTION
+===========
+
+**mplayer** is a movie player for Linux (runs on many other platforms and CPU
+architectures, see the documentation). It supports a wide variety of video
+file formats, audio and video codecs, and subtitle types. Special input URL
+types are available to read input from a variety of sources other than disk
+files. Depending on platform, a variety of different video and audio output
+methods are supported.
+
+Usage examples to get you started quickly can be found at the end of this man
+page.
+
+
+INTERACTIVE CONTROL
+===================
+
+MPlayer has a fully configurable, 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 it.
+
+keyboard control
+----------------
+
+LEFT and RIGHT
+ Seek backward/forward 10 seconds. Shift+arrow does a 1 second exact seek
+ (see ``--hr-seek``; currently modifier keys like shift only work if used in
+ an X output window).
+
+UP and DOWN
+ Seek forward/backward 1 minute. Shift+arrow does a 5 second exact seek (see
+ ``--hr-seek``; currently modifier keys like shift only work if used in an X
+ output window).
+
+PGUP and PGDWN
+ 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.
+
+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, Blu-ray, 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 (see also ``--fs``).
+
+T
+ Toggle stay-on-top (see also ``--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 and J
+ Cycle through the available subtitles.
+
+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.
+
+V
+ Toggle subtitle VSFilter aspect compatibility mode. See
+ ``--ass-vsfilter-aspect-compat`` for more info.
+
+C (``--capture`` only)
+ Start/stop capturing the primary stream.
+
+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 file.
+
+s (``--vf`` screenshot only)
+ Take a screenshot.
+
+S (``--vf`` screenshot only)
+ Start/stop taking screenshots.
+
+I
+ Show filename on the OSD.
+
+P
+ Show progression bar, elapsed time and total duration on the OSD.
+
+! and @
+ Seek to the beginning of the previous/next chapter.
+
+D (``--vo=vdpau``, ``--vf=yadif``, ``--vf=kerndeint`` only)
+ Activate/deactivate deinterlacer.
+
+A
+ Cycle through the available DVD angles.
+
+c (currently ``--vo=vdpau`` and ``--vo=xv`` only)
+ Change YUV colorspace.
+
+(The following keys are valid only when using a video output that supports the
+corresponding adjustment, the software equalizer (``--vf=eq`` or ``--vf=eq2``)
+or hue filter (``--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 corevideo 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 (see also ``--fs``).
+
+command + [ and command + ]
+ Set movie window alpha.
+
+(The following keys are valid only when using the sdl video output driver.)
+
+c
+ Cycle through available fullscreen modes.
+
+n
+ Restore original mode.
+
+(The following keys are valid if you have a keyboard with multimedia keys.)
+
+PAUSE
+ Pause.
+
+STOP
+ Stop playing and quit.
+
+PREVIOUS and NEXT
+ Seek backward/forward 1 minute.
+
+(The following keys are only valid if you compiled with TV or DVB input
+support and will take precedence over the keys defined 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
+ Confirm choice.
+
+(The following keys are used for controlling TV teletext. The data may come
+from either an analog TV source or an MPEG transport stream.)
+
+X
+ Switch teletext on/off.
+
+Q and W
+ Go to next/prev teletext page.
+
+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 *flag* option has a *no-flag* counterpart, e.g. the opposite of the
+``--fs`` option is ``--no-fs``. ``--fs=yes`` is same as ``--fs``, ``--fs=no``
+is the same as ``--no-fs``.
+
+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 string-escaping intended for use with external
+ GUIs.
+| It has the following format:
+| %n%string\_of\_length\_n
+| *EXAMPLES*:
+| `mplayer --ao pcm:file=%10%C:test.wav test.avi`
+| Or in a script:
+| `mplayer --ao pcm:file=%\`expr length "$NAME"\`%"$NAME" test.avi`
+
+
+CONFIGURATION FILES
+===================
+
+You can put all of the options in configuration files which will be read every
+time MPlayer is run. The system-wide configuration file 'mplayer.conf' is in
+your configuration directory (e.g. ``/etc/mplayer`` or
+``/usr/local/etc/mplayer``), the user specific one is ``~/.mplayer/config``.
+User specific options override system-wide options and options given on the
+command line override either. The syntax of the configuration files 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 specified in this way.
+
+You can also write file-specific configuration files. If you wish to have a
+configuration file for a file called 'movie.avi', create a file named
+'movie.avi.conf' with the file-specific options in it and put it in
+``~/.mplayer/``. You can also put the configuration file in the same directory
+as the file to be played, as long as you give the ``--use-filedir-conf``
+option (either on the command line or in your global config file). If a
+file-specific configuration file is found in the same directory, no
+file-specific configuration is loaded from ``~/.mplayer``. In addition, the
+``--use-filedir-conf`` option enables directory-specific configuration files.
+For this, MPlayer first tries to load a mplayer.conf from the same directory
+as the file played and then tries to load any file-specific configuration.
+
+*EXAMPLE MPLAYER CONFIGURATION FILE:*
+
+| # Use Matrox driver by default.
+| vo=xmga
+| # I love practicing handstands while watching videos.
+| flip=yes
+| # Decode multiple files from PNG,
+| # start with mf://filemask
+| mf=type=png:fps=25
+| # Eerie negative images are cool.
+| vf=eq2=1.0:-0.8
+
+
+PROFILES
+========
+
+To ease working with different configurations profiles can be defined in the
+configuration files. A profile starts with its name between square brackets,
+e.g. *[my-profile]*. All following options will be part of the profile. A
+description (shown by ``--profile=help``) can be defined with the profile-desc
+option. To end the profile, start another one or use the profile name
+*default* to continue with normal options.
+
+*EXAMPLE MPLAYER PROFILE:*
+
+| [protocol.dvd]
+| profile-desc="profile for dvd:// streams"
+| vf=pp=hb/vb/dr/al/fd
+| alang=en
+|
+| [protocol.dvdnav]
+| profile-desc="profile for dvdnav:// streams"
+| profile=protocol.dvd
+| mouse-movements=yes
+| nocache=yes
+|
+| [extension.flv]
+| profile-desc="profile for .flv files"
+| flip=yes
+|
+| [vo.pnm]
+| outdir=/tmp
+|
+| [ao.alsa]
+| device=spdif
+
+
+OPTIONS
+=======
+
+.. include:: options.rst
+
+.. include:: ao.rst
+
+.. include:: vo.rst
+
+.. include:: af.rst
+
+.. include:: vf.rst
+
+
+ENVIRONMENT VARIABLES
+=====================
+
+There are a number of environment variables that can be used to control the
+behavior of MPlayer.
+
+``MPLAYER_CHARSET`` (see also ``--msgcharset``)
+ Convert console messages to the specified charset (default: autodetect). A
+ value of "noconv" means no conversion.
+
+``MPLAYER_HOME``
+ Directory where MPlayer looks for user settings.
+
+``MPLAYER_LOCALEDIR``
+ Directory where MPlayer looks for gettext translation files (if enabled).
+
+``MPLAYER_VERBOSE`` (see also ``-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 specified file. If it
+ is not set, you must supply a fully specified pathname.
+
+ FIXME: This is also mentioned in the ladspa section.
+
+libdvdcss:
+ ``DVDCSS_CACHE``
+ Specify a directory in which to store title key values. This will
+ speed up descrambling of DVDs which are in the cache. The
+ ``DVDCSS_CACHE`` directory is created if it does not exist, and a
+ subdirectory is created named after the DVD's title or 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.
+
+ ``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``
+ Specifies the Network Audio System server to which the nas audio
+ output driver should connect and the transport that should be used. If
+ unset DISPLAY is used instead. The transport can be one of tcp and
+ unix. Syntax is ``tcp/<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.
+
+osdep:
+ ``TERM``
+ FIXME: Document this.
+
+libvo:
+ ``DISPLAY``
+ FIXME: Document this.
+
+ ``FRAMEBUFFER``
+ FIXME: Document this.
+
+ ``HOME``
+ FIXME: Document this.
+
+libmpdemux:
+
+ ``HOME``
+ FIXME: Document this.
+
+ ``HOMEPATH``
+ FIXME: Document this.
+
+ ``http_proxy``
+ FIXME: Document this.
+
+ ``LOGNAME``
+ FIXME: Document this.
+
+ ``USERPROFILE``
+ FIXME: Document this.
+
+libavformat:
+
+ ``AUDIO_FLIP_LEFT``
+ FIXME: Document this.
+
+ ``BKTR_DEV``
+ FIXME: Document this.
+
+ ``BKTR_FORMAT``
+ FIXME: Document this.
+
+ ``BKTR_FREQUENCY``
+ FIXME: Document this.
+
+ ``http_proxy``
+ FIXME: Document this.
+
+ ``no_proxy``
+ FIXME: Document this.
+
+
+FILES
+=====
+
+``/usr/local/etc/mplayer/mplayer.conf``
+ MPlayer system-wide settings
+
+``~/.mplayer/config``
+ MPlayer user settings
+
+``~/.mplayer/input.conf``
+ input bindings (see ``--input=keylist`` for the full list)
+
+``~/.mplayer/font/``
+ font directory (There must be a ``font.desc`` file and files with ``.RAW``
+ extension.)
+
+``~/.mplayer/DVDkeys/``
+ cached CSS keys
+
+
+EXAMPLES OF MPLAYER USAGE
+=========================
+
+Quickstart Blu-ray playing:
+ - ``mplayer br:////path/to/disc``
+ - ``mplayer br:// --bluray-device=/path/to/disc``
+
+Quickstart DVD playing:
+ ``mplayer dvd://1``
+
+Play in Japanese with English subtitles:
+ ``mplayer dvd://1 --alang=ja --slang=en``
+
+Play only chapters 5, 6, 7:
+ ``mplayer dvd://1 --chapter=5-7``
+
+Play only titles 5, 6, 7:
+ ``mplayer dvd://5-7``
+
+Play a multiangle DVD:
+ ``mplayer dvd://1 --dvdangle=2``
+
+Play from a different DVD device:
+ ``mplayer dvd://1 --dvd-device=/dev/dvd2``
+
+Play DVD video from a directory with VOB files:
+ ``mplayer dvd://1 --dvd-device=/path/to/directory/``
+
+Copy a DVD title to hard disk, saving to file title1.vob :
+ ``mplayer dvd://1 --dumpstream --dumpfile=title1.vob``
+
+Play a DVD with dvdnav from path /dev/sr1:
+ ``mplayer dvdnav:////dev/sr1``
+
+Stream from HTTP:
+ ``mplayer http://mplayer.hq/example.avi``
+
+Stream using RTSP:
+ ``mplayer rtsp://server.example.com/streamName``
+
+Convert subtitles to MPsub format:
+ ``mplayer dummy.avi --sub=source.sub --dumpmpsub``
+
+Convert subtitles to MPsub format without watching the movie:
+ ``mplayer /dev/zero --rawvideo=pal:fps=xx --demuxer=rawvideo --vc=null --vo=null --noframedrop --benchmark --sub=source.sub --dumpmpsub``
+
+input from standard V4L:
+ ``mplayer tv:// --tv=driver=v4l:width=640:height=480:outfmt=i420 --vc=rawi420 --vo=xv``
+
+Play DTS-CD with passthrough:
+ ``mplayer --ac=hwdts --rawaudio=format=0x2001 --cdrom-device=/dev/cdrom cdda://``
+
+ You can also use ``--afm=hwac3`` instead of ``--ac=hwdts``. Adjust
+ ``/dev/cdrom`` to match the CD-ROM device on your system. If your external
+ receiver supports decoding raw DTS streams, you can directly play it via
+ ``cdda://`` without setting format, hwac3 or hwdts.
+
+Play a 6-channel AAC file with only two speakers:
+ ``mplayer --rawaudio=format=0xff --demuxer=rawaudio --af=pan=2:.32:.32:.39:.06:.06:.39:.17:-.17:-.17:.17:.33:.33 adts_he-aac160_51.aac``
+
+ You might want to play a bit with the pan values (e.g multiply with a
+ value) to increase volume or avoid clipping.
+
+checkerboard invert with geq filter:
+ ``mplayer --vf=geq='128+(p(X\,Y)-128)*(0.5-gt(mod(X/SW\,128)\,64))*(0.5-gt(mod(Y/SH\,128)\,64))*4'``
+
+
+AUTHORS
+=======
+
+MPlayer was initially written by Arpad Gereoffy. See the ``AUTHORS`` file for
+a list of some of the many other contributors.
+
+MPlayer is (C) 2000-2011 The MPlayer Team
+
+This man page was written mainly by Gabucino, Jonas Jermann and Diego Biurrun.
diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst
new file mode 100644
index 0000000000..0fea91078c
--- /dev/null
+++ b/DOCS/man/en/options.rst
@@ -0,0 +1,2517 @@
+--a52drc=<level>
+ Select the Dynamic Range Compression level for AC-3 audio streams. <level>
+ is a float 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). Values up to 2 are also accepted, but are purely
+ experimental. This option only shows an effect if the AC-3 stream contains
+ the required range compression information.
+
+--abs=<value>
+ (``--ao=oss`` only) (OBSOLETE)
+ Override audio driver/card buffer size detection.
+
+--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 first, 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 FFmpeg's MP3 decoder.
+
+--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.
+
+--af=<filter1[=parameter1:parameter2:...],filter2,...>
+ Specify a list of audio filters to apply to the audio stream. See
+ :ref:`audio_filters` for details and descriptions of the available filters.
+ The option variants ``--af-add``, ``--af-pre``, ``--af-del`` and
+ ``--af-clr`` exist to modify a previously specified list, but you
+ shouldn't need these for typical use.
+
+--af-adv=<force=(0-7):list=(filters)>
+ See also ``--af``.
+ Specify advanced audio filter options:
+
+ force=<0-7>
+ Forces the insertion of audio filters to one of the following:
+
+ 0
+ Use completely automatic filter insertion (currently identical to
+ 1).
+ 1
+ Optimize for accuracy (default).
+ 2
+ Optimize for speed. *Warning*: Some features in the audio filters
+ may silently fail, and the sound quality may drop.
+ 3
+ Use no automatic insertion of filters and no optimization.
+ *Warning*: It may be possible to crash MPlayer using this setting.
+ 4
+ Use automatic insertion of filters according to 0 above, but use
+ floating point processing when possible.
+ 5
+ Use automatic insertion of filters according to 1 above, but use
+ floating point processing when possible.
+ 6
+ Use automatic insertion of filters according to 2 above, but use
+ floating point processing when possible.
+ 7
+ Use no automatic insertion of filters according to 3 above, and
+ use floating point processing when possible.
+
+ list=<filters>
+ 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 FFmpeg's libavcodec codecs first.
+ :``--afm=acm,dshow``: Try Win32 codecs first.
+
+--aid=<ID>
+ Select audio channel (MPEG: 0-31, AVI/OGM: 1-99, ASF/RM: 0-127, VOB(AC-3):
+ 128-159, VOB(LPCM): 160-191, MPEG-TS 17-8190). MPlayer prints the
+ available audio IDs when run in verbose (-v) mode. When playing an MPEG-TS
+ stream, MPlayer will use the first program (if present) with the chosen
+ audio stream. See also ``--alang``.
+
+--alang=<languagecode[,languagecode,...]>
+ 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 identifier. MPlayer prints the
+ available languages when run in verbose (``-v``) mode. See also ``--aid``.
+
+ *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 file in Japanese.
+
+--ao=<driver1[:suboption1[=value]:...],driver2,...[,]>
+ Specify a priority list of audio output drivers to be used. For
+ interactive use you'd normally specify a single one to use, but in
+ configuration files specifying a list of fallbacks may make sense. See
+ :ref:`audio_outputs` for details and descriptions of available drivers.
+
+--ar, --no-ar
+ Enable/disable AppleIR remote support. Enabled by default.
+
+--aspect=<ratio>
+ Override movie aspect ratio, in case aspect information is incorrect or
+ missing in the file being played. See also ``--noaspect``.
+
+ *EXAMPLE*:
+
+ - ``--aspect=4:3`` or ``--aspect=1.3333``
+ - ``--aspect=16:9`` or ``--aspect=1.7777``
+
+--ass, --no-ass
+ Use libass to render all text subtitles. This enables support for the
+ native styling of SSA/ASS subtitles, and also support for some styling
+ features in other subtitle formats by conversion to ASS markup. Enabled by
+ default if the player was compiled with libass support.
+
+ *NOTE*: Some of the other subtitle options were written for the old
+ non-libass subtitle rendering system and may not work the same way or at
+ all with libass rendering enabled.
+
+--ass-border-color=<value>
+ Sets the border (outline) color for text subtitles. The color format is
+ RRGGBBAA.
+
+--ass-bottom-margin=<value>
+ Adds a black band at the bottom of the frame. The SSA/ASS renderer can
+ place subtitles there (with ``--ass-use-margins``).
+
+--ass-color=<value>
+ Sets the color for text subtitles. The color format is RRGGBBAA.
+
+--ass-font-scale=<value>
+ Set the scale coefficient to be used for fonts in the SSA/ASS renderer.
+
+--ass-force-style=<[Style.]Param=Value[,...]>
+ Override some style or script info parameters.
+
+ *EXAMPLE*:
+
+ - ``--ass-force-style=FontName=Arial,Default.Bold=1``
+ - ``--ass-force-style=PlayResY=768``
+
+--ass-hinting=<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 0 (no hinting).
+
+--ass-line-spacing=<value>
+ Set line spacing value for SSA/ASS renderer.
+
+--ass-styles=<filename>
+ Load all SSA/ASS styles found in the specified file and use them for
+ rendering text subtitles. The syntax of the file is exactly like the ``[V4
+ Styles]`` / ``[V4+ Styles]`` section of SSA/ASS.
+
+--ass-top-margin=<value>
+ Adds a black band at the top of the frame. The SSA/ASS renderer can place
+ toptitles there (with ``--ass-use-margins``).
+
+--ass-use-margins
+ Enables placing toptitles and subtitles in black borders when they are
+ available.
+
+--ass-vsfilter-aspect-compat
+ Stretch SSA/ASS subtitles when playing anamorphic videos for compatibility
+ with traditional VSFilter behavior. This switch has no effect when the
+ video is stored with square pixels.
+
+ The renderer historically most commonly used for the SSA/ASS subtitle
+ formats, VSFilter, had questionable behavior that resulted in subtitles
+ being stretched too if the video was stored in anamorphic format that
+ required scaling for display. This behavior is usually undesirable and
+ newer VSFilter versions may behave differently. However, many existing
+ scripts compensate for the stretching by modifying things in the opposite
+ direction. Thus if such scripts are displayed "correctly" they will not
+ appear as intended. This switch enables emulation of the old VSFilter
+ behavior (undesirable but expected by many existing scripts).
+
+ Enabled by default.
+
+--audio-demuxer=<[+]name>
+ Force audio demuxer type when using ``--audiofile``. Use a '+' before the
+ name to force it, this will skip some checks! Give the demuxer name as
+ printed by ``--audio-demuxer=help``. ``--audio-demuxer=audio`` forces MP3.
+
+--audiofile=<filename>
+ Play audio from an external file (WAV, MP3 or Ogg Vorbis) while viewing a
+ movie.
+
+--audiofile-cache=<kBytes>
+ Enables caching for the stream used by ``--audiofile``, using the
+ specified amount of memory.
+
+--ausid=<ID>
+ 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 identified 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``. See also ``--alang``.
+
+--autoq=<quality>
+ Used 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.
+
+--autosub, --no-autosub
+ Load additional subtitle files matching the video filename. Enabled by
+ default. See also ``--sub-fuzziness``.
+
+--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 fine with ``--nosound`` can
+ often be helped by setting this to an integer value greater than 1. The
+ higher the value, the closer the timing will be to ``--nosound``. Try
+ ``--autosync=30`` to smooth out problems with sound drivers which do not
+ implement a perfect audio delay measurement. With this value, if large A/V
+ sync offsets occur, they will only take about 1 or 2 seconds to settle
+ out. This delay in reaction time to sudden A/V offsets should be the only
+ side-effect of turning this option on, for all sound drivers.
+
+--bandwidth=<Bytes>
+ 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
+ filling and stream dumping.
+
+--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 infinite fps).
+
+--bluray-angle=<ID>
+ Some Blu-ray discs contain scenes that can be viewed from multiple angles.
+ Here you can tell MPlayer which angles to use (default: 1).
+
+--bluray-chapter=<ID>
+ (Blu-ray only)
+ Tells MPlayer which Blu-ray chapter to start the current title from
+ (default: 1).
+
+--bluray-device=<path>
+ (Blu-ray only)
+ Specify the Blu-ray disc location. Must be a directory with Blu-ray
+ structure.
+
+--border, --no-border
+ Play movie with window border and decorations. Since this is on by
+ default, use ``--no-border`` to disable the standard window decorations.
+
+--bpp=<depth>
+ Override the autodetected color depth. Only supported by the fbdev, dga,
+ svga, vesa video output drivers.
+
+--brightness=<-100-100>
+ Adjust the brightness of the video signal (default: 0). Not supported by
+ all video output drivers.
+
+--cache=<kBytes>
+ Enable caching of the input stream (if not already enabled) and set the
+ size of the cache in kilobytes. Caching is enabled by default (with a
+ default cache size) for network streams. May be useful when playing files
+ from slow media, but can also have negative effects, especially with file
+ formats that require a lot of seeking, such as mp4. See also ``--nocache``.
+
+--cache-min=<percentage>
+ Playback will start when the cache has been filled up to <percentage> of
+ the total.
+
+--cache-seek-min=<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
+ filled to this position rather than performing a stream seek (default:
+ 50).
+
+--capture
+ Allows capturing the primary stream (not additional audio tracks or other
+ kind of streams) into the file specified by ``--dumpfile`` or by default.
+ If this option is given, capturing can be started and stopped by pressing
+ the key bound to this function (see section `INTERACTIVE CONTROL`_). Same
+ as for ``--dumpstream``, this will likely not produce usable results for
+ anything else than MPEG streams. Note that, due to cache latencies,
+ captured data may begin and end somewhat delayed compared to what you see
+ displayed.
+
+--cdda=<option1:option2>
+ This option can be used to tune the CD Audio reading feature of MPlayer.
+
+ Available options are:
+
+ speed=<value>
+ Set CD spin speed.
+
+ paranoia=<0-2>
+ Set paranoia level. Values other than 0 seem to break playback of
+ anything but the first track.
+
+ :0: disable checking (default)
+ :1: overlap checking only
+ :2: full data correction and verification
+
+ generic-dev=<value>
+ Use specified generic SCSI device.
+
+ sector-size=<value>
+ Set atomic read size.
+
+ overlap=<value>
+ Force minimum overlap search during verification 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.
+
+--cdrom-device=<path>
+ Specify the CD-ROM device (default: ``/dev/cdrom``).
+
+--channels=<number>
+ Request the number of playback channels (default: 2). MPlayer asks the
+ decoder to decode the audio into as many channels as specified. Then it is
+ up to the decoder to fulfill 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
+ filter (``--af=channels``).
+
+ *NOTE*: This option is honored by codecs (AC-3 only), filters (surround)
+ and audio output drivers (OSS at least).
+
+ Available options are:
+
+ :2: stereo
+ :4: surround
+ :6: full 5.1
+ :8: full 7.1
+
+--chapter=<start[-end]>
+ Specify which chapter to start playing at. Optionally specify which
+ chapter to end playing at (default: 1).
+
+--chapter-merge-threshold=<number>
+ Threshold for merging almost consecutive ordered chapter parts in
+ milliseconds (default: 100). Some Matroska files with ordered chapters
+ have inaccurate chapter end timestamps, causing a small gap between the
+ end of one chapter and the start of the next one when they should match.
+ If the end of one playback part is less than the given threshold away from
+ the start of the next one then keep playing video normally over the
+ chapter change instead of doing a seek.
+
+--codecpath=<dir>
+ Specify a directory for binary codecs.
+
+--codecs-file=<filename>
+ Override the standard search path and use the specified file instead of
+ the builtin codecs.conf.
+
+--colormatrix=<colorspace>
+ Controls the YUV to RGB color space conversion when playing video. There
+ are various standards. Normally, BT.601 should be used for SD video, and
+ BT.709 for HD video. (This is done by default.) Using incorrect color space
+ results in slightly under or over saturated and shifted colors.
+
+ The color space conversion is additionally influenced by the related
+ options --colormatrix-input-range and --colormatrix-output-range.
+
+ These options are not always supported. Different video outputs provide
+ varying degrees of support. The gl and vdpau video output drivers usually
+ offer full support. The xv output can set the color space if the system
+ video driver supports it, but not input and output levels. The scale video
+ filter can configure color space and input levels, but only if the output
+ format is RGB (if the video output driver supports RGB output, you can
+ force this with ``-vf scale,format=rgba``).
+
+ If this option is set to ``auto`` (which is the default), the color space
+ will be selected automatically. This is done using a simple heuristic that
+ attempts to distinguish SD and HD video. If the video is larger than
+ 1279x576 pixels, BT.709 (HD) will be used; otherwise BT.601 (SD) is
+ selected.
+
+ Available color spaces are:
+
+ :auto: automatic selection (default)
+ :BT.601: ITU-R BT.601 (SD)
+ :BT.709: ITU-R BT.709 (HD)
+ :SMPTE-240M: SMPTE-240M
+ :sd: alias for BT.601
+ :hd: alias for BT.709
+ :0: compatibility alias for auto (do not use)
+ :1: compatibility alias for BT.601 (do not use)
+ :2: compatibility alias for BT.709 (do not use)
+ :3: compatibility alias for SMPTE-240M (do not use)
+
+--colormatrix-input-range=<color-range>
+ YUV color levels used with YUV to RGB conversion. This option is only
+ necessary when playing broken files, which don't follow standard color
+ levels.
+
+ The same limitations as with --colormatrix apply.
+
+ Available color ranges are:
+
+ :auto: automatic selection (normally limited range) (default)
+ :limited: limited range (16-235 for luma, 16-240 for chroma)
+ :full: full range (16-235 for luma, 0-255 for chroma)
+
+--colormatrix-output-range=<color-range>
+ RGB color levels used with YUV to RGB conversion. Normally, output devices
+ such as PC monitors use full range color levels. However, some TVs and
+ video monitors expect studio level RGB. Providing full range output to a
+ device expecting studio level input results in crushed blacks and whites,
+ the reverse in dim grey blacks and dim whites.
+
+ The same limitations as with --colormatrix apply.
+
+ Available color ranges are:
+
+ :auto: automatic selection (equals to full range) (default)
+ :limited: limited range (16-235 per component), studio levels
+ :full: full range (0-255 per component), PC levels
+
+--colorkey=<number>
+ Changes the colorkey to an RGB value of your choice. 0x000000 is black and
+ 0xffffff is white. Only supported by the fbdev, svga, vesa, xmga, xover,
+ xv (see ``--vo=xv:ck``) and directx video output drivers. See also
+ ``--nocolorkey``.
+
+--consolecontrols, --no-consolecontrols
+ ``--no-consolecontrols`` prevents the player 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 loadfile or loadlist slave
+ commands.
+
+--contrast=<-100-100>
+ Adjust the contrast of the video signal (default: 0). Not supported by all
+ video output drivers.
+
+--cookies, --no-cookies
+ (network only)
+ Support cookies when making HTTP requests. Disabled by default.
+
+--cookies-file=<filename>
+ (network only)
+ Read HTTP cookies from <filename> (default: ``~/.mozilla/`` and
+ ``~/.netscape/``) and skip reading from default locations. The file is
+ assumed to be in Netscape format.
+
+--correct-pts, --no-correct-pts
+ Switches MPlayer to a mode where timestamps for video frames are
+ calculated differently and video filters which add new frames or modify
+ timestamps of existing ones are supported. Now enabled automatically for
+ most common file formats. The more accurate timestamps can be visible for
+ example when playing subtitles timed to scene changes with the ``--ass``
+ option. Without ``--correct-pts`` the subtitle timing will typically be
+ off by some frames. This option does not work correctly with some demuxers
+ and codecs.
+
+--crash-debug
+ DEBUG CODE.
+ Automatically attaches gdb upon crash or **SIGTRAP**. Support must be
+ compiled in by configuring with ``--enable-crash-debug``.
+
+--cursor-autohide-delay=<number>
+ Make mouse cursor automatically hide after given number of milliseconds.
+ A value of -1 will disable cursor autohide. A value of -2 means the cursor
+ will stay hidden. Supported by video output drivers which use X11 or
+ OS X Cocoa.
+
+--delay=<sec>
+ audio delay in seconds (positive or negative float value) Negative values
+ delay the audio, and positive values delay the video.
+
+--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``.
+
+--display=<name>
+ (X11 only)
+ Specify the hostname and display number of the X server you want to
+ display on.
+
+ *EXAMPLE*:
+
+ ``--display=xtest.localdomain:0``
+
+--double, --no-double
+ Double buffering. The option to disable this exists mostly for debugging
+ purposes and should not normally be used.
+
+--doubleclick-time
+ 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).
+
+--dr
+ Turns on direct rendering (not supported by all codecs and video outputs)
+
+ *WARNING*: May cause OSD/SUB corruption!
+
+--dumpaudio
+ Dumps raw compressed audio stream to ``./stream.dump`` (useful with
+ MPEG/AC-3, in most other cases the resulting file will not be playable).
+ If you give more than one of ``--dumpaudio``, ``--dumpvideo``,
+ ``--dumpstream`` on the command line only the last one will work.
+
+--dumpfile=<filename>
+ Specify which file MPlayer should dump to. Should be used together with
+ ``--dumpaudio`` / ``--dumpvideo`` / ``--dumpstream`` / ``--capture``.
+
+--dumpjacosub
+ Convert the given subtitle (specified with the ``--sub`` option) to the
+ time-based JACOsub subtitle format. Creates a ``dumpsub.js`` file in the
+ current directory.
+
+--dumpmicrodvdsub
+ Convert the given subtitle (specified with the ``--sub`` option) to the
+ MicroDVD subtitle format. Creates a dumpsub.sub file in the current
+ directory.
+
+--dumpmpsub
+ Convert the given subtitle (specified with the ``--sub`` option) to
+ MPlayer's subtitle format, MPsub. Creates a dump.mpsub file in the current
+ directory.
+
+--dumpsami
+ Convert the given subtitle (specified with the ``--sub`` option) to the
+ time-based SAMI subtitle format. Creates a ``dumpsub.smi`` file in the
+ current directory.
+
+--dumpsrtsub
+ Convert the given subtitle (specified with the ``--sub`` option) to the
+ time-based SubViewer (SRT) subtitle format. Creates a ``dumpsub.srt`` file
+ in the current directory.
+
+ *NOTE*: Some broken hardware players choke on SRT subtitle files with Unix
+ line endings. If you are unlucky enough to have such a box, pass your
+ subtitle files through ``unix2dos`` or a similar program to replace Unix
+ line endings with DOS/Windows line endings.
+
+--dumpstream
+ 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.
+
+--dumpsub
+ BETA CODE.
+ Dumps the subtitle substream from VOB streams. Also see the **--dump*sub**
+ options.
+
+--dumpvideo
+ 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>
+ Pass the following parameters to the DVB input module, in order to
+ override the default ones:
+
+ :card=<1-4>: Specifies using card number 1-4 (default: 1).
+ :file=<filename>: Instructs MPlayer to read the channels list from
+ <filename>. Default is
+ ``~/.mplayer/channels.conf.{sat,ter,cbl,atsc}`` (based
+ on your card type) or ``~/.mplayer/channels.conf`` as a
+ last resort.
+ :timeout=<1-30>: Maximum number of seconds to wait when trying to tune a
+ frequency before giving up (default: 30).
+
+--dvd-device=<path>
+ Specify the DVD device or .iso filename (default: ``/dev/dvd``). You can
+ also specify a directory that contains files previously copied directly
+ from a DVD (with e.g. vobcopy).
+
+--dvd-speed=<speed>
+ Try to limit DVD speed (default: 0, no change). DVD base speed is 1385
+ kB/s, so a 8x drive can read at speeds up to 11080 kB/s. Slower speeds
+ make the drive more quiet. For watching DVDs 2700 kB/s should be quiet and
+ fast enough. MPlayer resets the speed to the drive default value on close.
+ Values of at least 100 mean speed in kB/s. Values less than 100 mean
+ multiples of 1385 kB/s, i.e. ``--dvd-speed=8`` selects 11080 kB/s.
+
+ *NOTE*: You need write access to the DVD device to change the speed.
+
+--dvdangle=<ID>
+ Some DVD discs contain scenes that can be viewed from multiple angles.
+ Here you can tell MPlayer which angles to use (default: 1).
+
+--edition=<ID>
+ (Matroska files only)
+ Specify the edition (set of chapters) to use, where 0 is the first. If set
+ to -1 (the default), MPlayer will choose the first edition declared as a
+ default, or if there is no default, the first edition defined.
+
+--edlout=<filename>
+ Creates a new file 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 fine-tune
+ EDL entries later. See http://www.mplayerhq.hu/DOCS/HTML/en/edl.html for
+ details.
+
+--embeddedfonts, --no-embeddedfonts
+ Use fonts embedded in Matroska container files and ASS scripts (default:
+ enabled). These fonts can be used for SSA/ASS subtitle rendering
+ (``--ass`` option).
+
+--endpos=<[[hh:]mm:]ss[.ms]>
+ Stop at given time.
+
+ *NOTE*: When used in conjunction with ``--ss`` option, ``--endpos`` time
+ will shift forward by seconds specified 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.
+
+--extbased, --no-extbased
+ Enabled by default.
+ Disables extension-based demuxer selection. By default, when the file type
+ (demuxer) cannot be detected reliably (the file has no header or it is not
+ reliable enough), the filename extension is used to select the demuxer.
+ Always falls back on content-based demuxer selection.
+
+--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.
+
+--fbmodeconfig=<filename>
+ (``--vo=fbdev`` only)
+ Override framebuffer mode configuration file (default: ``/etc/fb.modes``).
+
+--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
+
+--field-dominance=<-1-1>
+ Set first field for interlaced content. Useful for deinterlacers that
+ double the framerate: ``--vf=tfields=1``, ``--vf=yadif=1`` and
+ ``--vo=vdpau:deint``.
+
+ :-1: auto (default): If the decoder does not export the appropriate
+ information, it falls back to 0 (top field first).
+ :0: top field first
+ :1: bottom field first
+
+--fixed-vo, --no-fixed-vo
+ ``--fixed-vo`` enforces a fixed video system for multiple files (one
+ (un)initialization for all files). Therefore only one window will be
+ opened for all files. Now enabled by default, use ``--no-fixed-vo`` to
+ disable and create a new window whenever the video stream changes. Some of
+ the older drivers may not be *fixed-vo* compliant.
+
+--flip
+ Flip image upside-down.
+
+--flip-hebrew
+ Turns on flipping subtitles using FriBiDi.
+
+--flip-hebrew-commas, --no-flip-hebrew-commas
+ Enabled by default.
+ Change FriBiDi's 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=<pattern-or-filename>
+ Specify font to use for OSD and for subtitles that do not themselves
+ specify a particular font. See also ``--subfont``. With fontconfig enabled
+ the argument is a fontconfig pattern and the default is ``sans``. Without
+ fontconfig the argument is a filename and the default is
+ ``~/.mplayer/subfont.ttf`` with freetype enabled, or
+ ``~/.mplayer/font/font.desc`` without it.
+
+ *EXAMPLE*:
+
+ - ``--font=~/.mplayer/arial-14/font.desc`` (no fontconfig or freetype)
+ - ``--font=~/.mplayer/arialuni.ttf`` (no fontconfig)
+ - ``--font='Bitstream Vera Sans'`` (usual case with fontconfig)
+ - ``--font='Bitstream Vera Sans:style=Bold'`` (usual case with fontconfig)
+
+--fontconfig, --no-fontconfig
+ Enables the use of fontconfig managed fonts. Enabled by default.
+
+--force-window-position
+ Forcefully move MPlayer's video output window to default location whenever
+ there is a change in video parameters, video stream or file. This used to
+ be the default behavior. Currently only affects X11 VOs.
+
+--forcedsubsonly
+ Display only forced subtitles for the DVD subtitle stream selected by e.g.
+ ``--slang``.
+
+--forceidx
+ Force index rebuilding. Useful for files with broken index (A/V desync,
+ etc). This will enable seeking in files where seeking was not possible.
+
+ *NOTE*: This option only works if the underlying media supports seeking
+ (i.e. not with stdin, pipe, etc).
+
+--format=<format>
+ Select the sample format used for output from the audio filter layer to
+ the sound card. The values that <format> can adopt are listed below in the
+ description of the ``format`` audio filter.
+
+--fps=<float>
+ Override video framerate. Useful if the original value is wrong or missing.
+
+--framedrop
+ Skip displaying some frames to maintain A/V sync on slow systems. Video
+ filters are not applied to such frames. For B-frames even decoding is
+ skipped completely. May produce unwatchably choppy output. See also
+ ``--hardframedrop``.
+
+--frames=<number>
+ Play/convert only first <number> frames, then quit.
+
+--fribidi-charset=<name>
+ Specifies the character set that will be passed to FriBiDi when decoding
+ non-UTF-8 subtitles (default: ISO8859-8).
+
+--fs
+ Fullscreen playback (centers movie, and paints black bands around it).
+
+--fsmode-dontuse=<0-31>
+ 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 prefixing 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
+ Clear the list of modes; you can add modes to enable afterward.
+ stays_on_top
+ Use ``_NETWM_STATE_STAYS_ON_TOP`` hint if available.
+
+ *EXAMPLE*:
+
+ ``--fstype=layer,stays_on_top,above,fullscreen``
+ Default order, will be used as a fallback if incorrect or
+ unsupported modes are specified.
+ ``--fstype=fullscreen``
+ Fixes fullscreen switching on OpenBox 1.x.
+
+--gamma=<-100-100>
+ Adjust the gamma of the video signal (default: 0). Not supported by all
+ video output drivers.
+
+--gapless-audio
+ Try to play consecutive audio files with no silence or disruption at the
+ point of file change. This feature is implemented in a simple manner and
+ relies on audio output device buffering to continue playback while moving
+ from one file to another. If playback of the new file starts slowly, for
+ example because it's played from a remote network location or because you
+ have specified cache settings that require time for the initial cache
+ fill, then the buffered audio may run out before playback of the new file
+ can start.
+
+ *NOTE*: The audio device is opened using parameters chosen according to
+ the first file played and is then kept open for gapless playback. This
+ means that if the first file for example has a low samplerate then the
+ following files may get resampled to the same low samplerate, resulting in
+ reduced sound quality. If you play files with different parameters,
+ consider using options such as ``--srate`` and ``--format`` to explicitly
+ select what the shared output format will be.
+
+--geometry=<x[%][:y[%]]>, --geometry=<[WxH][+-x+-y]>
+ Adjust where the output is on the screen initially. The x and y
+ specifications are in pixels measured from the top-left of the screen to
+ the top-left of the image being displayed, however if a percentage sign is
+ given after the argument it turns the value into a percentage of the
+ screen size in that direction. It also supports the standard X11
+ ``--geometry`` option format, in which e.g. +10-50 means "place 10 pixels
+ from the left border and 50 pixels from the lower border" and "--20+-10"
+ means "place 20 pixels beyond the right and 10 pixels beyond the top
+ border". If an external window is specified using the ``--wid`` option,
+ then the x and y coordinates are relative to the top-left corner of the
+ window rather than the screen. The coordinates are relative to the screen
+ given with ``--xineramascreen`` for the video output drivers that fully
+ support ``--xineramascreen`` (direct3d, gl, vdpau, x11, xv, corevideo).
+
+ *NOTE*: May not be supported by some of the older VO 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.
+
+--grabpointer, --no-grabpointer
+ ``-no-grabpointer`` tells the player to not grab the mouse pointer after a
+ video mode change (``--vm``). Useful for multihead setups.
+
+--hardframedrop
+ More intense frame dropping (breaks decoding). Leads to image distortion!
+
+--heartbeat-cmd
+ 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 (see also ``--stop-xscreensaver``). If you think this is too
+ complicated, ask the author of the screensaver program to support the
+ proper X APIs.
+
+ *EXAMPLE for xscreensaver*: ``mplayer --heartbeat-cmd="xscreensaver-command
+ -deactivate" file``
+
+ *EXAMPLE for GNOME screensaver*: ``mplayer
+ --heartbeat-cmd="gnome-screensaver-command -p" file``
+
+--help
+ Show short summary of options and key bindings.
+
+--hr-mp3-seek
+ Only affects the internal ``audio`` demuxer, which is not used by default
+ for mp3 files any more. The equivalent functionality is always enabled
+ with the now default libavformat demuxer for mp3. Hi-res MP3 seeking.
+ Enabled when playing from an external MP3 file, 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 find an exact frame
+ position.
+
+--hr-seek=<off|absolute|always>
+ Select when to use precise seeks that are not limited to keyframes. Such
+ seeks require decoding video from the previous keyframe up to the target
+ position and so can take some time depending on decoding performance. For
+ some video formats precise seeks are disabled. This option selects the
+ default choice to use for seeks; it's possible to explicitly override that
+ default in the definition of key bindings and in slave mode commands.
+
+ :off: Never use precise seeks.
+ :absolute: Use precise seeks if the seek is to an absolute position in the
+ file, such as a chapter seek, but not for relative seeks like
+ the default behavior of arrow keys (default).
+ :always: Use precise seeks whenever possible.
+
+--hr-seek-demuxer-offset=<seconds>
+ This option exists to work around failures to do precise seeks (as in
+ ``--hr-seek``) caused by bugs or limitations in the demuxers for some file
+ formats. Some demuxers fail to seek to a keyframe before the given target
+ position, going to a later position instead. The value of this option is
+ subtracted from the time stamp given to the demuxer. Thus if you set this
+ option to 1.5 and try to do a precise seek to 60 seconds, the demuxer is
+ told to seek to time 58.5, which hopefully reduces the chance that it
+ erroneously goes to some time later than 60 seconds. The downside of
+ setting this option is that precise seeks become slower, as video between
+ the earlier demuxer position and the real target may be unnecessarily
+ decoded.
+
+--http-header-fields=<field1,field2>
+ Set custom HTTP fields when accessing HTTP stream.
+
+ *EXAMPLE*:
+
+ ``mplayer --http-header-fields='Field1: value1','Field2: value2' http://localhost:1234``
+
+ Will generate HTTP request:
+
+ | GET / HTTP/1.0
+ | Host: localhost:1234
+ | User-Agent: MPlayer
+ | Icy-MetaData: 1
+ | Field1: value1
+ | Field2: value2
+ | Connection: close
+
+--hue=<-100-100>
+ 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.
+
+--identify
+ Shorthand for ``--msglevel=identify=4``. Show file 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 or Blu-ray 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 video output. The
+ wrapper script ``TOOLS/midentify.sh`` suppresses the other MPlayer output
+ and (hopefully) shellescapes the filenames.
+
+--idle
+ Makes MPlayer wait idly instead of quitting when there is no file to play.
+ Mostly useful in slave mode where MPlayer can be controlled through input
+ commands (see also ``--slave``).
+
+--idx
+ Rebuilds index of files if no index was found, allowing seeking. Useful
+ with broken/incomplete downloads, or badly created files. Now this is done
+ automatically by the demuxers used for most video formats, meaning that
+ this switch has no effect in the typical case. See also ``--forceidx``.
+
+ *NOTE*: This option only works if the underlying media supports seeking
+ (i.e. not with stdin, pipe, etc).
+
+--ifo=<file>
+ Indicate the VOBsub IFO file that will be used to load palette and frame
+ size for VOBsub subtitles.
+
+--ignore-start
+ Ignore the specified starting time for streams in AVI files. This
+ nullifies stream delays.
+
+--include=<configuration-file>
+ Specify configuration file to be parsed after the default ones.
+
+--initial-audio-sync, --no-initial-audio-sync
+ When starting a video file or after events such as seeking MPlayer will by
+ default modify the audio stream to make it start from the same timestamp
+ as video, by either inserting silence at the start or cutting away the
+ first samples. Disabling this option makes the player behave like older
+ MPlayer versions did: video and audio are both started immediately even if
+ their start timestamps differ, and then video timing is gradually adjusted
+ if necessary to reach correct synchronization later.
+
+--input=<commands>
+ This option can be used to configure certain parts of the input system.
+ Paths are relative to ``~/.mplayer/``.
+
+ *NOTE*: Autorepeat is currently only supported by joysticks.
+
+ Available commands are:
+
+ conf=<filename>
+ Specify input configuration file other than the default
+ ``~/.mplayer/input.conf``. ``~/.mplayer/<filename>`` 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
+ Specifies the joystick device to use (default: ``/dev/input/js0``).
+
+ file=<filename>
+ Read commands from the given file. Mostly useful with a FIFO.
+ See also ``--slave``.
+
+ *NOTE*: When the given file is a FIFO MPlayer opens both ends so you
+ can do several `echo "seek 10" > mp_pipe` and the pipe will stay
+ valid.
+
+--ipv4-only-proxy
+ Skip any HTTP proxy for IPv6 addresses. It will still be used for IPv4
+ connections.
+
+--joystick, --no-joystick
+ Enable/disable joystick support. Enabled by default.
+
+--keepaspect, --no-keepaspect
+ Keep window aspect ratio when resizing windows. Enabled by default. By
+ default MPlayer tries to keep the correct video aspect ratio by
+ instructing the window manager to maintain window aspect when resizing,
+ and by adding black bars if the window manager nevertheless allows window
+ shape to change. This option disables window manager aspect hints and
+ scales the video to completely fill the window without regard for aspect
+ ratio.
+
+--key-fifo-size=<2-65000>
+ Specify the size of the FIFO that buffers key events (default: 7). If it
+ is too small some events may be lost. The main disadvantage of setting it
+ to a very large value is that if you hold down a key triggering some
+ particularly slow command then the player may be unresponsive while it
+ processes all the queued commands.
+
+--lavdopts=<option1:option2:...>
+ Specify libavcodec decoding parameters. Separate multiple options with a
+ colon.
+
+ *EXAMPLE*: ``--lavdopts=gray:skiploopfilter=all:skipframe=nonref``
+
+ Available options are:
+
+ bitexact
+ Only use bit-exact algorithms in all decoding steps (for codec
+ testing).
+
+ bug=<value>
+ Manually work around encoder bugs.
+
+ :0: nothing
+ :1: autodetect bugs (default)
+ :2: (msmpeg4v3): some old lavc generated msmpeg4v3 files (no
+ autodetection)
+ :4: (mpeg4): Xvid interlacing bug (autodetected if fourcc==XVIX)
+ :8: (mpeg4): UMP4 (autodetected if fourcc==UMP4)
+ :16: (mpeg4): padding bug (autodetected)
+ :32: (mpeg4): illegal vlc bug (autodetected per fourcc)
+ :64: (mpeg4): Xvid and DivX qpel bug (autodetected per
+ fourcc/version)
+ :128: (mpeg4): old standard qpel (autodetected per fourcc/version)
+ :256: (mpeg4): another qpel bug (autodetected per 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 ``--no-slices``)
+ :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 filter for damaged MBs.
+ :2: iterative motion vector (MV) search (slow)
+ :3: all (default)
+
+ fast (MPEG-2, MPEG-4, and H.264 only)
+ Enable optimizations which do not comply to the specification 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)
+
+ idct=<0-99>
+ 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 specified 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.
+
+ *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.
+
+ skiploopfilter=<skipvalue> (H.264 only)
+ Skips the loop filter (AKA deblocking) during H.264 decoding. Since
+ the filtered frame is supposed to be used as reference for decoding
+ dependent frames this has a worse effect on quality than not doing
+ deblocking on e.g. MPEG-2 video. But at least for high bitrate HDTV
+ this provides a big speedup with no visible quality loss.
+
+ <skipvalue> can be 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 skiploopfilter for available skip values).
+
+ skipframe=<skipvalue>
+ Skips decoding of frames completely. Big speedup, but jerky motion and
+ sometimes bad artifacts (see skiploopfilter for available skip
+ values).
+
+ threads=<0-16>
+ Number of threads to use for decoding. Whether threading is actually
+ supported depends on codec. 0 means autodetect number of cores on the
+ machine and use that, up to the maximum of 16. (default: 0)
+
+ 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``.
+
+--lavfdopts=<option1:option2:...>
+ Specify parameters for libavformat demuxers (``--demuxer=lavf``). Separate
+ multiple options with a colon.
+
+ Available suboptions are:
+
+ analyzeduration=<value>
+ Maximum length in seconds to analyze the stream properties.
+ format=<value>
+ Force a specific 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 conflict
+ with MPlayer options.
+
+ *EXAMPLE*: ``o=fflags=+ignidx``
+ probesize=<value>
+ Maximum amount of data to probe during the detection phase. In the
+ case of MPEG-TS this value identifies the maximum number of TS packets
+ to scan.
+ cryptokey=<hexstring>
+ Encryption key the demuxer should use. This is the raw binary data of
+ the key converted to a hexadecimal string.
+
+--lirc, --no-lirc
+ Enable/disable LIRC support. Enabled by default.
+
+--lircconf=<filename>
+ (LIRC only)
+ Specifies a configuration file for LIRC (default: ``~/.lircrc``).
+
+--list-options
+ Prints all available options.
+
+--list-properties
+ Print a list of the available properties.
+
+--loadidx=<filename>
+ The file 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 file
+ generated from a different AVI, but this is sure to cause unfavorable
+ results.
+
+ *NOTE*: This option is obsolete now that MPlayer has OpenDML support.
+
+--loop=<number>
+ Loops movie playback <number> times. 0 means forever.
+
+--mc=<seconds/frame>
+ Maximum A-V sync correction per frame (in seconds)
+
+--mf=<option1:option2:...>
+ Used when decoding from multiple PNG or JPEG files.
+
+ Available options are:
+
+ :w=<value>: input file width (default: autodetect)
+ :h=<value>: input file height (default: autodetect)
+ :fps=<value>: output fps (default: 25)
+ :type=<value>: input file type (available: jpeg, png, tga, sgi)
+
+--mixer=<device>
+ Use a mixer device different from the default ``/dev/mixer``. For ALSA
+ this is the mixer name.
+
+--mixer-channel=<name[,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 specified in
+ the <name,number> format, i.e. a channel labeled 'PCM 1' in alsamixer must
+ be converted to PCM,1.
+
+--monitor-dotclock=<range[,range,...]>
+ Used with ``--vo=fbdev`` and ``--vo=vesa`` only.
+ Specify the dotclock or pixelclock range of the monitor.
+
+--monitor-hfreq=<range[,range,...]>
+ Used with ``--vo=fbdev`` and ``--vo=vesa`` only.
+ Specify the horizontal frequency range of the monitor.
+
+--monitor-vfreq=<range[,range,...]>
+ Used with ``--vo=fbdev`` and ``--vo=vesa`` only.
+ Specify the vertical frequency range of the monitor.
+
+--monitoraspect=<ratio>
+ Set the aspect ratio of your monitor or TV screen. A value of 0 disables a
+ previous setting (e.g. in the config file). Overrides the
+ ``--monitorpixelaspect`` setting if enabled.
+ See also ``--monitorpixelaspect`` and ``--aspect``.
+
+ *EXAMPLE*:
+
+ - ``--monitoraspect=4:3`` or ``--monitoraspect=1.3333``
+ - ``--monitoraspect=16:9`` or ``--monitoraspect=1.7777``
+
+--monitorpixelaspect=<ratio>
+ 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). See
+ also ``--monitoraspect`` and ``--aspect``.
+
+--mouse-movements
+ 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, etc) and the gl, direct3d and corevideo VOs.
+
+--mouseinput, --no-mouseinput
+ Enabled by default. Disable mouse button press/release input
+ (mozplayerxp's context menu relies on this option).
+
+--msgcharset=<charset>
+ Convert console messages to the specified character set (default:
+ autodetect). Text will be in the encoding specified with the --charset
+ configure option. Set this to "noconv" to disable conversion (for e.g.
+ iconv problems).
+
+ *NOTE*: The option takes effect after command line parsing has finished.
+ The ``MPLAYER_CHARSET`` environment variable can help you get rid of the
+ first lines of garbled output.
+
+--msgcolor
+ Enable colorful console output on terminals that support ANSI color.
+
+--msglevel=<module1=level1:module2=level2:...>
+ Control verbosity directly for each module. The *all* module changes the
+ verbosity of all the modules not explicitly specified 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
+ :5: status messages (default)
+ :6: verbose messages
+ :7: debug level 2
+ :8: debug level 3
+ :9: debug level 4
+
+--msgmodule
+ Prepend module name in front of each console message.
+
+--name
+ Set the window class name for X11-based video output methods.
+
+--ni
+ (Internal AVI demuxer which is not used by default only)
+ Force usage of non-interleaved AVI parser (fixes playback of some bad AVI
+ files).
+
+--noaspect
+ Ignore aspect ratio information from video file and assume the video has
+ square pixels. See also ``--aspect``.
+
+--nobps
+ (Internal AVI demuxer which is not used by default only)
+ Do not use average byte/second value for A-V sync. Helps with some AVI
+ files with broken header.
+
+--nocache
+ Turn off input stream caching. See ``--cache``.
+
+--nocolorkey
+ Disables colorkeying. Only supported by the fbdev, svga, vesa, xmga,
+ xover, xv (see ``--vo=xv:ck``) and directx video output drivers.
+
+--noconfig=<options>
+ Do not parse selected configuration files.
+
+ *NOTE*: If ``--include`` or ``--use-filedir-conf`` options are specified
+ at the command line, they will be honoured.
+
+ Available options are:
+
+ :all: all configuration files
+ :system: system configuration file
+ :user: user configuration file
+
+--noidx
+ Do not use index present in the file even if one is present.
+
+--nosound
+ Do not play sound. Useful for benchmarking.
+
+--nosub
+ Disables any otherwise auto-selected internal subtitles (as e.g. the
+ Matroska/mkv demuxer supports). Use ``--no-autosub`` to disable the
+ loading of external subtitle files.
+
+--novideo
+ Do not play video. With some demuxers this may not work. In those cases
+ you can try ``--vc=null --vo=null`` instead; but ``--vc=null`` is always
+ unreliable.
+
+--ontop
+ Makes the player window stay on top of other windows. Supported by video
+ output drivers which use X11, except SDL, as well as directx, corevideo
+ and ggi.
+
+--ordered-chapters, --no-ordered-chapters
+ Enabled by default.
+ Disable support for Matroska ordered chapters. MPlayer will not load or
+ search for video segments from other files, and will also ignore any
+ chapter order specified for the main file.
+
+--osd-duration=<time>
+ Set the duration of the OSD messages in ms (default: 1000).
+
+--osd-fractions=<0-2>
+ Set how fractions of seconds of the current timestamp are printed on the
+ OSD:
+
+ :0: Do not display fractions (default).
+ :1: Show the first two decimals.
+ :2: Show approximate frame count within current second. This frame count
+ is not accurate but only an approximation. For variable fps, the
+ approximation is known to be far off the correct frame count.
+
+--osdlevel=<0-3>
+ Specifies which mode the OSD should start in.
+
+ :0: subtitles only
+ :1: volume + seek (default)
+ :2: volume + seek + timer + percentage
+ :3: volume + seek + timer + percentage + total time
+
+--overlapsub
+ Allows the next subtitle to be displayed while the current one is still
+ visible (default is to enable the support only for specific formats).
+
+--panscan=<0.0-1.0>
+ Enables pan-and-scan functionality (cropping the sides of e.g. a 16:9
+ movie to make it fit a 4:3 display without black bands). The range
+ controls how much of the image is cropped. May not work with all 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.0-99.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``.
+
+--passwd=<password>
+ Used with some network protocols. Specify password for HTTP authentication.
+ See also ``--user``.
+
+--playing-msg=<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=<filename>
+ Play files according to a playlist file (ASX, Winamp, SMIL, or
+ one-file-per-line format).
+
+ *WARNING*: The way MPlayer parses and uses playlist files is not safe
+ against maliciously constructed files. Such files may trigger harmful
+ actions. This has been the case for all MPlayer versions, but
+ unfortunately this fact was not well documented earlier, and some people
+ have even misguidedly recommended use of ``--playlist`` with untrusted
+ sources. Do NOT use ``--playlist`` with random internet sources or files
+ you don't trust!
+
+ *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 clarified and documented thoroughly.
+
+--pp=<quality>
+ This option only works when decoding video with Win32 DirectShow DLLs with
+ internal postprocessingi routines. See also ``--vf=pp``. Set the DLL
+ postprocess level. The valid range of ``--pp`` values varies by codec, it
+ is mostly 0-6, where 0=disable, 6=slowest/best.
+
+--pphelp
+ Show a summary about the available postprocess filters and their usage.
+ See also ``--vf=pp``.
+
+--prefer-ipv4
+ Use IPv4 on network connections. Falls back on IPv6 automatically.
+
+--prefer-ipv6
+ Use IPv6 on network connections. Falls back on IPv4 automatically.
+
+--priority=<prio>
+ (Windows only.)
+ Set process priority for MPlayer according to the predefined priorities
+ available under Windows.
+
+ Possible values of <prio>:
+ idle|belownormal|normal|abovenormal|high|realtime
+
+ *WARNING*: Using realtime priority can cause system lockup.
+
+--profile=<profile1,profile2,...>
+ Use the given profile(s), ``--profile=help`` displays a list of the
+ defined profiles.
+
+--psprobe=<bytecount>
+ 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 files
+ containing H.264 streams.
+
+--pts-association-mode=<auto|decode|sort>
+ Select the method used to determine which container packet timestamp
+ corresponds to a particular output frame from the video decoder. Normally
+ you shouldn't need to change this option.
+
+ :auto: Try to pick a working mode from the ones below automatically
+ (default)
+ :decoder: Use decoder reordering functionality.
+ :sort: Maintain a buffer of unused pts values and use the lowest value
+ for the frame.
+
+--pvr=<option1:option2:...>
+ 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 PVR-150/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, use
+ ``pvr://`` as a movie URL.
+
+ Available options are:
+
+ aspect=<0-3>
+ Specify input aspect ratio:
+
+ :0: 1:1
+ :1: 4:3 (default)
+ :2: 16:9
+ :3: 2.21:1
+
+ arate=<32000-48000>
+ Specify encoding audio rate (default: 48000 Hz, available: 32000,
+ 44100 and 48000 Hz).
+
+ alayer=<1-3>
+ Specify MPEG audio layer encoding (default: 2).
+
+ abitrate=<32-448>
+ 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
+ :mpeg1: MPEG-1 System Stream
+ :vcd: Video CD compatible stream
+ :svcd: Super Video CD compatible stream
+ :dvd: DVD compatible stream
+
+--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).
+
+--radio=<option1:option2:...>
+ 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.
+
+--rawaudio=<option1:option2:...>
+ This option lets you play raw audio files. 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 files
+ :format=<value>: fourcc in hex
+
+--rawvideo=<option1:option2:...>
+ This option lets you play raw video files. 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.
+
+--really-quiet
+ Display even less output and status messages than with ``--quiet``.
+
+--referrer=<string>
+ Specify a referrer path or URL for HTTP requests.
+
+--refreshrate=<Hz>
+ Set the monitor refreshrate in Hz. Currently only supported by
+ ``--vo=directx`` combined with the ``--vm`` option.
+
+--reuse-socket
+ (udp:// only)
+ Allows a socket to be reused by other processes as soon as it is closed.
+
+--rootwin
+ Play movie in the root window (desktop background). Desktop background
+ images may cover the movie window, though. May not work with all video
+ output drivers.
+
+--rtc
+ 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 configured for desktop use
+ as they already wake up the process with similar accuracy when using
+ normal timed sleep.
+
+--rtc-device=<device>
+ Use the specified device for RTC timing.
+
+--rtsp-destination
+ 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.
+
+--rtsp-port
+ Used with ``rtsp://`` URLs to force the client's 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 specific client.
+
+--rtsp-stream-over-http
+ (LIVE555 only)
+ Used with ``http://`` URLs to specify that the resulting incoming RTP and
+ RTCP packets be streamed over HTTP.
+
+--rtsp-stream-over-tcp
+ (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/).
+
+--saturation=<-100-100>
+ Adjust the saturation of the video signal (default: 0). You can get
+ grayscale output with this option. Not supported by all video output
+ drivers.
+
+--saveidx=<filename>
+ Force index rebuilding and dump the index to <filename>. Currently this
+ only works with AVI files.
+
+ *NOTE*: This option is obsolete now that MPlayer has OpenDML support.
+
+--sb=<n>
+ Seek to byte position. Useful for playback from CD-ROM images or VOB files
+ with junk at the beginning. See also ``--ss``.
+
+--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.
+
+--show-profile=<profile>
+ Show the description and content of a profile.
+
+--shuffle
+ Play files in random order.
+
+--sid=<ID>
+ Display the subtitle stream specified by <ID> (0-31). MPlayer prints the
+ available subtitle IDs when run in verbose (``-v``) mode. If you cannot
+ select one of the subtitles on a DVD, try ``--vobsubid``.
+ See also ``--slang``, ``--vobsubid``, ``--nosub``.
+
+--slang=<languagecode[,languagecode,...]>
+ 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 identifier. MPlayer prints the available languages
+ when run in verbose (``-v``) mode. See also ``--sid``.
+
+ *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 file with Japanese
+ subtitles.
+
+--slave
+ 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. See also ``--input``,
+ suboption ``file``.
+
+ *NOTE*: See ``DOCS/tech/slave.txt`` for a description of slave commands.
+ Also, this is not intended to disable other inputs, e.g. via the video
+ window. If you want to do that, use something like
+ ``--input=nodefault-bindings:conf=/dev/null``.
+
+--slices, --no-slices
+ 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. Enabled by default if applicable; usually disabled when threading
+ is used.
+
+--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.
+
+--softvol
+ Force the use of the software mixer, instead of using the sound card
+ mixer.
+
+--softvol-max=<10.0-10000.0>
+ Set the maximum amplification 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.
+
+--speed=<0.01-100>
+ Slow down or speed up playback by the factor given as parameter.
+
+--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)
+ :4: uses swscaler gaussian blur (looks very good)
+
+--spualign=<-1-2>
+ 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.0-3.0>
+ Variance parameter of gaussian used by ``--spuaa=4``. Higher means more
+ blur (default: 1.0).
+
+--srate=<Hz>
+ Select 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 filter will be
+ inserted into the audio filter layer to compensate for the difference. The
+ type of resampling can be controlled by the ``--af-adv`` option.
+
+--ss=<time>
+ Seek to given time position.
+
+ *EXAMPLE*:
+
+ ``--ss=56``
+ Seeks to 56 seconds.
+ ``--ss=01:10:00``
+ Seeks to 1 hour 10 min.
+
+--ssf=<mode>
+ Specifies software scaler parameters.
+
+ :lgb=<0-100>: gaussian blur filter (luma)
+ :cgb=<0-100>: gaussian blur filter (chroma)
+ :ls=<-100-100>: sharpen filter (luma)
+ :cs=<-100-100>: sharpen filter (chroma)
+ :chs=<h>: chroma horizontal shifting
+ :cvs=<v>: chroma vertical shifting
+
+ *EXAMPLE*: ``--vf=scale=-ssf=lgb=3.0``
+
+--sstep=<sec>
+ Skip <sec> seconds after every frame. Since MPlayer will only seek to
+ the next keyframe unless you use ``--hr-seek`` this may be inexact.
+
+--stereo=<mode>
+ Select type of MP2/MP3 stereo output.
+
+ :0: stereo
+ :1: left channel
+ :2: right channel
+
+--stop-xscreensaver
+ (X11 only)
+ Turns off xscreensaver at startup and turns it on again on exit. If your
+ screensaver supports neither the XSS nor XResetScreenSaver API please use
+ ``--heartbeat-cmd`` instead.
+
+--sub=<subtitlefile1,subtitlefile2,...>
+ Use/display these subtitle files. Only one file can be displayed at the
+ same time.
+
+--sub-bg-alpha=<0-255>
+ Specify the alpha channel value for subtitles and OSD backgrounds. Big
+ values mean more transparency. 0 means completely transparent.
+
+--sub-bg-color=<0-255>
+ 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.
+
+--sub-demuxer=<[+]name>
+ Force subtitle demuxer type for ``--subfile``. Using a '+' before the name
+ will force it, this will skip some checks! Give the demuxer name as
+ printed by ``--sub-demuxer=help``.
+
+--sub-fuzziness=<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 and ``--sub-paths`` directories.
+
+--sub-no-text-pp
+ Disables any kind of text post processing done after loading the
+ subtitles. Used for debug purposes.
+
+--sub-paths=<path1:path2:...>
+ Specify extra directories where to search for subtitles matching the
+ video. Multiple directories can be separated by ":" (";" on Windows).
+ Paths can be relative or absolute. Relative paths are interpreted relative
+ to video file directory.
+
+ *EXAMPLE*: Assuming that ``/path/to/movie/movie.avi`` is played and
+ ``--sub-paths=sub:subtitles:/tmp/subs`` is specified, MPlayer searches for
+ subtitle files in these directories:
+
+ - ``/path/to/movie/``
+ - ``/path/to/movie/sub/``
+ - ``/path/to/movie/subtitles/``
+ - ``/tmp/subs/``
+ - ``~/.mplayer/sub/``
+
+--subalign=<0-2>
+ 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=<1-4>
+ Display DVD Closed Caption (CC) subtitles from the specified channel.
+ 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>
+ If your system supports ``iconv(3)``, you can use this option to specify
+ the subtitle codepage.
+
+ *EXAMPLE*:
+ - ``--subcp=latin2``
+ - ``--subcp=cp1250``
+
+ If the player was compiled with ENCA support you can use special syntax
+ to use that.
+
+ ``--subcp=enca:<language>:<fallback codepage>``
+
+ 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
+ specifies 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.
+
+--subfile=<filename>
+ (BETA CODE)
+ Currently useless. Same as ``--audiofile``, but for subtitle streams
+ (OggDS?).
+
+--subfont=<pattern-or-filename>
+ Sets the subtitle font (see ``--font``). If no ``--subfont`` is given,
+ ``--font`` is used for subtitles too.
+
+--subfont-autoscale=<0-3>
+ Sets the autoscale mode.
+
+ *NOTE*: 0 means that text scale and OSD scale are font heights in points.
+
+ The mode can be:
+
+ :0: no autoscale
+ :1: proportional to movie height
+ :2: proportional to movie width
+ :3: proportional to movie diagonal (default)
+
+--subfont-blur=<0-8>
+ Sets the font blur radius (default: 2).
+
+--subfont-encoding=<value>
+ Sets the font encoding. When set to 'unicode', all the glyphs from the
+ font file will be rendered and unicode will be used (default: unicode).
+
+--subfont-osd-scale=<0-100>
+ Sets the autoscale coefficient of the OSD elements (default: 4).
+
+--subfont-outline=<0-8>
+ Sets the font outline thickness (default: 2).
+
+--subfont-text-scale=<0-100>
+ Sets the subtitle text autoscale coefficient as percentage of the screen
+ size (default: 3.5).
+
+--subfps=<rate>
+ Specify the framerate of the subtitle file (default: movie fps).
+
+ *NOTE*: <rate> > movie fps speeds the subtitles up for frame-based
+ subtitle files and slows them down for time-based ones.
+
+--subpos=<0-100>
+ Specify the position of subtitles on the screen. The value is the vertical
+ position of the subtitle in % of the screen height.
+ Can be useful with ``--vf=expand``.
+
+--subwidth=<10-100>
+ Specify the maximum width of subtitles on the screen. Useful for TV-out.
+ The value is the width of the subtitle in % of the screen width.
+
+--sws=<n>
+ Specify the software scaler algorithm to be used with the ``--zoom``
+ option. This affects video output drivers which lack hardware
+ acceleration, e.g. x11. See also ``--vf=scale`` and ``--zoom``.
+
+ Available types are:
+
+ :0: fast bilinear
+ :1: bilinear
+ :2: bicubic (good quality) (default)
+ :3: experimental
+ :4: nearest neighbor (bad quality)
+ :5: area
+ :6: luma bicubic / chroma bilinear
+ :7: gauss
+ :8: sincR
+ :9: lanczos
+ :10: natural bicubic spline
+
+ *NOTE*: Some ``--sws`` options are tunable. The description of the scale
+ video filter has further information.
+
+--term-osd, --no-term-osd
+ Display OSD messages on the console when no video output is available.
+ Enabled by default.
+
+--term-osd-esc=<string>
+ 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``).
+
+--title
+ Set the window title. Supported by X11-based video output drivers.
+ See also ``--use-filename-title``.
+
+--tskeepbroken
+ Tells MPlayer not to discard TS packets reported as broken in the stream.
+ Sometimes needed to play corrupted MPEG-TS files.
+
+--tsprobe=<bytecount>
+ 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=<1-65534>
+ When playing an MPEG-TS stream, you can specify with this option which
+ program (if present) you want to play. Can be used with ``--vid`` and
+ ``--aid``.
+
+--tv=<option1:option2:...>
+ 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:
+
+ noaudio
+ no sound
+
+ automute=<0-255> (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: argentina, australia, china-bcast, europe-east,
+ europe-west, france, ireland, italy, japan-bcast, japan-cable,
+ newzealand, russia, southafrica, us-bcast, us-cable, us-cable-hrc
+
+ 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]=<-100-100>
+ Set the image equalizer on the card.
+
+ audiorate=<value>
+ Set input audio sample rate.
+
+ forceaudio
+ Capture audio even if there are no audio sources reported by v4l.
+
+ alsa
+ Capture from ALSA.
+
+ amode=<0-3>
+ Choose an audio mode:
+
+ :0: mono
+ :1: stereo
+ :2: language 1
+ :3: language 2
+
+ forcechan=<1-2>
+ By default, the count of recorded audio channels is determined
+ automatically by querying the audio mode from the TV card. This option
+ allows 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]=<0-65535> (v4l1)
+
+ [volume|bass|treble|balance]=<0-100> (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=<0-100> (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 modified.
+
+ immediatemode=<bool>
+ A value of 0 means capture and buffer audio and video together. A
+ value of 1 (default) 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=<0-100>
+ 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=<100-899>
+ Specify initial TV teletext page number (default: 100).
+
+ tlang=<-1-127>
+ 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 non-latin 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.
+
+ 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:...>
+ 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.1-2.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=<1-100>
+ 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.
+
+--unicode
+ Tells MPlayer to handle the subtitle file as unicode.
+
+--unrarexec=<filename>
+ Specify the path to the unrar executable so MPlayer can use it to access
+ rar-compressed VOBsub files (default: not set, so the feature is off). The
+ path must include the executable's filename, i.e.
+ ``/usr/local/bin/unrar``. Not supported on MingW.
+
+--use-filedir-conf
+ Look for a file-specific configuration file in the same directory as the
+ file that is being played.
+
+ *WARNING*: May be dangerous if playing from untrusted media.
+
+--use-filename-title
+ Set the window title using the media filename, when not set with
+ ``--title``. Supported by X11-based video output drivers. See also
+ ``--title``.
+
+--user=<username>
+ Used with some network protocols.
+ Specify username for HTTP authentication. See also ``--passwd``.
+
+--user-agent=<string>
+ Use <string> as user agent for HTTP streaming.
+
+--utf8
+ Tells MPlayer to handle the subtitle file as UTF-8.
+
+-v
+ Increment verbosity level, one level for each ``-v`` found on the command
+ line.
+
+--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 libavcodec's MPEG-1/2 codec, then
+ libmpeg2, then others.
+
+--vf=<filter1[=parameter1:parameter2:...],filter2,...>
+ Specify a list of video filters to apply to the video stream. See
+ :ref:`video_filters` for details and descriptions of the available filters.
+ The option variants ``--vf-add``, ``--vf-pre``, ``--vf-del`` and
+ ``--vf-clr`` exist to modify a previously specified list, but you
+ shouldn't need these for typical use.
+
+--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 first.
+
+--vid=<ID>
+ Select video channel (MPG: 0-15, ASF: 0-255, MPEG-TS: 17-8190). When
+ playing an MPEG-TS stream, MPlayer will use the first 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.
+
+--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.
+
+--vo=<driver1[:suboption1[=value]:...],driver2,...[,]>
+ Specify a priority list of video output drivers to be used. For
+ interactive use you'd normally specify a single one to use, but in
+ configuration files specifying a list of fallbacks may make sense. See
+ :ref:`video_outputs` for details and descriptions of available drivers.
+
+--vobsub=<file>
+ Specify a VOBsub file to use for subtitles. Has to be the full pathname
+ without extension, i.e. without the ``.idx``, ``.ifo`` or ``.sub``.
+
+--vobsubid=<0-31>
+ Specify the VOBsub subtitle ID.
+
+--volstep=<0-100>
+ Set the step size of mixer volume changes in percent of the whole range
+ (default: 3).
+
+--volume=<-1-100>
+ 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. See also ``--af=volume``.
+
+--vsync
+ Enables VBI for the vesa, dfbmga and svga video output drivers.
+
+--wid=<ID>
+ (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). Earlier this option
+ always filled the given window completely, thus aspect scaling, panscan,
+ etc were no longer handled by MPlayer but had to be managed by the
+ application that created the window. Now aspect is maintained by default.
+ If you don't want that use ``--no-keepaspect``.
+
+--x=<width>
+ Scale image to width <width> (if software/hardware scaling is available).
+ Disables aspect calculations.
+
+--xineramascreen=<-2-...>
+ In Xinerama configurations (i.e. a single desktop that spans across
+ multiple displays) this option tells MPlayer which screen to display the
+ movie on. A value of -2 means fullscreen across the whole virtual display
+ (in this case Xinerama information is completely ignored), -1 means
+ fullscreen on the display the window currently is on. The initial position
+ set via the ``--geometry`` option is relative to the specified screen.
+ Will usually only work with ``--fstype=-fullscreen`` or ``--fstype=none``.
+ This option is not suitable to only set the startup screen (because it
+ will always display on the given screen in fullscreen mode),
+ ``--geometry`` is the best that is available for that purpose currently.
+ Supported by at least the direct3d, gl, x11, xv and corevideo video output
+ drivers.
+
+--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 filter (``--vf=pp``) and decoder
+ (``--vfm=ffmpeg``) instead.
+
+ Xvid's internal postprocessing filters:
+
+ :deblock-chroma (see also ``--vf=pp``): chroma deblock filter
+ :deblock-luma (see also ``--vf=pp``): luma deblock filter
+ :dering-luma (see also ``--vf=pp``): luma deringing filter
+ :dering-chroma (see also ``--vf=pp``): chroma deringing filter
+ :filmeffect (see also ``--vf=noise``):
+ Adds artificial film grain to the video. May increase perceived
+ quality, while lowering true quality.
+
+ rendering methods:
+
+ :dr2: Activate direct rendering method 2.
+ :nodr2: Deactivate direct rendering method 2.
+
+--xy=<value>
+
+ :value<=8: Scale image by factor <value>.
+ :value>8: Set width to value and calculate height to keep correct aspect
+ ratio.
+
+--y=<height>
+ Scale image to height <height> (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.
diff --git a/DOCS/man/en/vf.rst b/DOCS/man/en/vf.rst
new file mode 100644
index 0000000000..cf5b8386b9
--- /dev/null
+++ b/DOCS/man/en/vf.rst
@@ -0,0 +1,1452 @@
+.. _video_filters:
+
+VIDEO FILTERS
+=============
+
+Video filters allow you to modify the video stream and its properties. The
+syntax is:
+
+--vf=<filter1[=parameter1:parameter2:...],filter2,...>
+ Setup a chain of video filters.
+
+Many parameters are optional and set to default values if omitted. To
+explicitly use a default value set a parameter to '-1'. Parameters w:h means
+width x height in pixels, x:y means x;y position counted from the upper left
+corner of the bigger image.
+
+*NOTE*: To get a full list of available video filters, see ``--vf=help``.
+
+Video filters are managed in lists. There are a few commands to manage the
+filter list.
+
+--vf-add=<filter1[,filter2,...]>
+ Appends the filters given as arguments to the filter list.
+
+--vf-pre=<filter1[,filter2,...]>
+ Prepends the filters given as arguments to the filter list.
+
+--vf-del=<index1[,index2,...]>
+ Deletes the filters at the given indexes. Index numbers start at 0,
+ negative numbers address the end of the list (-1 is the last).
+
+--vf-clr
+ Completely empties the filter list.
+
+With filters that support it, you can access parameters by their name.
+
+--vf=<filter>=help
+ Prints the parameter names and parameter value ranges for a particular
+ filter.
+
+--vf=<filter=named_parameter1=value1[:named_parameter2=value2:...]>
+ Sets a named parameter to the given value. Use on and off or yes and no to
+ set flag parameters.
+
+Available filters are:
+
+crop[=w:h:x:y]
+ Crops the given part of the image and discards the rest. Useful to remove
+ black bands from widescreen movies.
+
+ <w>,<h>
+ Cropped width and height, defaults to original width and height.
+ <x>,<y>
+ Position of the cropped picture, defaults to center.
+
+cropdetect[=limit:round[:reset]]
+ Calculates necessary cropping parameters and prints the recommended
+ parameters to stdout.
+
+ <limit>
+ Threshold, which can be optionally specified 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.
+ <reset>
+ Counter that determines after how many frames cropdetect will reset
+ the previously detected largest video area and start over to detect
+ the current optimal crop area (default: 0). This can be useful when
+ channel logos distort the video area. 0 indicates never reset and
+ return the largest area encountered during playback.
+
+rectangle[=w:h:x:y]
+ Draws a rectangle of the requested width and height at the specified
+ coordinates over the image and prints current rectangle parameters to the
+ console. This can be used to find optimal cropping parameters. If you bind
+ the ``input.conf`` directive 'change_rectangle' to keystrokes, you can
+ move and resize the rectangle on the fly.
+
+ <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:osd:aspect:round]
+ 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)
+
+ <osd>
+ OSD/subtitle rendering
+
+ :0: disable (default)
+ :1: enable
+
+ <aspect>
+ Expands to fit an aspect instead of a resolution (default: 0).
+
+ *EXAMPLE*:
+
+ `expand=800:::::4/3`
+ Expands to 800x600, unless the source is higher resolution, in
+ which case it expands to fill a 4/3 aspect.
+
+ <round>
+ Rounds up to make both width and height divisible by <r> (default: 1).
+
+flip
+ Flips the image upside down. See also ``--flip``.
+
+mirror
+ Mirrors the image on the Y axis.
+
+rotate[=<0-7>]
+ Rotates the image by 90 degrees and optionally flips it. For values
+ between 4-7 rotation is only done if the movie geometry is portrait and
+ not landscape.
+
+ :0: Rotate by 90 degrees clockwise and flip (default).
+ :1: Rotate by 90 degrees clockwise.
+ :2: Rotate by 90 degrees counterclockwise.
+ :3: Rotate by 90 degrees counterclockwise and flip.
+
+scale[=w:h[:interlaced[:chr_drop[:par[:par2[:presize[:noup[:arnd]]]]]]]]
+ Scales the image with the software scaler (slow) and performs a YUV<->RGB
+ colorspace conversion (see also ``--sws``).
+
+ <w>,<h>
+ scaled width/height (default: original width/height)
+
+ *NOTE*: If ``--zoom`` is used, and underlying filters (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.
+
+ <interlaced>
+ 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>] (see also ``--sws``)
+ Set some scaling parameters depending on the type of scaler selected
+ with ``--sws``.
+
+ | --sws=2 (bicubic): B (blurring) and C (ringing)
+ | 0.00:0.60 default
+ | 0.00:0.75 VirtualDub's "precise bicubic"
+ | 0.00:0.50 Catmull-Rom spline
+ | 0.33:0.33 Mitchell-Netravali spline
+ | 1.00:0.00 cubic B-spline
+
+ --sws=7 (gaussian): sharpness (0 (soft) - 100 (sharp))
+
+ --sws=9 (lanczos): filter length (1-10)
+
+ <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)
+
+ <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
+ filter chain. Aspect can be given as a fraction (4/3) or floating point
+ number (1.33). Alternatively, you may specify the exact display width and
+ height desired. Note that this filter does *not* do any scaling itself; it
+ just 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``
+ Specifies a display resolution of 800x600 for a 4/3 aspect video,
+ or 800x450 for a 16/9 aspect video.
+
+ <aspect-method>
+ Modifies 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``
+ Specifies a display resolution of at most 800x600, or smaller, in
+ order to keep aspect.
+
+ <r>
+ Rounds up to make both width and height divisible by <r> (default: 1).
+
+yvu9
+ Forces software YVU9 to YV12 colorspace conversion. Deprecated in favor of
+ the software scaler.
+
+yuvcsp
+ Clamps YUV color values to the CCIR 601 range without doing real
+ conversion.
+
+palette
+ RGB/BGR 8 -> 15/16/24/32bpp colorspace conversion using palette.
+
+format[=fourcc[:outfourcc]]
+ Restricts the colorspace for the next filter without doing any conversion.
+ Use together with the scale filter for a real conversion.
+
+ *NOTE*: For a list of available formats see ``format=fmt=help``.
+
+ <fourcc>
+ format name like rgb15, bgr24, yv12, etc (default: yuy2)
+ <outfourcc>
+ Format name that should be substituted for the output. If this is not
+ 100% compatible with the <fourcc> value it will crash.
+
+ *EXAMPLE*
+
+ ====================== =====================
+ Valid Invalid (will crash)
+ ====================== =====================
+ ``format=rgb24:bgr24`` ``format=rgb24:yv12``
+ ``format=yuyv:yuy2``
+ ====================== =====================
+
+noformat[=fourcc]
+ Restricts the colorspace for the next filter without doing any conversion.
+ Unlike the format filter, 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[=filter1[:option1[:option2...]]/[-]filter2...]
+ Enables the specified chain of postprocessing subfilters. Subfilters must
+ be separated by '/' and can be disabled by prepending a '-'. Each
+ subfilter and some options have a short and a long name that can be used
+ interchangeably, i.e. dr/dering are the same. All subfilters share common
+ options to determine their scope:
+
+ a/autoq
+ Automatically switch the subfilter off if the CPU is too slow.
+ c/chrom
+ Do chrominance filtering, too (default).
+ y/nochrom
+ Do luminance filtering only (no chrominance).
+ n/noluma
+ Do chrominance filtering only (no luminance).
+
+ *NOTE*: ``--pphelp`` shows a list of available subfilters.
+
+ Available subfilters are:
+
+ hb/hdeblock[:difference[:flatness]]
+ horizontal deblocking filter
+
+ :<difference>: Difference factor where higher values mean more
+ deblocking (default: 32).
+ :<flatness>: Flatness threshold where lower values mean more
+ deblocking (default: 39).
+
+ vb/vdeblock[:difference[:flatness]]
+ vertical deblocking filter
+
+ :<difference>: Difference factor where higher values mean more
+ deblocking (default: 32).
+ :<flatness>: Flatness threshold where lower values mean more
+ deblocking (default: 39).
+
+ ha/hadeblock[:difference[:flatness]]
+ accurate horizontal deblocking filter
+
+ :<difference>: Difference factor where higher values mean more
+ deblocking (default: 32).
+ :<flatness>: Flatness threshold where lower values mean more
+ deblocking (default: 39).
+
+ va/vadeblock[:difference[:flatness]]
+ accurate vertical deblocking filter
+
+ :<difference>: Difference factor where higher values mean more
+ deblocking (default: 32).
+ :<flatness>: Flatness threshold where lower values mean more
+ deblocking (default: 39).
+
+ The horizontal and vertical deblocking filters share the difference and
+ flatness values so you cannot set different horizontal and vertical
+ thresholds.
+
+ h1/x1hdeblock
+ experimental horizontal deblocking filter
+
+ v1/x1vdeblock
+ experimental vertical deblocking filter
+
+ dr/dering
+ deringing filter
+
+ tn/tmpnoise[:threshold1[:threshold2[:threshold3]]]
+ temporal noise reducer
+
+ :<threshold1>: larger -> stronger filtering
+ :<threshold2>: larger -> stronger filtering
+ :<threshold3>: larger -> stronger filtering
+
+ al/autolevels[:f/fullyrange]
+ automatic brightness / contrast correction
+
+ :f/fullyrange: Stretch luminance to (0-255).
+
+ lb/linblenddeint
+ Linear blend deinterlacing filter that deinterlaces the given block by
+ filtering all lines with a (1 2 1) filter.
+
+ li/linipoldeint
+ Linear interpolating deinterlacing filter that deinterlaces the given
+ block by linearly interpolating every second line.
+
+ ci/cubicipoldeint
+ Cubic interpolating deinterlacing filter deinterlaces the given block
+ by cubically interpolating every second line.
+
+ md/mediandeint
+ Median deinterlacing filter that deinterlaces the given block by
+ applying a median filter to every second line.
+
+ fd/ffmpegdeint
+ FFmpeg deinterlacing filter that deinterlaces the given block by
+ filtering every second line with a (-1 4 2 4 -1) filter.
+
+ l5/lowpass5
+ Vertically applied FIR lowpass deinterlacing filter that deinterlaces
+ the given block by filtering all lines with a (-1 2 6 2 -1) filter.
+
+ fq/forceQuant[:quantizer]
+ Overrides the quantizer table from the input with the constant
+ quantizer you specify.
+
+ :<quantizer>: quantizer to use
+
+ de/default
+ default pp filter combination (hb:a,vb:a,dr:a)
+
+ fa/fast
+ fast pp filter combination (h1:a,v1:a,dr:a)
+
+ ac
+ high quality pp filter combination (ha:a:128:7,va:a,dr:a)
+
+ *EXAMPLE*:
+
+ ``--vf=pp=hb/vb/dr/al``
+ horizontal and vertical deblocking, deringing and automatic
+ brightness/contrast
+
+ ``--vf=pp=de/-al``
+ default filters without brightness/contrast correction
+
+ ``--vf=pp=default/tmpnoise:1:2:3``
+ Enable default filters & temporal denoiser.
+
+ ``--vf=pp=hb:y/vb:a``
+ Horizontal deblocking on luminance only, and switch vertical
+ deblocking on or off automatically depending on available CPU time.
+
+spp[=quality[:qp[:mode]]]
+ Simple postprocessing filter that compresses and decompresses the image at
+ several (or - in the case of quality level 6 - all) shifts and averages
+ the results.
+
+ <quality>
+ 0-6 (default: 3)
+
+ <qp>
+ Force quantization parameter (default: 0, use QP from video).
+
+ <mode>
+
+ :0: hard thresholding (default)
+ :1: soft thresholding (better deringing, but blurrier)
+ :4: like 0, but also use B-frames' QP (may cause flicker)
+ :5: like 1, but also use B-frames' QP (may cause flicker)
+
+uspp[=quality[:qp]]
+ Ultra simple & slow postprocessing filter that compresses and decompresses
+ the image at several (or - in the case of quality level 8 - all) shifts
+ and averages the results.
+
+ The way this differs from the behavior of spp is that uspp actually
+ encodes & decodes each case with libavcodec Snow, whereas spp uses a
+ simplified intra only 8x8 DCT similar to MJPEG.
+
+ <quality>
+ 0-8 (default: 3)
+
+ <qp>
+ Force quantization parameter (default: 0, use QP from video).
+
+fspp[=quality[:qp[:strength[:bframes]]]]
+ faster version of the simple postprocessing filter
+
+ <quality>
+ 4-5 (equivalent to spp; default: 4)
+
+ <qp>
+ Force quantization parameter (default: 0, use QP from video).
+
+ <-15-32>
+ 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 flicker)
+
+pp7[=qp[:mode]]
+ Variant of the spp filter, similar to spp=6 with 7 point DCT where only
+ the center sample is used after IDCT.
+
+ <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 filter
+
+ <equation>
+ some equation like ``2+2*sin(PI*qp)``
+
+geq=equation
+ generic equation change filter
+
+ <equation>
+ Some equation, e.g. ``p(W-X\,Y)`` to flip 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 filtered plane,
+ e.g. 1,1 and 0.5,0.5 for YUV 4:2:0.
+ :p(x,y): returns the value of the pixel at location x/y of the current
+ plane.
+
+test
+ Generate various test patterns.
+
+rgbtest[=width:height]
+ Generate an RGB test pattern useful for detecting RGB vs BGR 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>
+ :1-31: fixed qscale
+ :32-: fixed bitrate in kbits
+
+ <fps>
+ force output fps (float value) (default: 0, autodetect based on height)
+
+dvbscale[=aspect]
+ Set up optimal scaling for DVB cards, scaling the x axis in hardware and
+ calculating the y axis scaling in software to keep aspect. Only useful
+ together with expand and scale.
+
+ <aspect>
+ Control aspect ratio, calculate as ``DVB_HEIGHT*ASPECTRATIO`` (default:
+ ``576*4/3=768``), set it to ``576*(16/9)=1024`` for a 16:9 TV.
+
+ *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.
+
+ :<0-100>: luma noise
+ :<0-100>: chroma noise
+ :u: uniform noise (gaussian otherwise)
+ :t: temporal noise (noise pattern changes between frames)
+ :a: averaged temporal noise (smoother, but a lot slower)
+ :h: high quality (slightly better looking, slightly slower)
+ :p: mix random noise with a (semi)regular pattern
+
+denoise3d[=luma_spatial:chroma_spatial:luma_tmp:chroma_tmp]
+ This filter aims to reduce image noise producing smooth images and making
+ still images really still (This should enhance compressibility.).
+
+ <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 filter. 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 filtering (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.
+
+ <-100-100>
+ initial brightness
+ <-100-100>
+ 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 floating point
+ values.
+
+ <0.1-10>
+ initial gamma value (default: 1.0)
+ <-2-2>
+ initial contrast, where negative values result in a negative image
+ (default: 1.0)
+ <-1-1>
+ initial brightness (default: 0.0)
+ <0-3>
+ initial saturation (default: 1.0)
+ <0.1-10>
+ gamma value for the red component (default: 1.0)
+ <0.1-10>
+ gamma value for the green component (default: 1.0)
+ <0.1-10>
+ gamma value for the blue component (default: 1.0)
+ <0-1>
+ The weight parameter can be used to reduce the effect of a high gamma
+ value on bright image areas, e.g. keep them from getting overamplified
+ and just plain white. A value of 0.0 turns the gamma correction all
+ the way down while 1.0 leaves it at its full strength (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.
+
+ <-180-180>
+ initial hue (default: 0.0)
+ <-100-100>
+ 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 filter packs the planar 4:2:0 data into YUY2 (4:2:2) format
+ with the chroma lines in their proper locations, so that in any given
+ scanline, the luma and chroma data both come from the same field.
+
+ <mode>
+ Select the sampling mode.
+
+ :0: nearest-neighbor sampling, fast but incorrect
+ :1: linear interpolation (default)
+
+decimate[=max:hi:lo:frac]
+ Drops frames that do not differ greatly from the previous frame in order
+ to reduce framerate. The main use of this filter is for very-low- bitrate
+ encoding (e.g. streaming over dialup modem), but it could in theory be
+ used for fixing 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 each pixel, or the same spread out differently over the
+ block.
+
+dint[=sense:level]
+ The drop-deinterlace (dint) filter detects and drops the first from a set
+ of interlaced video frames.
+
+ <0.0-1.0>
+ relative difference between neighboring pixels (default: 0.1)
+ <0.0-1.0>
+ What part of the image has to be detected as interlaced to drop the
+ frame (default: 0.15).
+
+lavcdeint (OBSOLETE)
+ FFmpeg deinterlacing filter, same as ``--vf=pp=fd``
+
+kerndeint[=thresh[:map[:order[:sharp[:twoway]]]]]
+ Donald Graft's adaptive kernel deinterlacer. Deinterlaces parts of a video
+ if a configurable threshold is exceeded.
+
+ <0-255>
+ threshold (default: 10)
+ <map>
+ :0: Ignore pixels exceeding the threshold (default).
+ :1: Paint pixels exceeding the threshold white.
+
+ <order>
+ :0: Leave fields alone (default).
+ :1: Swap fields.
+
+ <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
+ Apply effect on luma component.
+
+ c
+ 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.5-1.5).
+
+ :<0: blur
+ :>0: sharpen
+
+swapuv
+ Swap U & V plane.
+
+il[=d|i][s][:[d|i][s]]
+ (De)interleaves lines. The goal of this filter is to add the ability to
+ process interlaced images pre-field without deinterlacing them. You can
+ filter your interlaced DVD and play it on a TV without breaking the
+ interlacing. While deinterlacing (with the postprocessing filter) removes
+ interlacing permanently (by smoothing, averaging, etc) deinterleaving
+ splits the frame into 2 fields (so called half pictures), so you can
+ process (filter) them independently and then re-interleave them.
+
+ :d: deinterleave (placing one above the other)
+ :i: interleave
+ :s: swap fields (exchange even & odd lines)
+
+fil[=i|d]
+ (De)interleaves lines. This filter is very similar to the il filter but
+ much faster, the main disadvantage is that it does not always work.
+ Especially if combined with other filters it may produce randomly messed
+ up images, so be happy if it works but do not complain if it does not for
+ your combination of filters.
+
+ :d: Deinterleave fields, placing them side by side.
+ :i: Interleave fields again (reversing the effect of fil=d).
+
+field[=n]
+ Extracts a single field from an interlaced image using stride arithmetic
+ to avoid wasting CPU time. The optional argument n specifies whether to
+ extract the even or the odd field (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 film framerate. This was the first and most
+ primitive inverse telecine filter to be added to MPlayer. It works by
+ latching onto the telecine 3:2 pattern and following it as long as
+ possible. This makes it suitable for perfectly-telecined material, even in
+ the presence of a fair degree of noise, but it will fail in the presence
+ of complex post-telecine edits. Development on this filter is no longer
+ taking place, as ivtc, pullup, and filmdint are better for most
+ applications. The following arguments (see syntax above) may be used to
+ control detc's behavior:
+
+ <dr>
+ Set the frame dropping mode.
+
+ :0: Do not drop frames to maintain fixed 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.
+
+ <am>
+ Analysis mode.
+
+ :0: Fixed pattern with initial frame number specified by <fr>.
+ :1: aggressive search for telecine pattern (default)
+
+ <fr>
+ Set initial frame number in sequence. 0-2 are the three clean
+ progressive frames; 3 and 4 are the two interlaced frames. The
+ default, -1, means 'not in telecine sequence'. The number specified
+ 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.
+
+ivtc[=1]
+ Experimental 'stateless' inverse telecine filter. Rather than trying to
+ lock on to a pattern like the detc filter does, ivtc makes its decisions
+ independently for each frame. This will give much better results for
+ material that has undergone heavy editing after telecine was applied, but
+ as a result it is not as forgiving of noisy input, for example TV capture.
+ The optional parameter (ivtc=1) corresponds to the dr=1 option for the
+ detc filter, and should not be used with MPlayer. Further development on
+ ivtc has stopped, as the pullup and filmdint filters appear to be much
+ more accurate.
+
+pullup[=jl:jr:jt:jb:sb:mp]
+ Third-generation pulldown reversal (inverse telecine) filter, capable of
+ handling mixed hard-telecine, 24000/1001 fps progressive, and 30000/1001
+ fps progressive content. The pullup filter is designed to be much more
+ robust than detc or ivtc, by taking advantage of future context in making
+ its decisions. Like ivtc, pullup is stateless in the sense that it does
+ not lock onto a pattern to follow, but it instead looks forward to the
+ following fields in order to identify matches and rebuild progressive
+ frames. It is still under development, but believed to be quite accurate.
+
+ jl, jr, jt, and jb
+ These options set the amount of "junk" to ignore at the left, right,
+ top, and bottom of the image, respectively. Left/right are in units of
+ 8 pixels, while top/bottom are in units of 2 lines. The default is 8
+ pixels on each side.
+
+ sb (strict breaks)
+ Setting this option to 1 will reduce the chances of pullup generating
+ an occasional mismatched frame, but it may also cause an excessive
+ number of frames to be dropped during high motion sequences.
+ Conversely, setting it to -1 will make pullup match fields more
+ easily. This may help processing of video where there is slight
+ blurring between the fields, but may also cause there to be interlaced
+ frames in the output.
+
+ mp (metric plane)
+ This option may be set to 1 or 2 to use a chroma plane instead of the
+ luma plane for doing pullup's 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.
+
+filmdint[=options]
+ Inverse telecine filter, similar to the pullup filter above. It is
+ designed to handle any pulldown pattern, including mixed soft and hard
+ telecine and limited support for movies that are slowed down or sped up
+ from their original framerate for TV. Only the luma plane is used to find
+ the frame breaks. If a field has no match, it is deinterlaced with simple
+ linear approximation. If the source is MPEG-2, this must be the first
+ filter to allow access to the field-flags set by the MPEG-2 decoder.
+ Depending on the source MPEG, you may be fine ignoring this advice, as
+ long as you do not see lots of "Bottom-first field" warnings. With no
+ options it does normal inverse telecine. When this filter is used with
+ MPlayer, it will result in an uneven framerate during playback, but it is
+ still generally better than using pp=lb or no deinterlacing at all.
+ Multiple options can be specified separated by /.
+
+ crop=<w>:<h>:<x>:<y>
+ Just like the crop filter, but faster, and works on mixed hard and
+ soft telecined 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 filter will output ofps frames. This
+ could be used to filter 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 fields.
+
+ 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
+ specified, MMX2 and 3DNow! are auto-detected, use this option to
+ override auto-detection.
+
+ fast=<n>
+ The larger n will speed up the filter at the expense of accuracy. The
+ default value is n=3. If n is odd, a frame immediately following a
+ frame marked with the REPEAT_FIRST_FIELD MPEG flag is assumed to be
+ progressive, thus filter will not spend any time on soft-telecined
+ MPEG-2 content. This is the only effect of this flag if MMX2 or 3DNow!
+ is available. Without MMX2 and 3DNow, if n=0 or 1, the same
+ calculations will be used as with n=2 or 3. If n=2 or 3, the number of
+ luma levels used to find the frame breaks is reduced from 256 to 128,
+ which results in a faster filter without losing much accuracy. If n=4
+ or 5, a faster, but much less accurate metric will be used to find the
+ frame breaks, which is more likely to misdetect high vertical detail
+ as interlaced content.
+
+ verbose=<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 fields. Defaults to 128.
+
+ diff_thres=<n>
+ Threshold to detect temporal change of a field. Default is 128.
+
+ sad_thres=<n>
+ Sum of Absolute Difference threshold, default is 64.
+
+divtc[=options]
+ Inverse telecine for deinterlaced video. If 3:2-pulldown telecined video
+ has lost one of the fields or is deinterlaced using a method that keeps
+ one field and interpolates the other, the result is a juddering video that
+ has every fourth frame duplicated. This filter is intended to find and
+ drop those duplicates and restore the original film framerate. 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
+ filter can resync again. Two pass mode avoids this by analyzing the whole
+ video beforehand so it will have forward knowledge about the phase changes
+ and can resync at the exact spot. These passes do *not* correspond to pass
+ one and two of the encoding process. You must run an extra pass using
+ divtc pass one before the actual encoding throwing the resulting video
+ away. Use ``--nosound --ovc=raw -o /dev/null`` to avoid wasting CPU power
+ for this pass. You may add something like ``crop=2:2:0:0`` after divtc to
+ speed things up even more. Then use divtc pass two for the actual
+ encoding. If you use multiple encoder passes, use divtc pass two for all
+ of them. The options are:
+
+ pass=1|2
+ Use two pass mode.
+
+ file=<filename>
+ Set the two pass log filename (default: ``framediff.log``).
+
+ threshold=<value>
+ Set the minimum strength the telecine pattern must have for the filter
+ to believe in it (default: 0.5). This is used to avoid recognizing
+ false pattern from the parts of the video that are very dark or very
+ still.
+
+ window=<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 fixed 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 finds it, but this option can be used to fix
+ the possible juddering at the beginning. The first pass of the two
+ pass mode also uses this, so if you save the output from the first
+ pass, you get constant phase result.
+
+ deghost=<value>
+ Set the deghosting threshold (0-255 for one pass mode, -255-255 for
+ two pass mode, default 0). If nonzero, deghosting mode is used. This
+ is for video that has been deinterlaced by blending the fields
+ together instead of dropping one of the fields. Deghosting amplifies
+ 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 specified value. If two
+ pass mode is used, then negative value can be used to make the filter
+ analyze the whole video in the beginning of pass-2 to determine
+ whether it needs deghosting or not and then select either zero or the
+ absolute value of the parameter. Specify this option for pass-2, it
+ makes no difference on pass-1.
+
+phase[=t|b|p|a|u|T|B|A|U][:v]
+ Delay interlaced video by one field time so that the field order changes.
+ The intended use is to fix PAL movies that have been captured with the
+ opposite field order to the film-to-video transfer. The options are:
+
+ t
+ Capture field order top-first, transfer bottom-first. Filter will
+ delay the bottom field.
+
+ b
+ Capture bottom-first, transfer top-first. Filter will delay the top
+ field.
+
+ p
+ Capture and transfer with the same field order. This mode only exists
+ for the documentation of the other options to refer to, but if you
+ actually select it, the filter will faithfully do nothing ;-)
+
+ a
+ Capture field order determined automatically by field flags, transfer
+ opposite. Filter selects among t and b modes on a frame by frame basis
+ using field flags. If no field information is available, then this
+ works just like u.
+
+ u
+ Capture unknown or varying, transfer opposite. Filter selects among t
+ and b on a frame by frame basis by analyzing the images and selecting
+ the alternative that produces best match between the fields.
+
+ T
+ Capture top-first, transfer unknown or varying. Filter selects among t
+ and p using image analysis.
+
+ B
+ Capture bottom-first, transfer unknown or varying. Filter selects
+ among b and p using image analysis.
+
+ A
+ Capture determined by field flags, transfer unknown or varying. Filter
+ selects among t, b and p using field flags and image analysis. If no
+ field information is available, then this works just like U. This is
+ the default mode.
+
+ U
+ Both capture and transfer unknown or varying. Filter selects among t,
+ b and p using image analysis only.
+
+ v
+ Verbose operation. Prints the selected mode for each frame and the
+ average squared difference between fields for t, b, and p
+ alternatives.
+
+telecine[=start]
+ Apply 3:2 'telecine' process to increase framerate by 20%. This most
+ likely will not work correctly with MPlayer. The optional start parameter
+ tells the filter where in the telecine pattern to start (0-3).
+
+tinterlace[=mode]
+ Temporal field interlacing - merge pairs of frames into an interlaced
+ frame, halving the framerate. Even frames are moved into the upper field,
+ odd frames to the lower field. This can be used to fully reverse the
+ effect of the tfields filter (in mode 0). Available modes are:
+
+ :0: Move odd frames into the upper field, even into the lower field,
+ 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.
+ :4: Interleave even lines from even frames with odd lines from odd frames.
+ Height unchanged at half framerate.
+
+tfields[=mode[:field_dominance]]
+ Temporal field separation - split fields into frames, doubling the output
+ framerate.
+
+ <mode>
+ :0: Leave fields unchanged (will jump/flicker).
+ :1: Interpolate missing lines. (The algorithm used might not be so
+ good.)
+ :2: Translate fields by 1/4 pixel with linear interpolation (no jump).
+ :4: Translate fields by 1/4 pixel with 4tap filter (higher quality)
+ (default).
+
+ <field_dominance> (DEPRECATED)
+ :-1: auto (default) Only works if the decoder exports the appropriate
+ information and no other filters which discard that information
+ come before tfields in the filter chain, otherwise it falls back
+ to 0 (top field first).
+ :0: top field first
+ :1: bottom field first
+
+ *NOTE*: This option will possibly be removed in a future version. Use
+ ``--field-dominance`` instead.
+
+yadif=[mode[:field_dominance]]
+ Yet another deinterlacing filter
+
+ <mode>
+ :0: Output 1 frame for each frame.
+ :1: Output 1 frame for each field.
+ :2: Like 0 but skips spatial interlacing check.
+ :3: Like 1 but skips spatial interlacing check.
+
+ <field_dominance> (DEPRECATED)
+ Operates like tfields.
+
+ *NOTE*: This option will possibly be removed in a future version. Use
+ ``--field-dominance`` instead.
+
+mcdeint=[mode[:parity[:qp]]]
+ Motion compensating deinterlacer. It needs one field per frame as input
+ and must thus be used together with tfields=1 or yadif=1/3 or equivalent.
+
+ <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 field to use (note: no autodetection yet!).
+
+ <qp>
+ Higher values should result in a smoother motion vector field but less
+ optimal individual vectors.
+
+boxblur=radius:power[:radius:power]
+ box blur
+
+ <radius>
+ blur filter strength
+ <power>
+ number of filter applications
+
+sab=radius:pf:colorDiff[:radius:pf:colorDiff]
+ shape adaptive blur
+
+ <radius>
+ blur filter strength (~0.1-4.0) (slower if larger)
+ <pf>
+ prefilter strength (~0.1-2.0)
+ <colorDiff>
+ maximum difference between pixels to still be considered (~0.1-100.0)
+
+smartblur=radius:strength:threshold[:radius:strength:threshold]
+ smart blur
+
+ <radius>
+ blur filter strength (~0.1-5.0) (slower if larger)
+ <strength>
+ blur (0.0-1.0) or sharpen (-1.0-0.0)
+ <threshold>
+ filter all (0), filter flat areas (0-30) or filter edges (-30-0)
+
+perspective=x0:y0:x1:y1:x2:y2:x3:y3:t
+ Correct the perspective of movies not filmed perpendicular to the screen.
+
+ <x0>,<y0>,...
+ coordinates of the top left, top right, bottom left, bottom right
+ corners
+ <t>
+ linear (0) or cubic resampling (1)
+
+2xsai
+ Scale and smooth the image with the 2x scale and interpolate algorithm.
+
+1bpp
+ 1bpp bitmap to YUV/BGR 8/15/16/32 conversion
+
+down3dright[=lines]
+ Reposition and resize stereoscopic images. Extracts both stereo fields and
+ places them side by side, resizing them to maintain the original movie
+ aspect.
+
+ <lines>
+ number of lines to select from the middle of the image (default: 12)
+
+bmovl=hidden:opaque:fifo
+ The bitmap overlay filter reads bitmaps from a FIFO and displays them on
+ top of the movie, allowing some transformations on the image. See also
+ ``TOOLS/bmovl-test.c`` for a small bmovl test program.
+
+ <hidden>
+ Set the default value of the 'hidden' flag (0=visible, 1=hidden).
+ <opaque>
+ Set the default value of the 'opaque' flag (0=transparent, 1=opaque).
+ <fifo>
+ path/filename for the FIFO (named pipe connecting ``mplayer
+ --vf=bmovl`` to the controlling application)
+
+ FIFO commands are:
+
+ RGBA32 width height xpos ypos alpha clear
+ followed by width*height*4 Bytes of raw RGBA32 data.
+ ABGR32 width height xpos ypos alpha clear
+ followed by width*height*4 Bytes of raw ABGR32 data.
+ RGB24 width height xpos ypos alpha clear
+ followed by width*height*3 Bytes of raw RGB24 data.
+ BGR24 width height xpos ypos alpha clear
+ followed by width*height*3 Bytes of raw BGR24 data.
+ ALPHA width height xpos ypos alpha
+ Change alpha transparency of the specified area.
+ CLEAR width height xpos ypos
+ Clear area.
+ OPAQUE
+ Disable all alpha transparency. Send "ALPHA 0 0 0 0 0" to enable it
+ again.
+ HIDE
+ Hide bitmap.
+ SHOW
+ Show bitmap.
+
+ Arguments are:
+
+ <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 ALPHA-commands to set the area to -225, -200, -175 etc for
+ a nice fade-in-effect! ;)
+
+ :0: same as original
+ :255: Make everything opaque.
+ :-255: Make everything transparent.
+
+ <clear>
+ Clear the framebuffer before blitting.
+
+ :0: The image will just be blitted on top of the old one, so you do
+ not need to send 1.8MB of RGBA32 data every time a small part of
+ the screen is updated.
+ :1: clear
+
+framestep=I|[i]step
+ Renders only every nth frame or every intra frame (keyframe).
+
+ If you call the filter with I (uppercase) as the parameter, then *only*
+ keyframes are rendered. For DVDs it generally means one in every 15/12
+ frames (IBBPBBPBBPBBPBB), for AVI it means every scene change or every
+ keyint value.
+
+ When a keyframe is found, an 'I!' string followed by a newline character
+ is printed, leaving the current line of MPlayer 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 filter with a numeric parameter 'step' then only one in
+ every 'step' frames is rendered.
+
+ If you put an 'i' (lowercase) before the number then an 'I!' is printed
+ (like the I parameter).
+
+ If you give only the i then nothing is done to the frames, only I! is
+ printed.
+
+tile=xtiles:ytiles:output:start:delta
+ Tile a series of images into a single, bigger image. If you omit a
+ parameter or use a value less than 0, then the default value is used. You
+ can also stop when you are satisfied (``... --vf=tile=10:5 ...``). It is
+ probably a good idea to put the scale filter before the tile :-)
+
+ The parameters are:
+
+ <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
+ finding the right x,y,w,h parameters.
+ file=<file>
+ You can specify a text file to load the coordinates from. Each line
+ must have a timestamp (in seconds, and in ascending order) and the
+ "x:y:w:h:t" coordinates (*t* can be omitted).
+
+remove-logo=/path/to/logo_bitmap_file_name.pgm
+ Suppresses a TV station logo, using a PGM or PPM image file to determine
+ which pixels comprise the logo. The width and height of the image file
+ must match those of the video stream being processed. Uses the filter
+ image and a circular blur algorithm to remove the logo.
+
+ ``/path/to/logo_bitmap_file_name.pgm``
+ [path] + filename of the filter image.
+
+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 first available number -
+ no files will be overwritten. The filter has no overhead when not used. It
+ does however break playback in some cases, especially VDPAU hardware
+ decoding is incompatible with the filter. Thus it is not completely safe to
+ add the filter to default configuration "just in case you might want to
+ take screenshots". Make sure that the screenshot filter is added after all
+ other filters whose effect you want to record on the saved image. E.g. it
+ should be the last filter if you want to have an exact screenshot of what
+ you see on the monitor.
+
+ass
+ Moves SSA/ASS subtitle rendering to an arbitrary point in the filter
+ chain. See the ``--ass`` option.
+
+ *EXAMPLE*:
+
+ ``--vf=ass,screenshot``
+ Moves SSA/ASS rendering before the screenshot filter. Screenshots
+ taken this way will contain subtitles.
+
+blackframe[=amount:threshold]
+ Detect frames that are (almost) completely black. Can be useful to detect
+ chapter transitions or commercials. Output lines 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).
+
+stereo3d[=in:out]
+ Stereo3d converts between different stereoscopic image formats.
+
+ <in>
+ Stereoscopic image format of input. Possible values:
+
+ sbsl or side_by_side_left_first
+ side by side parallel (left eye left, right eye right)
+ sbsr or side_by_side_right_first
+ side by side crosseye (right eye left, left eye right)
+ abl or above_below_left_first
+ above-below (left eye above, right eye below)
+ abl or above_below_right_first
+ above-below (right eye above, left eye below)
+ ab2l or above_below_half_height_left_first
+ above-below with half height resolution (left eye above, right eye
+ below)
+ ab2r or above_below_half_height_right_first
+ above-below with half height resolution (right eye above, left eye
+ below)
+
+ <out>
+ Stereoscopic image format of output. Possible values are all the input
+ formats as well as:
+
+ arcg or anaglyph_red_cyan_gray
+ anaglyph red/cyan gray (red filter on left eye, cyan filter on
+ right eye)
+ arch or anaglyph_red_cyan_half_color
+ anaglyph red/cyan half colored (red filter on left eye, cyan filter
+ on right eye)
+ arcc or anaglyph_red_cyan_color
+ anaglyph red/cyan color (red filter on left eye, cyan filter on
+ right eye)
+ arcd or anaglyph_red_cyan_dubois
+ anaglyph red/cyan color optimized with the least squares
+ projection of dubois (red filter on left eye, cyan filter on right
+ eye)
+ agmg or anaglyph_green_magenta_gray
+ anaglyph green/magenta gray (green filter on left eye, magenta
+ filter on right eye)
+ agmh or anaglyph_green_magenta_half_color
+ anaglyph green/magenta half colored (green filter on left eye,
+ magenta filter on right eye)
+ agmc or anaglyph_green_magenta_color
+ anaglyph green/magenta colored (green filter on left eye, magenta
+ filter on right eye)
+ aybg or anaglyph_yellow_blue_gray
+ anaglyph yellow/blue gray (yellow filter on left eye, blue filter
+ on right eye)
+ aybh or anaglyph_yellow_blue_half_color
+ anaglyph yellow/blue half colored (yellow filter on left eye, blue
+ filter on right eye)
+ aybc or anaglyph_yellow_blue_color
+ anaglyph yellow/blue colored (yellow filter on left eye, blue
+ filter on right eye)
+ irl or interleave_rows_left_first
+ Interleaved rows (left eye has top row, right eye starts on next
+ row)
+ irr or interleave_rows_right_first
+ Interleaved rows (right eye has top row, left eye starts on next
+ row)
+ ml or mono_left
+ mono output (left eye only)
+ mr or mono_right
+ mono output (right eye only)
+
+gradfun[=strength[:radius]]
+ Fix the banding artifacts that are sometimes introduced into nearly flat
+ regions by truncation to 8bit colordepth. Interpolates the gradients that
+ should go where the bands are, and dithers them.
+
+ This filter is designed for playback only. Do not use it prior to lossy
+ compression, because compression tends to lose the dither and bring back
+ the bands.
+
+ <strength>
+ Maximum amount by which the filter will change any one pixel. Also the
+ threshold for detecting nearly flat regions (default: 1.2).
+
+ <radius>
+ Neighborhood to fit the gradient to. Larger radius makes for smoother
+ gradients, but also prevents the filter from modifying pixels near
+ detailed regions (default: 16).
+
+fixpts[=options]
+ Fixes the presentation timestamps (PTS) of the frames. By default, the PTS
+ passed to the next filter is dropped, but the following options can change
+ that:
+
+ print
+ Print the incoming PTS.
+
+ fps=<fps>
+ Specify a frame per second value.
+
+ start=<pts>
+ Specify an initial value for the PTS.
+
+ autostart=<n>
+ Uses the *n*\th incoming PTS as the initial PTS. All previous PTS are
+ kept, so setting a huge value or -1 keeps the PTS intact.
+
+ autofps=<n>
+ Uses the *n*\th incoming PTS after the end of autostart to determine
+ the framerate.
+
+ *EXAMPLE*:
+
+ ``--vf=fixpts=fps=24000/1001,ass,fixpts``
+ Generates a new sequence of PTS, uses it for ASS subtitles, then drops
+ it. Generating a new sequence is useful when the timestamps are reset
+ during the program; this is frequent on DVDs. Dropping it may be
+ necessary to avoid confusing encoders.
+
+ *NOTE*: Using this filter together with any sort of seeking (including
+ ``--ss``) may make demons fly out of your nose.
diff --git a/DOCS/man/en/vo.rst b/DOCS/man/en/vo.rst
new file mode 100644
index 0000000000..fd587c5460
--- /dev/null
+++ b/DOCS/man/en/vo.rst
@@ -0,0 +1,731 @@
+.. _video_outputs:
+
+VIDEO OUTPUT DRIVERS
+====================
+
+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 to enable hardware accelerated playback. If you
+ cannot use a hardware specific 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 specific XVideo adaptor (check xvinfo results).
+ port=<number>
+ Select a specific 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 the ``--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 flicker in some cases).
+ bg
+ Set the colorkey as window background.
+ auto
+ Let Xv draw the colorkey.
+
+x11 (X11 only)
+ Shared memory video output driver without hardware acceleration that works
+ whenever X11 is present.
+
+xover (X11 only)
+ Adds X11 support to all overlay based video output drivers. Currently only
+ supported by tdfx_vid.
+
+ <vo_driver>
+ Select the driver to use as source to overlay on top of X11.
+
+vdpau (X11 only)
+ Uses the VDPAU interface to display and optionally also decode video.
+ Hardware decoding is used with ``--vc=ffmpeg12vdpau``,
+ ``--vc=ffwmv3vdpau``, ``--vc=ffvc1vdpau``, ``--vc=ffh264vdpau`` or
+ ``--vc=ffodivxvdpau``.
+
+ sharpen=<-1-1>
+ For positive values, apply a sharpening algorithm to the video, for
+ negative values a blurring algorithm (default: 0).
+ denoise=<0-1>
+ Apply a noise reduction algorithm to the video (default: 0, no noise
+ reduction).
+ deint=<-4-4>
+ Select deinterlacing mode (default: -3). Positive values choose mode
+ and enable deinterlacing. Corresponding negative values select the
+ same deinterlacing mode, but do not enable deinterlacing on startup
+ (useful in configuration files to specify what mode will be enabled by
+ the "D" key). All modes respect ``--field-dominance``.
+
+ 0
+ same as -3
+ 1
+ Show only first field, similar to ``--vf=field``.
+ 2
+ Bob deinterlacing, similar to ``--vf=tfields=1``.
+ 3
+ motion adaptive temporal deinterlacing. May lead to A/V desync
+ with slow video hardware and/or high resolution.
+ 4
+ motion adaptive temporal deinterlacing with edge-guided spatial
+ interpolation. Needs fast video hardware.
+ chroma-deint
+ Makes temporal deinterlacers operate both on luma and chroma (default).
+ Use no-chroma-deint 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.
+ hqscaling=<0-9>
+ 0
+ Use default VDPAU scaling (default).
+ 1-9
+ Apply high quality VDPAU scaling (needs capable hardware).
+ fps=<number>
+ Override autodetected display refresh rate value (the value is needed
+ for framedrop to allow video playback rates higher than display
+ refresh rate, and for vsync-aware frame timing adjustments). Default 0
+ means use autodetected value. A positive value is interpreted as a
+ refresh rate in Hz and overrides the autodetected value. A negative
+ value disables all timing adjustment and framedrop logic.
+ composite-detect
+ NVIDIA's current VDPAU implementation behaves somewhat differently
+ under a compositing window manager and does not give accurate frame
+ timing information. With this option enabled, the player tries to
+ detect whether a compositing window manager is active. If one is
+ detected, the player disables timing adjustments as if the user had
+ specified fps=-1 (as they would be based on incorrect input). This
+ means timing is somewhat less accurate than without compositing, but
+ with the composited mode behavior of the NVIDIA driver there is no
+ hard playback speed limit even without the disabled logic. Enabled by
+ default, use no-composite-detect to disable.
+ queuetime_windowed=<number> and queuetime_fs=<number>
+ Use VDPAU's presentation queue functionality to queue future video
+ frame changes at most this many milliseconds in advance (default: 50).
+ See below for additional information.
+ output_surfaces=<2-15>
+ Allocate this many output surfaces to display video frames (default:
+ 3). See below for additional information.
+
+ Using the VDPAU frame queueing functionality controlled by the queuetime
+ options makes MPlayer's frame flip timing less sensitive to system CPU
+ load and allows MPlayer to start decoding the next frame(s) slightly
+ earlier which can reduce jitter caused by individual slow-to-decode
+ frames. However the NVIDIA graphics drivers can make other window behavior
+ such as window moves choppy if VDPAU is using the blit queue (mainly
+ happens if you have the composite extension enabled) and this feature is
+ active. If this happens on your system and it bothers you then you can set
+ the queuetime value to 0 to disable this feature. The settings to use in
+ windowed and fullscreen mode are separate because there should be less
+ reason to disable this for fullscreen mode (as the driver issue shouldn't
+ affect the video itself).
+
+ You can queue more frames ahead by increasing the queuetime values and the
+ output_surfaces count (to ensure enough surfaces to buffer video for a
+ certain time ahead you need at least as many surfaces as the video has
+ frames during that time, plus two). This could help make video smoother in
+ some cases. The main downsides are increased video RAM requirements for
+ the surfaces and laggier display response to user commands (display
+ changes only become visible some time after they're queued). The graphics
+ driver implementation may also have limits on the length of maximum
+ queuing time or number of queued surfaces that work well or at all.
+
+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``/``--no-vm`` is mostly ignored, ``--fs`` behaves like ``--no-vm``
+ 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).
+
+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.
+
+corevideo (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``).
+
+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.
+ lvo
+ Activate the Linux Video Overlay on top of VESA mode.
+
+svga
+ 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.
+ 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.
+
+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 adding the options ``--dr=-noslices``
+
+ The code performs very few checks, so if a feature does not work, this
+ might be because it is not supported by your card/OpenGL implementation
+ even if you do not get any error message. Use ``glxinfo`` or a similar
+ tool to display the supported OpenGL extensions.
+
+ (no-)ati-hack
+ ATI drivers may give a corrupted image when PBOs are used (when using
+ ``--dr`` or `force-pbo`). This option fixes this, at the expense of
+ using a bit more memory.
+ (no-)force-pbo
+ Always uses PBOs to transfer textures even if this involves an extra
+ copy. Currently this gives a little extra speed with NVidia drivers
+ and a lot more speed with ATI drivers. May need ``--no-slices`` and
+ the ati-hack 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 fixed-size fonts. Disabled looks
+ much better with FreeType fonts and uses the borders in fullscreen
+ mode. Does not work correctly with ass subtitles (see ``--ass``), you
+ can instead render them without OpenGL 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.
+ 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.
+ yuv=<n>
+ Select the type of YUV to RGB conversion. The default is
+ auto-detection deciding between values 0 and 2.
+
+ 0
+ Use software conversion. Compatible with all OpenGL versions.
+ Provides brightness, contrast and saturation control.
+ 1
+ Same as 2. This used to use nVidia-specific extensions, which
+ didn't provide any advantages over using fragment programs, except
+ possibly on very ancient graphic cards. It produced a gray-ish
+ output, which is why it has been removed.
+ 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-specific method (for older cards). This uses an
+ ATI-specific 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.
+
+ 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 filtering (default).
+ 1
+ Use bicubic B-spline filtering (better quality). Needs one
+ additional texture unit. Older cards will not be able to handle
+ this for chroma at least in fullscreen mode.
+ 2
+ Use cubic filtering in horizontal, linear filtering in vertical
+ direction. Works on a few more cards than method 1.
+ 3
+ Same as 1 but does not use a lookup texture. Might be faster on
+ some cards.
+ 4
+ Use experimental unsharp masking with 3x3 support and a default
+ strength of 0.5 (see `filter-strength`).
+ 5
+ Use experimental unsharp masking with 5x5 support and a default
+ strength of 0.5 (see `filter-strength`).
+
+ cscale=<n>
+ Select the scaling function to use for chrominance scaling. For
+ details see `lscale`.
+ filter-strength=<value>
+ Set the effect strength for the `lscale`/`cscale` filters that support
+ it.
+ stereo=<value>
+ Select a method for stereo display. You may have to use ``--aspect`` to
+ fix the aspect value. Experimental, do not expect too much from it.
+
+ 0
+ Normal 2D display
+ 1
+ Convert side by side input to full-color red-cyan stereo.
+ 2
+ Convert side by side input to full-color green-magenta stereo.
+ 3
+ Convert side by side input to quadbuffered stereo. Only supported
+ by very few OpenGL cards.
+
+ The following options are only useful if writing your own fragment
+ programs.
+
+ customprog=<filename>
+ Load a custom fragment program from <filename>. See
+ ``TOOLS/edgedect.fp`` for an example.
+ customtex=<filename>
+ Load a custom "gamma ramp" texture from <filename>. 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.
+ (no-)mipmapgen
+ If enabled, mipmaps for the video are automatically generated. This
+ should be useful together with the customprog and the TXB instruction
+ to implement blur filters with a large radius. For most OpenGL
+ implementations this is very slow for any non-RGB formats. Default is
+ disabled.
+
+ Normally there is no reason to use the following options, they mostly
+ exist for testing purposes.
+
+ (no-)glfinish
+ Call ``glFinish()`` before swapping buffers. Slower but in some cases
+ more correct output (default: disabled).
+ (no-)manyfmts
+ Enables support for more (RGB and BGR) color formats (default:
+ enabled). Needs OpenGL version >= 1.2.
+ slice-height=<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 ``--no-slices``), 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.
+
+null
+ Produces no video output. Useful for benchmarking.
+
+aa
+ ASCII art video output driver that works on a text console. You can get a
+ list and an explanation of available suboptions by 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``.
+
+caca
+ Color ASCII art video output driver that works on a text console.
+
+bl
+ Video playback using the Blinkenlights UDP protocol. This driver is highly
+ hardware specific.
+
+ <subdevice>
+ Explicitly choose the Blinkenlights subdevice driver to use. It is
+ something like ``arcade:host=localhost:2323`` or
+ ``hdl:file=name1,file=name2``. You must specify a subdevice.
+
+ggi
+ 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 '.'.
+
+directfb
+ Play video using the DirectFB library.
+
+ (no-)input
+ Use the DirectFB instead of the MPlayer keyboard code (default:
+ enabled).
+ buffermode=single|double|triple
+ Double and triple buffering give best results if you want to avoid
+ tearing issues. Triple buffering is more efficient than double
+ buffering as it does not block MPlayer while waiting for the vertical
+ retrace. Single buffering should be avoided (default: single).
+ fieldparity=top|bottom
+ Control the output order for interlaced frames (default: disabled).
+ Valid values are top = top fields first, bottom = bottom fields first.
+ This option does not have any effect on progressive film material like
+ most MPEG movies are. You need to enable this option if you have
+ tearing issues or unsmooth motions watching interlaced film material.
+ layer=N
+ Will force layer with ID N for playback (default: -1 - auto).
+ dfbopts=<list>
+ Specify a parameter list for DirectFB.
+
+dfbmga
+ Matrox G400/G450/G550 specific video output driver that uses the DirectFB
+ library to make use of special hardware features. Enables CRTC2 (second
+ head), displaying video independently of the first head.
+
+ (no-)input
+ same as directfb (default: disabled)
+ buffermode=single|double|triple
+ same as directfb (default: triple)
+ fieldparity=top|bottom
+ same as directfb
+ (no-)bes
+ Enable the use of the Matrox BES (backend scaler) (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 field.
+ tvnorm=pal|ntsc|auto
+ Will set the TV norm of the Matrox card without the need for modifying
+ ``/etc/directfbrc`` (default: disabled). Valid norms are pal = PAL,
+ ntsc = NTSC. Special norm is auto (auto-adjust using PAL/NTSC) because
+ it decides which norm to use by looking at the framerate of the movie.
+
+mga (Linux only)
+ Matrox specific video output driver that makes use of the YUV back end
+ scaler on Gxxx cards through a kernel module. If you have a Matrox card,
+ this is the fastest option.
+
+ <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) (see also ``--dr``)
+ S3 Virge specific video output driver. This driver supports the card's YUV
+ conversion and scaling, double buffering and direct rendering features.
+ Use ``--vf=format=yuy2`` to get hardware-accelerated YUY2 rendering, which
+ is much faster than YV12 on this card.
+
+ <device>
+ Explicitly choose the fbdev device name to use (default: ``/dev/fb0``).
+
+wii (Linux only)
+ Nintendo Wii/GameCube specific video output driver.
+
+3dfx (Linux only)
+ 3dfx-specific video output driver that directly uses the 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-specific 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``).
+
+dxr3 (DXR3 only)
+ Sigma Designs em8300 MPEG decoder chip (Creative DXR3, Sigma Designs
+ Hollywood Plus) specific video output driver. See also the lavc video
+ filter.
+
+ overlay
+ Activates the overlay instead of TV-out.
+ prebuf
+ Turns on prebuffering.
+ sync
+ Will turn on the new sync-engine.
+ norm=<norm>
+ Specifies the TV norm.
+
+ :0: Does not change current norm (default).
+ :1: Auto-adjust using PAL/NTSC.
+ :2: Auto-adjust using PAL/PAL-60.
+ :3: PAL
+ :4: PAL-60
+ :5: NTSC
+
+ <0-3>
+ Specifies the device number to use if you have more than one em8300
+ card.
+
+ivtv (IVTV only)
+ Conexant CX23415 (iCompression iTVC15) or Conexant CX23416 (iCompression
+ iTVC16) MPEG decoder chip (Hauppauge WinTV PVR-150/250/350/500) specific
+ video output driver for TV-out. See also the lavc video filter.
+
+ <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.
+
+v4l2 (requires Linux 2.6.22+ kernel)
+ Video output driver for V4L2 compliant cards with built-in hardware MPEG
+ decoder. See also the lavc video filter.
+
+ <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
+ file if no DVB card is installed.
+
+ card=<1-4>
+ Specifies the device number to use if you have more than one DVB
+ output card (V3 API only, such as 1.x.y series drivers). If not
+ specified MPlayer will search the first usable card.
+ <filename>
+ output filename (default: ``./grab.mpg``)
+
+md5sum
+ Calculate MD5 sums of each frame and write them to a file. Supports RGB24
+ and YV12 colorspaces. Useful for debugging.
+
+ outfile=<value>
+ Specify the output filename (default: ``./md5sums``).
+
+yuv4mpeg
+ Transforms the video stream into a sequence of uncompressed YUV 4:2:0
+ images and stores it in a file (default: ``./stream.yuv``). The format is
+ the same as the one employed by mjpegtools, so this is useful if you want
+ to process the video with the mjpegtools suite. It supports the YV12
+ format. If your source file has a different format and is interlaced, make
+ sure to use ``--vf=scale=::1`` to ensure the conversion uses interlaced
+ mode. You can combine it with the ``--fixed-vo`` option to concatenate
+ files with the same dimensions and fps value.
+
+ interlaced
+ Write the output as interlaced frames, top field first.
+ interlaced_bf
+ Write the output as interlaced frames, bottom field first.
+ file=<filename>
+ Write the output to <filename> instead of the default ``stream.yuv``.
+
+ *NOTE*: If you do not specify any option the output is progressive (i.e.
+ not interlaced).
+
+gif89a
+ Output each frame into a single animated GIF file in the current
+ directory. It supports only RGB format with 24 bpp and the output is
+ converted to 256 colors.
+
+ <fps>
+ Float value to specify framerate (default: 5.0).
+ <output>
+ Specify the output filename (default: ``./out.gif``).
+
+ *NOTE*: You must specify the framerate before the filename or the
+ framerate will be part of the filename.
+
+ *EXAMPLE*: ``mplayer video.nut --vo=gif89a:fps=15:output=test.gif``
+
+jpeg
+ Output each frame into a JPEG file in the current directory. Each file
+ takes the frame number padded with leading zeros as name.
+
+ [no]progressive
+ Specify standard or progressive JPEG (default: noprogressive).
+ [no]baseline
+ Specify use of baseline or not (default: baseline).
+ optimize=<0-100>
+ optimization factor (default: 100)
+ smooth=<0-100>
+ smooth factor (default: 0)
+ quality=<0-100>
+ quality factor (default: 75)
+ outdir=<dirname>
+ Specify the directory to save the JPEG files to (default: ``./``).
+ subdirs=<prefix>
+ Create numbered subdirectories with the specified prefix to save the
+ files in instead of the current directory.
+ maxfiles=<value> (subdirs only)
+ Maximum number of files to be saved per subdirectory. Must be equal to
+ or larger than 1 (default: 1000).
+
+pnm
+ Output each frame into a PNM file in the current directory. Each file
+ takes the frame number padded with leading zeros as name. It supports PPM,
+ PGM and PGMYUV files in both raw and ASCII mode. See also ``pnm(5)``,
+ ``ppm(5)`` and ``pgm(5)``.
+
+ ppm
+ Write PPM files (default).
+ pgm
+ Write PGM files.
+ pgmyuv
+ Write PGMYUV files. PGMYUV is like PGM, but it also contains the U and
+ V plane, appended at the bottom of the picture.
+ raw
+ Write PNM files in raw mode (default).
+ ascii
+ Write PNM files in ASCII mode.
+ outdir=<dirname>
+ Specify the directory to save the PNM files to (default: ``./``).
+ subdirs=<prefix>
+ Create numbered subdirectories with the specified prefix to save the
+ files in instead of the current directory.
+ maxfiles=<value> (subdirs only)
+ Maximum number of files to be saved per subdirectory. Must be equal to
+ or larger than 1 (default: 1000).
+
+png
+ Output each frame into a PNG file in the current directory. Each file
+ takes the frame number padded with leading zeros as name. 24bpp RGB and
+ BGR formats are supported.
+
+ z=<0-9>
+ Specifies the compression level. 0 is no compression, 9 is maximum
+ compression.
+ alpha
+ Create PNG files with an alpha channel. Note that MPlayer in general
+ does not support alpha, so this will only be useful in some rare
+ cases.
+
+tga
+ Output each frame into a Targa file in the current directory. Each file
+ takes the frame number padded with leading zeros as name. The purpose of
+ this video output driver is to have a 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
+ filter.
+
+ *EXAMPLE*: ``mplayer video.nut --vf=format=bgr15 --vo=tga``
diff --git a/Makefile b/Makefile
index 3ef51bc584..27bd9d0258 100644
--- a/Makefile
+++ b/Makefile
@@ -451,10 +451,14 @@ DEP_FILES = $(patsubst %.S,%.d,$(patsubst %.cpp,%.d,$(patsubst %.c,%.d,$(SRCS_CO
ALL_PRG-$(MPLAYER) += mplayer$(EXESUF)
-INSTALL_TARGETS-$(MPLAYER) += install-mplayer \
+INSTALL_TARGETS-$(MPLAYER) += check_rst2man \
+ install-mplayer \
install-mplayer-man \
install-mplayer-msg
+INSTALL_NO_MAN_TARGETS-$(MPLAYER) += install-mplayer \
+ install-mplayer-msg
+
DIRS = . \
input \
libaf \
@@ -495,6 +499,9 @@ endif
all: $(ALL_PRG-yes) locales
+%.1: %.rst
+ rst2man $< $@
+
%.o: %.S
$(CC) $(DEPFLAGS) $(CFLAGS) -c -o $@ $<
@@ -594,8 +601,13 @@ stream/stream_dvdnav%: CFLAGS := $(CFLAGS_LIBDVDNAV) $(CFLAGS)
###### installation / clean / generic rules #######
+check_rst2man:
+ @which rst2man > /dev/null 2>&1 || (printf "\n\trst2man not found. You need the docutils (>= 0.7) to generate the manpages. Alternatively you can use 'install-no-man' rule.\n\n" && exit 1)
+
install: $(INSTALL_TARGETS-yes)
+install-no-man: $(INSTALL_NO_MAN_TARGETS-yes)
+
install-dirs:
if test ! -d $(BINDIR) ; then $(INSTALL) -d $(BINDIR) ; fi
if test ! -d $(CONFDIR) ; then $(INSTALL) -d $(CONFDIR) ; fi
@@ -607,12 +619,12 @@ install-%: %$(EXESUF) install-dirs
install-mplayer-man: $(foreach lang,$(MAN_LANGS),install-mplayer-man-$(lang))
install-mplayer-msg: $(foreach lang,$(MSG_LANGS),install-mplayer-msg-$(lang))
-install-mplayer-man-en:
+install-mplayer-man-en: DOCS/man/en/mplayer.1
if test ! -d $(MANDIR)/man1 ; then $(INSTALL) -d $(MANDIR)/man1 ; fi
$(INSTALL) -m 644 DOCS/man/en/mplayer.1 $(MANDIR)/man1/
define MPLAYER_MAN_RULE
-install-mplayer-man-$(lang):
+install-mplayer-man-$(lang): DOCS/man/$(lang)/mplayer.1
if test ! -d $(MANDIR)/$(lang)/man1 ; then $(INSTALL) -d $(MANDIR)/$(lang)/man1 ; fi
$(INSTALL) -m 644 DOCS/man/$(lang)/mplayer.1 $(MANDIR)/$(lang)/man1/
endef
@@ -637,6 +649,8 @@ uninstall:
clean:
-$(RM) $(call ADD_ALL_DIRS,/*.o /*.d /*.a /*.ho /*~)
+ -$(RM) $(foreach lang,$(MAN_LANGS),$(foreach man,mplayer.1,DOCS/man/$(lang)/$(man)))
+ -$(RM) $(call ADD_ALL_DIRS,/*.o /*.a /*.ho /*~)
-$(RM) $(call ADD_ALL_EXESUFS,mplayer)
-$(RM) $(MOFILES)
-$(RM) version.h