Mercurial > mplayer.hg
annotate DOCS/tech/libavc-options.txt @ 9122:5ba896a38d75
The two attached patches *should* allow for proper
compilation of the AltiVec stuff on both Darwin
and non-Darwin system. They've only been tested
for compilation on Debian using Debian's gcc-3.2.
Romain Dolbeau <dolbeau@irisa.fr>
author | arpi |
---|---|
date | Mon, 27 Jan 2003 21:47:25 +0000 |
parents | d96539bebdd6 |
children | a90d3367be52 |
rev | line source |
---|---|
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
1 Description of what all those libavcodec options do ... |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
2 WARNING: I am no encoding expert so the recommendations might be bad ... |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
3 if you find any errors, missing stuff, ... send a patch or cvs commit if you |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
4 have an cvs account :) |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
5 |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
6 lavcopts: (encoder options) |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
7 --------------------------- |
6108 | 8 |
8701
9415a820357a
document minimum qscale correctly. someone should probably add a note
rfelker
parents:
8700
diff
changeset
|
9 vqmin 1-31 (minimum quantizer) for pass1/2 |
6700 | 10 1 is not recommended (much larger file, little quality difference (if u are lucky) |
11 and other weird things (if u are less lucky)) | |
12 weird things: msmpeg4, h263 will be very low quality | |
13 ratecontrol will be confused -> lower quality | |
14 some decoders will not be able to decode it | |
7088 | 15 2 is recommended for normal mpeg4/mpeg1video encoding (default) |
16 3 is recommended for h263(p)/msmpeg4 | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
17 the reason for 3 instead of 2 is that 2 could lead to overflows |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
18 (this will be fixed for h263(p) by changing the quanizer per MB in |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
19 the future, but msmpeg4 doesnt support that so it cant be fixed for |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
20 that) |
6108 | 21 |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
22 vqscale 1-31 quantizer for constant quantizer / constant quality encoding |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
23 1 is not recommended (much larger file, little quality difference and |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
24 possible other weird things) |
6108 | 25 lower means better quality but larger files |
26 see vqmin | |
27 | |
28 vqmax 1-31 (maximum quantizer) for pass1/2 | |
7088 | 29 31 default |
6108 | 30 10-31 should be a sane range |
31 | |
8492 | 32 mbqmin 1-31 (minimum macroblock quantizer) for pass1/2 |
33 2 default | |
34 | |
35 mbqmax 1-31 (maximum macroblock quantizer) for pass1/2 | |
36 31 default | |
37 | |
6108 | 38 vqdiff 1-31 (maximum quantizer difference between I or P frames) for pass1/2 |
39 3 default | |
40 | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
41 vmax_b_frames 0-4 (maximum number of B frames between non B frames) |
6108 | 42 0 no b frames (default) |
7088 | 43 0-2 is a sane range for mpeg4 |
6108 | 44 |
45 vme 0-5 (motion estimation) | |
46 0 none (not recommanded, very lq) | |
47 1 full (not recommanded, too slow) | |
48 2 log (not recommanded, lq) | |
49 3 phods (not recommanded, lq) | |
50 4 EPZS (default) | |
8588 | 51 5 X1 (experimantal, might change from time to time or be just broken) |
6108 | 52 |
53 vhq (high quality mode) | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
54 encode each MB as in all modes and choose the best (this is slow but |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
55 better filesize/quality) |
6108 | 56 disabled by default |
57 | |
58 v4mv | |
59 allow 4 MV per MB (little difference in filesize/quality) | |
60 disabled by default | |
61 | |
62 keyint 0-300 (maximum interval between keyframes) | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
63 keyframes are needed for seeking as seeking is only possible to a |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
64 keyframe but they need more space than non-keyframes so larger numbers here |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
65 mean slightly smaller files, but less precise seeking |
6108 | 66 0 no keyframes |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
67 >300 is not recommended as the quality might be bad (depends upon |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
68 decoder, encoder and luck) |
7088 | 69 for strict mpeg1/2/4 compliance this would have to be <=132 |
6108 | 70 |
71 vb_strategy 0-1 for pass 2 | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
72 0 allways use the max number of B frames (default) |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
73 1 avoid B frames in high motion scenes (this will cause bitrate |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
74 misprediction) |
6108 | 75 |
76 vpass | |
77 1 first pass | |
78 2 second pass | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
79 (only need to specify if two-pass encoding is used) |
7496 | 80 Tip: u can try to use constant quantizer mode for pass1 (vqscale=<quantizer>) |
8191 | 81 for huffyuv: |
82 pass 1 saves statistics | |
83 pass 2 encodes with a optimal huffman table based upon the pass 1 stats | |
6108 | 84 |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
85 vbitrate (kbits per second) for pass1/2 |
6108 | 86 800 is default |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
87 (if value is bigger then 16000 it is interpreted as bit not kbit!) |
6108 | 88 |
89 vratetol (filesize tolerance in kbit) for pass1/2 | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
90 this is just an approximation, the real difference can be much smaller |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
91 or larger |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
92 1000-100000 is a sane range |
6108 | 93 8000 is default |
94 | |
7088 | 95 vrc_maxrate (maximum bitrate in kbit/sec) for pass1/2 |
96 vrc_minrate (minimum bitrate in kbit/sec) for pass1/2 | |
97 vrc_buf_size (buffer size in kbit) for pass1/2 | |
98 this is for stuff like VCD | |
99 VCD: FIXME | |
100 SVCD: ... | |
101 DVD: ... | |
102 Note: vratetol should not be too large during the 2.pass or there might | |
103 be problems if vrc_(min|max)rate is used | |
104 | |
105 vb_qfactor (-31.0-31.0) for pass1/2 | |
106 1.25 is default | |
107 vi_qfactor (-31.0-31.0) for pass1/2 | |
108 0.8 is default | |
109 vb_qoffset (-31.0-31.0) for pass1/2 | |
110 1.25 is default | |
111 vi_qoffset (-31.0-31.0) for pass1/2 | |
112 0.0 is default | |
113 if v{b|i}_qfactor > 0 | |
114 I/B-Frame quantizer = P-Frame quantizer * v{b|i}_qfactor + v{b|i}_qoffset | |
115 else | |
116 do normal ratecontrol (dont lock to next P frame quantizer) and | |
117 set q= -q * v{b|i}_qfactor + v{b|i}_qoffset | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
118 tip: to do constant quantizer encoding with different quantizers for |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
119 I/P and B frames you can use: |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
120 vqmin=<ip_quant>:vqmax=<ip_quant>:vb_qfactor=<b_quant/ip_quant> |
6108 | 121 |
7088 | 122 vqblur (0.0-1.0) quantizer blur (pass1) |
6108 | 123 0.0 qblur disabled |
124 0.5 is the default | |
125 1.0 average the quantizer over all previous frames | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
126 larger values will average the quantizer more over time so that it will |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
127 be changed slower |
7088 | 128 vqblur (0.0-99.0) quantizer blur (pass2) |
129 gaussian blur (gaussian blur cant be done during pass 1 as the future quantizers arent known) | |
130 0.5 is the default | |
131 larger values will average the quantizer more over time so that it will | |
132 be changed slower | |
6108 | 133 |
7088 | 134 vqcomp quantizer compression (for pass1/2) |
135 depends upon vrc_eq | |
136 | |
137 vrc_eq the main ratecontrol equation (for pass1/2) | |
138 1 constant bitrate | |
139 tex constant quality | |
140 1+(tex/avgTex-1)*qComp approximately the equation of the old ratecontrol code | |
141 tex^qComp with qcomp 0.5 or something like that (default) | |
6108 | 142 |
7088 | 143 infix operators: +,-,*,/,^ |
144 variables: | |
145 tex texture complexity | |
146 iTex,pTex intra, non intra texture complexity | |
147 avgTex average texture complexity | |
148 avgIITex average intra texture complexity in I frames | |
149 avgPITex average intra texture complexity in P frames | |
150 avgPPTex average non intra texture complexity in P frames | |
151 avgBPTex average non intra texture complexity in B frames | |
152 mv bits used for MVs | |
153 fCode maximum length of MV in log2 scale | |
154 iCount number of intra MBs / number of MBs | |
155 var spatial complexity | |
156 mcVar temporal complexity | |
157 qComp qcomp from the command line | |
158 isI, isP, isB is 1 if picture type is I/P/B else 0 | |
159 Pi,E see ur favorite math book | |
160 | |
161 functions: | |
162 max(a,b),min(a,b) maximum / minimum | |
163 gt(a,b) is 1 if a>b, 0 otherwise | |
164 lt(a,b) is 1 if a<b, 0 otherwise | |
165 eq(a,b) is 1 if a==b,0 otherwise | |
166 sin,cos,tan,sinh,cosh,tanh,exp,log,abs | |
167 | |
168 vrc_override user specified quality for specific parts (ending credits ...) (for pass1/2) | |
169 <start-frame>,<end-frame>,<quality>[/<start-frame>,<end-frame>,<quality>[/...]] | |
170 quality 2..31 -> quantizer | |
171 quality -500..0 -> quality correcture in % | |
172 | |
173 vrc_init_cplx (0-1000) initial complexity for pass1 | |
174 | |
175 vqsquish (0 or 1) for pass1/2 how to keep the quantizer between qmin & qmax | |
176 0 use cliping | |
177 1 use a nice differentiable function (default) | |
6108 | 178 |
7039
2eae7ac0fa8b
same behavior for luma & chroma single coeff elimination
michael
parents:
7011
diff
changeset
|
179 vlelim (-1000-1000) single coefficient elimination threshold for luminance |
6256 | 180 0 disabled (default) |
7039
2eae7ac0fa8b
same behavior for luma & chroma single coeff elimination
michael
parents:
7011
diff
changeset
|
181 -4 (JVT recommendation) |
2eae7ac0fa8b
same behavior for luma & chroma single coeff elimination
michael
parents:
7011
diff
changeset
|
182 negative values will allso consider the dc coefficient |
2eae7ac0fa8b
same behavior for luma & chroma single coeff elimination
michael
parents:
7011
diff
changeset
|
183 should be at least -4 or lower for encoding at quant=1 |
6256 | 184 |
7039
2eae7ac0fa8b
same behavior for luma & chroma single coeff elimination
michael
parents:
7011
diff
changeset
|
185 vcelim (-1000-1000) single coefficient elimination threshold for chrominance |
6256 | 186 0 disabled (default) |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
187 7 (JVT recommendation) |
7039
2eae7ac0fa8b
same behavior for luma & chroma single coeff elimination
michael
parents:
7011
diff
changeset
|
188 negative values will allso consider the dc coefficient |
2eae7ac0fa8b
same behavior for luma & chroma single coeff elimination
michael
parents:
7011
diff
changeset
|
189 should be at least -4 or lower for encoding at quant=1 |
6256 | 190 |
8877 | 191 vstrict (-1,0,1) strict standard compliance |
192 0 (default) | |
193 1 only recommended if you want to feed the output into the mpeg4 reference | |
194 decoder | |
195 -1 allows nonstandard YV12 huffyuv encoding (20% smaller files, but | |
196 cant be played back by the official huffyuv codec) | |
6256 | 197 |
198 vdpart data partitioning | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
199 adds 2 byte per video packet |
7724 | 200 each videopacket will be encoded in 3 seperate partitions: |
201 1. MVs (=movement) | |
202 2. DC coefficients (=low res picture) | |
203 3. AC coefficients (=details) | |
204 the MV & DC are most important, loosing them looks far worse than | |
205 loosing the AC and the 1. & 2. partition (MV&DC) are far smaller than | |
206 the 3. partition (AC) -> errors will hit the AC partition much more | |
207 often than the MV&DC -> the picture will look better with partitioning | |
208 than without, as without partitining an error will trash AC/DC/MV | |
209 equally | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
210 improves error-resistance when transfering over unreliable channels (eg. |
6322 | 211 streaming over the internet) |
6256 | 212 |
6257 | 213 vpsize (0-10000) video packet size |
214 0 disabled (default) | |
7724 | 215 100-1000 good choice |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
216 improves error-resistance (see vdpart for more info) |
6257 | 217 |
6552 | 218 gray grayscale only encoding (a bit faster than with color ...) |
219 | |
7236 | 220 vfdct (0-99) dct algorithm |
7179 | 221 0 automatically select a good one (default) |
222 1 fast integer | |
223 2 accurate integer | |
224 3 mmx | |
225 4 mlib | |
7619 | 226 |
227 idct (0-99) idct algorithm | |
228 0 automatically select a good one (default) | |
229 1 jpeg reference integer | |
230 2 simple | |
231 3 simplemmx | |
232 4 libmpeg2mmx (inaccurate, DONT USE for encoding with keyint >100) | |
233 5 ps2 | |
234 6 mlib | |
235 7 arm | |
7623 | 236 note: all these IDCTs do pass the IEEE1180 tests AFAIK |
7179 | 237 |
7496 | 238 lumi_mask (0.0-1.0) luminance masking |
239 0.0 disabled (default) | |
7619 | 240 0.0-0.3 should be a sane range |
7496 | 241 warning: be carefull, too large values can cause disasterous things |
242 warning2: large values might look good on some monitors but may look horrible | |
243 on other monitors | |
244 | |
245 dark_mask (0.0-1.0) darkness masking | |
246 0.0 disabled (default) | |
247 0.0-0.3 should be a sane range | |
248 warning: be carefull, too large values can cause disasterous things | |
249 warning2: large values might look good on some monitors but may look horrible | |
250 on other monitors / TV / TFT | |
251 | |
252 tcplx_mask (0.0-1.0) temporal complexity masking | |
253 0.0 disabled (default) | |
254 | |
255 scplx_mask (0.0-1.0) spatial complexity masking | |
256 0.0 disabled (default) | |
257 0.0-0.5 should be a sane range | |
258 larger values help against blockiness, if no deblocking filter is used | |
259 for decoding | |
260 Tip: crop any black borders completly away as they will reduce the quality | |
261 of the MBs there, this is true if scplx_mask isnt used at all too | |
262 | |
8702 | 263 naq normalize adaptive quantization (experimental) |
264 when using adaptive quantization (*_mask), the average per-MB quantizer | |
265 may no longer match the requested frame-level quantizer. using naq will | |
266 attempt to adjust the per-MB quantizers to maintain the proper average. | |
7619 | 267 |
268 ildct use interlaced dct | |
7496 | 269 |
8191 | 270 format |
271 YV12 (default) | |
272 422P (for huffyuv) | |
273 | |
274 pred (for huffyuv) | |
275 0 left prediction | |
276 1 plane/gradient prediction | |
277 2 median prediction | |
8492 | 278 |
8588 | 279 qpel use quarter pel motion compensation |
280 Tip: this seems only usefull for high bitrate encodings | |
281 | |
8803 | 282 precmp comparission function for motion estimation pre pass |
8588 | 283 cmp comparission function for full pel motion estimation |
284 subcmp comparission function for sub pel motion estimation | |
9030 | 285 mbcmp comparission function for macroblock decission |
8588 | 286 0 SAD (sum of absolute differences) (default) |
287 1 SSE (sum of squared errors) | |
288 2 SATD (sum of absolute hadamard transformed differences) | |
289 3 DCT (sum of absolute dct transformed differences) | |
9030 | 290 4 PSNR (sum of the squared quantization errors) (dont use, low quality) |
8959 | 291 5 BIT (number of bits needed for the block) |
292 6 RD (rate distoration optimal, slow) | |
8588 | 293 7 ZERO (0) |
9030 | 294 +256 (use chroma too, doesnt work (correctly) with b frames currently) |
295 Tip: SAD is fast, SATD is good, SSE is something in between | |
296 Tip2: when using SATD/DCT/BIT/RD for full pel search then a | |
297 larger diamond something like dia=2 or dia=4 might improve | |
298 quality, but only for some videos | |
299 Note: mbcmp is only used if hq mode is disabled | |
8696 | 300 |
8803 | 301 predia (-99 - 6) diamond type & size for motion estimation pre pass |
8696 | 302 dia (-99 - 6) diamond type & size for motion estimation |
303 ... | |
304 -3 shape adaptive diamond with size 3 | |
305 -2 shape adaptive diamond with size 2 | |
306 -1 experimental | |
307 1 normal size=1 diamond (default) =EPZS type diamond | |
308 0 | |
309 000 | |
310 0 | |
311 2 normal size=2 diamond | |
312 0 | |
313 000 | |
314 00000 | |
315 000 | |
316 0 | |
317 ... | |
318 Tip: the shape adaptive stuff seems to be faster at the same quality | |
319 Note: the sizes of the normal diamonds and shape adaptive ones dont | |
320 have the same meaning | |
321 | |
322 trell trellis quantization | |
323 this will find the optimal encoding for each 8x8 block | |
324 trellis quantization is quite simple a optimal quantization in the | |
325 PSNR vs bitrate sense (assuming that there would be no rounding errors introduced | |
326 by the IDCT, which is obviously not the case) it simply finds a block for the minimum of | |
327 error + lambda*bits | |
328 lambda is a qp dependant constant | |
329 bits is the amount of bits needed to encode the block | |
330 error is simple the sum of squared errors of the quantization | |
331 | |
332 last_pred (0-99) amount of motion predictors from the previous frame | |
333 0 (default) | |
334 a -> will use 2a+1 x 2a+1 MB square of MV predictors from the previous frame | |
8588 | 335 |
8710 | 336 preme (0-2) Motion estimation pre-pass |
337 0 disabled | |
338 1 only after I frames (default) | |
339 2 allways | |
8803 | 340 |
341 subq (1-8) subpel refinement quality (for qpel) | |
342 8 (default) | |
343 Note: this has a significant effect on the speed | |
8877 | 344 |
345 psnr will print the psnr for the whole video after encoding and store the per frame psnr | |
346 in a file with name like "psnr_012345.log" | |
347 | |
8710 | 348 |
6256 | 349 lavdopts: (decoder options) |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
350 --------------------------- |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
351 |
7722 | 352 ec error concealment |
353 1 use strong deblock filter for damaged MBs | |
354 2 iterative MV search (slow) | |
355 3 all (default) | |
356 Note: just add the ones u want to enable | |
6256 | 357 |
7722 | 358 er error resilience |
359 0 disabled | |
360 1 carefull (should work with broken encoders) | |
361 2 normal (default) (works with compliant encoders) | |
362 3 agressive (more checks but might cause problems even for valid bitstreams) | |
363 4 very agressive | |
364 | |
365 bug manual workaround encoder bugs (autodetection isnt foolproof for these) | |
366 0 nothing | |
367 1 autodetect bugs (default) | |
368 2 for msmpeg4v3 some old lavc generated msmpeg4v3 files (no autodetect) | |
369 4 for mpeg4 xvid interlacing bug (autodetected if fourcc==XVIX) | |
370 8 for mpeg4 UMP4 (autodetected if fourcc==UMP4) | |
371 16for mpeg4 padding bug | |
372 32for mpeg4 illegal vlc bug (autodetected per fourcc) | |
8191 | 373 64for mpeg4 XVID&DIVX qpel bug (autodetected) |
7722 | 374 Note: just add the ones u want to enable |
6256 | 375 |
6549 | 376 gray grayscale only decoding (a bit faster than with color ...) |
377 | |
7619 | 378 idct see lavcopts |
379 note: the decoding quality is highest if the same idct algorithm is used | |
380 for decoding as for encoding, this is often not the most accurate though | |
381 | |
6256 | 382 |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
383 Notes: 1. lavc will strictly follow the quantizer limits vqmin, vqmax, vqdiff |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
384 even if it violates the bitrate / bitrate tolerance |
6108 | 385 2. changing some options between pass1 & 2 can reduce the quality |
386 | |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
387 FAQ: Q: Why is the filesize much too small? |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
388 A: Try to increase vqmin=2 or 1 (be carefull with 1, it could cause |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
389 strange things to happen). |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
390 Q: What provides better error recovery while keeping the filesize low? |
7088 | 391 Should I use data partitioning or increase the number of video packets? |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
392 A: Data partitioning is better in this case. |
6108 | 393 |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
394 Glossary: |
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
395 MB Macroblock (16x16 luminance and 8x8 chrominance samples) |
6108 | 396 MV Motion vector |
397 ME Motion estimation | |
398 MC Motion compensation | |
7088 | 399 RC Rate control |
400 DCT Discrete Cosine Transform | |
401 IDCT Inverse Discrete Cosine Transform | |
8702 | 402 DC The coefficient of the constant term in the DCT (avg value of block) |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
403 JVT Joint Video Team Standard -- http://www.itu.int/ITU-T/news/jvtpro.html |
8877 | 404 PSNR peak signal to noise ratio |
6108 | 405 |
6270
8dfe9b162624
Spell checking, line wrapping for better readability, some additions/better explanations.
atmos4
parents:
6266
diff
changeset
|
406 Examples: |
6256 | 407 mencoder foobar.avi -lavcopts vcodec=mpeg4:vhq:keyint=300:vqscale=2 -o new-foobar.avi |
6547 | 408 mplayer foobar.avi -lavdopts bug=1 |
6322 | 409 |
7282 | 410 Links: |
411 short intro to mpeg coding: | |
412 http://www.eecs.umich.edu/~amarathe/mpeg.html | |
413 longer intro to jpeg/mpeg coding: | |
414 http://www.cs.sfu.ca/undergrad/CourseMaterials/CMPT479/material/notes/Chap4/Chap4.2/Chap4.2.html | |
8877 | 415 ftp://ftp.tek.com/mbd/manuals/video_audio/25W_11418_4.pdf |
7282 | 416 |
6322 | 417 -- |
418 Written 2002 by Michael Niedermayer and reviewed by Felix Buenemann. | |
419 Check the MPlayer documentation for contact-addresses. | |
420 |