Mercurial > mplayer.hg
annotate DOCS/xml/en/codecs.xml @ 11638:189ac484f742
compile fix
author | wight |
---|---|
date | Fri, 12 Dec 2003 16:25:40 +0000 |
parents | e600f015d03d |
children | f15a92de64fd |
rev | line source |
---|---|
9675 | 1 <?xml version="1.0" encoding="iso-8859-1"?> |
10913
49b1a67e7381
Add revision keyword to english xml files, to ease translation synchronization
lumag
parents:
10869
diff
changeset
|
2 <!-- $Revision$ --> |
9675 | 3 <sect1 id="codecs"> |
4 <title>Supported codecs</title> | |
5 | |
6 <sect2 id="video-codecs"> | |
7 <title>Video codecs</title> | |
8 | |
9 <para> | |
11344 | 10 See the <ulink url="http://www.mplayerhq.hu/homepage/codecs-status.html">codec status table</ulink> |
9675 | 11 for the complete, daily generated list. Quite a few codecs are available for |
12 download from our homepage. Grab them from our | |
13 <ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/">codecs page</ulink>. | |
14 </para> | |
15 | |
16 <para> | |
17 The most important ones above all: | |
18 </para> | |
19 | |
20 <itemizedlist> | |
21 <listitem><simpara> | |
22 <emphasis role="bold">MPEG1</emphasis> (<emphasis role="bold">VCD</emphasis>) and | |
23 <emphasis role="bold">MPEG2</emphasis> (<emphasis role="bold">DVD</emphasis>) video | |
24 </simpara></listitem> | |
25 <listitem><simpara> | |
26 native decoders for <emphasis role="bold">DivX ;-), OpenDivX (DivX4), | |
27 DivX 5.01, 3ivX, M$ MPEG4</emphasis> v1, v2 and other MPEG4 variants | |
28 </simpara></listitem> | |
29 <listitem><simpara> | |
30 native decoder for <emphasis role="bold">Windows Media Video 7/8</emphasis> | |
31 (<emphasis role="bold">WMV1/WMV2</emphasis>), and Win32 DLL decoder | |
32 for <emphasis role="bold">Windows Media Video 9</emphasis> | |
33 (<emphasis role="bold">WMV3</emphasis>), both used in <filename>.wmv</filename> | |
34 files | |
35 </simpara></listitem> | |
36 <listitem><simpara> | |
37 native <emphasis role="bold">Sorenson 1 (SVQ1)</emphasis> decoder | |
38 </simpara></listitem> | |
39 <listitem><simpara> | |
10132 | 40 native <emphasis role="bold">Sorenson 3 (SVQ3)</emphasis> decoder |
9675 | 41 </simpara></listitem> |
42 <listitem><simpara> | |
43 <emphasis role="bold">3ivx</emphasis> v1, v2 decoder | |
44 </simpara></listitem> | |
45 <listitem><simpara> | |
46 Cinepak and <emphasis role="bold">Intel Indeo</emphasis> codecs (3.1,3.2,4.1,5.0) | |
47 </simpara></listitem> | |
48 <listitem><simpara> | |
49 <emphasis role="bold">MJPEG</emphasis>, AVID, VCR2, ASV2 and other hardware | |
50 formats | |
51 </simpara></listitem> | |
52 <listitem><simpara> | |
53 VIVO 1.0, 2.0, I263 and other <emphasis role="bold">h263(+)</emphasis> variants | |
54 </simpara></listitem> | |
55 <listitem><simpara> | |
56 FLI/FLC | |
57 </simpara></listitem> | |
58 <listitem><simpara> | |
11638 | 59 <emphasis role="bold">RealVideo 1.0 & 2.0</emphasis> from libavcodec, and |
60 <emphasis role="bold">RealVideo 3.0 & 4.0</emphasis> codecs using RealPlayer | |
11637 | 61 libraries |
9675 | 62 </simpara></listitem> |
63 <listitem><simpara> | |
64 native decoder for HuffYUV | |
65 </simpara></listitem> | |
66 <listitem><simpara> | |
67 Various old simple RLE-like formats | |
68 </simpara></listitem> | |
69 </itemizedlist> | |
70 | |
71 <para> | |
72 If you have a Win32 codec not listed here which is not supported yet, | |
73 please read the <link linkend="win32-codecs">codec importing HOWTO</link> | |
74 and help us add support for it. | |
75 </para> | |
76 | |
77 | |
78 <sect3 id="divx4-5"> | |
79 <title>DivX4/DivX5</title> | |
80 | |
81 <para> | |
9683 | 82 This section contains information about the DivX4 and DivX5 codecs of |
9675 | 83 <ulink url="http://www.projectmayo.com">Project Mayo</ulink>. |
84 Their first available alpha version was OpenDivX 4.0 alpha 47 and 48. | |
85 Support for this was included in <application>MPlayer</application> in the | |
86 past, and built by default. We also used its postprocessing code to | |
87 optionally enhance visual quality of MPEG1/2 movies. Now we use our own, | |
88 for all file types. | |
89 </para> | |
90 | |
91 <para> | |
92 The new generation of this codec is called DivX4 and can even decode | |
93 movies made with the infamous DivX codec! In addition it is much faster | |
94 than the native Win32 DivX DLLs but slower than <systemitem | |
95 class="library">libavcodec</systemitem>. Hence its usage as a decoder is | |
96 <emphasis role="bold">DISCOURAGED</emphasis>. However, it is useful for | |
97 encoding. One disadvantage of this codec is that it is not available under an | |
98 Open Source license. | |
99 </para> | |
100 | |
101 <para> | |
102 DivX4 works in two modes: | |
103 <variablelist> | |
104 <varlistentry><term><option>-vc odivx</option></term> | |
105 <listitem><simpara> | |
106 Uses the codec in OpenDivX fashion. In this case it produces YV12 images | |
107 in its own buffer, and <application>MPlayer</application> does colorspace | |
108 conversion via libvo. (<emphasis role="bold">Fast, recommended!</emphasis>) | |
109 </simpara></listitem> | |
110 </varlistentry> | |
111 <varlistentry><term><option>-vc divx4</option></term> | |
112 <listitem><simpara> | |
113 Uses the colorspace conversion of the codec. In this mode you can use | |
114 YUY2/UYVY, too. (<emphasis role="bold">SLOW</emphasis>) | |
115 </simpara></listitem> | |
116 </varlistentry> | |
117 </variablelist> | |
118 </para> | |
119 | |
120 <para> | |
121 The <option>-vc odivx</option> method is usually faster, due to the fact | |
122 that it transfers image data in YV12 (planar YUV 4:2:0) format, thus | |
123 requiring much less bandwidth on the bus. For packed YUV modes (YUY2, UYVY) | |
124 use the <option>-vc divx4</option> method. For RGB modes the speed is the | |
125 same, differing at best according to your current color depth. | |
126 <note> | |
127 <para> | |
128 If your <option>-vo</option> driver supports direct rendering, then <option>-vc | |
129 divx4</option> may be faster, or even the fastest solution. | |
130 </para> | |
131 | |
132 <para> | |
133 The Divx4/5 binary codec library can be downloaded from | |
134 <ulink url="http://avifile.sourceforge.net">avifile</ulink> or | |
135 <ulink url="http://www.divx.com">divx.com</ulink> | |
136 Unpack it, run <filename>./install.sh</filename> as root and do not forget adding | |
137 <filename class="directory">/usr/local/lib</filename> to your | |
138 <filename>/etc/ld.so.conf</filename> and running <command>ldconfig</command>. | |
139 </para> | |
140 | |
141 <para> | |
142 Get the CVS version of the OLD OpenDivx core library like this: | |
143 </para> | |
144 | |
145 <procedure> | |
146 <step><para> | |
147 <screen>cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot login</screen> | |
148 </para></step> | |
149 <step><para> | |
150 <screen>cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co divxcore</screen> | |
151 </para></step> | |
152 <step><para> | |
153 This core library is split into a decore and encore library that have to be | |
154 compiled separately. For the decore Library, simply type | |
155 <screen> | |
156 cd divxcore/decore/build/linux | |
157 make | |
158 cp libdivxdecore.so /usr/local/lib | |
9815
eb55fee443d2
Make absolute symlinks relative as suggested by Rich, fix typo.
diego
parents:
9802
diff
changeset
|
159 ln -s libdivxdecore.so /usr/local/lib/libdivxdecore.so.0 |
9675 | 160 cp ../../src/decore.h /usr/local/include |
161 </screen> | |
162 </para></step> | |
163 <step><para> | |
164 Alas, for the encore library there is no Linux Makefile available, and the | |
165 MMX optimized code only works on Windows. You can still compile it, though, | |
166 by using this | |
167 <ulink url="ftp://ftp.mplayerhq.hu/MPlayer/contrib/divx-mf/Makefile">Makefile</ulink>. | |
168 <screen> | |
169 cd ../../../encore/build | |
170 mkdir linux | |
171 cd linux | |
172 cp path/Makefile . | |
173 make | |
174 cp libdivxencore.so /usr/local/lib | |
9815
eb55fee443d2
Make absolute symlinks relative as suggested by Rich, fix typo.
diego
parents:
9802
diff
changeset
|
175 ln -s libdivxencore.so /usr/local/lib/libdivxencore.so.0 |
9675 | 176 cp ../../src/encore.h /usr/local/include |
177 </screen> | |
178 </para></step> | |
179 </procedure> | |
180 | |
181 <para> | |
182 <application>MPlayer</application> autodetects DivX4/DivX5 if it is | |
183 properly installed, just compile as usual. If it does not detect it, you | |
184 did not install or configure it correctly. | |
185 </para> | |
186 | |
187 </note> | |
188 </para> | |
189 </sect3> | |
190 | |
191 | |
10869 | 192 <sect3 id="ffmpeg" xreflabel="FFmpeg/libavcodec"> |
11107 | 193 <title>FFmpeg/libavcodec</title> |
9675 | 194 |
195 <para> | |
196 <ulink url="http://ffmpeg.sourceforge.net">FFmpeg</ulink> contains an | |
197 <emphasis role="bold">open source</emphasis> codec package, which is capable | |
11089 | 198 of decoding streams with various audio and video codecs. It also offers an |
199 impressing encoding facility and higher speed than the Win32 codecs or the | |
200 DivX.com DivX4/5 libraries! | |
9675 | 201 </para> |
202 | |
203 <para> | |
204 It contains a lot of nice codecs, especially important are the MPEG4 variants: | |
10132 | 205 DivX3, DivX4, DivX5, Windows Media Video 7/8 (WMV1/WMV2). Also a very interesting one |
9675 | 206 is the WMA decoder. |
207 </para> | |
208 | |
209 <para> | |
10132 | 210 The most recent codec deserving credit is the <emphasis role="bold">Sorenson 3</emphasis> |
11089 | 211 (SVQ3) codec. This is the first, completely opensource implementation. It's even |
212 faster than the original. Be sure to prefer this instead of the binary codec! | |
213 </para> | |
214 | |
215 <para> | |
216 For a complete list of supported codecs please visit the FFmpeg homepage. | |
217 Supported <ulink url="http://www.ffmpeg.org/ffmpeg-doc.html#SEC19">video</ulink> | |
218 and <ulink url="http://www.ffmpeg.org/ffmpeg-doc.html#SEC20">audio</ulink> codecs. | |
10132 | 219 </para> |
220 | |
221 <para> | |
9675 | 222 If you use an <application>MPlayer</application> release you have libavcodec |
223 right in the package, just build as usual. If you use | |
224 <application>MPlayer</application> from CVS you have to extract libavcodec from | |
11089 | 225 the FFmpeg CVS tree as FFmpeg releases are very rare. The CVS is mostly stable |
226 and offers the most features. In order to achieve this do: | |
9675 | 227 </para> |
228 | |
229 <procedure> | |
230 <step><para> | |
11074 | 231 <screen>cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg login</screen> |
9675 | 232 </para></step> |
233 <step><para> | |
11074 | 234 <screen>cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co ffmpeg</screen> |
9675 | 235 </para></step> |
236 <step><para> | |
237 Move the <filename>libavcodec</filename> directory from the FFmpeg | |
238 sources to the root of the <application>MPlayer</application> CVS tree. | |
239 It should look like this: | |
11089 | 240 <filename class="directory">main/libavcodec</filename> |
9675 | 241 </para><para> |
242 Symlinking is <emphasis role="bold">not</emphasis> enough, you have to | |
243 copy/move it! | |
244 </para></step> | |
245 <step><para> | |
11089 | 246 If you prefer having libavcodec updated at the same time you update |
247 <application>MPlayer</application> CVS, put the following line into the | |
11090 | 248 <filename>main/CVS/Entries</filename> file: |
11089 | 249 <screen>D/libavcodec////</screen> |
250 </para></step> | |
251 <step><para> | |
9675 | 252 Compile. <filename>configure</filename> should detect problems before |
253 compilation. | |
254 </para></step> | |
255 </procedure> | |
256 | |
257 <note> | |
258 <para> | |
259 <application>MPlayer</application> from CVS does contain a | |
260 <filename>libavcodec</filename> subdirectory, but it does | |
261 <emphasis role="bold">not</emphasis> contain the source for libavcodec! | |
262 You must follow the steps above to obtain the source for this library. | |
263 </para> | |
264 </note> | |
265 | |
266 <para> | |
267 With FFmpeg and my Matrox G400, I can view even the highest resolution DivX | |
11042 | 268 movies without dropped frames on my K6-2 500. |
9675 | 269 </para> |
270 </sect3> | |
271 | |
272 | |
273 <sect3 id="xanim"> | |
274 <title>XAnim codecs</title> | |
275 | |
276 <note> | |
277 <para> | |
278 Be advised that the XAnim binary codecs are packaged with a piece of text | |
279 claiming to be a legally binding software license which, besides other | |
280 restrictions, forbids the user to use the codecs in conjunction with any | |
281 program other than <application>XAnim</application>. However, the XAnim | |
282 author has yet to bring legal action against anyone for codec-related issues. | |
283 </para> | |
284 </note> | |
285 | |
286 <formalpara> | |
287 <title>INSTALLATION AND USAGE</title> | |
288 <para> | |
289 <application>MPlayer</application> is capable of employing the XAnim codecs | |
290 for decoding. Follow the instructions to enable them: | |
291 </para> | |
292 </formalpara> | |
293 | |
294 <procedure> | |
295 <step><para> | |
296 Download the codecs you wish to use from the | |
297 <ulink url="http://xanim.va.pubnix.com">XAnim site</ulink>. | |
9683 | 298 The <emphasis role="bold">3ivx</emphasis> codec is not there, but at the |
9675 | 299 <ulink url="http://www.3ivx.com">3ivx site</ulink>. |
300 </para></step> | |
301 <step><para> | |
9683 | 302 <emphasis role="bold">OR</emphasis> download the codecs pack from our |
303 <ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/">codecs page</ulink> | |
304 </para></step> | |
305 <step><para> | |
9675 | 306 Use the <option>--with-xanimlibdir</option> option to tell |
307 <filename>configure</filename> where | |
308 to find the XAnim codecs. By default, it looks for them at | |
10229 | 309 <filename class="directory">/usr/local/lib/codecs</filename>, |
9675 | 310 <filename class="directory">/usr/local/lib/xanim/mods</filename>, |
311 <filename class="directory">/usr/lib/xanim/mods</filename> and | |
312 <filename class="directory">/usr/lib/xanim</filename>. | |
313 Alternatively you can set the environment variable | |
314 <envar>XANIM_MOD_DIR</envar> to the directory of the XAnim codecs. | |
315 </para></step> | |
316 <step><para> | |
317 Rename/symlink the files, cutting out the architecture stuff, so they | |
318 will have filenames like these: <filename>vid_cvid.xa</filename>, | |
319 <filename>vid_h263.xa</filename>, <filename>vid_iv50.xa</filename> | |
320 </para></step> | |
321 </procedure> | |
322 | |
323 <para> | |
324 XAnim is video codec family <systemitem>xanim</systemitem>, so you may want | |
325 to use the <option>-vfm xanim</option> option to tell <application>MPlayer</application> | |
326 to use them if possible. | |
327 </para> | |
328 | |
329 <para> | |
330 Tested codecs include: <emphasis role="bold">Indeo 3.2, 4.1, 5.0, CVID, 3ivX, | |
331 h263.</emphasis> | |
332 </para> | |
333 </sect3> | |
334 | |
335 | |
336 <sect3 id="vivo-video"> | |
337 <title>VIVO video</title> | |
338 <para> | |
339 <application>MPlayer</application> can play Vivo (1.0 and 2.0) videos. The | |
340 most suitable codec for 1.0 files is FFmpeg's H263 decoder, you can use it | |
341 with the <option>-vc ffh263</option> option. For 2.0 files, use the | |
342 Win32 DLL through the <option>-vc vivo</option> option. If you do not supply | |
343 command line options <application>MPlayer</application> selects the best codec | |
344 automatically. | |
345 </para> | |
346 </sect3> | |
347 | |
348 | |
349 <sect3 id="mpeg12"> | |
350 <title>MPEG 1/2 video</title> | |
351 <para> | |
352 MPEG1 and MPEG2 are decoded by the multiplatform native <systemitem | |
353 class="library">libmpeg2</systemitem> library, whose source code is | |
354 included in <application>MPlayer</application>. We handle buggy MPEG 1/2 | |
355 video files by catching <systemitem>Signal 11</systemitem> | |
356 (<systemitem>segmentation fault</systemitem>), and quickly | |
357 reinitializing the codec, continuing exactly from where the failure | |
358 occurred. This recovery technique has no measurable speed penalty. | |
359 </para> | |
360 </sect3> | |
361 | |
362 | |
363 <sect3 id="msvideo1"> | |
364 <title>MS Video1</title> | |
365 <para> | |
366 This is a very old and very bad codec from Microsoft. In the past it was | |
367 decoded with the <filename>msvidc32.dll</filename> Win32 codec, now we have | |
368 our own open source implementation | |
369 (by <ulink url="mailto:melanson@pcisys.net">Mike Melanson</ulink>). | |
370 </para> | |
371 </sect3> | |
372 | |
373 | |
374 <sect3 id="cinepak-cvid"> | |
375 <title>Cinepak CVID</title> | |
376 <para> | |
377 <application>MPlayer</application> uses its own open source, multiplatform | |
378 Cinepak decoder (by <ulink url="mailto:timf@csse.monash.edu.au">Dr. Tim Ferguson</ulink>) | |
379 by default. It supports YUV outputs, so that hardware | |
380 scaling is possible if the video output driver permits it. | |
381 </para> | |
382 </sect3> | |
383 | |
384 | |
385 <sect3 id="realvideo"> | |
386 <title>RealVideo</title> | |
387 | |
388 <para> | |
389 <application>MPlayer</application> supports decoding all versions of | |
390 RealVideo: | |
391 | |
392 <itemizedlist> | |
393 <listitem><simpara> | |
11555 | 394 RealVideo 1.0, 2.0 (fourcc RV10, RV20) - en/decoding supported by |
9675 | 395 <systemitem class="library">libavcodec</systemitem> |
396 </simpara></listitem> | |
397 <listitem><simpara> | |
11555 | 398 RealVideo 3.0, 4.0 (fourcc RV30, RV40) - decoding supported by |
9675 | 399 <emphasis role="bold">RealPlayer libraries</emphasis> |
400 </simpara></listitem> | |
401 </itemizedlist> | |
402 </para> | |
403 | |
404 <para> | |
405 It is recommended to download and install <application>RealPlayer8</application> | |
406 or <application>RealONE</application>, because <application>MPlayer</application> | |
407 can use their libraries to decode files with RealVideo 2.0 - 4.0 video. The | |
408 <application>MPlayer</application> <filename>configure</filename> script should | |
409 detect the <application>RealPlayer</application> libraries in the standard | |
410 locations of a full installation. If it does not, tell <filename>configure</filename> | |
411 where to look with the <option>--with-reallibdir</option> option. | |
412 </para> | |
413 | |
10229 | 414 <para> |
415 As a second chance you can download the codecs from | |
416 <ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/">http://www.mplayerhq.hu/MPlayer/releases/codecs/</ulink>. | |
417 After downloading the Real codecs package, extract it to the | |
418 <filename class="directory">/usr/local/lib/codecs</filename> directory, or you can | |
419 specify a unique path with the <option>--with-reallibdir</option> option. | |
420 </para> | |
421 | |
9675 | 422 <note><para> |
423 <application>RealPlayer</application> libraries currently | |
424 <emphasis role="bold">only work with Linux, FreeBSD, NetBSD and Cygwin on the x86, | |
425 Alpha and PowerPC (Linux/Alpha and Linux/PowerPC have been tested) platforms</emphasis>. | |
426 </para></note> | |
427 </sect3> | |
428 | |
429 | |
430 <sect3 id="xvid"> | |
9720
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
431 <title>XviD</title> |
9675 | 432 |
433 <para> | |
9720
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
434 <ulink url="http://www.xvid.org">XviD</ulink> is a forked development of the |
9675 | 435 OpenDivX codec. It happened when ProjectMayo changed OpenDivX to closed source |
436 DivX4 (now DivX5), and the non-ProjectMayo people working on OpenDivX got angry, | |
9720
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
437 then started XviD. So both projects have the same origin. |
9675 | 438 |
439 <itemizedlist> | |
440 <title>ADVANTAGES</title> | |
441 <listitem><simpara> | |
442 open source | |
443 </simpara></listitem> | |
444 <listitem><simpara> | |
445 its API is compatible with DivX4 so adding support for it is easy | |
446 </simpara></listitem> | |
447 <listitem><simpara> | |
448 2-pass encoding support | |
449 </simpara></listitem> | |
450 <listitem><simpara> | |
451 nice encoding quality, higher speed than DivX4 (you can optimize it for | |
452 your box while compiling) | |
453 </simpara></listitem> | |
454 </itemizedlist> | |
455 | |
456 <itemizedlist> | |
457 <title>DISADVANTAGES</title> | |
458 <listitem><simpara> | |
459 currently it does not properly <emphasis role="bold">decode</emphasis> all | |
460 DivX/DivX4 files (no problem as <link linkend="ffmpeg">libavcodec</link> | |
461 can play them) | |
462 </simpara></listitem> | |
463 <listitem><simpara> | |
464 under development | |
465 </simpara></listitem> | |
466 </itemizedlist> | |
467 </para> | |
468 | |
469 <procedure> | |
470 <title>INSTALLING XVID CVS</title> | |
471 <para> | |
9720
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
472 It is currently available only from CVS. Here are download and installation |
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
473 instructions (you need at least autoconf 2.50, automake and libtool): |
9675 | 474 </para> |
475 <step><para> | |
476 <screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login</screen> | |
477 </para></step> | |
478 <step><para> | |
479 <screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore</screen> | |
480 </para></step> | |
481 <step><para> | |
482 <screen>cd xvidcore/build/generic</screen> | |
483 </para></step> | |
484 <step><para> | |
9720
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
485 <screen>./bootstrap.sh</screen> |
9675 | 486 </para></step> |
487 <step><para> | |
9720
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
488 <screen>./configure</screen> |
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
489 You may have to add some options (examine the output of |
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
490 <screen>./configure --help</screen>). |
9675 | 491 </para></step> |
492 <step><para> | |
9720
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
493 <screen>make && make install</screen> |
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
494 </para></step> |
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
495 <step><para> |
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
496 If you specified <option>--enable-divxcompat</option>, |
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
497 copy <filename>../../src/divx4.h</filename> to |
9675 | 498 <filename class="directory">/usr/local/include/</filename>. |
499 </para></step> | |
500 <step><para> | |
501 Recompile <application>MPlayer</application> with | |
9720
5cd40fe6ba7e
Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents:
9683
diff
changeset
|
502 <option>--with-xvidcore=<replaceable>/path/to/</replaceable>libxvidcore.a</option>. |
9675 | 503 </para></step> |
504 </procedure> | |
505 </sect3> | |
506 | |
507 | |
508 <sect3 id="sorenson"> | |
509 <title>Sorenson</title> | |
510 | |
511 <para> | |
512 Sorenson is a video codec developed by Sorenson Media and licensed to Apple who | |
513 distribute it with their <application>QuickTime Player</application>. We are | |
514 currently able to decode all version of Sorenson video files with the following | |
10132 | 515 decoders: |
9675 | 516 </para> |
517 | |
518 <itemizedlist> | |
519 <listitem><simpara> | |
10430 | 520 Sorenson Video v1 (fourcc <emphasis>SVQ1</emphasis>) - decoding supported |
521 by <emphasis role="bold">native codec</emphasis> | |
522 (<link linkend="ffmpeg">libavcodec</link>) | |
9675 | 523 </simpara></listitem> |
524 <listitem><simpara> | |
10430 | 525 Sorenson Video v3 (fourcc <emphasis>SVQ3</emphasis>) - decoding supported by |
526 <emphasis role="bold">native codec</emphasis> | |
527 (<link linkend="ffmpeg">libavcodec</link>) | |
9675 | 528 </simpara></listitem> |
529 </itemizedlist> | |
530 | |
531 <procedure> | |
9837 | 532 <title>COMPILING MPLAYER WITH QUICKTIME LIBRARIES SUPPORT</title> |
9675 | 533 <note><para>currently only 32bit Intel platforms are supported.</para></note> |
11540 | 534 <step><para>download <application>MPlayer</application> CVS</para></step> |
9675 | 535 <step><para>download QuickTime DLL pack from |
536 <ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/"/> | |
537 </para></step> | |
538 <step><para>extract QuickTime DLL pack to your Win32 codecs directory | |
10188 | 539 (default: <filename class="directory">/usr/local/lib/codecs/</filename>) |
9675 | 540 </para></step> |
11540 | 541 <step><para>compile <application>MPlayer</application></para></step> |
9675 | 542 </procedure> |
543 | |
544 </sect3> | |
545 </sect2> | |
546 | |
547 <!-- ********** --> | |
548 | |
549 <sect2 id="audio-codecs"> | |
550 <title>Audio codecs</title> | |
551 | |
552 <itemizedlist> | |
553 <title>The most important audio codecs above all:</title> | |
554 <listitem><simpara> | |
11342 | 555 MPEG layer 1/2/3 (MP1/2/3) audio (<emphasis role="bold">native</emphasis> |
9675 | 556 code, with MMX/SSE/3DNow! optimization) |
557 </simpara></listitem> | |
558 <listitem><simpara> | |
11342 | 559 Windows Media Audio 7 and 8 (aka WMAv1 and WMAv2) (<emphasis role="bold">native</emphasis> code, with |
560 <link linkend="ffmpeg">libavcodec</link>) | |
9675 | 561 </simpara></listitem> |
562 <listitem><simpara> | |
563 Windows Media Audio 9 (WMAv3) (using DMO DLL) | |
564 </simpara></listitem> | |
565 <listitem><simpara> | |
566 AC3 Dolby audio (<emphasis role="bold">native</emphasis> code, with | |
567 MMX/SSE/3DNow! optimization) | |
568 </simpara></listitem> | |
569 <listitem><simpara> | |
570 AC3 passing through soundcard hardware | |
571 </simpara></listitem> | |
572 <listitem><simpara> | |
11342 | 573 AAC |
574 </simpara></listitem> | |
575 <listitem><simpara> | |
9675 | 576 Ogg Vorbis audio codec (<emphasis role="bold">native</emphasis> library) |
577 </simpara></listitem> | |
578 <listitem><simpara> | |
579 RealAudio: DNET (low bitrate AC3), Cook, Sipro and ATRAC3 | |
580 </simpara></listitem> | |
581 <listitem><simpara> | |
582 QuickTime: Qualcomm and QDesign audio codecs | |
583 </simpara></listitem> | |
584 <listitem><simpara> | |
585 VIVO audio (g723, Vivo Siren) | |
586 </simpara></listitem> | |
587 <listitem><simpara> | |
588 Voxware audio (using DirectShow DLL) | |
589 </simpara></listitem> | |
590 <listitem><simpara> | |
591 alaw and ulaw, various gsm, adpcm and pcm formats and other simple old | |
592 audio codecs | |
593 </simpara></listitem> | |
594 </itemizedlist> | |
595 | |
596 | |
597 <sect3 id="swac3"> | |
598 <title>Software AC3 decoding</title> | |
599 | |
600 <para> | |
601 This is the default decoder used for files with AC3 audio. | |
602 </para> | |
603 | |
604 <para> | |
605 The AC3 decoder can create audio output mixes for 2, 4, or 6 speakers. | |
606 When configured for 6 speakers, this decoder provides separate output of | |
607 all the AC3 channels to the sound driver, allowing for full "surround | |
608 sound" experience without the external AC3 decoder required to use the | |
609 hwac3 codec. | |
610 </para> | |
611 | |
612 <para> | |
613 Use the <option>-channels</option> option to select the number of output | |
614 channels. Use <option>-channels 2</option> for a stereo downmix. For a 4 | |
615 channel downmix (Left Front, Right Front, Left Surround and Right Surround | |
616 outputs), use <option>-channels 4</option>. In this case, any center | |
617 channel will be mixed equally to the front channels. <option>-channels | |
618 6</option> will output all the AC3 channels as they are encoded - in the | |
619 order Left, Right, Left Surround, Right Surround, Center and LFE. | |
620 </para> | |
621 | |
622 <para> | |
623 The default number of output channels is 2. | |
624 </para> | |
625 | |
626 <para> | |
627 To use more than 2 output channels, you will need to use OSS, and have a | |
628 sound card that supports the appropriate number of output channels via the | |
629 SNDCTL_DSP_CHANNELS ioctl. An example of a suitable driver is emu10k1 | |
630 (used by Soundblaster Live! cards) from August 2001 or newer (ALSA CVS is | |
631 also supposed to work). | |
632 </para> | |
633 </sect3> | |
634 | |
635 | |
636 <sect3 id="hwac3"> | |
637 <title>Hardware AC3 decoding</title> | |
638 <para> | |
639 You need an AC3 capable sound card, with digital out (SP/DIF). The card's | |
640 driver must properly support the AFMT_AC3 format (C-Media does). Connect | |
641 your AC3 decoder to the SP/DIF output, and use the <option>-ac | |
642 hwac3</option> option. It is experimental but known to work with C-Media | |
643 cards and Soundblaster Live! + ALSA (but not OSS) drivers and DXR3/Hollywood+ | |
644 MPEG decoder cards. | |
645 </para> | |
646 </sect3> | |
647 | |
648 | |
649 <sect3 id="libmad"> | |
650 <title>libmad support</title> | |
651 | |
652 <para> | |
11342 | 653 <ulink url="http://mad.sourceforge.net">libmad</ulink> is a multiplatform, |
654 integer (internally 24bit PCM) only | |
9675 | 655 MPEG audio decoding library. It does not handle broken files well, and it |
11342 | 656 sometimes has problems with seeking, but it may perform better on FPU-less |
11343 | 657 (such as <link linkend="arm">ARM</link>) platform than mp3lib. |
9675 | 658 </para> |
659 | |
660 <para> | |
661 To enable support, compile with the <option>--enable-mad</option> configure | |
662 option. | |
663 </para> | |
664 </sect3> | |
665 | |
666 | |
667 <sect3 id="vivo-audio"> | |
668 <title>VIVO audio</title> | |
669 <para> | |
670 The audio codec used in VIVO files depends on whether it is a VIVO/1.0 or | |
671 VIVO/2.0 file. VIVO/1.0 files have <emphasis role="bold">g.723</emphasis> audio, | |
672 and VIVO/2.0 files have <emphasis role="bold">Vivo Siren</emphasis> audio. Both are | |
673 supported. | |
674 </para> | |
675 </sect3> | |
676 | |
677 | |
678 <sect3 id="realaudio"> | |
679 <title>RealAudio</title> | |
680 | |
681 <para> | |
682 <application>MPlayer</application> supports decoding nearly all versions of | |
683 RealAudio: | |
684 </para> | |
685 | |
686 <itemizedlist> | |
687 <listitem><simpara> | |
688 RealAudio DNET - decoding supported by | |
689 <systemitem class="library">liba52</systemitem> | |
690 </simpara></listitem> | |
691 <listitem><simpara> | |
692 RealAudio Cook/Sipro/ATRAC3 - decoding supported by | |
693 <emphasis role="bold">RealPlayer libraries</emphasis> | |
694 </simpara></listitem> | |
695 </itemizedlist> | |
696 | |
697 <para> | |
698 On how to install RealPlayer libraries, see the | |
699 <link linkend="realmedia">RealMedia file format</link> section. | |
700 </para> | |
701 </sect3> | |
702 | |
703 <sect3 id="qdesign"> | |
704 <title>QDesign codecs</title> | |
705 <para> | |
706 QDesign audio streams (fourcc:<emphasis>QDMC, QDM2</emphasis>) are found | |
707 in MOV/QT files. Both versions of this codec can be decoded with QuickTime | |
708 libraries. For installation instructions please see the | |
709 <link linkend="sorenson">Sorenson video codec</link> section. | |
710 </para> | |
711 </sect3> | |
712 | |
713 <sect3 id="qualcomm"> | |
714 <title>Qualcomm codecs</title> | |
715 <para> | |
716 Qualcomm audio streams (fourcc:<emphasis>Qclp</emphasis>) is found | |
717 in MOV/QT files. It can be decoded with QuickTime | |
718 libraries. For installation instructions please see the | |
719 <link linkend="sorenson">Sorenson video codec</link> section. | |
720 </para> | |
721 </sect3> | |
9802 | 722 |
723 <sect3 id="aac"> | |
724 <title>AAC codec</title> | |
725 <para> | |
726 AAC (Advanced Audio Coding) is an audio codec sometimes found in MOV and MP4 | |
727 files. An open source decoder called FAAD is available from | |
10766 | 728 <ulink url="http://www.audiocoding.com"/>. |
11540 | 729 <application>MPlayer</application> includes libfaad 2.0RC1, so you do not need |
730 to get it separately. | |
9802 | 731 </para> |
11031 | 732 |
733 <para> | |
734 If you use gcc 3.2 which fails to compile our internal FAAD or want to use | |
735 the external library for some other reason, download the library from the | |
736 <ulink url="http://www.audiocoding.com/download.php">download page</ulink> | |
737 and pass <option>--with-externalfaad</option> to <filename>configure</filename>. | |
738 You do not need all of faad2 to decode AAC files, libfaad is enough. Build | |
739 it like this: | |
740 <screen> | |
741 cd faad2/ | |
742 chmod +x bootstrap | |
743 ./bootstrap | |
744 ./configure | |
745 cd libfaad | |
746 make | |
747 make install | |
748 </screen> | |
749 Binaries are not available from audiocoding.com, but you can (apt-)get Debian | |
11033
668f6aef703d
From: "Dominik 'Rathann' Mierzejewski" <dominik@rangers.eu.org>
gabucino
parents:
11031
diff
changeset
|
750 packages from <ulink url="http://marillat.free.fr">Christian Marillat's homepage</ulink>, |
668f6aef703d
From: "Dominik 'Rathann' Mierzejewski" <dominik@rangers.eu.org>
gabucino
parents:
11031
diff
changeset
|
751 Mandrake RPMs from the <ulink url="http://plf.zarb.org">P.L.F</ulink> and RedHat RPMs |
668f6aef703d
From: "Dominik 'Rathann' Mierzejewski" <dominik@rangers.eu.org>
gabucino
parents:
11031
diff
changeset
|
752 from <ulink url="http://www.piorunek.pl/~dominik/">Dominik Mierzejewski's homepage</ulink>. |
11031 | 753 </para> |
9802 | 754 </sect3> |
755 | |
9675 | 756 </sect2> |
757 | |
758 <!-- ********** --> | |
759 | |
760 <sect2 id="win32-codecs"> | |
761 <title>Win32 codecs importing HOWTO</title> | |
762 | |
763 <!-- TODO: a short paragraph of text would be nice here... --> | |
764 | |
765 <sect3 id="vfw-codecs"> | |
766 <title>VFW codecs</title> | |
767 | |
768 <para> | |
769 VFW (Video for Windows) is the old Video API for Windows. Its codecs have | |
770 the <filename>.DLL</filename> or (rarely) <filename>.DRV</filename> | |
771 extension. If <application>MPlayer</application> fails at playing your AVI | |
772 with this kind of message: | |
773 <screen>UNKNOWN video codec: HFYU (0x55594648)</screen> | |
774 </para> | |
775 | |
776 <para> | |
777 It means your AVI is encoded with a codec which has the HFYU fourcc (HFYU = | |
778 HuffYUV codec, DIV3 = DivX Low Motion, etc.). Now that you know this, you | |
779 have to find out which DLL Windows loads in order to play this file. In our | |
780 case, the <filename>system.ini</filename> contains this information in a | |
781 line that reads: | |
782 <programlisting>VIDC.HFYU=huffyuv.dll</programlisting> | |
783 </para> | |
784 | |
785 <para> | |
786 So you need the <filename>huffyuv.dll</filename> file. Note that the audio | |
787 codecs are specified by the MSACM prefix: | |
788 <programlisting>msacm.l3acm=L3codeca.acm</programlisting> | |
789 </para> | |
790 | |
791 <para> | |
792 This is the MP3 codec. Now that you have all the necessary information | |
793 (fourcc, codec file, sample AVI), submit your codec support request by | |
794 mail, and upload these files to the FTP site: | |
795 <systemitem role="url"> | |
796 ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/ | |
797 </systemitem> | |
798 </para> | |
799 | |
800 <note><para>On Windows NT/2000/XP search for this info in the registry, | |
801 e.g. search for "VIDC.HFYU". To find out how to do this, look at | |
802 the old DirectShow method below. | |
803 </para></note> | |
804 </sect3> | |
805 | |
806 | |
807 <sect3 id="dshow-codecs"> | |
808 <title>DirectShow codecs</title> | |
809 | |
810 <para> | |
811 DirectShow is the newer Video API, which is even worse than its predecessor. | |
812 Things are harder with DirectShow, since | |
813 <itemizedlist> | |
814 <listitem><simpara> | |
815 <filename>system.ini</filename> does not contain the needed information, | |
816 instead it is stored in the registry and | |
817 </simpara></listitem> | |
818 <listitem><simpara> | |
819 we need the GUID of the codec. | |
820 </simpara></listitem> | |
821 </itemizedlist> | |
822 </para> | |
823 | |
824 <procedure> | |
825 <title>New Method:</title> | |
826 <para> | |
827 Using <application>Microsoft GraphEdit</application> (fast) | |
828 </para> | |
829 <step><para> | |
830 Get <application>GraphEdit</application> from either DirectX SDK or | |
831 <ulink url="http://doom9.org">doom9</ulink> | |
832 </para></step> | |
833 <step><para> | |
834 Start <command>graphedit.exe</command>. | |
835 </para></step> | |
836 <step><para> | |
837 From the menu select Graph -> Insert Filters. | |
838 </para></step> | |
839 <step><para> | |
840 Expand item <systemitem>DirectShow Filters</systemitem> | |
841 </para></step> | |
842 <step><para> | |
843 Select the right codec name and expand item. | |
844 </para></step> | |
845 <step><para> | |
846 In the entry <systemitem>DisplayName</systemitem> look at the text in | |
847 winged brackets after the backslash and write it down (five dash-delimited | |
848 blocks, the GUID). | |
849 </para></step> | |
850 <step><para> | |
851 The codec binary is the file specified in the <systemitem>Filename</systemitem> | |
852 entry. | |
853 </para></step> | |
854 </procedure> | |
855 | |
856 <note> | |
857 <para> | |
858 If there is no <systemitem>Filename</systemitem> and | |
859 <systemitem>DisplayName</systemitem> contains something like | |
860 <systemitem>device:dmo</systemitem>, then it is a DMO-Codec. | |
861 </para> | |
862 </note> | |
863 | |
864 <procedure> | |
865 <title>Old Method:</title> | |
866 <para> | |
867 Take a deep breath and start searching the registry... | |
868 </para> | |
869 <step><para> | |
870 Start <command>regedit</command>. | |
871 </para></step> | |
872 <step><para> | |
873 Press <keycap>Ctrl</keycap>+<keycap>F</keycap>, disable the first two | |
874 checkboxes, and enable the third. Type in the fourcc of the codec (e.g. | |
875 <userinput>TM20</userinput>). | |
876 </para></step> | |
877 <step><para> | |
878 You should see a field which contains the path and the filename (e.g. | |
879 <filename>C:\WINDOWS\SYSTEM\TM20DEC.AX</filename>). | |
880 </para></step> | |
881 <step><para> | |
882 Now that you have the file, we need the GUID. Try searching again, but | |
883 now search for the codec's name, not the fourcc. Its name can be acquired | |
884 when Media Player is playing the file, by checking | |
885 <guimenu>File</guimenu> -> <guisubmenu>Properties</guisubmenu> -> | |
886 <guimenuitem>Advanced</guimenuitem>. | |
887 If not, you are out of luck. Try guessing (e.g. search for TrueMotion). | |
888 </para></step> | |
889 <step><para> | |
890 If the GUID is found you should see a <guilabel>FriendlyName</guilabel> | |
891 and a <guilabel>CLSID</guilabel> field. Write down the 16 byte CLSID, | |
892 this is the GUID we need. | |
893 </para></step> | |
894 </procedure> | |
895 | |
896 <note> | |
897 <para> | |
898 If searching fails, try enabling all the checkboxes. You may have | |
899 false hits, but you may get lucky... | |
900 </para> | |
901 </note> | |
902 | |
903 <para> | |
904 Now that you have all the necessary information (fourcc, GUID, codec file, | |
905 sample AVI), submit your codec support request by mail, and upload these files | |
906 to the FTP site: | |
907 <systemitem | |
908 role="url">ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/ | |
909 </systemitem> | |
910 </para> | |
911 </sect3> | |
912 </sect2> | |
913 </sect1> |