summaryrefslogtreecommitdiffstats
path: root/DOCS
diff options
context:
space:
mode:
authorjonas <jonas@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-05-31 16:41:41 +0000
committerjonas <jonas@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-05-31 16:41:41 +0000
commit740a650ff6f5156d270549b4ad1b6b64d430b4cd (patch)
tree4b1f2a2fd134b42d88d5ddd460ee52c8b26920e7 /DOCS
parente3a2ddb55aba5d3f57c0322b8e88209228ca7b1e (diff)
downloadmpv-740a650ff6f5156d270549b4ad1b6b64d430b4cd.tar.bz2
mpv-740a650ff6f5156d270549b4ad1b6b64d430b4cd.tar.xz
Moved video filters to a separate section, moved slave mode section to the
tech subdir, random improvements, default indentation reduced. Straight from the LUG camp Felsberg by Jonas and Diego. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@10219 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'DOCS')
-rw-r--r--DOCS/en/mplayer.11143
-rw-r--r--DOCS/tech/manpage.txt10
-rw-r--r--DOCS/tech/slave.txt80
3 files changed, 662 insertions, 571 deletions
diff --git a/DOCS/en/mplayer.1 b/DOCS/en/mplayer.1
index 56a732900c..964063347d 100644
--- a/DOCS/en/mplayer.1
+++ b/DOCS/en/mplayer.1
@@ -14,7 +14,7 @@
.\" default indentation is 7, don't change!
.nr IN 7
.\" define indentation for suboptions
-.nr SS 20
+.nr SS 4
.\" add new suboption
.de IPs
.IP "\\$1" \n(SS
@@ -230,6 +230,132 @@ If you wish to have a config file for a file called 'movie.avi', create a file
named 'movie.avi.conf' with the file-specific options in it and put it in
~/.mplayer or in the same directory as the file.
+
+.\" --------------------------------------------------------------------------
+.\" Keyboard control
+.\" --------------------------------------------------------------------------
+.
+.SH "KEYBOARD CONTROL"
+.I NOTE:
+.br
+MPlayer has a fully configurable, command driven, control layer
+which allow you to control MPlayer using keyboard, mouse, joystick
+or remote control (using lirc).
+.br
+The default configuration file for the input system is
+~/.mplayer/\:input.conf but it can be overriden
+using the \-input conf option.
+.br
+These keys may/\:may not work, depending on your video output driver.
+.TP
+.B general control
+.PD 0
+.RSs
+.IPs "<\- and \->"
+seek backward/\:forward 10 seconds
+.IPs "up and down"
+seek backward/\:forward 1 minute
+.IPs "pgup and pgdown"
+seek backward/\:forward 10 minutes
+.IPs "< and >"
+backward/\:forward in playlist
+.IPs "HOME and END"
+go to next/\:previous playtree entry in the parent list
+.IPs "INS and DEL"
+go to next/\:previous alternative source (asx playlist only)
+.IPs "p / SPACE"
+pause movie (any key unpauses)
+.IPs "q / ESC"
+stop playing and quit
+.IPs "+ and \-"
+adjust audio delay by +/\:\- 0.1 second
+.IPs "/ and *"
+decrease/\:increase volume
+.IPs "9 and 0"
+decrease/\:increase volume
+.IPs m\ \ \ \
+mute sound
+.IPs f\ \ \ \
+toggle fullscreen
+.IPs "w and e"
+decrease/\:increase panscan range
+.IPs o\ \ \ \
+toggle between OSD states: none / seek / seek+timer
+.IPs d\ \ \ \
+toggle frame dropping
+.IPs v\ \ \ \
+toggle subtitle visibility
+.IPs j\ \ \ \
+switch subtitle language
+.IPs a\ \ \ \
+toggle subtitle aligment: top/middle/bottom
+.IPs "z and x"
+adjust subtitle delay by +/\:\- 0.1 second
+.IPs "r and t"
+adjust subtitle position
+.IPs "i"
+set EDL mark
+
+.PP
+(The following keys are valid only when using a hardware accelerated video
+output (xv, (x)vidix, (x)mga, etc), or the software equalizer filter
+(-vf eq or -vf eq2).
+
+.IPs "1 and 2"
+adjust contrast
+.IPs "3 and 4"
+adjust brightness
+.IPs "5 and 6"
+adjust hue
+.IPs "7 and 8"
+adjust saturation
+.RE
+.PD 1
+.
+.TP
+.B GUI keyboard control
+.PD 0
+.RSs
+.IPs "ENTER"
+start playing
+.IPs s\ \ \ \
+stop playing
+.IPs l\ \ \ \
+load file
+.IPs c\ \ \ \
+skin browser
+.IPs p\ \ \ \
+toggle playlist
+.RE
+.PD 1
+.
+.TP
+.B TV input control
+.PD 0
+.RSs
+.IPs "h and k"
+select previous/\:next channel
+.IPs n\ \ \ \
+change norm
+.IPs u\ \ \ \
+change channel list
+.RE
+.PD 1
+.
+.TP
+.B DVDNAV input control
+.PD 0
+.RSs
+.IPs "K,J,H,L"
+browse up/\:down/\:left/\:right
+.IPs M\ \ \ \
+jump to main menu
+.IPs S\ \ \ \
+select
+.RE
+.PD 1
+
+
.SH "PLAYER OPTIONS (MPLAYER ONLY)"
.TP
.B \-use-stdin
@@ -417,9 +543,6 @@ This option switches on slave mode.
This is intended for use of MPlayer as a backend to other programs.
Instead of intercepting keyboard events, MPlayer will read simplistic command
lines from its stdin.
-The section
-.B SLAVE MODE PROTOCOL
-explains the syntax.
.TP
.B \-softsleep
Uses high quality software timers.
@@ -2063,104 +2186,208 @@ try libavcodec's MPEG1/\:2 codec, then libmpeg2, then others
.PD 1
.
.TP
-.B \-vf <filter1[=options],filter2,...>
-Setup a chain of video filters.
+.B \-vfm <driver1,driver2,...>
+Specify a priority list of video codecs to be used, according to their
+names in codecs.conf.
+It falls back to default if none is ok.
+
+.I NOTE:
+.br
+If libdivxdecore support was compiled in, then odivx and divx4 now contains
+just the same DivX4 codec, but different APIs to reach it.
+For difference between them and when to use which, check the DivX4 section in
+the documentation.
+.br
+See \-vfm help for a full list of available drivers.
+
+.I EXAMPLE:
+.PD 0
+.RSs
+.IPs "\-vfm ffmpeg,dshow,vfw"
+try the libavcodec, then Directshow, then VFW codecs and fallback to the
+others, if still none is ok
+.IPs "\-vfm xanim"
+try XAnim codecs first
+.RE
+.PD 1
+.
+.TP
+.B \-x <x> (MPLAYER only)
+Scale image to x width (if sw/\:hw scaling available).
+Disables aspect calculations.
+.TP
+.B \-xvidopts <option1:option2:...>
+Specify additional parameters when decoding with XviD.
+
+.PD 0
+.RSs
+.IPs dr2\ \
+Activate direct rendering method 2.
+.IPs nodr2
+Deactivate direct rendering method 2.
+.RE
+.PD 1
+.
+.TP
+.B \-xy <value>
+.PD 0
+.RSs
+.IPs "value<=8"
+Scale image by factor <value>.
+.IPs "value>8\ "
+Set width to value and calculate height to keep correct aspect ratio.
+.RE
+.PD 1
+.
+.TP
+.B \-y <y> (MPLAYER only)
+Scale image to y height (if sw/\:hw scaling available).
+Disables aspect calculations.
+.TP
+.B \-zoom \
+Allow software scaling, where available.
+Could be used to force scaling with \-vf scale.
.I NOTE:
.br
+\-vf scale will IGNORE options \-x / \-y / \-xy / \-fs / \-aspect without
+\-zoom.
+
+
+.SH "VIDEO FILTERS"
+Video filter are plugins that allow you to modify the video stream and its
+properties. The syntax is:
+.TP
+.B \-vf <filter1[=options],filter2,...>
+Setup a chain of video filters.
+.TP
+.B \-vop <...,filter3[=options],filter2,filter1> (OBSOLETE)
+Setup a chain of video filters, to be applied in
+.B reverse
+order. Deprecated in favor of \-vf.
+.RE
+
The parameters are optional and if omitted, some of them are set to default
values.
Use '-1' to keep the default value.
Parameters w:h means width x height in pixels, x:y means x;y position counted
from the upper left corner of the bigger image.
-.br
To get a full list of available filters, see \-vf help.
-.br
+
Available filters are:
-.
-.RSs
-.IPs crop[=w:h:x:y]
+
+.TP
+.B crop[=w:h:x:y]
Crops the given part of the image and discards the rest.
Useful to remove black bands from widescreen movies.
-.RSss
-w,h: Cropped width and height, defaults to original width and height.
-.br
-x,y: Position of the cropped picture, defaults to center.
-.REss
-.IPs cropdetect[=0\-255]
+.PD 0
+.RSs
+.IPs w,h
+Cropped width and height, defaults to original width and height.
+.IPs x,y
+Position of the cropped picture, defaults to center.
+.RE
+.PD 1
+.TP
+.B cropdetect[=0\-255]
Calculates necessary cropping parameters and prints the recommended parameters
to stdout.
The threshold can be optionally specified from nothing (0) to everything
(255).
(default: 24)
-.IPs rectangle[=w:h:x:y]
-Draws a rectangle of the requested width and height at the specified
-coordinates over the image (useful for testing crop parameters).
-.RSss
-w,h: width and height (default: -1, maximum possible width where boundaries
-are still visible.
-.br
-x,y: top left corner position (default: -1, uppermost leftmost)
-.REss
-.IPs
+.TP
+.B rectangle[=w:h:x:y]
The plugin responds to the input.conf directive 'change_rectangle'
that takes two parameters.
-The first parameter can be 0 for w, 1 for h, 2 for x or 3 for y.
-The second parameter is the amount of pixels by which to change the
-designated rectangle boundary.
-.IPs expand[=w:h:x:y:o]
+.PD 0
+.RSs
+.IPs w,h
+width and height (default: -1, maximum possible width where boundaries
+are still visible.
+.IPs x,y
+top left corner position (default: -1, uppermost leftmost)
+.RE
+.PD 1
+.TP
+.B expand[=w:h:x:y:o]
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.
+.RSs
+.IPs w,h
+expanded width,height (default: original width,height).
+Negative values for w and h are treated as offsets to the original size.
+
+.I EXAMPLE
+.PD 0
+.RSs
+.IP expand=0:-50:0:0
+adds a 50 pixel border to the bottom of the picture
+.RE
+.PD 1
+.IPs x,y
+position of original image on the expanded image (default: center)
+.IPs o
+OSD/subtitle rendering
.RSss
-w,h: expanded width,height (default: original width,height)
+0: disable (default)
.br
-x,y: position of original image on the expanded image (default: center)
-.br
-o: OSD/subtitle rendering
- 0: disable (default)
- 1: enable
+1: enable
.REss
-.IPs
-Negative values for w and h are treated as offsets to the original size, e.g.
-expand=0:-50:0:0 adds a 50 pixel border to the bottom of the picture.
-.IPs flip
+.RE
+.TP
+.B flip
Flips the image upside down.
See also option \-flip.
-.IPs mirror
+.TP
+.B mirror
Mirrors the image on the Y axis.
-.IPs rotate[=<0-7>]
+.TP
+.B rotate[=<0-7>]
Rotates and flips (optional) the image +/\:\- 90 degrees.
For parameters between 4-7 rotation is only done if the movie's geometry is
portrait and not landscape.
-.IPs scale[=w:h[:c[:p]]]
+.TP
+.B scale[=w:h[:c[:p]]]
Scales the image with the software scaler (slow) and performs a YUV<\->RGB
colorspace conversion (also see \-sws option).
+.RSs
+.IPs w,h
+new width/height after scaling (default: original width,height)
+Note: If -zoom is used, and underlying filters (including libvo) are
+incapable of scaling, then it defaults to d_width/\:d_height!
+.RSss
+ 0: scaled d_width/\:d_height
+.br
+-1: original width/\:height
+.br
+-2: Calculate w/\:h using the other dimension and the prescaled aspect ratio.
+.br
+-3: Calculate w/\:h using the other dimension and the original aspect ratio.
+.REss
+.IPs c
+chroma skipping
+.RSss
+0: use all available input lines for chroma
+.br
+1: use only every 2. input line for chroma
+.br
+2: use only every 4. input line for chroma
+.br
+3: use only every 8. input line for chroma
+.REss
+.IPs p
+scaling parameter (depends upon the scaling method used)
.RSss
-w,h: new width/height after scaling (default: original width,height)
- Note: If -zoom is used, and underlying filters (including libvo) are
- incapable of scaling, then it defaults to d_width/\:d_height!
- -1: original width/\:height
- 0: scaled d_width/\:d_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.
-.br
-c: 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
-.br
-p: scaling parameter (depends upon the scaling method used)
- for -sws 2 (bicubic) it is sharpness (0 (soft) - 100 (sharp))
- for -sws 7 (gaussian) it is sharpness (0 (soft) - 100 (sharp))
- for -sws 9 (lanczos) it is filter length (1 - 10)
-The value 0 is used for scaled (aspect) destination w/\:h.
-(default: original w/\:h, destination w/\:h with \-zoom) Optionally chroma
-skipping (c from 0\-3) and scaling parameters can be specified.
-(see the \-sws option for details)
+-sws 2 (bicubic): sharpness (0 (soft) - 100 (sharp))
+.br
+-sws 7 (gaussian): sharpness (0 (soft) - 100 (sharp))
+.br
+-sws 9 (lanczos): filter length (1 - 10)
.REss
-.IPs dsize={aspect|w:h}
+.RE
+.TP
+.B dsize={aspect|w:h}
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
@@ -2170,30 +2397,42 @@ 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.
-.IPs yuy2
+.TP
+.B yuy2
Forces software YV12/\:I420 or 422P to YUY2 conversion.
Useful for video cards/\:drivers with slow YV12 but fast YUY2 support.
-.IPs yvu9
+.TP
+.B yvu9
Forces software YVU9 to YV12 colorspace conversion.
Deprecated in favor of the software scaler.
-.IPs rgb2bgr[=swap]
+.TP
+.B rgb2bgr[=swap]
RGB 24/\:32 <\-> BGR 24/\:32 colorspace conversion.
-.RSss
-swap: Also perform R <\-> B swapping.
-.REss
-.IPs palette
+.PD 0
+.RSs
+.IPs swap
+Also perform R <\-> B swapping.
+.RE
+.PD 1
+.TP
+.B palette
RGB/\:BGR 8 \-> 15/\:16/\:24/\:32bpp colorspace conversion using palette.
-.IPs format[=fourcc]
+.TP
+.B format[=fourcc]
Restricts the colorspace for the next filter without doing any conversion.
Use together with the scale filter for a real conversion.
-.RSss
-fourcc: format name like rgb15, bgr24, yv12, etc (default: yuy2)
-.REss
-.IPs pp[=filter1[:option1[:option2...]]/[-]filter2...] (see \-pphelp too)
+.PD 0
+.RSs
+.IPs fourcc
+format name like rgb15, bgr24, yv12, etc (default: yuy2)
+.RE
+.PD 1
+.TP
+.B pp[=filter1[:option1[:option2...]]/[-]filter2...] (see \-pphelp too)
This option enables usage of MPlayer's internal postprocessing filter,
and also gives an interface where you can pass options to the named filter.
To get a list of available filters, use \-pphelp.
-.br
+
Note that each sub-filter must be separated with a / sign.
.br
Each filter defaults to 'c' (chrominance).
@@ -2202,93 +2441,108 @@ The keywords accept a '\-' prefix to disable the option.
.br
A ':' followed by a letter may be appended to the option to indicate its
scope:
-.RSss
-a: Automatically switches the filter off if the CPU is too slow.
-.br
-c: Do chrominance filtering, too.
-.br
-y: Do not do chrominance filtering (only luminance filtering).
-.REss
+.PD 0
+.RSs
+.IPs a
+Automatically switches the filter off if the CPU is too slow.
+.IPs c
+Do chrominance filtering, too.
+.IPs y
+Do not do chrominance filtering (only luminance filtering).
+.RE
+.PD 1
.RS
.I EXAMPLES:
.RE
-.RSss
-.br
-\-vf pp=hb/vb/dr/al/lb
-.br
-\-vf pp=hb/vb/dr/al
-.br
-Default filters without brightness/\:contrast correction:
-.br
-\-vf pp=de/\-al
-.br
-Enable default filters & temporal denoiser:
-.br
-\-vf pp=de/tn:1:2:3
-.br
-Deblock horizontal only luminance and switch vertical deblocking on or
-off automatically depending on available CPU time:
-.br
-\-vf pp=hb:y/vb:a \-autoq 6
-.REss
-.IPs test
+.PD 0
+.RSs
+.IPs "\-vf pp=hb/vb/dr/al/lb"
+.IPs "\-vf pp=hb/vb/dr/al/lb"
+.IPs "\-vf pp=de/\-al"
+default filters without brightness/\:contrast correction
+.IPs "\-vf pp=de/tn:1:2:3"
+enable default filters & temporal denoiser
+.IPs "\-vf pp=hb:y/vb:a \-autoq 6"
+deblock horizontal only luminance and switch vertical deblocking on or
+off automatically depending on available CPU time
+.RE
+.PD 1
+.TP
+.B test
Generate various test patterns.
-.IPs lavc[=quality:fps]
+.TP
+.B lavc[=quality:fps]
Fast software YV12 to MPEG1 conversion with libavcodec for use with DVB/\:DXR3.
Faster and of better quality than \-vf fame.
+.RSs
+.IPs quality
.RSss
-quality:
- 1 \- 31 fixed qscale
- 32 \- fixed bitrate in kBits
+1 \- 31: fixed qscale
.br
-fps: force output fps (float value) (default: 0, autodetect based on height)
+32 \-: fixed bitrate in kBits
.REss
-.IPs fame
+.IPs fps\ \
+force output fps (float value) (default: 0, autodetect based on height)
+.RE
+.TP
+.B fame
Fast software YV12 to MPEG1 conversion with libfame for use with DVB/\:DXR3.
-.IPs dvbscale[=aspect]
+.TP
+.B 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.
-.RSss
-aspect: control aspect ratio, calculate as DVB_HEIGHT*ASPECTRATIO (default:
+calculating the Y axis scaling in software to keep aspect. It's only useful
+together with expand+scale
+(\-vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1,lavc).
+.RSs
+.IPs 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.
-.REss
-.IPs
-Only useful together with expand+scale:
-\-vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1,lavc
-.IPs "noise[=luma[u][t|a][h][p]:chroma[u][t|a][h][p]]"
+.RE
+.TP
+.B "noise[=luma[u][t|a][h][p]:chroma[u][t|a][h][p]]"
Adds noise.
-.RSss
-<0\-100>: luma noise
-.br
-<0\-100>: chroma noise
-.br
-u: uniform noise (gaussian otherwise)
-.br
-t: temporal noise (noise pattern changes between frames)
-.br
-a: averaged temporal noise (smoother, but a lot slower)
-.br
-h: high quality (slightly better looking, slightly slower)
-.br
-p: mix random noise with a (semi)regular pattern
-.REss
-.IPs "denoise3d[=luma:chroma:time]"
+.PD 0
+.RSs
+.IPs <0\-100>
+luma noise
+.IPs <0\-100>
+chroma noise
+.IPs u
+uniform noise (gaussian otherwise)
+.IPs t
+temporal noise (noise pattern changes between frames)
+.IPs a
+averaged temporal noise (smoother, but a lot slower)
+.IPs h
+high quality (slightly better looking, slightly slower)
+.IPs p
+mix random noise with a (semi)regular pattern
+.RE
+.PD 1
+.
+.TP
+.B "denoise3d[=luma:chroma:time]"
This filter aims to reduce image noise producing smooth images and making still
images really still (This should enhance compressibility.).
It can be given from 0 to 3 parameters. If you omit a parameter, a reasonable
value will be inferred.
-.RSss
-luma: spatial luma strength (default = 4)
-.br
-chroma: spatial chroma strength (default = 3)
-.br
-time: temporal strength (default = 6)
-.REss
-.IPs "hqdn3d[=luma:chroma:time]"
+.PD 0
+.RSs
+.IPs luma
+spatial luma strength (default = 4)
+.IPs chroma
+spatial chroma strength (default = 3)
+.IPs time
+temporal strength (default = 6)
+.RE
+.PD 1
+.TP
+.B "hqdn3d[=luma:chroma:time]"
High precision/\:quality version of the denoise3d filter.
Parameters and usage are the same.
-.IPs eq[=bright:cont]
+.TP
+.B eq[=bright:cont]
Software equalizer with interactive controls just like the hardware
equalizer, for cards/\:drivers that do not support brightness and
contrast controls in hardware.
@@ -2296,7 +2550,8 @@ Might also be useful with MEncoder, either for fixing poorly captured
movies, or for slightly reducing contrast to mask artifacts and get by
with lower bitrates.
Initial values in the range -100 \- 100 may be given on the command line.
-.IPs eq2[=gamma:contrast:brightness:saturation:rg:gg:bg]
+.TP
+.B eq2[=gamma:contrast:brightness:saturation:rg:gg:bg]
Alternative software equalizer that uses lookup tables (very slow),
allowing gamma correction in addition to simple brightness,
contrast and saturation adjustment. Note that it uses the same MMX
@@ -2307,7 +2562,8 @@ and Blue components.
Defaults are 1.0, brightness=0.0.
Value ranges are 0.1\-10 for gammas, -2\-2 for contrast (negative values result
in a negative image), -1\-1 for brightness and 0\-3 for saturation.
-.IPs halfpack[=f]
+.TP
+.B 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
@@ -2318,38 +2574,48 @@ By default, halfpack averages pairs of lines when downsampling.
The optional parameter f can be 0 to only use even lines, or 1 to only use
odd lines.
Any other value for f gives the default (averaging) behavior.
-.IPs ilpack
+.TP
+.B ilpack
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.
-.IPs dint[=sense:level]
+.TP
+.B dint[=sense:level]
Detects and drops first of interlaced frames in video stream.
Values can be from 0.0 to 1.0 - first (default 0.1) is relative difference
between neighbor pixels, second (default 0.15) is what part of image have to
be detected as interlaced to drop the frame.
-.IPs lavcdeint
+.TP
+.B lavcdeint
Use libavcodec's deinterlace filter.
-.IPs "unsharp=l|cWxH:amount[:l|cWxH:amount]"
+.TP
+.B "unsharp=l|cWxH:amount[:l|cWxH:amount]"
Unsharp mask / gaussian blur.
-.RSss
-l: Apply effect on luma component.
-.br
-c: Apply effect on chroma components.
-.br
-WxH: width and height of the matrix, odd sized in both directions
+.RSs
+.IPs l
+Apply effect on luma component.
+.IPs c
+Apply effect on chroma components.
+.IPs WxH
+width and height of the matrix, odd sized in both directions
(min = 3x3, max = 13x11 or 11x13, usually something between 3x3 and 7x7)
-.br
-amount: Relative amount of sharpness/\:blur to add to the image
+.IPs amount
+Relative amount of sharpness/\:blur to add to the image
(a sane range should be -1.5 \- 1.5).
- <0: blur
- >0: sharpen
+.RSss
+<0: blur
+.br
+>0: sharpen
.REss
-.IPs swapuv
+.RE
+.TP
+.B swapuv
Swap U & V plane.
-.IPs "il=[d|i][s][:[d|i][s]]"
+.TP
+.B "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.
@@ -2359,45 +2625,52 @@ 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.
-.RSss
-d: deinterleave
-.br
-i: interleave
-.br
-s: swap fields (exchange even & odd lines)
-.REss
-.IPs "field[=n]"
+.PD 0
+.RSs
+.IPs d
+deinterleave
+.IPs i
+interleave
+.IPs s
+swap fields (exchange even & odd lines)
+.RE
+.PD 1
+.TP
+.B "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).
-.IPs "detc[=var1=value2:var2=value2:...]"
+.TP
+.B "detc[=var1=value2:var2=value2:...]"
Attempts to reverse the "telecine" process to recover a clean,
non-interlaced stream at film framerate. This filter is still
experimental but seems to be usable. Please be aware that there is
absolutely no use in this filter unless you see interlacing when
playing the movie! The following arguments (see syntax above) may be
used to control its behavior:
-.RSss
-dr: Set the frame dropping mode. 0 (default) means don't drop frames
+.RSs
+.IPs dr
+Set the frame dropping mode. 0 (default) means don't drop frames
to maintain fixed output framerate. 1 means always drop a frame when
there have been no drops or telecine merges in the past 5 frames. 2
means always maintain exact 5:4 input to output frame ratio. (Note:
use mode 1 with MEncoder!)
-.br
-am: Analysis mode. Available values are 0 (fixed pattern with initial
+.IPs am
+Analysis mode. Available values are 0 (fixed pattern with initial
frame number specified by fr=#) and 1 (agressive search for telecine
pattern). Default is 1.
-.br
-fr: Set initial frame number in sequence. 0-2 are the three clean
+.IPs 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.
-.br
-tr0, tr1, tr2, tr3: Threshold values to be used in certain modes.
-.REss
-.IPs "ivtc[=1]"
+.IPs tr0, tr1, tr2, tr3
+Threshold values to be used in certain modes.
+.RE
+.TP
+.B "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.
@@ -2408,219 +2681,171 @@ The optional parameter (ivtc=1) corresponds to the dr=1 option for the
detc filter, and should be used with mencoder but not with mplayer.
As with detc, you must specify the correct output framerate (-ofps
23.976) when using mencoder.
-.IPs "telecine[=start]"
+.TP
+.B "telecine[=start]"
Apply 3:2 "telecine" process to increase framerate by 20%. This most
likely will not work correctly with mplayer, but it can be used
with 'mencoder -fps 29.97 -ofps 29.97 -vf telecine'. Both fps options are
essential! (A/V sync will break if they are wrong.) The optional start
parameter tells the filter where in the telecine pattern to start
(0-3).
-.IPs "tfields[=mode]"
+.TP
+.B "tfields[=mode]"
Temporal field separation -- split fields into frames, doubling the
output framerate. Like the telecine filter, "tfields" will only work
properly with mencoder, and only if both -fps and -ofps are set to the
desired (double) framerate! Available modes are:
-.RSss
-0: leave fields unchanged (this will jump/flicker)
-.br
-1: interpolate missing lines (the algorithm used might not be so good)
-.br
-2: translate fields by 1/4 pixel with linear interp (no jump)
-.br
-4: translate fields by 1/4 pixel with 4tap filter (higher quality)
-.REss
-.IPs "boxblur=radius:power[:radius:power]"
+.PD 0
+.RSs
+.IPs 0
+leave fields unchanged (this will jump/flicker)
+.IPs 1
+interpolate missing lines (the algorithm used might not be so good)
+.IPs 2
+translate fields by 1/4 pixel with linear interp (no jump)
+.IPs 4
+translate fields by 1/4 pixel with 4tap filter (higher quality)
+.RE
+.PD 1
+.TP
+.B "boxblur=radius:power[:radius:power]"
box blur
-.RSss
-radius: size of the filter
-.br
-power: How often the filter should be applied.
-.REss
-.IPs "sab=rad:pf:colorDiff[:rad:pf:colorDiff]"
+.PD 0
+.RSs
+.IPs radius
+size of the filter
+.IPs power
+How often the filter should be applied.
+.RE
+.PD 1
+.TP
+.B "sab=rad:pf:colorDiff[:rad:pf:colorDiff]"
shape adaptive blur
-.RSss
-rad: blur filter strength (~0.1\-4.0) (slower if larger)
-.br
-pf: prefilter strength (~0.1\-2.0)
-.br
-colorDiff: How different the pixels are allowed to be considered.
+.PD 0
+.RSs
+.IPs rad
+blur filter strength (~0.1\-4.0) (slower if larger)
+.IPs pf
+prefilter strength (~0.1\-2.0)
+.IPs colorDiff
+How different the pixels are allowed to be considered.
(~0.1-100.0)
-.REss
-.IPs "smartblur=rad:strength:thresh[:rad:strength:thresh]"
+.RE
+.PD 1
+.TP
+.B "smartblur=rad:strength:thresh[:rad:strength:thresh]"
smart blur
-.RSss
-rad: blur filter strength (~0.1\-5.0) (slower if larger)
-.br
-strength: blur (0.0\-1.0) or sharpen (-1.0\-0.0)
-.br
-thresh: filter all (0), filter flat areas (0\-30) or filter edges (-30\-0)
-.REss
-.IPs "perspective=x0:y0:x1:y1:x2:y2:x3:y3:t"
+.PD 0
+.RSs
+.IPs rad\ \
+blur filter strength (~0.1\-5.0) (slower if larger)
+.IPs strength
+blur (0.0\-1.0) or sharpen (-1.0\-0.0)
+.IPs thresh
+filter all (0), filter flat areas (0\-30) or filter edges (-30\-0)
+.RE
+.PD 1
+.TP
+.B "perspective=x0:y0:x1:y1:x2:y2:x3:y3:t"
perspective correction
-.RSss
-x0,y0,...: coordinates of the top left, top right, bottom left, bottom right
-corners
-.br
-t: linear (0) or cubic resampling (1)
-.REss
-.IPs 2xsai
+.PD 0
+.RSs
+.IPs x0,y0,...
+coordinates of the top left, top right, bottom left, bottom right corners
+.IPs t
+linear (0) or cubic resampling (1)
+.RE
+.PD 1
+.TP
+.B 2xsai
Use the 2x scale and interpolate algorithm for scaling and smoothing images.
-.IPs 1bpp
+.TP
+.B 1bpp
1bpp bitmap to YUV/BGR 8/15/16/32 conversion
-.IPs down3dright[=lines]
+.TP
+.B 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.
-.RSss
-lines: number of lines to select from the middle of the image (default: 12)
-.REss
-.IPs "bmovl=hidden:opaque:<fifo>"
+.PD 0
+.RSs
+.IPs lines
+number of lines to select from the middle of the image (default: 12)
+.RE
+.PD 1
+.TP
+.B "bmovl=hidden:opaque:<fifo>"
Read bitmaps from a FIFO and display them in a window.
.
-.RSss
-hidden: sets the default value of the 'hidden' flag (boolean)
-.br
-opaque: flag switching between alphablended (transparent) and opaque (fast)
-mode
-.br
-fifo: path/filename for the FIFO (named pipe connecting mplayer -vf bmovl
-to the controlling application)
-.REss
+.PD 0
+.RSs
+.IPs hidden
+sets the default value of the 'hidden' flag (boolean)
+.IPs opaque
+flag switching between alphablended (transparent) and opaque (fast) mode
+.IPs fifo
+path/filename for the FIFO (named pipe connecting mplayer -vf bmovl to the
+controlling application)
+.RE
+.PD 1
.RS
FIFO commands are:
.RE
-.RSss
-RGBA32 width height xpos ypos alpha clear
-.br
+.PD 0
+.RSs
+.IPs RGBA32 width height xpos ypos alpha clear
followed by width*height*4 Bytes of raw RGBA32 data.
-
-ABGR32 width height xpos ypos alpha clear
-.br
+.IPs ABGR32 width height xpos ypos alpha clear
followed by width*height*4 Bytes of raw ABGR32 data.
-
-RGB24 width height xpos ypos alpha clear
-.br
+.IPs RGB24 width height xpos ypos alpha clear
followed by width*height*3 Bytes of raw RGB32 data.
-
-BGR24 width height xpos ypos alpha clear
-.br
+.IPs BGR24 width height xpos ypos alpha clear
followed by width*height*3 Bytes of raw BGR32 data.
-
-ALPHA width height xpos ypos alpha
-.br
+.IPs ALPHA width height xpos ypos alpha
change alpha for area
-
-CLEAR width height xpos ypos
-.br
+.IPs CLEAR width height xpos ypos
clear area
-
-OPAQUE
-.br
+.IPs OPAQUE
disable all alpha transparency.
Send "ALPHA 0 0 0 0 0" to enable it again.
-
-HIDE
-.br
+.IPs HIDE
hide bitmap
-
-SHOW
-.br
+.IPs SHOW
show bitmap
-.REss
+.RE
+.PD 1
.RS
Arguments are:
.RE
-.RSss
-width, height: size of image/area
-.br
-xpos, ypos: start blitting at X/Y position
-.br
-alpha: set alpha difference.
-0 means same as original, 255 makes everything
-opaque, -255 makes everything transparent.
+.PD 0
+.RSs
+.IPs width, height
+size of image/area
+.IPs xpos, ypos
+start blitting at X/Y position
+.IPs 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! ;)
+.RSss
+0: same as original
.br
-clear: clear the framebuffer before blitting.
-1 means clear, if 0, the image will just be blitted on top of the old one, so
-you don't need to send 1,8MB of RGBA32 data everytime a small part of the
-screen is updated.
-.REss
-.RE
-.
-.TP
-.B \-vfm <driver1,driver2,...>
-Specify a priority list of video codecs to be used, according to their
-names in codecs.conf.
-It falls back to default if none is ok.
-
-.I NOTE:
+255: makes everything opaque
.br
-If libdivxdecore support was compiled in, then odivx and divx4 now contains
-just the same DivX4 codec, but different APIs to reach it.
-For difference between them and when to use which, check the DivX4 section in
-the documentation.
+-255: makes everything transparent
+.REss
+.IPs clear
+clear the framebuffer before blitting.
+.RSss
+0: The image will just be blitted on top of the old one, so you don't need to
+send 1,8MB of RGBA32 data everytime a small part of the screen is updated.
.br
-See \-vfm help for a full list of available drivers.
-
-.I EXAMPLE:
-.PD 0
-.RSs
-.IPs "\-vfm ffmpeg,dshow,vfw"
-try the libavcodec, then Directshow, then VFW codecs and fallback to the
-others, if still none is ok
-.IPs "\-vfm xanim"
-try XAnim codecs first
-.RE
-.PD 1
-.
-.TP
-.B \-vop <...,filter3[=options],filter2,filter1> (OBSOLETE)
-Setup a chain of video filters, to be applied in reverse order.
-Deprecated in favor of \-vf.
-.TP
-.B \-x <x> (MPLAYER only)
-Scale image to x width (if sw/\:hw scaling available).
-Disables aspect calculations.
-.TP
-.B \-xvidopts <option1:option2:...>
-Specify additional parameters when decoding with XviD.
-
-.PD 0
-.RSs
-.IPs dr2\ \
-Activate direct render