comparison DOCS/codecs.html @ 6583:4b7d097a9c69

big update
author gabucino
date Fri, 28 Jun 2002 06:07:46 +0000
parents d0b1f3d75900
children ec042ecf50f5
comparison
equal deleted inserted replaced
6582:f98313dcd428 6583:4b7d097a9c69
18 daily generated list!!!</P> 18 daily generated list!!!</P>
19 19
20 <P>The most important ones above all:</P> 20 <P>The most important ones above all:</P>
21 <UL> 21 <UL>
22 <LI>MPEG1 (VCD) and MPEG2 (DVD) video</LI> 22 <LI>MPEG1 (VCD) and MPEG2 (DVD) video</LI>
23 <LI>DivX ;-), OpenDivX (DivX4), DivX 5.01, 3ivX, M$ MPEG4 v2 and other MPEG4 variants</LI> 23 <LI>native decoders for DivX ;-), OpenDivX (DivX4), DivX 5.01, 3ivX, M$ MPEG4 v1, v2 and other MPEG4 variants</LI>
24 <LI>Windows Media Video 7 (WMV1) and 8 (WMV2) used in .wmv files</LI> 24 <LI>native decoder for Windows Media Video 7 (WMV1), and Win32 DLL decoder for
25 Windows Media Video 8 (WMV2), both used in .wmv files</LI>
26 <LI><B>native Sorenson (SVQ1) decoder</B></LI>
25 <LI>Cinepak and Intel Indeo codecs (3.1,3.2,4.1,5.0)</LI> 27 <LI>Cinepak and Intel Indeo codecs (3.1,3.2,4.1,5.0)</LI>
26 <LI>MJPEG, AVID, VCR2, ASV2 and other hardware formats</LI> 28 <LI>MJPEG, AVID, VCR2, ASV2 and other hardware formats</LI>
27 <LI>VIVO 1.0, 2.0, I263 and other h263(+) variants</LI> 29 <LI>VIVO 1.0, 2.0, I263 and other h263(+) variants</LI>
28 <LI>FLI/FLC</LI> 30 <LI>FLI/FLC</LI>
29 <LI>RealVideo 1.0 from ffmpeg, and RealVideo 2.0, 3.0 using RealPlayer 31 <LI>RealVideo 1.0 from ffmpeg, and RealVideo 2.0, 3.0 using RealPlayer
30 libraries</LI> 32 libraries</LI>
33 <LI>native decoder for HuffYUV</LI>
31 <LI>Various old simple RLE-like formats</LI> 34 <LI>Various old simple RLE-like formats</LI>
32 </UL> 35 </UL>
33 36
34 <P>If you have a Win32 codec not listed here which is not supported yet, please read the 37 <P>If you have a Win32 codec not listed here which is not supported yet, please read the
35 <A HREF="#2.2.3">codec importing HOWTO</A> and help us add support 38 <A HREF="#2.2.3">codec importing HOWTO</A> and help us add support
37 40
38 <P><B><A NAME=2.2.1.1>2.2.1.1. DivX4/DivX5</A></B></P> 41 <P><B><A NAME=2.2.1.1>2.2.1.1. DivX4/DivX5</A></B></P>
39 42
40 <P>This section contains information about the DivX4 codec of 43 <P>This section contains information about the DivX4 codec of
41 <A HREF="http://www.projectmayo.com">Project Mayo</A>. Their first available alpha version was OpenDivX 4.0 44 <A HREF="http://www.projectmayo.com">Project Mayo</A>. Their first available alpha version was OpenDivX 4.0
42 alpha 47 and 48. Support for this was/is included in <B>MPlayer</B>, and built by 45 alpha 47 and 48. Support for this was included in <B>MPlayer</B> in the past,
43 default. Earlier, we used its postprocessing code to optionally enhance visual 46 and built by default. We also used its postprocessing code to optionally
44 quality of MPEG1/2 movies. Now we use our own.</P> 47 enhance visual quality of MPEG1/2 movies. Now we use our own, for all file
48 types.</P>
45 49
46 <P>The new generation of this codec is called DivX4Linux and can even decode 50 <P>The new generation of this codec is called DivX4Linux and can even decode
47 movies made with the infamous DivX codec! In addition it is much faster than the 51 movies made with the infamous DivX codec! In addition it is much faster than the
48 native Win32 DivX DLLs but slower than libavcodec. 52 native Win32 DivX DLLs but slower than libavcodec.
49 Hence its usage as a decoder is <B>DISCOURAGED</B>. However, it is useful for 53 Hence its usage as a decoder is <B>DISCOURAGED</B>. However, it is useful for
61 65
62 <P><B>MPlayer</B> autodetects DivX4/DivX5 if it is properly installed, just 66 <P><B>MPlayer</B> autodetects DivX4/DivX5 if it is properly installed, just
63 compile as usual. If it does not detect it, you did not install or configure 67 compile as usual. If it does not detect it, you did not install or configure
64 it correctly.</P> 68 it correctly.</P>
65 69
66 <P>DivX4Linux conflicts with the old OpenDivX because their APIs are similar but 70 <P>DivX4Linux works in two modes:</P>
67 incompatible. Therefore you can only have one of them compiled into <B>MPlayer</B>
68 at a time.</P>
69
70 <P>DivX4Linux offers an OpenDivX compatibility mode such that you may choose from
71 the following options when using this codec:</P>
72 71
73 <TABLE BORDER=0> 72 <TABLE BORDER=0>
74 <TR><TD>&nbsp;&nbsp;</TD><TD VALIGN=top><CODE>-vc&nbsp;odivx</CODE></TD><TD>&nbsp;&nbsp;</TD> 73 <TR><TD>&nbsp;&nbsp;</TD><TD VALIGN=top><CODE>-vc&nbsp;odivx</CODE></TD><TD>&nbsp;&nbsp;</TD>
75 <TD>Uses the codec in OpenDivX fashion. In this case it 74 <TD>Uses the codec in OpenDivX fashion. In this case it
76 produces YV12 images in its own buffer, and <B>MPlayer</B> does colorspace 75 produces YV12 images in its own buffer, and <B>MPlayer</B> does colorspace
77 conversion via libvo. (<B>RECOMMENDED!</B>)</TD></TR> 76 conversion via libvo. (<B>FAST, RECOMMENDED!</B>)</TD></TR>
78 <TR><TD></TD><TD VALIGN=top><CODE>-vc&nbsp;divx4</CODE></TD><TD></TD> 77 <TR><TD></TD><TD VALIGN=top><CODE>-vc&nbsp;divx4</CODE></TD><TD></TD>
79 <TD>Uses the colorspace conversion of the codec. 78 <TD>Uses the colorspace conversion of the codec.
80 In this mode you can use YUY2/UYVY, too.</TD></TR> 79 In this mode you can use YUY2/UYVY, too. (<B>SLOW</B>)</TD></TR>
81 </TABLE> 80 </TABLE>
82 81
83 <P>The <CODE>-vc odivx</CODE> method is usually faster, due to the fact that it transfers 82 <P>The <CODE>-vc odivx</CODE> method is usually faster, due to the fact that it transfers
84 image data in YV12 (planar YUV 4:2:0) format, thus requiring much less 83 image data in YV12 (planar YUV 4:2:0) format, thus requiring much less
85 bandwidth on the bus. For packed YUV modes (YUY2, UYVY) use the <CODE>-vc divx4</CODE> 84 bandwidth on the bus. For packed YUV modes (YUY2, UYVY) use the <CODE>-vc divx4</CODE>
86 method. For RGB modes the speed is the same, differing at best 85 method. For RGB modes the speed is the same, differing at best
87 according to your current color depth.</P> 86 according to your current color depth.</P>
88 87
89 <P>NOTE: If your -vo driver supports direct rendering, then <CODE>-vc divx4</CODE> may be 88 <P>NOTE: If your -vo driver supports direct rendering, then <CODE>-vc divx4</CODE> may be
90 faster, or even the fastest solution.</P> 89 faster, or even the fastest solution.</P>
91
92 <P>Note: <B>OLD</B> OpenDivX supports postprocessing via the
93 <CODE>-oldpp</CODE> option, but the range of values is strange:</P>
94
95 <TABLE BORDER=0>
96 <TR><TD>&nbsp;&nbsp;</TD><TD>0</TD><TD>&nbsp;&nbsp;</TD>
97 <TD>no postprocessing</TD></TR>
98 <TR><TD></TD><TD>10 .. 20</TD>
99 <TD></TD><TD>normal postprocessing (like level 2 with divxds)</TD></TR>
100 <TR><TD></TD><TD>30 .. 60</TD>
101 <TD></TD><TD>hard postprocessing, CPU intensive (like level 4 with divxds)</TD></TR>
102 </TABLE>
103 90
104 91
105 <P><B><A NAME=2.2.1.2>2.2.1.2. FFmpeg DivX/libavcodec</A></B></P> 92 <P><B><A NAME=2.2.1.2>2.2.1.2. FFmpeg DivX/libavcodec</A></B></P>
106 93
107 <P>Beginning with version 0.4.2, 94 <P>Beginning with version 0.4.2,
110 <B>MPlayer</B> supports this codec, making it possible to <B>watch 97 <B>MPlayer</B> supports this codec, making it possible to <B>watch
111 DivX/DivX4/DivX5/MP41/MP42 movies on non-x86 platforms</B>. Furthermore it offers higher 98 DivX/DivX4/DivX5/MP41/MP42 movies on non-x86 platforms</B>. Furthermore it offers higher
112 decoding speed than the Win32 codecs or the original 99 decoding speed than the Win32 codecs or the original
113 DivX4 library!</P> 100 DivX4 library!</P>
114 101
115 <P>It also contains a lot of nice codecs, such as RealVideo 1.0, MJPEG, h263, 102 <P>It also contains a lot of nice codecs, such as RealVideo 1.0, WMV7,
116 h263+, etc.</P> 103 MJPEG, h263, h263+, etc.</P>
117 104
118 <P>If you use an <B>MPlayer</B> release you have libavcodec right in the package, 105 <P>If you use an <B>MPlayer</B> release you have libavcodec right in the package,
119 just build as usual. If you use <B>MPlayer</B> from CVS you have to extract 106 just build as usual. If you use <B>MPlayer</B> from CVS you have to extract
120 libavcodec from the FFmpeg CVS tree as FFmpeg 0.4.5 does <B>not</B> work with 107 libavcodec from the FFmpeg CVS tree as FFmpeg 0.4.5 does <B>not</B> work with
121 <B>MPlayer</B>. In order to achieve this do:</P> 108 <B>MPlayer</B>. In order to achieve this do:</P>
131 </OL> 118 </OL>
132 119
133 <P><B>NOTE:</B> MPlayer from CVS does contain a libavcodec 120 <P><B>NOTE:</B> MPlayer from CVS does contain a libavcodec
134 subdirectory, but it does NOT contain the source for libavcodec! 121 subdirectory, but it does NOT contain the source for libavcodec!
135 You must follow the steps above to obtain the source for this library.</P> 122 You must follow the steps above to obtain the source for this library.</P>
136
137 <P>The codec also <B>supports postprocessing!</B></P>
138 123
139 <P>With FFmpeg and my Matrox G400, I can view even the highest resolution DivX 124 <P>With FFmpeg and my Matrox G400, I can view even the highest resolution DivX
140 movies without dropped frames on my K6/2 500.</P> 125 movies without dropped frames on my K6/2 500.</P>
141 126
142 127
261 package, and copy them to <CODE>/usr/local/include/</CODE>.</LI> 246 package, and copy them to <CODE>/usr/local/include/</CODE>.</LI>
262 <LI>Recompile <B>MPlayer</B> with <CODE>--with-xvidcore=/path/to/libcore.a</CODE>.</LI> 247 <LI>Recompile <B>MPlayer</B> with <CODE>--with-xvidcore=/path/to/libcore.a</CODE>.</LI>
263 </OL> 248 </OL>
264 249
265 250
251 <P><B><A NAME=2.2.1.10>2.2.1.10. Sorenson</A></B></P>
252
253 <P><B>Sorenson</B> is a video codec developed by Apple. We are currently
254 able to decode the first version of it (SVQ1), with a native decoder.</P>
255
256 <P><B>Advantages:</B></P>
257 <UL>
258 <LI>old, slow Macintosh machines were able to decode it</LI>
259 </UL>
260
261 <P><B>Disadvantages:</B></P>
262 <UL>
263 <LI>SVQ3 is still not reverse-engineered</LI>
264 </UL>
265
266 <P><B>Installation:</B> it's compiled and usable per default.</P>
267
268
266 <P><B><A NAME=2.2.2>2.2.2. Audio codecs</A></B></P> 269 <P><B><A NAME=2.2.2>2.2.2. Audio codecs</A></B></P>
267 270
268 <P>The most important audio codecs above all:<BR></P> 271 <P>The most important audio codecs above all:<BR></P>
269 <UL> 272 <UL>
270 <LI>MPEG layer 2, and layer 3 (MP3) audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI> 273 <LI>MPEG layer 2, and layer 3 (MP3) audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI>
272 <LI>AC3 Dolby audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI> 275 <LI>AC3 Dolby audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI>
273 <LI>Ogg Vorbis audio codec (<B>native</B> library)</LI> 276 <LI>Ogg Vorbis audio codec (<B>native</B> library)</LI>
274 <LI>Voxware audio (using DirectShow DLL)</LI> 277 <LI>Voxware audio (using DirectShow DLL)</LI>
275 <LI>alaw, msgsm, pcm and other simple old audio formats</LI> 278 <LI>alaw, msgsm, pcm and other simple old audio formats</LI>
276 <LI>VIVO audio (g723, Vivo Siren)</LI> 279 <LI>VIVO audio (g723, Vivo Siren)</LI>
277 <LI>RealAudio: DNET (low bitrate AC3)</LI> 280 <LI>RealAudio: DNET (low bitrate AC3), Cook, Sipro</LI>
278 </UL> 281 </UL>
279 282
280 283
281 <P><B><A NAME=2.2.2.1>2.2.2.1. Software AC3 decoding</A></B></P> 284 <P><B><A NAME=2.2.2.1>2.2.2.1. Software AC3 decoding</A></B></P>
282 285