Mercurial > mplayer.hg
annotate DOCS/xml/en/install.xml @ 11394:4e8081a50351
small fix by Maciej Paszta <paszczi@go2.pl>
author | diego |
---|---|
date | Wed, 05 Nov 2003 15:59:07 +0000 |
parents | 9fceaedbd5a6 |
children | 25d13a2b1911 |
rev | line source |
---|---|
9675 | 1 <?xml version="1.0" encoding="iso-8859-1"?> |
10913
49b1a67e7381
Add revision keyword to english xml files, to ease translation synchronization
lumag
parents:
10403
diff
changeset
|
2 <!-- $Revision$ --> |
9675 | 3 <sect1 id="install"> |
4 <title>Installation</title> | |
5 | |
6 <para> | |
11311 | 7 A quick installation guide can be found in the <filename>README</filename> |
8 file. Please read it first and then come back here for the rest of the gory | |
9 details. | |
10 </para> | |
11 | |
12 <para> | |
9675 | 13 In this section I'll try to guide you through the compiling and configuring |
14 process of <application>MPlayer</application>. It's not easy, but it won't | |
15 necessarily be hard. If you experience a different behavior than what I | |
16 explain, please search through this documentation and you'll find your | |
17 answers. If you see links, please follow them and read carefully what they | |
9677 | 18 contain. It will take some time, but it IS worth it. |
9675 | 19 </para> |
20 | |
21 <para> | |
22 You need a fairly recent system. On Linux, 2.4.x kernels are recommended. | |
23 </para> | |
24 | |
25 | |
26 <sect2 id="softreq"> | |
27 <title>Software requirements</title> | |
28 | |
29 <itemizedlist> | |
30 <listitem><para> | |
31 <emphasis role="bold">binutils</emphasis> - suggested version is <emphasis role="bold">2.11.x</emphasis>. | |
32 This program is responsible for generating MMX/ 3DNow!/etc instructions, | |
33 thus very important. | |
34 </para></listitem> | |
35 <listitem><para> | |
36 <emphasis role="bold">gcc</emphasis> - suggested versions are: <emphasis role="bold">2.95.3</emphasis> | |
37 (maybe <emphasis role="bold">2.95.4</emphasis>) and <emphasis role="bold">3.2+</emphasis>. | |
38 <emphasis role="bold">Never</emphasis> use 2.96 or 3.0.x! They generate faulty code for | |
10132 | 39 <application>MPlayer</application>. If you decide to change gcc from |
40 2.96, then don't decide in favor of 3.x just because it's newer! Early | |
41 releases of 3.x were even more buggy than 2.96. So downgrade to 2.95.x | |
9675 | 42 (downgrade <systemitem class="library">libstdc++</systemitem> too, other |
43 programs may need it) or don't up/downgrade at all (but in this case, be | |
10132 | 44 prepared for runtime problems). If you vote for 3.x, try to use the |
9675 | 45 latest version, early releases had various bugs, so be sure you use at |
46 least 3.1, it's tested and working. For detailed information about gcc 2.96's | |
47 bugs (that are still NOT fixed, they have been WORKED AROUND in | |
48 <application>MPlayer</application>!),see the <link linkend="gcc-296">gcc 2.96</link> | |
49 section and the <xref linkend="faq"/>. | |
50 </para></listitem> | |
51 <listitem><para> | |
52 <emphasis role="bold">XFree86</emphasis> - suggested version is <emphasis role="bold">always the | |
10132 | 53 newest</emphasis> (4.3). Normally, everyone wants this, as starting |
9675 | 54 with XFree86 4.0.2, it contains the <link linkend="xv">XVideo</link> |
55 extension (somewhere referred to as <emphasis role="bold">Xv</emphasis>) | |
56 which is needed to enable the hardware YUV acceleration (fast image display) | |
57 on cards that support it. | |
58 Make sure its <emphasis role="bold">development package</emphasis> is installed, | |
59 too, otherwise it won't work. | |
60 For some video cards you don't need XFree86. See list below. | |
61 </para></listitem> | |
62 <listitem><para> | |
63 <emphasis role="bold">make</emphasis> - suggested version is | |
64 <emphasis role="bold">always the newest</emphasis> (at least 3.79.x). This | |
65 usually isn't important. | |
66 </para></listitem> | |
67 <listitem><para> | |
68 <emphasis role="bold">SDL</emphasis> - it's not mandatory, but can help in | |
69 some cases (bad audio, video cards that lag strangely with the xv driver). | |
70 Always use the newest (beginning from 1.2.x). | |
71 </para></listitem> | |
72 <listitem><para> | |
73 <emphasis role="bold">libjpeg</emphasis> - optional JPEG decoder, used by the <option>-mf</option> | |
11324
9fceaedbd5a6
Missing <application> tags added, patch by Maciej Paszta <paszczi@go2.pl>.
diego
parents:
11311
diff
changeset
|
74 option and some QT MOV files. Useful for both <application>MPlayer</application> |
9fceaedbd5a6
Missing <application> tags added, patch by Maciej Paszta <paszczi@go2.pl>.
diego
parents:
11311
diff
changeset
|
75 and <application>MEncoder</application> if |
9675 | 76 you plan to work with jpeg files. |
77 </para></listitem> | |
78 <listitem><para> | |
79 <emphasis role="bold">libpng</emphasis> - recommended and default (M)PNG decoder. Required for GUI. | |
80 Useful for both <application>MPlayer</application> and | |
81 <application>MEncoder</application>. | |
82 </para></listitem> | |
83 <listitem><para> | |
84 <emphasis role="bold">lame</emphasis> - recommended, needed for encoding MP3 audio with | |
85 <application>MEncoder</application>, suggested version is | |
86 <emphasis>always the newest</emphasis> (at least 3.90). | |
87 </para></listitem> | |
88 <listitem><para> | |
11324
9fceaedbd5a6
Missing <application> tags added, patch by Maciej Paszta <paszczi@go2.pl>.
diego
parents:
11311
diff
changeset
|
89 <emphasis role="bold">zlib</emphasis> - recommended, necessary for compressed |
9fceaedbd5a6
Missing <application> tags added, patch by Maciej Paszta <paszczi@go2.pl>.
diego
parents:
11311
diff
changeset
|
90 MOV header and PNG support. |
9fceaedbd5a6
Missing <application> tags added, patch by Maciej Paszta <paszczi@go2.pl>.
diego
parents:
11311
diff
changeset
|
91 </para></listitem> |
9fceaedbd5a6
Missing <application> tags added, patch by Maciej Paszta <paszczi@go2.pl>.
diego
parents:
11311
diff
changeset
|
92 <listitem><para> |
9675 | 93 <emphasis role="bold">libogg</emphasis> - optional, needed for playing OGG file format. |
94 </para></listitem> | |
95 <listitem><para> | |
96 <emphasis role="bold">libvorbis</emphasis> - optional, needed for playing OGG Vorbis audio. | |
97 </para></listitem> | |
98 <listitem><para> | |
99 <emphasis role="bold"><ulink url="http://www.live.com/mplayer/">LIVE.COM Streaming Media</ulink></emphasis> | |
100 - optional, needed for playing RTSP/RTP streams. | |
101 </para></listitem> | |
102 <listitem><para> | |
103 <emphasis role="bold">directfb</emphasis> - optional, from | |
104 <ulink url="http://www.directfb.org"/> | |
105 </para></listitem> | |
106 <listitem><para> | |
107 <emphasis role="bold">cdparanoia</emphasis> - optional, for CDDA support | |
108 </para></listitem> | |
109 <listitem><para> | |
110 <emphasis role="bold">libfreetype</emphasis> - optional, for TTF fonts | |
111 support. At least 2.0.9 is required. | |
112 </para></listitem> | |
113 <listitem><para> | |
114 <emphasis role="bold">libxmms</emphasis> - optional, for XMMS input plugin | |
115 support. At least 1.2.7 is required. | |
116 </para></listitem> | |
10132 | 117 <listitem><para> |
118 <emphasis role="bold">libsmb</emphasis> - optional, for Samba support. | |
119 </para></listitem> | |
9675 | 120 </itemizedlist> |
121 </sect2> | |
122 | |
123 | |
124 <sect2> | |
125 <title>Codecs</title> | |
126 | |
127 <itemizedlist> | |
128 <listitem><para> | |
129 <emphasis role="bold">libavcodec</emphasis>: This codec package is capable | |
10132 | 130 of decoding H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1/WMV2/SVQ1/SVQ3 encoded video |
9675 | 131 streams and WMA (Windows Media Audio) v1/v2 audio streams, on multiple |
9736
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
132 platforms. It is also known to be the fastest for this task. See |
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
133 <link linkend="ffmpeg">this section</link> for details. Features: |
9675 | 134 <itemizedlist> |
135 <listitem><simpara> | |
136 gain decoding of videos mentioned above, on non-x86 machines | |
137 </simpara></listitem> | |
138 <listitem><simpara> | |
139 encoding with most of the mentioned codecs | |
140 </simpara></listitem> | |
141 <listitem><simpara> | |
142 this codec is the <emphasis role="bold">fastest codec available</emphasis> for | |
143 DivX/3/4/5 and other MPEG4 types. Recommended! | |
144 </simpara></listitem> | |
145 </itemizedlist> | |
146 </para></listitem> | |
147 <listitem><para> | |
148 <emphasis role="bold">Win32 codecs</emphasis>: If you plan to use | |
149 <application>MPlayer</application> on x86 architecture, you will possibly need | |
150 them. Download the Win32 codecs from our | |
151 <ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/">codecs page</ulink> | |
10185
d927b21b57c1
/usr/local/lib/codecs is now the default codecs directory.
diego
parents:
10132
diff
changeset
|
152 and install them to <filename class="directory">/usr/local/lib/codecs</filename> |
9675 | 153 <emphasis role="bold">BEFORE</emphasis> compiling <application>MPlayer</application>, |
154 otherwise no Win32 support will be compiled! | |
155 <note><para>The avifile project has similar codecs package, but it | |
156 differs from ours, so if you want to use all supported codecs, then use | |
157 our package (do not worry, avifile works with it without problems).</para> | |
158 </note> | |
159 Features: | |
160 <itemizedlist> | |
161 <listitem><simpara> | |
162 you need this if you want to play or encode for example movies recorded | |
163 with various hardware compressors, like tuner cards, digital cameras | |
164 (example: DV, ATI VCR, MJPEG) | |
165 </simpara></listitem> | |
166 <listitem><simpara> | |
10132 | 167 needed if you want to play <emphasis role="bold">WMV9/WMA9 movies</emphasis>. |
9675 | 168 </simpara></listitem> |
169 <listitem><simpara> | |
170 Not needed for old ASF's with MP41 or MP42 video (though VoxWare audio is | |
171 frequent for these files - it's done by the Win32 codec), or WMV7. Also not | |
172 needed for WMA (Windows Media Audio), libavcodec has opensource decoder for that. | |
173 </simpara></listitem> | |
174 </itemizedlist> | |
175 </para></listitem> | |
176 <listitem><para> | |
177 <emphasis role="bold">QuickTime codecs</emphasis>: on x86 platforms these | |
10132 | 178 codecs can be used to decode RPZA, and other QuickTime video, |
9675 | 179 and QDesign audio streams. Installation instructions can be found in the |
180 <link linkend="sorenson">Sorenson video codec</link> section. | |
181 </para></listitem> | |
182 <listitem><para> | |
183 <emphasis role="bold">DivX4/DivX5</emphasis>: information about this codec is | |
9736
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
184 available in the <link linkend="divx4-5">DivX4/DivX5 section</link>. You possibly |
9675 | 185 don't want this codec as <emphasis role="bold">libavcodec</emphasis> (see |
186 above) is much faster and has better quality than this, for both decoding | |
187 and encoding. Features: | |
188 <itemizedlist> | |
189 <listitem><simpara> | |
190 1 pass or 2 pass encoding with <link linkend="mencoder">MEncoder</link> | |
191 </simpara></listitem> | |
192 <listitem><simpara> | |
193 can play old <emphasis role="bold">DivX3</emphasis> movies much faster than | |
194 the Win32 DLL but slower than <emphasis role="bold">libavcodec</emphasis>! | |
195 </simpara></listitem> | |
196 <listitem><simpara> | |
197 it's closed-source, and only a x86 version is available. | |
198 </simpara></listitem> | |
199 </itemizedlist> | |
200 </para></listitem> | |
201 <listitem><para> | |
202 <emphasis role="bold">XviD</emphasis>: Open source encoding alternative to | |
203 Divx4Linux. Features: | |
204 <itemizedlist> | |
205 <listitem><simpara> | |
206 1 pass or 2 pass encoding with <link linkend="mencoder">MEncoder</link> | |
207 </simpara></listitem> | |
208 <listitem><simpara> | |
209 it's open-source, so it's multiplatform. | |
210 </simpara></listitem> | |
211 <listitem><simpara> | |
212 it's about 2 times faster than divx4 when encoding - about the same | |
213 quality | |
214 </simpara></listitem> | |
215 </itemizedlist> | |
216 </para></listitem> | |
217 <listitem><para> | |
218 The <emphasis role="bold"><link linkend="xanim">XAnim codecs</link></emphasis> | |
219 are the best (full screen, hardware YUV zoom) for decoding | |
220 <emphasis role="bold">3ivx</emphasis> and Indeo 3/4/5 movies, and some old | |
221 formats. And they are multiplatform, so this is the only way to play Indeo on | |
222 non-x86 platforms (well, apart from using XAnim:). But for example Cinepak movies | |
223 are best played with <application>MPlayer</application>'s own Cinepak decoder! | |
224 </para></listitem> | |
225 <listitem><para> | |
226 For <emphasis role="bold">Ogg Vorbis</emphasis> audio decoding you need to | |
227 install <systemitem class="library">libvorbis</systemitem> properly. Use | |
228 deb/rpm packages if available, or compile from | |
229 <ulink url="http://ogg.org/ogg/vorbis/download/vorbis_nightly_cvs.tgz">source</ulink> | |
230 (this is a nightly updated tarball of Vorbis CVS). | |
231 </para></listitem> | |
232 <listitem><para> | |
233 <application>MPlayer</application> can use the libraries of RealPlayer 8 | |
234 or RealONE to play files with <emphasis role="bold">RealVideo 2.0-4.0</emphasis> | |
235 video, and Sipro/Cook audio. See <link linkend="realmedia">RealMedia file format</link> | |
236 section for installation instructions and more information. | |
237 </para></listitem> | |
238 </itemizedlist> | |
239 </sect2> | |
240 | |
241 | |
242 <sect2 id="video-cards"> | |
243 <title>Video cards</title> | |
244 | |
245 <para> | |
246 There are generally two kind of video cards. One kind (the newer cards) has | |
247 <emphasis role="bold">hardware scaling and YUV acceleration</emphasis> support, | |
248 the other cards don't. | |
249 </para> | |
250 | |
251 | |
252 <sect3 id="yuv-cards"> | |
253 <title>YUV cards</title> | |
254 | |
255 <para> | |
256 They can display and scale (zoom) the picture to any size that fits in | |
257 their memory, with <emphasis role="bold">small CPU usage</emphasis> (even when | |
258 zooming), thus fullscreen is nice and very fast. | |
259 | |
260 <itemizedlist> | |
261 <listitem><para> | |
262 <emphasis role="bold">Matrox G200/G400/G450/G550 cards</emphasis>: although a | |
263 <link linkend="vidix">Vidix driver</link> is provided, it is recommended to | |
264 use the mga_vid module instead, for it works much better. | |
265 Please see the <link linkend="mga_vid">mga_vid</link> section about its | |
266 installation and usage. It is important to do these steps | |
267 <emphasis>before</emphasis> compiling <application>MPlayer</application>, | |
268 otherwise no mga_vid support will be built. Also check out the | |
11394 | 269 <link linkend="tvout-mga-g400">Matrox TV-out</link> section. |
9675 | 270 <emphasis role="bold"> If you don't use Linux</emphasis>, your only |
9683 | 271 possibility is the VIDIX driver: read the <link linkend="vidix">VIDIX</link> section. |
9675 | 272 </para></listitem> |
273 <listitem><para> | |
274 <emphasis role="bold">3Dfx Voodoo3/Banshee cards</emphasis>: please see | |
275 <link linkend="tdfxfb">tdfxfb</link> section in order to gain big speedup. | |
276 It is important to do these steps <emphasis role="bold">before</emphasis> | |
277 compiling <application>MPlayer</application>, otherwise no 3Dfx support will be | |
278 built. Also see the <link linkend="tvout-voodoo">3dfx TV-out section</link>. | |
279 If you use X, use at least <emphasis role="bold">4.2.0</emphasis>, as 3dfx Xv | |
280 driver was broken in 4.1.0, and earlier releases. | |
281 </para></listitem> | |
282 <listitem><para> | |
283 <emphasis role="bold">ATI cards</emphasis>: <link linkend="vidix">VIDIX</link> | |
284 driver is provided for the following cards: | |
285 <emphasis role="bold">Radeon, Rage128, Mach64</emphasis> (Rage XL/Mobility, Xpert98). | |
286 Also see the <link linkend="tvout-ati">ATI cards section</link> of the TV-out documentation, | |
287 to know if you card's TV-out is supported under Linux/<application>MPlayer</application>. | |
288 </para></listitem> | |
289 <listitem><para> | |
290 <emphasis role="bold">S3 cards</emphasis>: the Savage and Virge/DX chips have | |
291 hardware acceleration. Use as new XFree86 version as possible, older drivers are | |
292 buggy. Savage chips have problems with YV12 display, see <link linkend="s3">S3 Xv | |
293 section</link> for details. Older, Trio cards have no, or slow hardware | |
294 support. | |
295 </para></listitem> | |
296 <listitem><para> | |
9683 | 297 <emphasis role="bold">nVidia cards</emphasis>: may or may not be good choice for video playing. |
9675 | 298 If you do not have a GeForce2 (or newer) card, it's not likely to work without bugs. |
9683 | 299 <emphasis role="bold">the built-in nVidia driver in XFree86 does not support |
300 hardware YUV acceleration on all nVidia cards.</emphasis> You have | |
9675 | 301 to download nVidia's closed-source drivers from nVidia.com. See the <link |
302 linkend="nvidia">nVidia Xv driver</link> section for details. Please also check | |
303 the <link linkend="tvout-nvidia">nVidia TV-out section</link> if you wish to | |
304 use a TV. | |
305 </para></listitem> | |
306 <listitem><para> | |
307 <emphasis role="bold">3DLabs GLINT R3 and Permedia3</emphasis>: a VIDIX driver | |
308 is provided (pm3_vid). Please see the <link linkend="vidix">VIDIX</link> section | |
309 for details. | |
310 </para></listitem> | |
311 <listitem><para> | |
312 <emphasis role="bold">Other cards</emphasis>: none of the above? | |
313 <itemizedlist> | |
314 <listitem><simpara> | |
315 Try if the XFree86 driver (and your card) supports hardware | |
316 acceleration. See the <link linkend="xv">Xv section</link> for details. | |
317 </simpara></listitem> | |
318 <listitem><simpara> | |
319 If it doesn't, then your card's video features aren't supported under | |
9683 | 320 your operating system :( If hardware scaling works under Windows, it |
321 doesn't mean it will work under Linux or other operating system, it depends on | |
322 the drivers. Most manufacturers neither make Linux drivers nor release | |
323 specifications of their chips - so you are unlucky if using their cards. | |
9675 | 324 See <xref linkend="non-yuv-cards"/>. |
325 </simpara></listitem> | |
326 </itemizedlist> | |
327 </para></listitem> | |
328 </itemizedlist> | |
329 </para> | |
330 </sect3> | |
331 | |
332 | |
333 <sect3 id="non-yuv-cards" xreflabel="Non-YUV cards"> | |
334 <title>Non-YUV cards</title> | |
335 | |
336 <para> | |
337 Fullscreen playing can be achieved by either enabling <emphasis role="bold"> | |
9683 | 338 software scaling</emphasis> (use the <option>-zoom</option> or <option>-vf</option> option, |
9675 | 339 but i warn you: this is slow), or switching to a smaller video mode, for example |
340 352x288. If you don't have YUV acceleration, this latter method is recommended. | |
341 Video mode switching can be enabled by using the <option>-vm</option> option and | |
342 it works with the following drivers: | |
343 <itemizedlist> | |
344 <listitem><simpara> | |
345 <emphasis role="bold">using</emphasis> XFree86: see details in <link linkend="dga">DGA driver</link> and | |
346 <link linkend="x11">X11 driver</link> sections. DGA is recommended! Also | |
347 try DGA via SDL, sometimes it's better. | |
348 </simpara></listitem> | |
349 <listitem><simpara> | |
350 <emphasis role="bold">not using</emphasis> XFree86: try the drivers in the | |
351 following order: | |
352 <link linkend="vesa">vesa</link>, | |
353 <link linkend="fbdev">fbdev</link>, | |
354 <link linkend="svgalib">svgalib</link>, | |
355 <link linkend="aalib">aalib</link>. | |
356 </simpara></listitem> | |
357 </itemizedlist> | |
358 </para> | |
359 </sect3> | |
360 | |
361 <!-- FIXME: find a more logical organization for this section --> | |
362 <sect3 id="cirrus-logic-cards" xreflabel="Cirrus-Logic cards"> | |
363 <title>Cirrus-Logic cards</title> | |
364 <itemizedlist> | |
365 <listitem><para> | |
366 GD 7548: present on-board and tested in Compaq Armada 41xx notebook series. | |
367 <itemizedlist> | |
368 <listitem><simpara> | |
369 XFree86 3: works in 8/16bpp modes. However, the driver is dramatically slow | |
370 and buggy in 800x600@16bpp. <emphasis role="bold">Recommended: 640x480@16bpp</emphasis> | |
371 </simpara></listitem> | |
372 <listitem><simpara> | |
373 XFree86 4: the Xserver freezes soon after start unless acceleration is | |
374 disabled, but then the whole thing gets slower than XFree86 3. No XVideo. | |
375 </simpara></listitem> | |
376 <listitem><simpara> | |
377 FBdev: framebuffer can be turned on with the <systemitem>clgenfb</systemitem> | |
378 driver in the kernel, though for me it worked only in 8bpp, thus unusable. | |
379 The clgenfb source had to be extended with the 7548 ID before compilation. | |
380 </simpara></listitem> | |
381 <listitem><simpara> | |
382 VESA: the card is only VBE 1.2 capable, so VESA output can't be used. Can't | |
383 be workarounded with UniVBE. | |
384 </simpara></listitem> | |
385 <listitem><simpara> | |
386 SVGAlib: detects an older Cirrus chip. Usable but slow with | |
387 <option>-bpp 8</option>. | |
388 </simpara></listitem> | |
389 </itemizedlist> | |
390 </para></listitem> | |
391 </itemizedlist> | |
392 </sect3> | |
393 </sect2> | |
394 | |
395 | |
10000 | 396 <sect2 id="sound-cards"> |
9675 | 397 <title>Sound cards</title> |
398 | |
399 <itemizedlist> | |
400 <listitem><simpara> | |
401 <emphasis role="bold">Soundblaster Live!</emphasis>: with this card you can use | |
9683 | 402 4 or 6 (<emphasis role="bold">5.1</emphasis>) channels AC3 decoding instead of 2. Read the |
9675 | 403 <link linkend="swac3">Software AC3 decoding</link> section. For hardware AC3 |
9683 | 404 passthrough you <emphasis role="bold">must</emphasis> use ALSA 0.9 with OSS emulation! |
9675 | 405 </simpara></listitem> |
406 <listitem><simpara> | |
407 <emphasis role="bold">C-Media with SP/DIF out</emphasis>: hardware AC3 | |
408 passthrough is possible with these cards, see | |
409 <link linkend="hwac3">Hardware AC3 decoding</link> section. | |
410 </simpara></listitem> | |
411 <listitem><simpara> | |
412 Features of <emphasis role="bold">other cards</emphasis> aren't supported by | |
413 <application>MPlayer</application>. <emphasis role="bold">It's very recommended | |
414 to read the <link linkend="audio-dev">sound card</link> section!</emphasis> | |
415 </simpara></listitem> | |
416 </itemizedlist> | |
417 </sect2> | |
418 | |
419 | |
420 <sect2> | |
421 <title>Features</title> | |
422 | |
423 <itemizedlist> | |
424 <listitem><para> | |
425 Decide if you need GUI. If you do, see the <link linkend="gui">GUI | |
426 section</link> before compiling. | |
427 </para></listitem> | |
428 <listitem><para> | |
429 If you want to install <application>MEncoder</application> (our great | |
430 all-purpose encoder), see the <link linkend="mencoder">MEncoder section</link>. | |
431 </para></listitem> | |
432 <listitem><para> | |
433 If you have a V4L compatible <emphasis role="bold">TV tuner</emphasis> card, | |
434 and wish to watch/grab and encode movies with <application>MPlayer</application>, | |
435 read the <link linkend="tv-input">TV input</link> section. | |
436 </para></listitem> | |
437 <listitem><para> | |
438 There is a neat <emphasis role="bold">OSD Menu</emphasis> support ready to be | |
439 used. Check the <link linkend="subosd">OSD menu</link> section. | |
440 </para></listitem> | |
441 </itemizedlist> | |
442 | |
443 <para> | |
444 Then build <application>MPlayer</application>: | |
445 <screen> | |
446 ./configure | |
447 make | |
448 make install</screen> | |
449 </para> | |
450 | |
451 <para> | |
452 At this point, <application>MPlayer</application> is ready to use. The | |
453 directory <filename class="directory">$PREFIX/share/mplayer</filename> | |
454 contains the <filename>codecs.conf</filename> file, which is used to tell | |
10132 | 455 the program all the codecs and their capabilities. This file is needed only |
456 when you want to change its properties, as the main binary contains an internal | |
457 copy of it. Check if you have | |
9675 | 458 <filename>codecs.conf</filename> in your home directory |
459 (<filename>~/.mplayer/codecs.conf</filename>) left from old | |
460 <application>MPlayer</application> versions, and remove it. | |
461 </para> | |
462 | |
463 <para> | |
10403 | 464 Note that if you have a <filename>codecs.conf</filename> in |
465 <filename>~/.mplayer/</filename>, the builtin and system | |
466 <filename>codecs.conf</filename> will be ignored completely. | |
467 Do not do this unless you want to fiddle with MPlayer internals as this can | |
468 can cause many problems. If you want to change the codecs search order, use | |
469 the <option>-vc</option>, <option>-ac</option>, <option>-vfm</option>, | |
470 or <option>-afm</option> options either on the command line or in your | |
471 config file (see the manual page). | |
472 </para> | |
473 | |
474 | |
475 <para> | |
9675 | 476 Debian users can build a .deb package for themselves, it's very simple. |
477 Just exec | |
478 <screen>fakeroot debian/rules binary</screen> | |
479 in <application>MPlayer</application>'s root directory. See | |
11271
252fb0cf331a
spelling fixes, mostly by <ismail.donmez@boun.edu.tr>
diego
parents:
10913
diff
changeset
|
480 <link linkend="debian">Debian packaging</link> for detailed instructions. |
9675 | 481 </para> |
482 | |
483 <para> | |
484 <emphasis role="bold">Always browse the output of</emphasis> | |
485 <filename>./configure</filename>, and the | |
486 <filename>configure.log</filename> file, they contain information about | |
487 what will be built, and what will not. You may also want to view | |
488 <filename>config.h</filename> and <filename>config.mak</filename> files. | |
489 If you have some libraries installed, but not detected by | |
490 <filename>./configure</filename>, then check if you also have the proper | |
491 header files (usually the -dev packages) and their version matches. The | |
492 <filename>configure.log</filename> file usually tells you what is missing. | |
493 </para> | |
494 | |
495 <para> | |
496 Though not mandatory, the fonts should be installed in order to gain OSD, | |
497 and subtitle functionality. The recommended method is installing a TTF | |
498 font file and telling MPlayer to use it. See the <link linkend="subosd">Subtitles | |
499 and OSD</link> section for details. | |
500 </para> | |
501 | |
502 </sect2> | |
503 </sect1> | |
504 | |
505 <!-- ********** --> | |
506 | |
507 <sect1 id="gui"> | |
508 <title>What about the GUI?</title> | |
509 | |
510 <para> | |
511 The GUI needs GTK 1.2.x (it isn't fully GTK, but the panels are). The skins | |
512 are stored in PNG format, so GTK, <systemitem class="library">libpng</systemitem> | |
11271
252fb0cf331a
spelling fixes, mostly by <ismail.donmez@boun.edu.tr>
diego
parents:
10913
diff
changeset
|
513 (and their devel stuff, usually called <systemitem class="library">gtk-dev</systemitem> |
9675 | 514 and <systemitem class="library">libpng-dev</systemitem>) has to be installed. |
515 You can build it by specifying <option>--enable-gui</option> during | |
10000 | 516 <filename>./configure</filename>. Then, to turn on GUI mode, you have to |
517 execute the <command>gmplayer</command> binary. | |
9675 | 518 </para> |
519 | |
520 <para> | |
521 Currently you can't use the <option>-gui</option> option on the command | |
522 line, due to technical reasons. | |
523 </para> | |
524 | |
525 <para> | |
526 As <application>MPlayer</application> doesn't have a skin included, you | |
527 have to download them if you want to use the GUI. See the <ulink | |
528 url="http://www.mplayerhq.hu/homepage/dload.html">download page</ulink>. | |
529 They should be extracted to the usual system-wide directory (<filename | |
530 class="directory">$PREFIX/share/mplayer/Skin</filename>), or to <filename | |
531 class="directory">$HOME/.mplayer/Skin</filename>. | |
532 <application>MPlayer</application> by default looks in these directories | |
533 for a directory named <filename class="directory">default</filename>, but | |
534 you can use the <option>-skin <replaceable>newskin</replaceable></option> | |
535 option, or the <literal>skin=newskin</literal> config file directive to use | |
536 the skin in <filename class="directory">*/Skin/newskin</filename> | |
537 directory. | |
538 </para> | |
539 </sect1> | |
540 | |
541 <!-- ********** --> | |
542 | |
543 <sect1 id="subosd"> | |
544 <title>Subtitles and OSD</title> | |
545 | |
546 <para> | |
547 MPlayer can display subtitles along with movie files. Currently the | |
548 following formats are supported: | |
549 <itemizedlist> | |
550 <listitem><para>VobSub</para></listitem> | |
551 <listitem><para>OGM</para></listitem> | |
552 <listitem><para>CC (closed caption)</para></listitem> | |
553 <listitem><para>Microdvd</para></listitem> | |
554 <listitem><para>SubRip</para></listitem> | |
555 <listitem><para>SubViewer</para></listitem> | |
556 <listitem><para>Sami</para></listitem> | |
557 <listitem><para>VPlayer</para></listitem> | |
558 <listitem><para>RT</para></listitem> | |
559 <listitem><para>SSA</para></listitem> | |
560 <listitem><para><link linkend="mpsub">MPsub</link></para></listitem> | |
561 <listitem><para>AQTitle</para></listitem> | |
10277 | 562 <listitem><para><ulink url="http://unicorn.us.com/jacosub/">JACOsub</ulink></para></listitem> |
9675 | 563 </itemizedlist> |
564 </para> | |
565 | |
566 <para> | |
567 MPlayer can dump the previously listed subtitle formats | |
568 (<emphasis role="bold">except the three first</emphasis>) into the following | |
569 destination formats, with the given options: | |
570 <itemizedlist> | |
571 <listitem><para>MPsub: <option>-dumpmpsub</option></para></listitem> | |
572 <listitem><para>SubRip: <option>-dumpsrtsub</option></para></listitem> | |
573 <listitem><para>Microdvd: <option>-dumpmicrodvdsub</option></para></listitem> | |
574 <listitem><para>JACOsub: <option>-dumpjacosub</option></para></listitem> | |
575 <listitem><para>Sami: <option>-dumpsami</option></para></listitem> | |
576 </itemizedlist> | |
577 </para> | |
578 | |
579 <para> | |
10132 | 580 MEncoder can dump DVD subtitles into <link linkend="menc-feat-extractsub">VobSub</link> format. |
581 </para> | |
582 | |
583 <para> | |
9675 | 584 The command line options differ slightly for the different formats: |
585 </para> | |
586 | |
587 <formalpara> | |
588 <title>VobSub subtitles</title> | |
589 <para> | |
590 VobSub subtitles consist of a big (some megabytes) <filename>.SUB</filename> file, | |
591 and optional <filename>.IDX</filename> and/or <filename>.IFO</filename> | |
592 files. If you have files like <filename>sample.sub</filename>, | |
593 <filename>sample.ifo</filename> (optional), <filename>sample.idx</filename> - | |
594 you have to pass <application>MPlayer</application> the | |
595 <option>-vobsub sample [-vobsubid <replaceable>id</replaceable>]</option> options | |
596 (full path optional). The <option>-vobsubid</option> option is like | |
597 <option>-sid</option> for DVDs, you can choose between subtitle tracks | |
598 (languages) with it. In case that <option>-vobsubid</option> is omitted, | |
599 <application>MPLayer</application> will try to use the languages given by the | |
600 <option>-slang</option> option and fall back to the <systemitem>langidx</systemitem> | |
601 in the <filename>.IDX</filename> file to set the subtitle language. If it fails, | |
602 there will be no subtitles. | |
603 </para> | |
604 </formalpara> | |
605 | |
606 <formalpara> | |
607 <title>Other subtitles</title> | |
608 <para> | |
609 The other formats consist of a single text file containing timing, | |
610 placement and text information. Usage: If you have a file like | |
611 <filename>sample.txt</filename>, you have to pass the option <option>-sub | |
612 sample.txt</option> (full path optional). | |
613 </para> | |
614 </formalpara> | |
615 | |
616 <variablelist> | |
617 <title>Adjusting subtitle timing and placement:</title> | |
618 <varlistentry> | |
619 <term><option>-subdelay <replaceable>sec</replaceable></option></term> | |
620 <listitem><simpara> | |
621 Delays subtitles by <option><replaceable>sec</replaceable></option> seconds. | |
622 Can be negative. | |
623 </simpara></listitem> | |
624 </varlistentry> | |
625 <varlistentry> | |
626 <term><option>-subfps <replaceable>RATE</replaceable></option></term> | |
627 <listitem><simpara> | |
628 Specify frame/sec rate of subtitle file (float number). | |
629 </simpara></listitem> | |
630 </varlistentry> | |
631 <varlistentry> | |
632 <term><option>-subpos <replaceable>0-100</replaceable></option></term> | |
633 <listitem><simpara> | |
634 Specify the position of subtitles. | |
635 </simpara></listitem> | |
636 </varlistentry> | |
637 </variablelist> | |
638 | |
639 <para> | |
640 If you experience a growing delay between the movie and the subtitles when | |
641 using a MicroDVD subtitle file, most likely the frame rate of the movie and | |
642 the subtitle file are different. Please note that the MicroDVD subtitle | |
643 format uses absolute frame numbers for its timing, and therefore the | |
644 <option>-subfps</option> option cannot be used with this format. As | |
645 <application>MPlayer</application> has no way to guess the frame rate of | |
646 the subtitle file, you have to manually convert the frame rate. There is a | |
647 little perl script in the <filename class="directory">contrib</filename> | |
648 directory of the MPlayer FTP site to do this conversion for you. | |
649 </para> | |
650 | |
651 <para> | |
652 About DVD subtitles, read the <link linkend="dvd">DVD section</link>. | |
653 </para> | |
654 | |
655 | |
656 <sect2 id="mpsub"> | |
9736
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
657 <title>MPlayer's own subtitle format (MPsub)</title> |
9675 | 658 |
659 <para> | |
660 <application>MPlayer</application> introduces a new subtitle format called | |
661 <emphasis role="bold">MPsub</emphasis>. It was designed by Gabucino. Basically | |
662 its main feature is being <emphasis>dynamically</emphasis> time-based (although | |
663 it has frame-based mode too). Example (from <ulink | |
664 url="../../tech/mpsub.sub">DOCS/tech/mpsub.sub</ulink>): | |
665 <programlisting> | |
10132 | 666 FORMAT=TIME |
9675 | 667 # first number : wait this much after previous subtitle disappeared |
668 # second number : display the current subtitle for this many seconds | |
669 | |
670 15 3 | |
671 A long long, time ago... | |
672 | |
673 0 3 | |
674 in a galaxy far away... | |
675 | |
676 0 3 | |
677 Naboo was under an attack.<!-- | |
678 --></programlisting> | |
679 </para> | |
680 | |
681 <para> | |
682 So you see, the main goal was to <emphasis role="bold">make subtitle | |
683 editing/timing/joining/cutting easy</emphasis>. And, if you - say - get an | |
684 SSA subtitle but it's badly timed/delayed to your version of the movie, you | |
685 simply do a | |
686 <screen>mplayer dummy.avi -sub source.ssa -dumpmpsub</screen> | |
687 A <filename>dump.mpsub</filename> file will be created in the | |
688 current directory, which will contain the source subtitle's text, but in | |
689 <emphasis role="bold">MPsub</emphasis> format. Then you can freely add/subtract | |
690 seconds to/from the subtitle. | |
691 </para> | |
692 | |
693 <para> | |
694 Subtitles are displayed with a technique called <emphasis role="bold">'OSD', | |
695 On Screen Display</emphasis>.OSD is used to display current time, volume bar, | |
696 seek bar etc. | |
697 </para> | |
698 </sect2> | |
699 | |
700 | |
701 <sect2 id="mpsub-install"> | |
702 <title>Installing OSD and subtitles</title> | |
703 | |
704 <para> | |
705 You need an MPlayer font package to be able to use OSD/SUB feature. | |
706 There are many ways to get it: | |
707 </para> | |
708 | |
709 <itemizedlist> | |
710 <listitem><para> | |
10132 | 711 using a TrueType (TTF) font, by the means of the <systemitem class="library">freetype</systemitem> |
712 library. Version 2.0.9 or greater is mandatory! Then you have two methods: | |
713 <itemizedlist> | |
714 <listitem><para> | |
715 use the <option>-font /path/to/arial.ttf</option> option to specify a | |
716 TrueType font file on every occasion | |
717 </para></listitem> | |
718 <listitem><para> | |
719 create a symlink:<screen>ln -s /path/to/arial.ttf ~/.mplayer/subfont.ttf</screen> | |
720 </para></listitem> | |
721 </itemizedlist> | |
722 </para></listitem> | |
723 <listitem><para> | |
9675 | 724 Download ready-to-use font packages from MPlayer site. Note: currently |
725 available fonts are limited for ISO 8859-1/2 support, but there are some | |
726 other (including Korean, Russian, ISO 8859-8 etc) fonts at contrib/font | |
727 section of FTP, made by users. | |
728 </para><para> | |
729 <!-- FIXME: this para should be before the list --> | |
730 Font should have appropriate <filename>font.desc</filename> file which | |
731 maps unicode font positions to the actual code page of the subtitles | |
732 text. Other solution is to have subtitles encoded in UTF8 encoding and | |
733 use <option>-utf8</option> option or just name the subtitles file | |
734 <filename><video_name>.utf</filename> and have it in the same dir | |
735 as the video file. Recoding from different codepages to UTF8 could be | |
736 <!-- FIXME: iconv (Debian) konwert (Red Hat) instead? --> | |
737 done by using <command>konwert</command> (Debian) or | |
738 <command>iconv</command> (Red Hat) programs. | |
739 </para><para> | |
740 | |
741 <table> | |
742 <title>Some URLs</title> | |
743 <tgroup cols="2"> | |
744 <thead> | |
745 <row><entry>URL</entry><entry>Comment</entry></row> | |
746 </thead> | |
747 <tbody> | |
748 <row><entry> | |
9683 | 749 <ulink url="ftp://ftp.mplayerhq.hu/MPlayer/releases/fonts/"></ulink> |
9675 | 750 </entry><entry> |
751 ISO fonts | |
752 </entry></row> | |
753 <row><entry> | |
754 <ulink url="ftp://ftp.mplayerhq.hu/MPlayer/contrib/fonts/"></ulink> | |
755 </entry><entry> | |
756 various fonts by users | |
757 </entry></row> | |
758 <row><entry> | |
9683 | 759 <ulink url="http://realtime.ssu.ac.kr/~lethean/mplayer/"></ulink> |
9675 | 760 </entry><entry> |
761 Korean fonts and RAW plugin | |
762 </entry></row> | |
763 </tbody> | |
764 </tgroup> | |
765 </table> | |
10132 | 766 |
9675 | 767 </para></listitem> |
768 <listitem><para> | |
769 Use the font generator tool at <filename | |
770 class="directory">TOOLS/subfont-c</filename>. It's a complete tool to | |
771 convert from TTF/Type1/etc font to mplayer font pkg. (read | |
772 <filename>TOOLS/subfont-c/README</filename> for details) | |
773 </para></listitem> | |
774 <listitem><para> | |
775 Use the font generator GIMP plugin at <filename | |
776 class="directory">TOOLS/subfont-GIMP</filename> (note: you must have HSI | |
777 RAW plugin too, see URL below) | |
778 <!-- FIXME: where's that URL? --> | |
779 </para></listitem> | |
780 </itemizedlist> | |
781 | |
782 <para> | |
783 If you chose non-TTF fonts, UNZIP the file you downloaded to <filename | |
784 class="directory">~/.mplayer</filename> or <filename | |
785 class="directory">$PREFIX/share/mplayer</filename>. Then rename or symlink | |
786 one of the extracted directories to <filename>font</filename>, for example: | |
787 | |
788 <screen>ln -s ~/.mplayer/arial-24 ~/.mplayer/font</screen> | |
789 | |
790 Now you have to see a timer at the upper left corner of the movie (switch | |
791 it off with the <keycap>o</keycap> key). | |
792 </para> | |
793 | |
794 <para> | |
9736
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
795 (subtitles are <emphasis>always enabled</emphasis>, for disabling them please |
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
796 read the man page) |
9737 | 797 </para> |
798 | |
9736
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
799 <para> |
9675 | 800 OSD has 4 states (switch with <keycap>o</keycap>): |
801 | |
802 <orderedlist> | |
803 <listitem><simpara> | |
804 volume bar + seek bar (default) | |
805 </simpara></listitem> | |
806 <listitem><simpara> | |
807 volume bar + seek bar + timer + file position percentage on seeking | |
808 </simpara></listitem> | |
809 <listitem><simpara> | |
810 volume bar + seek bar + timer + total duration of the media | |
811 </simpara></listitem> | |
812 <listitem><simpara> | |
813 subtitles only | |
814 </simpara></listitem> | |
815 </orderedlist> | |
816 | |
817 You can change default behaviour by setting <varname>osdlevel</varname> | |
818 variable in config file, or the <option>-osdlevel</option> command line option. | |
819 | |
820 </para> | |
821 </sect2> | |
822 | |
823 | |
824 <sect2 id="osdmenu"> | |
825 <title>OSD menu</title> | |
826 | |
827 <para> | |
828 MPlayer has a completely user definiable OSD Menu interface. | |
829 </para> | |
830 | |
831 <note><simpara> | |
832 the Preferences menu is currently UNIMPLEMENTED! | |
833 </simpara></note> | |
834 | |
835 <orderedlist> | |
836 <title>Installation</title> | |
837 <listitem><simpara> | |
838 compile <application>MPlayer</application> by passing the <option>--enable-menu</option> | |
839 to <filename>./configure</filename> | |
840 </simpara></listitem> | |
841 <listitem><simpara> | |
842 make sure you have an OSD font installed | |
843 </simpara></listitem> | |
844 <listitem><simpara> | |
845 copy <filename>etc/menu.conf</filename> to your | |
846 <filename class="directory">.mplayer</filename> directory | |
847 </simpara></listitem> | |
848 <listitem><simpara> | |
849 copy <filename>etc/input.conf</filename> to your | |
850 <filename class="directory">.mplayer</filename> directory, or to the system-wide | |
851 <application>MPlayer</application> config dir (default: | |
852 <filename class="directory">/usr/local/etc/mplayer</filename>) | |
853 </simpara></listitem> | |
854 <listitem><simpara> | |
855 check and edit <filename>input.conf</filename> to enable menu movement keys | |
856 (it is described there). | |
857 </simpara></listitem> | |
858 <listitem><para> | |
859 start <application>MPlayer</application> by the following example: | |
860 <screen>$ mplayer -menu file.avi</screen> | |
861 </para></listitem> | |
862 <listitem><simpara> | |
863 push any menu key you defined | |
864 </simpara></listitem> | |
865 </orderedlist> | |
866 | |
867 </sect2> | |
868 </sect1> | |
869 | |
870 <!-- ********** --> | |
871 | |
872 <sect1 id="rtc"> | |
873 <title>RTC</title> | |
874 <para> | |
875 There are three timing methods in MPlayer. | |
876 | |
877 <itemizedlist> | |
878 <listitem><simpara> | |
879 <emphasis role="bold">To use the old method</emphasis>, you don't have to do | |
880 anything. It uses <systemitem>usleep()</systemitem> to tune | |
881 A/V sync, with +/- 10ms accuracy. However sometimes the sync has to be | |
882 tuned even finer. | |
883 </simpara></listitem> | |
884 <listitem><para> | |
885 <emphasis role="bold">The new timer</emphasis> code uses PC's RTC (Real Time Clock) | |
886 for this task, because it has precise 1ms timers. It is automagically enabled | |
887 when available, but requires root privileges, a <emphasis>setuid root</emphasis> | |
888 <application>MPlayer</application> binary or a properly set up kernel. | |
889 If you are running kernel 2.4.19pre8 or later you can adjust the maximum RTC | |
890 frequency for normal users through the /proc filesystem. Use this command to | |
891 enable RTC for normal users: | |
892 <screen>echo 1024 > /proc/sys/dev/rtc/max-user-freq</screen> | |
893 If you do not have such a new kernel, you can also change one line in | |
894 <filename>drivers/char/rtc.c</filename> and recompile your kernel. | |
895 Find the section that reads | |
896 <programlisting> | |
897 * We don't really want Joe User enabling more | |
898 * than 64Hz of interrupts on a multi-user machine. | |
899 */ | |
900 if ((rtc_freq > 64) && (!capable(CAP_SYS_RESOURCE))) | |
901 </programlisting> | |
902 and change the 64 to 1024. You should really know what you are doing, though. | |
903 You can see the new timer's efficiency in the status line. | |
904 The power management functions of some notebook BIOSes with speedstep CPUs | |
905 interact badly with RTC. Audio and video may get out of sync. Plugging the | |
906 external power connector in before you power up your notebook seems to help. | |
907 You can always turn off RTC support with the <option>-nortc</option> option. | |
908 In some hardware combinations (confirmed during usage of non-DMA DVD drive | |
909 on an ALi1541 board) usage of the RTC timer causes skippy playback. It's | |
910 recommended to use the third method in these cases. | |
911 </para></listitem> | |
912 <listitem><simpara> | |
913 <emphasis role="bold">The third timer code</emphasis> is turned on with the | |
914 <option>-softsleep</option> option. It has the efficiency of the RTC, but it | |
915 doesn't use RTC. On the other hand, it requires more CPU. | |
916 </simpara></listitem> | |
917 </itemizedlist> | |
918 <note><para><emphasis role="bold">NEVER install a setuid root | |
919 <application>MPlayer</application> binary on a multiuser system!</emphasis> | |
920 It's a clear way for everyone to become root. | |
921 </para></note> | |
922 </para> | |
923 </sect1> |