annotate DOCS/tech/vop.txt @ 8927:cc9ea49f7509

sanity check
author arpi
date Sun, 12 Jan 2003 20:03:48 +0000
parents ce4b79769b88
children e93a0dd3ed56
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
1 VideoOutPlugins - Video Filters
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
2 ===============
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
3
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
4 video filters are plugin-like code modules implementing the interface
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
5 defined in vf.h
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
6
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
7 basically it means video output manipulation, ie. these plugins can
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
8 modify the image and the image properties (size, colorspace etc) between
5695
35061a07a78f typo fix
arpi
parents: 5693
diff changeset
9 the video decoders (vd.h) and output layer (libvo or video encoders)
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
10
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
11 the actual API is a mixture of the video decoder (vd.h) and libvo
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
12 (video_out.h) APIs.
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
13
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
14 the main differences:
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
15 - vf plugins may be "loaded" multiple times, with different parameters
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
16 and context - it's new in mplayer, old APIs weren't reentrant
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
17 - vf plugins don't have to implement all functions - all funcs has
5695
35061a07a78f typo fix
arpi
parents: 5693
diff changeset
18 'fallback' version, so the plugins only override these if want
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
19 - each vf plugin has its own get_image context, and they can interchange
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
20 images/buffers using these get_image/put_image calls.
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
21
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
22 API details:
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
23 -- TO DO -- (see vf.h fpr API and vf_*.c for examples)
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
24
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
25 Current plugins:
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
26 ================
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
27
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
28 -vop crop[=w:h:x:y]
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
29 Simple cropping plugin.
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
30 w,h (cropped width,height) defaults to original width,height
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
31 x,y (position of cropped subimage on the original image) defaults to center
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
32 MPI: EXPORT only, using stride manipulation
5695
35061a07a78f typo fix
arpi
parents: 5693
diff changeset
33
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
34 -vop expand[=w:h:x:y:o]
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
35 Expanding _and_ (optional) OSD rendering plugin.
6004
0aa2d199088d updated
arpi
parents: 5905
diff changeset
36 w,h (expanded width,height) defaults (-1) to original width,height
0aa2d199088d updated
arpi
parents: 5905
diff changeset
37 x,y (position of original image on the expanded image) defaults (-1) to center
0aa2d199088d updated
arpi
parents: 5905
diff changeset
38 o (0=disable/1=enable SUB/OSD rendering) defaults (0) to disabled
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
39 MPI: DR (if possible) or copy
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
40 Special: mpcodecs core uses it to solve stride restrictions between filters
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
41 mencoder uses (autoload) it to render SUB/OSD
5695
35061a07a78f typo fix
arpi
parents: 5693
diff changeset
42
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
43 -vop flip
5905
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
44 Flips image upside-down (vertical mirroring)
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
45 No parameters.
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
46 MPI: DR (if possible) or EXPORT, using stride manipulation
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
47 Special: dec_video autoloads it when flipping is required and libvo can't do
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
48
5905
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
49 -vop mirror
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
50 Horizontal mirroring
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
51 No parameters.
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
52 MPI: TEMP
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
53
6821
414ea538b99e Document rectangle plugin.
kmkaplan
parents: 6808
diff changeset
54 -vop rectangle[=w:h:x:y]
414ea538b99e Document rectangle plugin.
kmkaplan
parents: 6808
diff changeset
55 Draw a rectangle. Useful for testing crop plugin parameters.
414ea538b99e Document rectangle plugin.
kmkaplan
parents: 6808
diff changeset
56 w,h (rectangle's width and height) defaults (-1) to maximum
414ea538b99e Document rectangle plugin.
kmkaplan
parents: 6808
diff changeset
57 possible width while keeping the boundaries visible.
414ea538b99e Document rectangle plugin.
kmkaplan
parents: 6808
diff changeset
58 x,y (rectangle's top left corner position) defauts (-1) to upper
414ea538b99e Document rectangle plugin.
kmkaplan
parents: 6808
diff changeset
59 left most position.
6889
a645ecaaa93b Document change_rectangle
kmkaplan
parents: 6821
diff changeset
60 The plugin responds to the input.conf directive "change_control"
a645ecaaa93b Document change_rectangle
kmkaplan
parents: 6821
diff changeset
61 that takes two parameters. The first parameter can be 0 for w, 1
a645ecaaa93b Document change_rectangle
kmkaplan
parents: 6821
diff changeset
62 for h, 2 for x or 3 for y. The second parameter is the amount to
a645ecaaa93b Document change_rectangle
kmkaplan
parents: 6821
diff changeset
63 change the designated rectangle boundary.
a645ecaaa93b Document change_rectangle
kmkaplan
parents: 6821
diff changeset
64 MPI: TEMP, accepts stride
6821
414ea538b99e Document rectangle plugin.
kmkaplan
parents: 6808
diff changeset
65
5905
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
66 -vop rotate[=x]
5697
d1c22e7fe9fc rotate added
arpi
parents: 5695
diff changeset
67 Rotate image +/- 90 degrees
5905
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
68 Optional 'x' parameter (0..3) controls horizontal and vertical mirroring
5697
d1c22e7fe9fc rotate added
arpi
parents: 5695
diff changeset
69 MPI: TEMP
d1c22e7fe9fc rotate added
arpi
parents: 5695
diff changeset
70
6638
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
71 -vop scale[=w:h[:c[:p]]]
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
72 Software scaling (zoom) _and_ yuv<->rgb colorspace conversion
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
73 w,h (new width/height after scaling) defaults to original width,height
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
74 note: if -zoom is used, and underlaying filters (including libvo)
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
75 uncapable of scaling, then it defaults to d_width/d_height !
6004
0aa2d199088d updated
arpi
parents: 5905
diff changeset
76 note 2: w/h values -1 means original width/height, 0 means scaled
6127
b98492924d99 -2/-3 for scale w/h
arpi
parents: 6062
diff changeset
77 d_width/d_height. -2/-3 means calculating w or h using the other
b98492924d99 -2/-3 for scale w/h
arpi
parents: 6062
diff changeset
78 dimension and the original (-3) or prescaled (-2) aspect ratio.
6638
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
79 c chroma skipping
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
80 0 -> use all available input lines for chroma
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
81 1 -> use only every 2. input line for chroma
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
82 2 -> use only every 4. input line for chroma
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
83 3 -> use only every 8. input line for chroma
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
84 p scaling parameter (depends upon the used scaling method)
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
85 for -sws 2 (bicubic) its sharpness (0 (soft) - 100 (sharp))
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
86 for -sws 7 (gaussian) its sharpness (0 (soft) - 100 (sharp))
16f8f95e6c85 vf_scale update
michael
parents: 6449
diff changeset
87 for -sws 9 (lanczos) its filter length (1 - 10)
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
88 MPI: TEMP, accepts stride
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
89 Special: dec_video and mpcodecs core autoloads it for colorspace conv.
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
90
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
91 -vop yuy2
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
92 Forced software YV12/I420 -> YUY2 conversion
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
93 (usefull for video cards/drivers with slow YV12 but fast YUY2 support)
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
94 MPI: TEMP, accepts stride
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
95
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
96 -vop rgb2bgr[=swap]
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
97 RGB 24/32 <-> BGR 24/32 colorspace conversion (default) or
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
98 RGB 24/32 <-> RGB 24/32 conversion with R<->B swapping ('swap' option)
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
99 MPI: TEMP, accepts stride
5905
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
100
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
101 -vop palette
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
102 RGB/BGR 8 -> RGB/BGR 15/16/24/32 colorspace conversion using palette
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
103 MPI: TEMP, accepts stride
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
104
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
105 -vop format[=fourcc]
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
106 _restrict_ the list of supported colorspaces (query-format()) to a single,
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
107 given fourcc. The 'fourcc' option defaults to 'yuy2', but may be any
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
108 format name, like rgb15, bgr24, yv12 etc...
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
109 note again, it does NOT do any conversion, it just limits the _next_
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
110 plugins format list.
6004
0aa2d199088d updated
arpi
parents: 5905
diff changeset
111 MPI: passthru
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
112
8076
3ac37c4beeaf pp docs
michael
parents: 8010
diff changeset
113 -vop pp=[<filterName>[:<option>[:<option>...]][/[-]<filterName>[:<option>...]]...]
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
114 Postprocessing filter. (usefull for codecs without built-in
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
115 postprocessing, like libmpeg12 or libavcodec)
8076
3ac37c4beeaf pp docs
michael
parents: 8010
diff changeset
116 see `mplayer -vop pp=help`
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
117 MPI: DR (if possible) or TEMP
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
118 Special: dec_video autoloads it if -pp option used but codec can't do pp.
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
119
6020
4268e95daa14 lavc args
arpi
parents: 6004
diff changeset
120 -vop lavc[=quality:fps]
5905
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
121 Fast software YV12->MPEG1 conversion, usefull for dxr3/dvb drivers
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
122 It uses libavcodec. Currently faster and better quality than -vop fame!
6020
4268e95daa14 lavc args
arpi
parents: 6004
diff changeset
123 Param quality: fixed qscale (1<=quality<32) or bitrate (32<=quality KBits)
4268e95daa14 lavc args
arpi
parents: 6004
diff changeset
124 Param fps: force output fps (float value). If not give, or 0, it's
4268e95daa14 lavc args
arpi
parents: 6004
diff changeset
125 autodetected based on height (240,480->29.97fps, others -> 25fps)
5905
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
126 MPI: EXPORT special
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
127
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
128 -vop fame
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
129 Fast software YV12->MPEG1 conversion, usefull for dxr3/dvb drivers
5905
1edc3e2b74d3 updated
arpi
parents: 5697
diff changeset
130 It uses libfame.
5693
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
131 MPI: EXPORT special
8efe3a4135b4 video filters docs
arpi
parents:
diff changeset
132
6004
0aa2d199088d updated
arpi
parents: 5905
diff changeset
133 -vop dvbscale[=aspect]
0aa2d199088d updated
arpi
parents: 5905
diff changeset
134 Setup scaling to the optimal values for the DVB card.
0aa2d199088d updated
arpi
parents: 5905
diff changeset
135 (use HW for X-scaling, calc sw Y scaling to keep aspect)
0aa2d199088d updated
arpi
parents: 5905
diff changeset
136 The 'aspect' parameter controls aspect ratio, it should be calculated
0aa2d199088d updated
arpi
parents: 5905
diff changeset
137 as aspect=DVB_HEIGHT*ASPECTRATIO, default is 576*(4/3)=768
0aa2d199088d updated
arpi
parents: 5905
diff changeset
138 (for 16:9 TV set it to 576*(16/9)=1024)
6062
58cdca500147 cropdetect
arpi
parents: 6020
diff changeset
139 It's only usefull together with expand+scale:
6004
0aa2d199088d updated
arpi
parents: 5905
diff changeset
140 -vop lavc,expand=-1:576:-1:-1:1,scale=-1:0,dvbscale
0aa2d199088d updated
arpi
parents: 5905
diff changeset
141 MPI: passthru
0aa2d199088d updated
arpi
parents: 5905
diff changeset
142
6808
e595ea5b471d documenting cropdetect's parameter
arpi
parents: 6638
diff changeset
143 -vop cropdetect[=limit]
6062
58cdca500147 cropdetect
arpi
parents: 6020
diff changeset
144 It's a special filter, it doesn't alter the image itself, but detects
58cdca500147 cropdetect
arpi
parents: 6020
diff changeset
145 (using some kind of heuristics) the black borders/bands of the image,
58cdca500147 cropdetect
arpi
parents: 6020
diff changeset
146 and prints the optimal -vop crop= parameters to the stdout/console.
6808
e595ea5b471d documenting cropdetect's parameter
arpi
parents: 6638
diff changeset
147 It calculates the average value of pixel luminances for a line, and
e595ea5b471d documenting cropdetect's parameter
arpi
parents: 6638
diff changeset
148 depending on the result it's either black band (result<=limit) or
e595ea5b471d documenting cropdetect's parameter
arpi
parents: 6638
diff changeset
149 picture (result>limit). Optional parameter 'limit' defaults to 24.
6062
58cdca500147 cropdetect
arpi
parents: 6020
diff changeset
150 MPI: EXPORT
6449
6ee8233283a3 vf-noise update
michael
parents: 6426
diff changeset
151
6426
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
152 -vop test[=first frame number]
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
153 generate various test patterns
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
154 MPI: TEMP, accepts stride
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
155
6963
76fee64d884a film/average noise patch by (Jindrich Makovicka <makovick at KMLinux dot fjfi dot cvut dot cz>)
michael
parents: 6889
diff changeset
156 -vop noise[=lumaNoise[u][t|a][h]:chromaNoise[u][t|a][h]
6426
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
157 add noise
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
158 0<= lumaNoise, chromaNoise <=100
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
159 u uniform noise (gaussian otherwise)
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
160 t temporal noise (noise pattern changes between frames)
6963
76fee64d884a film/average noise patch by (Jindrich Makovicka <makovick at KMLinux dot fjfi dot cvut dot cz>)
michael
parents: 6889
diff changeset
161 a averaged temporal (smoother, but a lot slower)
6449
6ee8233283a3 vf-noise update
michael
parents: 6426
diff changeset
162 h high quality (slightly better looking, slightly slower)
6990
857bae3001e8 semi regular noise pattern patch by (Jindrich Makovicka <makovick at kmlinux dot fjfi dot cvut dot cz>)
michael
parents: 6963
diff changeset
163 p mix random noise with a (semi)regular pattern
6449
6ee8233283a3 vf-noise update
michael
parents: 6426
diff changeset
164 MPI: DR (if possible) or TEMP, accepts stride
6426
df81a678c1d3 docs for vf-test & vf-noise
michael
parents: 6127
diff changeset
165
7064
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
166 -vop eq[=brightness:contrast]
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
167 software equalizer, for use with cards that don't support
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
168 brightness and contrast controls in hardware. It might also be
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
169 useful with mencoder, either for fixing poorly captured movies, or
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
170 for slightly reducing contrast to mask artifacts and get by with
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
171 lower bitrates. Initial values in the range -100..100 may be
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
172 given on the command line, and the eq filter is controllable
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
173 interactively just like with normal hardware equalizer controls.
d2f64a6cc511 documentation for -vop eq
rfelker
parents: 6990
diff changeset
174
7976
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
175 -vop unsharp=l|cWxH:amount[:l|cWxH:amount]
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
176 unsharp mask / gaussian blur.
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
177 l apply effect on luma component
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
178 c apply effect on chroma components
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
179 WxH width and height of the matrix, odd sized in both directions
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
180 min = 3x3, max = 13x11 or 11x13
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
181 usually you will use somthing between 3x3 and 7x7
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
182 amount relative amount of sharpness / blur to add to the image
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
183 amount < 0 = blur, amount > 0 = sharpen
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
184 usually you will use something between -1.5 and 1.5
d0d2108bf395 unsharp filter doc
arpi
parents: 7064
diff changeset
185 MPI: DR (if possible) or TEMP, accepts stride
8005
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
186
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
187 -vop swapuv
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
188 swap U & V plane
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
189 MPI: EXPORT
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
190
8006
694502344370 (de)intrleave luma & chroma idependantly
michael
parents: 8005
diff changeset
191 -vop il=[d|i][s][:[d|i][s]]
8005
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
192 (de)interleaves lines
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
193 d deinterleave
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
194 i interleave
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
195 s swap fields (exchange even & odd lines)
8697
ce4b79769b88 add arpi's explanation of -vop il to the docs
attila
parents: 8112
diff changeset
196 The goal of this filter to add ability of processing interlaced images
ce4b79769b88 add arpi's explanation of -vop il to the docs
attila
parents: 8112
diff changeset
197 pre-field without deinterlacing it. You can filter your interlaced dvd
ce4b79769b88 add arpi's explanation of -vop il to the docs
attila
parents: 8112
diff changeset
198 and playback on TV without breaking the interlacing.
ce4b79769b88 add arpi's explanation of -vop il to the docs
attila
parents: 8112
diff changeset
199 While deinterlacing (with the post processing filter) removes permamently
ce4b79769b88 add arpi's explanation of -vop il to the docs
attila
parents: 8112
diff changeset
200 the interlacing (by smoothing averaging etc) deinterleaving splits the
ce4b79769b88 add arpi's explanation of -vop il to the docs
attila
parents: 8112
diff changeset
201 frame into 2 fields (so called half pictures), so you can process (filter)
ce4b79769b88 add arpi's explanation of -vop il to the docs
attila
parents: 8112
diff changeset
202 them independently and then re-interleave them.
8005
f8b3111f8b16 il & swapuv
michael
parents: 7976
diff changeset
203 MPI: TEMP, accepts stride
8010
329e9a5a154f boxblur, another useless filter
michael
parents: 8006
diff changeset
204
329e9a5a154f boxblur, another useless filter
michael
parents: 8006
diff changeset
205 -vop boxblur=radius:power[:radius:power]
329e9a5a154f boxblur, another useless filter
michael
parents: 8006
diff changeset
206 radius size of the filter
329e9a5a154f boxblur, another useless filter
michael
parents: 8006
diff changeset
207 power how often the filter should be applied
329e9a5a154f boxblur, another useless filter
michael
parents: 8006
diff changeset
208 MPI: TEMP, accepts stride
8100
fd0da9a7d2e3 shape adaptive blur (slightly slow though)
michael
parents: 8076
diff changeset
209
fd0da9a7d2e3 shape adaptive blur (slightly slow though)
michael
parents: 8076
diff changeset
210 -vop sab=radius:prefilter:colorDiff[:radius:prefilter:colorDiff]
fd0da9a7d2e3 shape adaptive blur (slightly slow though)
michael
parents: 8076
diff changeset
211 radius blur filter strength (~0.1-4.0) (slower if larger)
fd0da9a7d2e3 shape adaptive blur (slightly slow though)
michael
parents: 8076
diff changeset
212 prefilter prefilter strength (~0.1-2.0)
fd0da9a7d2e3 shape adaptive blur (slightly slow though)
michael
parents: 8076
diff changeset
213 colorDiff how different the pixels are allowed to be to be considered (~0.1-100.0)
8106
7aa3dba949f1 smartblur
michael
parents: 8100
diff changeset
214
7aa3dba949f1 smartblur
michael
parents: 8100
diff changeset
215 -vop smartblur=radius:stregth:threshold[:radius:stregth:threshold]
7aa3dba949f1 smartblur
michael
parents: 8100
diff changeset
216 radius blur filter strength (~0.1-5.0) (slower if larger)
7aa3dba949f1 smartblur
michael
parents: 8100
diff changeset
217 strength (0.0-1.0) -> blur, (-1.0-0.0) -> sharpen
7aa3dba949f1 smartblur
michael
parents: 8100
diff changeset
218 threshold 0 -> filter all, (0-30) -> filter flat areas, (-30-0) -> filter edges
8112
6d97e935a071 perspective correcture filter
michael
parents: 8106
diff changeset
219
6d97e935a071 perspective correcture filter
michael
parents: 8106
diff changeset
220 -vop perspective=x0:y0:x1:y1:x2:y2:x3:y3:t
6d97e935a071 perspective correcture filter
michael
parents: 8106
diff changeset
221 x0,y0,... coordinates of the topleft, topright, bottomleft, bottomright corners
6d97e935a071 perspective correcture filter
michael
parents: 8106
diff changeset
222 t 0-> linear, 1->cubic resampling