annotate DOCS/xml/en/codecs.xml @ 20346:c8c1ada32044

fix XviD spelling replace some old DivX5's
author kraymer
date Sun, 22 Oct 2006 12:17:07 +0000
parents fccaabde1978
children 8a12502290a7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
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$ -->
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
3 <chapter id="codecs">
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
4 <title>Codecs</title>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
5
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
6 <sect1 id="video-codecs">
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
7 <title>Video codecs</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
8
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
9 <para>
19681
10568f10ac2e Codecs page link fix, paragraph reworded.
diego
parents: 19581
diff changeset
10 The <ulink url="../../codecs-status.html">codec status table</ulink> is a
10568f10ac2e Codecs page link fix, paragraph reworded.
diego
parents: 19581
diff changeset
11 complete list of all supported codecs, regenerated daily.
10568f10ac2e Codecs page link fix, paragraph reworded.
diego
parents: 19581
diff changeset
12 Some binary codecs for use with MPlayer are available in the
10568f10ac2e Codecs page link fix, paragraph reworded.
diego
parents: 19581
diff changeset
13 <ulink url="http://www.mplayerhq.hu/design7/dload.html#binary_codecs">download section</ulink>
10568f10ac2e Codecs page link fix, paragraph reworded.
diego
parents: 19581
diff changeset
14 of our homepage.
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
15 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
16
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
17 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
18 The most important ones above all:
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
19 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
20
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
21 <itemizedlist>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
22 <listitem><simpara>
14024
0d9e27059495 MPEG-X spelling
diego
parents: 14004
diff changeset
23 <emphasis role="bold">MPEG-1</emphasis> (<emphasis role="bold">VCD</emphasis>) and
0d9e27059495 MPEG-X spelling
diego
parents: 14004
diff changeset
24 <emphasis role="bold">MPEG-2</emphasis> (<emphasis role="bold">DVD</emphasis>) video
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
25 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
26 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
27 native decoders for <emphasis role="bold">DivX ;-), OpenDivX (DivX4),
20346
c8c1ada32044 fix XviD spelling
kraymer
parents: 20335
diff changeset
28 DivX6 (Pro), 3ivX, M$ MPEG-4</emphasis> v1, v2 and other MPEG-4 variants
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
29 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
30 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
31 native decoder for <emphasis role="bold">Windows Media Video 7/8</emphasis>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
32 (<emphasis role="bold">WMV1/WMV2</emphasis>), and Win32 DLL decoder
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
33 for <emphasis role="bold">Windows Media Video 9</emphasis>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
34 (<emphasis role="bold">WMV3</emphasis>), both used in <filename>.wmv</filename>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
35 files
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
36 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
37 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
38 native <emphasis role="bold">Sorenson 1 (SVQ1)</emphasis> decoder
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
39 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
40 <listitem><simpara>
10132
nicolas
parents: 10039
diff changeset
41 native <emphasis role="bold">Sorenson 3 (SVQ3)</emphasis> decoder
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
42 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
43 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
44 <emphasis role="bold">3ivx</emphasis> v1, v2 decoder
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
45 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
46 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
47 Cinepak and <emphasis role="bold">Intel Indeo</emphasis> codecs (3.1,3.2,4.1,5.0)
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
48 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
49 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
50 <emphasis role="bold">MJPEG</emphasis>, AVID, VCR2, ASV2 and other hardware
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
51 formats
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
52 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
53 <listitem><simpara>
13111
fad3639920d5 H.263 spelling
diego
parents: 12903
diff changeset
54 VIVO 1.0, 2.0, I263 and other <emphasis role="bold">H.263(+)</emphasis> variants
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
55 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
56 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
57 FLI/FLC
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
58 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
59 <listitem><simpara>
11822
359eaf957bf1 Add <systemitem class="library"> tags to libavcodec and a few others.
diego
parents: 11758
diff changeset
60 <emphasis role="bold">RealVideo 1.0 &amp; 2.0</emphasis> from
359eaf957bf1 Add <systemitem class="library"> tags to libavcodec and a few others.
diego
parents: 11758
diff changeset
61 <systemitem class="library">libavcodec</systemitem>, and
11638
189ac484f742 compile fix
wight
parents: 11637
diff changeset
62 <emphasis role="bold">RealVideo 3.0 &amp; 4.0</emphasis> codecs using RealPlayer
11637
alex
parents: 11555
diff changeset
63 libraries
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
64 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
65 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
66 native decoder for HuffYUV
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
67 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
68 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
69 Various old simple RLE-like formats
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
70 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
71 </itemizedlist>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
72
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
73 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
74 If you have a Win32 codec not listed here which is not supported yet,
14061
682ddd07f14e better label
diego
parents: 14024
diff changeset
75 please read the <link linkend="codec-importing">codec importing HOWTO</link>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
76 and help us add support for it.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
77 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
78
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
79
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
80 <sect2 id="ffmpeg" xreflabel="FFmpeg/libavcodec">
11107
alex
parents: 11090
diff changeset
81 <title>FFmpeg/libavcodec</title>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
82
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
83 <para>
20335
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
84 <ulink url="http://ffmpeg.org">FFmpeg</ulink> contains
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
85 <systemitem class="library">libavcodec</systemitem>, the leading
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
86 open source video and audio codec library. It is capable
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
87 of decoding most multimedia formats, usually at higher speeds
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
88 than the alternatives. and aims to add support for
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
89 the rest of them eventually. It is the default decoder for
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
90 the majority of codecs that <application>MPlayer</application>
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
91 supports. Encoding is also possible for some formats and
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
92 supported in <application>MEncoder</application>.
11089
0649acf1f1e3 reworked the libavcodec section
alex
parents: 11074
diff changeset
93 </para>
0649acf1f1e3 reworked the libavcodec section
alex
parents: 11074
diff changeset
94
0649acf1f1e3 reworked the libavcodec section
alex
parents: 11074
diff changeset
95 <para>
0649acf1f1e3 reworked the libavcodec section
alex
parents: 11074
diff changeset
96 For a complete list of supported codecs please visit the FFmpeg homepage.
14113
4c91818a371c link updates
diego
parents: 14061
diff changeset
97 Supported <ulink url="http://ffmpeg.org/ffmpeg-doc.html#SEC19">video</ulink>
4c91818a371c link updates
diego
parents: 14061
diff changeset
98 and <ulink url="http://ffmpeg.org/ffmpeg-doc.html#SEC20">audio</ulink> codecs.
10132
nicolas
parents: 10039
diff changeset
99 </para>
nicolas
parents: 10039
diff changeset
100
nicolas
parents: 10039
diff changeset
101 <para>
20335
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
102 <application>MPlayer</application> contains
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
103 <systemitem class="library">libavcodec</systemitem>.
18599
d4682b259dbf xml docs: CVS --> Subversion
kraymer
parents: 18060
diff changeset
104 Just run <filename>configure</filename> and compile.
18601
802ec5d54662 </para> tag was accidently deleted and caused compile error
kraymer
parents: 18599
diff changeset
105 </para>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
106
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
107 </sect2>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
108
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
109
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
110 <sect2 id="xvid">
9720
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
111 <title>XviD</title>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
112
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
113 <para>
15710
gpoirier
parents: 15709
diff changeset
114 <ulink url="http://www.xvid.org">XviD</ulink> is a free software MPEG-4 ASP
15871
157c7a7edd68 Small fix
gpoirier
parents: 15710
diff changeset
115 compliant video codec, which features two pass encoding and full MPEG-4 ASP
15709
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
116 support, making it a lot more efficient than the well-known DivX codec.
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
117 It yields very good video quality and good performance due to CPU
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
118 optimizations for most modern processors.
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
119 </para>
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
120 <para>
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
121 It began as a forked development of the OpenDivX codec.
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
122 This happened when ProjectMayo changed OpenDivX to closed source
20346
c8c1ada32044 fix XviD spelling
kraymer
parents: 20335
diff changeset
123 DivX4 (now DivX6), 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
124 then started XviD. So both projects have the same origin.
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
125 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
126
20335
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
127 <para>
20346
c8c1ada32044 fix XviD spelling
kraymer
parents: 20335
diff changeset
128 Note that XviD is not necessary to decode XviD-encoded video.
20335
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
129 <systemitem class="library">libavcodec</systemitem> is used by
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
130 default as it offers better speed.
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
131 </para>
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
132
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
133 <procedure>
15709
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
134 <title>Installing <systemitem class="library">XviD</systemitem></title>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
135 <para>
15709
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
136 Like most open source software, it is available in two flavors:
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
137 <ulink url="http://www.xvid.org/downloads.html">official releases</ulink>
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
138 and the CVS version.
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
139 The CVS version is usually stable enough to use, as most of the time it
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
140 features fixes for bugs that exist in releases.
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
141 Here is what to do to make <systemitem class="library">XviD</systemitem>
c5d60b8f3fa9 Updated description of XviD codec
gpoirier
parents: 15370
diff changeset
142 CVS work with <application>MEncoder</application> (you need at least
16067
f9ffda85aeee the the auto* tools should be inside an <application></application> tag
gpoirier
parents: 15915
diff changeset
143 <application>autoconf</application> 2.50,
f9ffda85aeee the the auto* tools should be inside an <application></application> tag
gpoirier
parents: 15915
diff changeset
144 <application>automake</application> and <application>libtool</application>):
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
145 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
146 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
147 <screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login</screen>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
148 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
149 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
150 <screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore</screen>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
151 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
152 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
153 <screen>cd xvidcore/build/generic</screen>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
154 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
155 <step><para>
9720
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
156 <screen>./bootstrap.sh</screen>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
157 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
158 <step><para>
9720
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
159 <screen>./configure</screen>
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
160 You may have to add some options (examine the output of
13223
4d3536e69177 - <screen> -> <command>, improves readibility and sense.
wight
parents: 13222
diff changeset
161 <command>./configure --help</command>).
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
162 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
163 <step><para>
9720
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
164 <screen>make &amp;&amp; make install</screen>
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
165 </para></step>
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
166 <step><para>
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
167 If you specified <option>--enable-divxcompat</option>,
5cd40fe6ba7e Updated XviD CVS instructions by Dmitry Baryshkov <lumag@qnc.ru>.
diego
parents: 9683
diff changeset
168 copy <filename>../../src/divx4.h</filename> to
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
169 <filename class="directory">/usr/local/include/</filename>.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
170 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
171 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
172 Recompile <application>MPlayer</application> with
12000
204cb6d58da6 Keep the ./configure options for xvid in sync.
rathann
parents: 11822
diff changeset
173 <option>--with-xvidlibdir=<replaceable>/path/to/</replaceable>libxvidcore.a</option>
20312
acab67264bf9 capitalization fixes, add missing dots to sentences
kraymer
parents: 19681
diff changeset
174 <option>--with-xvidincdir=<replaceable>/path/to/</replaceable>xvid.h</option>.
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
175 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
176 </procedure>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
177 </sect2>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
178
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
179
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
180 <sect2 id="codec-x264">
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
181 <title>x264</title>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
182
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
183 <sect3 id="codec-x264-whatis">
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
184 <title>What is x264?</title>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
185 <para>
20335
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
186 <ulink url="http://developers.videolan.org/x264.html"><systemitem class="library">x264</systemitem></ulink>
fccaabde1978 Remove obsolete parts, some updates.
diego
parents: 20322
diff changeset
187 is a library for
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
188 creating H.264 video streams.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
189 It is not 100% complete, but currently it has at least some kind
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
190 of support for most of the H.264 features which impact quality.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
191 There are also many advanced features in the H.264 specification
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
192 which have nothing to do with video quality per se; many of these
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
193 are not yet implemented in
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
194 <systemitem class="library">x264</systemitem>.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
195 </para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
196
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
197 <itemizedlist>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
198 <title>Encoder features</title>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
199 <listitem><para>CAVLC/CABAC</para></listitem>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
200 <listitem><para>Multi-references</para></listitem>
17273
30f4c40e137f update x264 feature summary
lorenm
parents: 16166
diff changeset
201 <listitem><para>Intra: all macroblock types (16x16, 8x8, and 4x4 with
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
202 all predictions)</para></listitem>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
203 <listitem><para>Inter P: all partitions (from 16x16 down to
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
204 4x4)</para></listitem>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
205 <listitem><para>Inter B: partitions from 16x16 down to 8x8
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
206 (including SKIP/DIRECT)</para></listitem>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
207 <listitem><para>Ratecontrol: constant quantizer, constant bitrate,
17273
30f4c40e137f update x264 feature summary
lorenm
parents: 16166
diff changeset
208 single or multipass ABR, optional VBV</para></listitem>
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
209 <listitem><para>Scene cut detection</para></listitem>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
210 <listitem><para>Adaptive B-frame placement</para></listitem>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
211 <listitem><para>B-frames as references / arbitrary frame
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
212 order</para></listitem>
17273
30f4c40e137f update x264 feature summary
lorenm
parents: 16166
diff changeset
213 <listitem><para>8x8 and 4x4 adaptive spatial transform</para></listitem>
30f4c40e137f update x264 feature summary
lorenm
parents: 16166
diff changeset
214 <listitem><para>Lossless mode</para></listitem>
30f4c40e137f update x264 feature summary
lorenm
parents: 16166
diff changeset
215 <listitem><para>Custom quantization matrices</para></listitem>
30f4c40e137f update x264 feature summary
lorenm
parents: 16166
diff changeset
216 <listitem><para>Parallel encoding of multiple slices</para></listitem>
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
217 </itemizedlist>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
218
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
219 </sect3>
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
220
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
221 <sect3 id="codec-h264-whatis">
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
222 <title>What is H.264?</title>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
223 <para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
224 H.264 is one name for a new digital video codec jointly developed
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
225 by the ITU and MPEG.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
226 It can also be correctly referred to by the cumbersome names of
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
227 "ISO/IEC 14496-10" or "MPEG-4 Part 10".
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
228 More frequently, it is referred to as "MPEG-4 AVC" or just "AVC".
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
229 </para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
230 <para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
231 Whatever you call it, H.264 may be worth trying because it can
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
232 typically match the quality of MPEG-4 ASP with 5%-30% less
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
233 bitrate.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
234 Actual results will depend on both the source material and the
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
235 encoder.
15370
bd6adbd632e4 Fixes suggested by Diego
gpoirier
parents: 15335
diff changeset
236 The gains from using H.264 do not come for free: Decoding H.264
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
237 streams seems to have steep CPU and memory requirements.
15915
b3924612667a Update of the x264 encoding guide:
gpoirier
parents: 15894
diff changeset
238 For instance, on a 1733 MHz Athlon, a DVD-resolution 1500kbps H.264
b3924612667a Update of the x264 encoding guide:
gpoirier
parents: 15894
diff changeset
239 video requires around 35% CPU to decode.
b3924612667a Update of the x264 encoding guide:
gpoirier
parents: 15894
diff changeset
240 By comparison, decoding a DVD-resolution 1500kbps MPEG-4 ASP stream
b3924612667a Update of the x264 encoding guide:
gpoirier
parents: 15894
diff changeset
241 requires around 10% CPU.
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
242 This means that decoding high-definition streams is almost out of
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
243 the question for most users.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
244 It also means that even a decent DVD rip may sometimes stutter on
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
245 processors slower than 2.0 GHz or so.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
246 </para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
247 <para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
248 At least with <systemitem class="library">x264</systemitem>,
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
249 encoding requirements are not much worse than what you are used to
15370
bd6adbd632e4 Fixes suggested by Diego
gpoirier
parents: 15335
diff changeset
250 with MPEG-4 ASP.
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
251 For instance, on a 1733 MHz Athlon a typical DVD encode would run
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
252 at 5-15fps.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
253 </para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
254 <para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
255 This document is not intended to explain the details of H.264,
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
256 but if you are interested in a brief overview, you may want to read
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
257 <ulink url="http://www.cdt.luth.se/~peppar/kurs/smd151/spie04-h264OverviewPaper.pdf">The H.264/AVC Advanced Video Coding Standard: Overview and Introduction to the Fidelity Range Extensions</ulink>.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
258 </para>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
259 </sect3>
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
260
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
261 <sect3 id="codec-x264-playback">
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
262 <title>How can I play H.264 videos with <application>MPlayer</application>?</title>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
263 <para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
264 <application>MPlayer</application> uses
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
265 <systemitem class="library">libavcodec</systemitem>'s H.264
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
266 decoder.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
267 <systemitem class="library">libavcodec</systemitem> has had at
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
268 least minimally usable H.264 decoding since around July 2004,
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
269 however major changes and improvements have been implemented since
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
270 that time, both in terms of more functionalities supported and in
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
271 terms of improved CPU usage.
18599
d4682b259dbf xml docs: CVS --> Subversion
kraymer
parents: 18060
diff changeset
272 Just to be certain, it is always a good idea to use a recent Subversion
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
273 checkout.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
274 </para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
275 <para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
276 If you want a quick and easy way to know whether there have been
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
277 recent changes to <systemitem class="library">libavcodec</systemitem>'s
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
278 H.264 decoding, you might keep an eye on
18599
d4682b259dbf xml docs: CVS --> Subversion
kraymer
parents: 18060
diff changeset
279 <ulink url="http://svn.mplayerhq.hu/ffmpeg/trunk/libavcodec/h264.c?view=log">FFmpeg Subversion repository's web interface</ulink>.
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
280 </para>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
281 </sect3>
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
282
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
283 <sect3 id="codec-x264-encode">
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
284 <title>How can I encode videos using <application>MEncoder</application> and <systemitem class="library">x264</systemitem>?</title>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
285 <para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
286 If you have the subversion client installed, the latest x264
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
287 sources can be gotten with this command:
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
288 <screen>
16068
0f57289d47f1 Make screen output look better
wight
parents: 16067
diff changeset
289 svn co svn://svn.videolan.org/x264/trunk x264<!--
0f57289d47f1 Make screen output look better
wight
parents: 16067
diff changeset
290 --></screen>
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
291 <application>MPlayer</application> sources are updated whenever
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
292 an <systemitem class="library">x264</systemitem> API change
18599
d4682b259dbf xml docs: CVS --> Subversion
kraymer
parents: 18060
diff changeset
293 occurs, so it is always suggested to use
d4682b259dbf xml docs: CVS --> Subversion
kraymer
parents: 18060
diff changeset
294 <application>MPlayer</application> from Subversion as well.
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
295 Perhaps this situation will change when and if an
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
296 <systemitem class="library">x264</systemitem> "release" occurs.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
297 Meanwhile, <systemitem class="library">x264</systemitem> should
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
298 be considered very unstable, in the sense that its programming
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
299 interface is subject to change.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
300 </para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
301 <para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
302 <systemitem class="library">x264</systemitem> is built and
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
303 installed in the standard way:
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
304 <screen>
16068
0f57289d47f1 Make screen output look better
wight
parents: 16067
diff changeset
305 ./configure &amp;&amp; make &amp;&amp; sudo make install<!--
0f57289d47f1 Make screen output look better
wight
parents: 16067
diff changeset
306 --></screen>
15326
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
307 This installs libx264.a in /usr/local/lib and x264.h is placed in
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
308 /usr/local/include.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
309
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
310 With the <systemitem class="library">x264</systemitem> library
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
311 and header placed in the standard locations, building
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
312 <application>MPlayer</application> with
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
313 <systemitem class="library">x264</systemitem> support is easy.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
314 Just run the standard:
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
315 <screen>./configure &amp;&amp; make &amp;&amp; sudo make install</screen>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
316 The configure script will autodetect that you have satisfied the
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
317 requirements for <systemitem class="library">x264</systemitem>.
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
318 </para>
f351dd913bc6 x264's encoding and install guide
gpoirier
parents: 15316
diff changeset
319 </sect3>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
320 </sect2>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
321 </sect1>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
322
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
323 <!-- ********** -->
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
324
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
325 <sect1 id="audio-codecs">
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
326 <title>Audio codecs</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
327
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
328 <itemizedlist>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
329 <title>The most important audio codecs above all:</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
330 <listitem><simpara>
11342
bcb9c6abf798 some clarifications
alex
parents: 11107
diff changeset
331 MPEG layer 1/2/3 (MP1/2/3) audio (<emphasis role="bold">native</emphasis>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
332 code, with MMX/SSE/3DNow! optimization)
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
333 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
334 <listitem><simpara>
13222
diego
parents: 13111
diff changeset
335 Windows Media Audio 7 and 8 (AKA WMAv1 and WMAv2) (<emphasis role="bold">native</emphasis> code, with
11822
359eaf957bf1 Add <systemitem class="library"> tags to libavcodec and a few others.
diego
parents: 11758
diff changeset
336 <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>)
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
337 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
338 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
339 Windows Media Audio 9 (WMAv3) (using DMO DLL)
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
340 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
341 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
342 AC3 Dolby audio (<emphasis role="bold">native</emphasis> code, with
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
343 MMX/SSE/3DNow! optimization)
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
344 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
345 <listitem><simpara>
13532
diego
parents: 13223
diff changeset
346 AC3 passing through sound card hardware
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
347 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
348 <listitem><simpara>
11342
bcb9c6abf798 some clarifications
alex
parents: 11107
diff changeset
349 AAC
bcb9c6abf798 some clarifications
alex
parents: 11107
diff changeset
350 </simpara></listitem>
bcb9c6abf798 some clarifications
alex
parents: 11107
diff changeset
351 <listitem><simpara>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
352 Ogg Vorbis audio codec (<emphasis role="bold">native</emphasis> library)
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
353 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
354 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
355 RealAudio: DNET (low bitrate AC3), Cook, Sipro and ATRAC3
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
356 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
357 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
358 QuickTime: Qualcomm and QDesign audio codecs
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
359 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
360 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
361 VIVO audio (g723, Vivo Siren)
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
362 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
363 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
364 Voxware audio (using DirectShow DLL)
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
365 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
366 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
367 alaw and ulaw, various gsm, adpcm and pcm formats and other simple old
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
368 audio codecs
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
369 </simpara></listitem>
18060
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
370 <listitem><simpara>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
371 Adaptive Multi-Rate (AMR) speech codecs
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
372 </simpara></listitem>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
373 </itemizedlist>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
374
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
375
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
376 <sect2 id="swac3">
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
377 <title>Software AC3 decoding</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
378
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
379 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
380 This is the default decoder used for files with AC3 audio.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
381 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
382
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
383 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
384 The AC3 decoder can create audio output mixes for 2, 4, or 6 speakers.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
385 When configured for 6 speakers, this decoder provides separate output of
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
386 all the AC3 channels to the sound driver, allowing for full "surround
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
387 sound" experience without the external AC3 decoder required to use the
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
388 hwac3 codec.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
389 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
390
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
391 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
392 Use the <option>-channels</option> option to select the number of output
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
393 channels. Use <option>-channels 2</option> for a stereo downmix. For a 4
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
394 channel downmix (Left Front, Right Front, Left Surround and Right Surround
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
395 outputs), use <option>-channels 4</option>. In this case, any center
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
396 channel will be mixed equally to the front channels. <option>-channels
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
397 6</option> will output all the AC3 channels as they are encoded - in the
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
398 order Left, Right, Left Surround, Right Surround, Center and LFE.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
399 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
400
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
401 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
402 The default number of output channels is 2.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
403 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
404
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
405 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
406 To use more than 2 output channels, you will need to use OSS, and have a
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
407 sound card that supports the appropriate number of output channels via the
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
408 SNDCTL_DSP_CHANNELS ioctl. An example of a suitable driver is emu10k1
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
409 (used by Soundblaster Live! cards) from August 2001 or newer (ALSA CVS is
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
410 also supposed to work).
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
411 </para>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
412 </sect2>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
413
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
414
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
415 <sect2 id="hwac3">
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
416 <title>Hardware AC3 decoding</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
417 <para>
12369
6c19f8e780fc S/PDIF spelling corrected
wight
parents: 12000
diff changeset
418 You need an AC3 capable sound card, with digital out (S/PDIF). The card's
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
419 driver must properly support the AFMT_AC3 format (C-Media does). Connect
12369
6c19f8e780fc S/PDIF spelling corrected
wight
parents: 12000
diff changeset
420 your AC3 decoder to the S/PDIF output, and use the <option>-ac
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
421 hwac3</option> option. It is experimental but known to work with C-Media
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
422 cards and Soundblaster Live! + ALSA (but not OSS) drivers and DXR3/Hollywood+
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
423 MPEG decoder cards.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
424 </para>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
425 </sect2>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
426
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
427
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
428 <sect2 id="libmad">
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
429 <title>libmad support</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
430
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
431 <para>
13977
7895a1b73828 URL updates
diego
parents: 13927
diff changeset
432 <ulink url="http://www.underbit.com/products/mad/">libmad</ulink> is a multiplatform,
11342
bcb9c6abf798 some clarifications
alex
parents: 11107
diff changeset
433 integer (internally 24bit PCM) only
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
434 MPEG audio decoding library. It does not handle broken files well, and it
11342
bcb9c6abf798 some clarifications
alex
parents: 11107
diff changeset
435 sometimes has problems with seeking, but it may perform better on FPU-less
11343
5149afdc8d27 10l again :(
alex
parents: 11342
diff changeset
436 (such as <link linkend="arm">ARM</link>) platform than mp3lib.
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
437 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
438
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
439 <para>
20315
7b34f4f0933d --enable-external-faad doesn't exist any more
kraymer
parents: 20312
diff changeset
440 If you have a proper installation of libmad, <filename>configure</filename>
7b34f4f0933d --enable-external-faad doesn't exist any more
kraymer
parents: 20312
diff changeset
441 will notice and support for MPEG audio decoding via
7b34f4f0933d --enable-external-faad doesn't exist any more
kraymer
parents: 20312
diff changeset
442 <systemitem class="library">libmad</systemitem> will be built automatically.
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
443 </para>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
444 </sect2>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
445
17432
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
446 <sect2 id="hwmpa">
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
447 <title>Hardware MPEG audio codec</title>
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
448
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
449 <para>
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
450 This codec (selected by -ac hwmpa) passes through MPEG audio packets
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
451 to hardware decoders, such as the ones found in full-featured DVB cards
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
452 and DXR2 adapters.
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
453 Don't use it in combination with any other audio output device
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
454 (such as OSS and ALSA) that isn't able to decode it (you will hear
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
455 only white noise).
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
456 </para>
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
457 </sect2>
e36a50f22aca documented audio codec hwmpa
nicodvb
parents: 17321
diff changeset
458
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
459
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
460 <sect2 id="aac">
9802
nicolas
parents: 9784
diff changeset
461 <title>AAC codec</title>
nicolas
parents: 9784
diff changeset
462 <para>
nicolas
parents: 9784
diff changeset
463 AAC (Advanced Audio Coding) is an audio codec sometimes found in MOV and MP4
nicolas
parents: 9784
diff changeset
464 files. An open source decoder called FAAD is available from
10766
57f5eb4d884f libfaad is included now.
diego
parents: 10701
diff changeset
465 <ulink url="http://www.audiocoding.com"/>.
14658
8bccff70ebf8 The included libfaad is at version 2.1 beta.
diego
parents: 14113
diff changeset
466 <application>MPlayer</application> includes a CVS snapshot of libfaad 2.1
8bccff70ebf8 The included libfaad is at version 2.1 beta.
diego
parents: 14113
diff changeset
467 beta, so you do not need to get it separately.
9802
nicolas
parents: 9784
diff changeset
468 </para>
11031
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
469
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
470 <para>
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
471 If you use gcc 3.2 which fails to compile our internal FAAD or want to use
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
472 the external library for some other reason, download the library from the
14113
4c91818a371c link updates
diego
parents: 14061
diff changeset
473 <ulink url="http://www.audiocoding.com/modules/mydownloads/">download page</ulink>
20315
7b34f4f0933d --enable-external-faad doesn't exist any more
kraymer
parents: 20312
diff changeset
474 and pass <option>--enable-faad-external</option> to <filename>configure</filename>.
11031
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
475 You do not need all of faad2 to decode AAC files, libfaad is enough. Build
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
476 it like this:
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
477 <screen>
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
478 cd faad2/
14700
db451cd8ea37 Simplify FAAD instructions.
diego
parents: 14658
diff changeset
479 sh bootstrap
11031
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
480 ./configure
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
481 cd libfaad
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
482 make
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
483 make install
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
484 </screen>
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
485 Binaries are not available from audiocoding.com, but you can (apt-)get Debian
18820
1ff5eeb87dce URL update for Marillat Debian packages
diego
parents: 18636
diff changeset
486 packages from <ulink url="http://www.debian-multimedia.org/">Christian Marillat's homepage</ulink>,
15894
688fa06538ef Mandrake --> Mandriva name change
diego
parents: 15871
diff changeset
487 Mandrake/Mandriva RPMs from the <ulink url="http://plf.zarb.org">P.L.F</ulink> and RedHat RPMs
12882
1b3b8b8ae12e update RedHat RPM sites in doc translations
rathann
parents: 12832
diff changeset
488 from <ulink url="http://greysector.rangers.eu.org/">Grey Sector</ulink>.
11031
f57563a141aa libfaad FAQ, external FAAD info added back.
diego
parents: 10913
diff changeset
489 </para>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
490 </sect2>
9802
nicolas
parents: 9784
diff changeset
491
18060
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
492 <sect2 id="amr">
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
493 <title>AMR codecs</title>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
494 <para>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
495 Adaptive Multi-Rate speech codec is used in third generation (3G) mobile
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
496 phones.
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
497 Reference implementation is available from
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
498 <ulink url="http://www.3gpp.org">The 3rd Generation Partnership Project</ulink>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
499 (free for private use).
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
500 </para>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
501 <para>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
502 To enable support, download the sources for
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
503 <ulink url="http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26104-610.zip">AMR-NB</ulink>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
504 and
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
505 <ulink url="http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26204-600.zip">AMR-WB</ulink>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
506 codecs, put them in the directory where you unpacked the
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
507 <application>MPlayer</application> source and run the following commands:
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
508 <screen>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
509 unzip 26104-610.zip
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
510 unzip 26104-610_ANSI_C_source_code.zip
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
511 mv c-code libavcodec/amr_float
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
512 unzip 26204-600.zip
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
513 unzip 26204-600_ANSI-C_source_code.zip
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
514 mv c-code libavcodec/amrwb_float
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
515 </screen>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
516 After that, follow the usual <application>MPlayer</application>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
517 <link linkend="features">build procedure</link>.
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
518 </para>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
519 </sect2>
cbc29633fbee AMR codecs support info, patch by Rathann, with slight alteration by me.
gpoirier
parents: 17432
diff changeset
520
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
521 </sect1>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
522
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
523 <!-- ********** -->
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
524
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
525 <sect1 id="codec-importing">
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
526 <title>Win32 codecs importing HOWTO</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
527
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
528 <!-- TODO: a short paragraph of text would be nice here... -->
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
529
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
530 <sect2 id="vfw-codecs">
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
531 <title>VFW codecs</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
532
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
533 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
534 VFW (Video for Windows) is the old Video API for Windows. Its codecs have
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
535 the <filename>.DLL</filename> or (rarely) <filename>.DRV</filename>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
536 extension. If <application>MPlayer</application> fails at playing your AVI
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
537 with this kind of message:
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
538 <screen>UNKNOWN video codec: HFYU (0x55594648)</screen>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
539 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
540
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
541 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
542 It means your AVI is encoded with a codec which has the HFYU fourcc (HFYU =
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
543 HuffYUV codec, DIV3 = DivX Low Motion, etc.). Now that you know this, you
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
544 have to find out which DLL Windows loads in order to play this file. In our
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
545 case, the <filename>system.ini</filename> contains this information in a
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
546 line that reads:
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
547 <programlisting>VIDC.HFYU=huffyuv.dll</programlisting>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
548 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
549
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
550 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
551 So you need the <filename>huffyuv.dll</filename> file. Note that the audio
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
552 codecs are specified by the MSACM prefix:
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
553 <programlisting>msacm.l3acm=L3codeca.acm</programlisting>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
554 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
555
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
556 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
557 This is the MP3 codec. Now that you have all the necessary information
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
558 (fourcc, codec file, sample AVI), submit your codec support request by
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
559 mail, and upload these files to the FTP site:
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
560 <systemitem role="url">
19581
4a5a0986fc17 ftp.mplayerhq.hu --> upload.mplayerhq.hu
diego
parents: 19381
diff changeset
561 ftp://upload.mplayerhq.hu/MPlayer/incoming/[codecname]/
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
562 </systemitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
563 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
564
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
565 <note><para>On Windows NT/2000/XP search for this info in the registry,
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
566 e.g. search for &quot;VIDC.HFYU&quot;. To find out how to do this, look at
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
567 the old DirectShow method below.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
568 </para></note>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
569 </sect2>
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
570
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
571
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
572 <sect2 id="dshow-codecs">
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
573 <title>DirectShow codecs</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
574
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
575 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
576 DirectShow is the newer Video API, which is even worse than its predecessor.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
577 Things are harder with DirectShow, since
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
578 <itemizedlist>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
579 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
580 <filename>system.ini</filename> does not contain the needed information,
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
581 instead it is stored in the registry and
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
582 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
583 <listitem><simpara>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
584 we need the GUID of the codec.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
585 </simpara></listitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
586 </itemizedlist>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
587 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
588
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
589 <procedure>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
590 <title>New Method:</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
591 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
592 Using <application>Microsoft GraphEdit</application> (fast)
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
593 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
594 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
595 Get <application>GraphEdit</application> from either DirectX SDK or
20322
f92bf1488265 some random fixes (wording, spelling..)
kraymer
parents: 20315
diff changeset
596 <ulink url="http://doom9.net">doom9</ulink>.
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
597 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
598 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
599 Start <command>graphedit.exe</command>.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
600 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
601 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
602 From the menu select Graph -> Insert Filters.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
603 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
604 <step><para>
20322
f92bf1488265 some random fixes (wording, spelling..)
kraymer
parents: 20315
diff changeset
605 Expand item <systemitem>DirectShow Filters</systemitem>.
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
606 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
607 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
608 Select the right codec name and expand item.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
609 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
610 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
611 In the entry <systemitem>DisplayName</systemitem> look at the text in
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
612 winged brackets after the backslash and write it down (five dash-delimited
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
613 blocks, the GUID).
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
614 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
615 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
616 The codec binary is the file specified in the <systemitem>Filename</systemitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
617 entry.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
618 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
619 </procedure>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
620
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
621 <note>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
622 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
623 If there is no <systemitem>Filename</systemitem> and
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
624 <systemitem>DisplayName</systemitem> contains something like
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
625 <systemitem>device:dmo</systemitem>, then it is a DMO-Codec.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
626 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
627 </note>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
628
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
629 <procedure>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
630 <title>Old Method:</title>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
631 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
632 Take a deep breath and start searching the registry...
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
633 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
634 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
635 Start <command>regedit</command>.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
636 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
637 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
638 Press <keycap>Ctrl</keycap>+<keycap>F</keycap>, disable the first two
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
639 checkboxes, and enable the third. Type in the fourcc of the codec (e.g.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
640 <userinput>TM20</userinput>).
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
641 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
642 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
643 You should see a field which contains the path and the filename (e.g.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
644 <filename>C:\WINDOWS\SYSTEM\TM20DEC.AX</filename>).
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
645 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
646 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
647 Now that you have the file, we need the GUID. Try searching again, but
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
648 now search for the codec's name, not the fourcc. Its name can be acquired
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
649 when Media Player is playing the file, by checking
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
650 <guimenu>File</guimenu> -&gt; <guisubmenu>Properties</guisubmenu> -&gt;
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
651 <guimenuitem>Advanced</guimenuitem>.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
652 If not, you are out of luck. Try guessing (e.g. search for TrueMotion).
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
653 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
654 <step><para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
655 If the GUID is found you should see a <guilabel>FriendlyName</guilabel>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
656 and a <guilabel>CLSID</guilabel> field. Write down the 16 byte CLSID,
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
657 this is the GUID we need.
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
658 </para></step>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
659 </procedure>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
660
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
661 <note>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
662 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
663 If searching fails, try enabling all the checkboxes. You may have
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
664 false hits, but you may get lucky...
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
665 </para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
666 </note>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
667
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
668 <para>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
669 Now that you have all the necessary information (fourcc, GUID, codec file,
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
670 sample AVI), submit your codec support request by mail, and upload these files
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
671 to the FTP site:
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
672 <systemitem
19581
4a5a0986fc17 ftp.mplayerhq.hu --> upload.mplayerhq.hu
diego
parents: 19381
diff changeset
673 role="url">ftp://upload.mplayerhq.hu/MPlayer/incoming/[codecname]/
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
674 </systemitem>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
675 </para>
14004
3d698ac7ec9a Explain what you need to read to add a codec yourself, patch by
diego
parents: 13977
diff changeset
676
3d698ac7ec9a Explain what you need to read to add a codec yourself, patch by
diego
parents: 13977
diff changeset
677 <para>
3d698ac7ec9a Explain what you need to read to add a codec yourself, patch by
diego
parents: 13977
diff changeset
678 If you want to add a codec yourself, read
3d698ac7ec9a Explain what you need to read to add a codec yourself, patch by
diego
parents: 13977
diff changeset
679 <ulink url="http://www.mplayerhq.hu/MPlayer/DOCS/tech/codecs.conf.txt">DOCS/tech/codecs.conf.txt</ulink>.
3d698ac7ec9a Explain what you need to read to add a codec yourself, patch by
diego
parents: 13977
diff changeset
680 </para>
3d698ac7ec9a Explain what you need to read to add a codec yourself, patch by
diego
parents: 13977
diff changeset
681
9675
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
682 </sect2>
62c5a17038ba XML version of MPlayer's doc
nicolas
parents:
diff changeset
683 </sect1>
17321
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
684
7f9fcf5245a0 Improve overall structure by adding a few top-level chapters so that
diego
parents: 17273
diff changeset
685 </chapter>