Mercurial > mplayer.hg
comparison DOCS/codecs.html @ 5114:1f668483b7ff
faszom.
author | arpi |
---|---|
date | Fri, 15 Mar 2002 22:29:22 +0000 |
parents | 1514c5d060d5 |
children | a0e5f66a162c |
comparison
equal
deleted
inserted
replaced
5113:878c339126e4 | 5114:1f668483b7ff |
---|---|
21 daily generated list!!!</P> | 21 daily generated list!!!</P> |
22 | 22 |
23 <P>The most important ones above all:<BR> | 23 <P>The most important ones above all:<BR> |
24 <UL> | 24 <UL> |
25 <LI>MPEG1 (VCD) and MPEG2 (DVD) video</LI> | 25 <LI>MPEG1 (VCD) and MPEG2 (DVD) video</LI> |
26 <LI>DivX ;-), OpenDivX (DivX4), 3ivx and other MPEG4 variants</LI> | 26 <LI>DivX ;-), OpenDivX (DivX4), DivX 5.00, 3ivX and other MPEG4 variants</LI> |
27 <LI>Windows Media Video 7 (WMV1) and 8 (WMV2) used in .wmv files</LI> | 27 <LI>Windows Media Video 7 (WMV1) and 8 (WMV2) used in .wmv files</LI> |
28 <LI>Intel Indeo codecs (3.1,3.2,4.1,5.0)</LI> | 28 <LI>Cinepak and Intel Indeo codecs (3.1,3.2,4.1,5.0)</LI> |
29 <LI>MJPEG, ASV2 and other hardware formats</LI> | 29 <LI>MJPEG, AVID, VCR2, ASV2 and other hardware formats</LI> |
30 <LI>XAnim codecs</LI> | 30 <LI>VIVO 1.0, 2.0, I263 and other h263(+) variants</LI> |
31 <LI>VIVO</LI> | 31 <LI>FLI/FLC</LI> |
32 <LI>FLI</LI> | |
33 <LI>RealVideo 1.0</LI> | 32 <LI>RealVideo 1.0</LI> |
33 <LI>Various old simple RLE-like formats</LI> | |
34 </UL></P> | 34 </UL></P> |
35 | 35 |
36 <P>If you have a Win32 codec not listed here, and not supported yet, just read the <A | 36 <P>If you have a Win32 codec not listed here, and not supported yet, just read the <A |
37 HREF="#2.2.3">codec importing</A> to get info about how to help us adding support | 37 HREF="#2.2.3">codec importing</A> to get info about how to help us adding support |
38 for it!</P> | 38 for it!</P> |
90 image data in YV12 (planar YUV 4:2:0) format, thus requiring much less | 90 image data in YV12 (planar YUV 4:2:0) format, thus requiring much less |
91 bandwidth on the bus. For packed YUV modes (YUY2, UYVY) use the 'divx4' | 91 bandwidth on the bus. For packed YUV modes (YUY2, UYVY) use the 'divx4' |
92 method. For RGB modes you can choose freely, their speed is same, maybe | 92 method. For RGB modes you can choose freely, their speed is same, maybe |
93 differ according to the current bpp.</P> | 93 differ according to the current bpp.</P> |
94 | 94 |
95 <P>Note: it supports postprocessing too (use option <CODE>-oldpp</CODE> to | 95 <P>NOTE: If your -vo driver supports direct rendering, then -vc divx4 may be |
96 faster, or even the fastest solution.</P> | |
97 | |
98 <P>Note: it supports postprocessing too (use option <CODE>-pp</CODE> to | |
96 enable using it), but range of values is strange: </P> | 99 enable using it), but range of values is strange: </P> |
97 | 100 |
98 <P><TABLE BORDER=0> | 101 <P><TABLE BORDER=0> |
99 <TD> </TD><TD><FONT CLASS="text">0</TD><TD> </TD> | 102 <TD> </TD><TD><FONT CLASS="text">0</TD><TD> </TD> |
100 <TD><FONT CLASS="text">no postproc</TD><TR> | 103 <TD><FONT CLASS="text">no postproc</TD><TR> |
121 | 124 |
122 <UL> | 125 <UL> |
123 <LI>from release : then you have libavcodec right in the package, just | 126 <LI>from release : then you have libavcodec right in the package, just |
124 build <B>MPlayer</B> as usual.</LI> | 127 build <B>MPlayer</B> as usual.</LI> |
125 <LI>from CVS : you have to download it manually directly from <B>FFmpeg</B>'s | 128 <LI>from CVS : you have to download it manually directly from <B>FFmpeg</B>'s |
126 tree: | 129 CVS tree (ffmpeg 0.4.5 version will NOT work with mplayer!): |
127 | 130 |
128 <P><CODE> | 131 <P><CODE> |
129 cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login<BR> | 132 cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login<BR> |
130 cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg | 133 cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg |
131 </CODE></P> | 134 </CODE></P> |
174 <LI>download the codecs you wish to use from the | 177 <LI>download the codecs you wish to use from the |
175 <A HREF="http://xanim.va.pubnix.com">XAnim site</A>. The <B>3ivx</B> codec | 178 <A HREF="http://xanim.va.pubnix.com">XAnim site</A>. The <B>3ivx</B> codec |
176 isn't there, so download it from the <A HREF="http://www.3ivx.com">3ivx site</A>.</LI> | 179 isn't there, so download it from the <A HREF="http://www.3ivx.com">3ivx site</A>.</LI> |
177 | 180 |
178 <LI>use the <CODE>--with-xanimlibdir</CODE> option to tell configure where | 181 <LI>use the <CODE>--with-xanimlibdir</CODE> option to tell configure where |
179 it can find the xanim codecs if you didn't install them to the default | 182 it can find the xanim codecs. By default, it checks them at |
180 location : <CODE>/usr/lib/xanim</CODE> . | 183 <CODE>/usr/local/lib/xanim/mods, /usr/lib/xanim/mods and /usr/lib/xanim</CODE>. |
181 Alternatively you can set the environment variable <I>XANIM_MOD_DIR</I> to | 184 Alternatively you can set the environment variable <I>XANIM_MOD_DIR</I> to |
182 the dir of the XAnim codecs.</LI> | 185 the dir of the XAnim codecs.</LI> |
183 | 186 |
184 <LI>rename the filenames by cutting out the architecture stuff, so they will | 187 <LI>rename/symlink the filenames by cutting out the architecture stuff, so they will |
185 have filenames like these : <CODE>vid_cvid.xa, vid_h263.xa, vid_iv50.xa</CODE> | 188 have filenames like these : <CODE>vid_cvid.xa, vid_h263.xa, vid_iv50.xa</CODE> |
186 | 189 |
187 </UL> | 190 </UL> |
188 </P> | 191 </P> |
189 | 192 |
207 | 210 |
208 | 211 |
209 <P><B><A NAME=2.2.1.5>2.2.1.5. MPEG 1/2 video</A></B></P> | 212 <P><B><A NAME=2.2.1.5>2.2.1.5. MPEG 1/2 video</A></B></P> |
210 | 213 |
211 <P>MPEG1 and MPEG2 are decoded with the native library <B>libmpeg2</B>. | 214 <P>MPEG1 and MPEG2 are decoded with the native library <B>libmpeg2</B>. |
212 Its source code is included in <B>MPlayer</B>, and of course is multiplatform. | 215 Its source code is included in <B>MPlayer</B>, and of course it is multiplatform. |
213 We handle buggy MPEG1/2 video files by checking for what signature does | 216 We handle buggy MPEG 1/2 video files by catching sig11 (segmentation fault), |
214 libmpeg2 return, and when it gives sig11 (segmentation fault), we quickly | 217 and quickly reinitializing the codec, and continue exactly from where the failure |
215 reinitialize the codec, and continue exactly from where the failure did occur. | 218 did occur. |
216 No speed decrease is measurable.</P> | 219 No speed decrease is measurable.</P> |
217 | 220 |
218 | 221 |
219 <P><B><A NAME=2.2.1.6>2.2.1.6. MS Video1</A></B></P> | 222 <P><B><A NAME=2.2.1.6>2.2.1.6. MS Video1</A></B></P> |
220 | 223 |
255 </UL> | 258 </UL> |
256 </P> | 259 </P> |
257 | 260 |
258 <P><B>Disadvantages</B> : | 261 <P><B>Disadvantages</B> : |
259 <UL> | 262 <UL> |
260 <LI>currently it doesn't properly decode all DivX/DivX4 files</LI> | 263 <LI>currently it doesn't properly <B>decode</B> all DivX/DivX4 files (but who cares, we can play them using libavcodec)</LI> |
261 <LI>you have to choose between DivX4 <B>OR</B> XViD support at | 264 <LI>you have to choose between DivX4 <B>OR</B> XViD support at |
262 compiletime</LI> | 265 compiletime</LI> |
263 <LI>under development</LI> | 266 <LI>under development</LI> |
264 </UL> | 267 </UL> |
265 </P> | 268 </P> |
271 <CODE>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co | 274 <CODE>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co |
272 xvidcore</CODE><BR> | 275 xvidcore</CODE><BR> |
273 <CODE>cd xvidcore/build/generic</CODE><BR> | 276 <CODE>cd xvidcore/build/generic</CODE><BR> |
274 <CODE>Edit Makefile.linux to fit your needs</CODE><BR> | 277 <CODE>Edit Makefile.linux to fit your needs</CODE><BR> |
275 <CODE>make -f Makefile.linux</CODE><BR> | 278 <CODE>make -f Makefile.linux</CODE><BR> |
279 Get encore2.h and decore.h from Divx4linux package, and copy them to <CODE>/usr/local/include/</CODE><BR> | |
276 <CODE>recompile <B>MPlayer</B> with | 280 <CODE>recompile <B>MPlayer</B> with |
277 --with-xvidcore=/path/to/libcore.a</CODE><BR> | 281 --with-xvidcore=/path/to/libcore.a</CODE><BR> |
278 </P> | 282 </P> |
279 | 283 |
280 | 284 |
282 | 286 |
283 <P>The most important audio codecs above all :<BR> | 287 <P>The most important audio codecs above all :<BR> |
284 <UL> | 288 <UL> |
285 <LI>MPEG layer 2, and layer 3 (MP3) audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI> | 289 <LI>MPEG layer 2, and layer 3 (MP3) audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI> |
286 <LI>MPEG layer 1 audio (<B>native</B> code, with libavcodec)</LI> | 290 <LI>MPEG layer 1 audio (<B>native</B> code, with libavcodec)</LI> |
287 <LI>AC3 Dolby audio (<B>native</B> code, with SSE/3DNow! optimization)</LI> | 291 <LI>AC3 Dolby audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI> |
288 <LI>Ogg Vorbis audio codec (<B>native</B> lib)</LI> | 292 <LI>Ogg Vorbis audio codec (<B>native</B> lib)</LI> |
289 <LI>Voxware audio (using DirectShow DLL)</LI> | 293 <LI>Voxware audio (using DirectShow DLL)</LI> |
290 <LI>alaw, msgsm, pcm and other simple old audio formats</LI> | 294 <LI>alaw, msgsm, pcm and other simple old audio formats</LI> |
291 <LI>VIVO audio (g723, Vivo Siren)</LI> | 295 <LI>VIVO audio (g723, Vivo Siren)</LI> |
292 <LI>RealAudio: DNET (low bitrate AC3)</LI> | 296 <LI>RealAudio: DNET (low bitrate AC3)</LI> |
321 | 325 |
322 | 326 |
323 <P><B><A NAME=2.2.2.2>2.2.2.2. Hardware AC3 decoding</A></B></P> | 327 <P><B><A NAME=2.2.2.2>2.2.2.2. Hardware AC3 decoding</A></B></P> |
324 | 328 |
325 <P>You'll need an AC3 capable soundcard, with digital out (SP/DIF). The | 329 <P>You'll need an AC3 capable soundcard, with digital out (SP/DIF). The |
326 card's driver must support the AFMT_AC3 format (like SB Live! or C-Media does). | 330 card's driver must properly support the AFMT_AC3 format (like C-Media does). |
327 Connect your AC3 decoder to the SP/DIF output, and use the '-ac hwac3' | 331 Connect your AC3 decoder to the SP/DIF output, and use the '-ac hwac3' |
328 option. It may or may not work (experimental). It will work with C-Media | 332 option. It may or may not work (experimental). It will work with C-Media |
329 cards, and with SB Live! + ALSA driver. It won't work with Live!'s OSS | 333 cards, and with SB Live! + ALSA driver. It won't work with Live!'s OSS |
330 driver.</P> | 334 driver!</P> |
331 | 335 |
332 | 336 |
333 <P><B><A NAME=2.2.2.3>2.2.2.3. libmad support</A></B></P> | 337 <P><B><A NAME=2.2.2.3>2.2.2.3. libmad support</A></B></P> |
334 | 338 |
335 <P><A HREF="http://mad.sourceforge.net">libmad</A> is a multiplatform MPEG audio | 339 <P><A HREF="http://mad.sourceforge.net">libmad</A> is a multiplatform MPEG audio |
336 decoding library. If you don't know why is it good, you probably don't need it.</P> | 340 decoding library. If you don't know why is it good, you probably don't need it.</P> |
341 | |
342 <P>It doesn't handle broken files well, and sometimes has problems with seeking</P> | |
337 | 343 |
338 <P>To enable support, compile with the <CODE>--enable-mad</CODE> configure | 344 <P>To enable support, compile with the <CODE>--enable-mad</CODE> configure |
339 option.</P> | 345 option.</P> |
340 | 346 |
341 | 347 |