Mercurial > mplayer.hg
annotate DOCS/xml/en/install.xml @ 11483:462b97f8746f
move section out of <link> tags
author | wight |
---|---|
date | Sun, 16 Nov 2003 19:55:53 +0000 |
parents | 25d13a2b1911 |
children | 41e187a49bf3 |
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 | |
11483 | 184 available in the <link linkend="divx4-5">DivX4/DivX5</link> section. 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 | |
11483 | 278 built. Also see the <link linkend="tvout-voodoo">3dfx TV-out</link> section. |
9675 | 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). | |
11483 | 286 Also see the <link linkend="tvout-ati">ATI cards</link> section of the TV-out documentation, |
9675 | 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 | |
11483 | 292 buggy. Savage chips have problems with YV12 display, see <link linkend="s3">S3 Xv</link> |
293 section for details. Older, Trio cards have no, or slow hardware support. | |
9675 | 294 </para></listitem> |
295 <listitem><para> | |
9683 | 296 <emphasis role="bold">nVidia cards</emphasis>: may or may not be good choice for video playing. |
9675 | 297 If you do not have a GeForce2 (or newer) card, it's not likely to work without bugs. |
9683 | 298 <emphasis role="bold">the built-in nVidia driver in XFree86 does not support |
299 hardware YUV acceleration on all nVidia cards.</emphasis> You have | |
11461 | 300 to download nVidia's closed-source drivers from <ulink url="http://nvidia.com">nVidia.com</ulink>. |
301 See the <link linkend="nvidia">nVidia Xv driver</link> section for details. Please also check | |
11483 | 302 the <link linkend="tvout-nvidia">nVidia TV-out</link> section if you wish to |
9675 | 303 use a TV. |
304 </para></listitem> | |
305 <listitem><para> | |
306 <emphasis role="bold">3DLabs GLINT R3 and Permedia3</emphasis>: a VIDIX driver | |
307 is provided (pm3_vid). Please see the <link linkend="vidix">VIDIX</link> section | |
308 for details. | |
309 </para></listitem> | |
310 <listitem><para> | |
311 <emphasis role="bold">Other cards</emphasis>: none of the above? | |
312 <itemizedlist> | |
313 <listitem><simpara> | |
314 Try if the XFree86 driver (and your card) supports hardware | |
11483 | 315 acceleration. See the <link linkend="xv">Xv</link> section for details. |
9675 | 316 </simpara></listitem> |
317 <listitem><simpara> | |
318 If it doesn't, then your card's video features aren't supported under | |
9683 | 319 your operating system :( If hardware scaling works under Windows, it |
320 doesn't mean it will work under Linux or other operating system, it depends on | |
321 the drivers. Most manufacturers neither make Linux drivers nor release | |
322 specifications of their chips - so you are unlucky if using their cards. | |
9675 | 323 See <xref linkend="non-yuv-cards"/>. |
324 </simpara></listitem> | |
325 </itemizedlist> | |
326 </para></listitem> | |
327 </itemizedlist> | |
328 </para> | |
329 </sect3> | |
330 | |
331 | |
332 <sect3 id="non-yuv-cards" xreflabel="Non-YUV cards"> | |
333 <title>Non-YUV cards</title> | |
334 | |
335 <para> | |
336 Fullscreen playing can be achieved by either enabling <emphasis role="bold"> | |
9683 | 337 software scaling</emphasis> (use the <option>-zoom</option> or <option>-vf</option> option, |
9675 | 338 but i warn you: this is slow), or switching to a smaller video mode, for example |
339 352x288. If you don't have YUV acceleration, this latter method is recommended. | |
340 Video mode switching can be enabled by using the <option>-vm</option> option and | |
341 it works with the following drivers: | |
342 <itemizedlist> | |
343 <listitem><simpara> | |
344 <emphasis role="bold">using</emphasis> XFree86: see details in <link linkend="dga">DGA driver</link> and | |
345 <link linkend="x11">X11 driver</link> sections. DGA is recommended! Also | |
346 try DGA via SDL, sometimes it's better. | |
347 </simpara></listitem> | |
348 <listitem><simpara> | |
349 <emphasis role="bold">not using</emphasis> XFree86: try the drivers in the | |
350 following order: | |
351 <link linkend="vesa">vesa</link>, | |
352 <link linkend="fbdev">fbdev</link>, | |
353 <link linkend="svgalib">svgalib</link>, | |
354 <link linkend="aalib">aalib</link>. | |
355 </simpara></listitem> | |
356 </itemizedlist> | |
357 </para> | |
358 </sect3> | |
359 | |
360 <!-- FIXME: find a more logical organization for this section --> | |
361 <sect3 id="cirrus-logic-cards" xreflabel="Cirrus-Logic cards"> | |
362 <title>Cirrus-Logic cards</title> | |
363 <itemizedlist> | |
364 <listitem><para> | |
365 GD 7548: present on-board and tested in Compaq Armada 41xx notebook series. | |
366 <itemizedlist> | |
367 <listitem><simpara> | |
368 XFree86 3: works in 8/16bpp modes. However, the driver is dramatically slow | |
369 and buggy in 800x600@16bpp. <emphasis role="bold">Recommended: 640x480@16bpp</emphasis> | |
370 </simpara></listitem> | |
371 <listitem><simpara> | |
372 XFree86 4: the Xserver freezes soon after start unless acceleration is | |
373 disabled, but then the whole thing gets slower than XFree86 3. No XVideo. | |
374 </simpara></listitem> | |
375 <listitem><simpara> | |
376 FBdev: framebuffer can be turned on with the <systemitem>clgenfb</systemitem> | |
377 driver in the kernel, though for me it worked only in 8bpp, thus unusable. | |
378 The clgenfb source had to be extended with the 7548 ID before compilation. | |
379 </simpara></listitem> | |
380 <listitem><simpara> | |
381 VESA: the card is only VBE 1.2 capable, so VESA output can't be used. Can't | |
382 be workarounded with UniVBE. | |
383 </simpara></listitem> | |
384 <listitem><simpara> | |
385 SVGAlib: detects an older Cirrus chip. Usable but slow with | |
386 <option>-bpp 8</option>. | |
387 </simpara></listitem> | |
388 </itemizedlist> | |
389 </para></listitem> | |
390 </itemizedlist> | |
391 </sect3> | |
392 </sect2> | |
393 | |
394 | |
10000 | 395 <sect2 id="sound-cards"> |
9675 | 396 <title>Sound cards</title> |
397 | |
398 <itemizedlist> | |
399 <listitem><simpara> | |
400 <emphasis role="bold">Soundblaster Live!</emphasis>: with this card you can use | |
9683 | 401 4 or 6 (<emphasis role="bold">5.1</emphasis>) channels AC3 decoding instead of 2. Read the |
9675 | 402 <link linkend="swac3">Software AC3 decoding</link> section. For hardware AC3 |
9683 | 403 passthrough you <emphasis role="bold">must</emphasis> use ALSA 0.9 with OSS emulation! |
9675 | 404 </simpara></listitem> |
405 <listitem><simpara> | |
406 <emphasis role="bold">C-Media with SP/DIF out</emphasis>: hardware AC3 | |
407 passthrough is possible with these cards, see | |
408 <link linkend="hwac3">Hardware AC3 decoding</link> section. | |
409 </simpara></listitem> | |
410 <listitem><simpara> | |
411 Features of <emphasis role="bold">other cards</emphasis> aren't supported by | |
412 <application>MPlayer</application>. <emphasis role="bold">It's very recommended | |
413 to read the <link linkend="audio-dev">sound card</link> section!</emphasis> | |
414 </simpara></listitem> | |
415 </itemizedlist> | |
416 </sect2> | |
417 | |
418 | |
419 <sect2> | |
420 <title>Features</title> | |
421 | |
422 <itemizedlist> | |
423 <listitem><para> | |
11483 | 424 Decide if you need GUI. If you do, see the <link linkend="gui">GUI</link> |
425 section before compiling. | |
9675 | 426 </para></listitem> |
427 <listitem><para> | |
428 If you want to install <application>MEncoder</application> (our great | |
11483 | 429 all-purpose encoder), see the <link linkend="mencoder">MEncoder</link> section. |
9675 | 430 </para></listitem> |
431 <listitem><para> | |
432 If you have a V4L compatible <emphasis role="bold">TV tuner</emphasis> card, | |
433 and wish to watch/grab and encode movies with <application>MPlayer</application>, | |
434 read the <link linkend="tv-input">TV input</link> section. | |
435 </para></listitem> | |
436 <listitem><para> | |
437 There is a neat <emphasis role="bold">OSD Menu</emphasis> support ready to be | |
438 used. Check the <link linkend="subosd">OSD menu</link> section. | |
439 </para></listitem> | |
440 </itemizedlist> | |
441 | |
442 <para> | |
443 Then build <application>MPlayer</application>: | |
444 <screen> | |
445 ./configure | |
446 make | |
447 make install</screen> | |
448 </para> | |
449 | |
450 <para> | |
451 At this point, <application>MPlayer</application> is ready to use. The | |
452 directory <filename class="directory">$PREFIX/share/mplayer</filename> | |
453 contains the <filename>codecs.conf</filename> file, which is used to tell | |
10132 | 454 the program all the codecs and their capabilities. This file is needed only |
455 when you want to change its properties, as the main binary contains an internal | |
456 copy of it. Check if you have | |
9675 | 457 <filename>codecs.conf</filename> in your home directory |
458 (<filename>~/.mplayer/codecs.conf</filename>) left from old | |
459 <application>MPlayer</application> versions, and remove it. | |
460 </para> | |
461 | |
462 <para> | |
10403 | 463 Note that if you have a <filename>codecs.conf</filename> in |
464 <filename>~/.mplayer/</filename>, the builtin and system | |
465 <filename>codecs.conf</filename> will be ignored completely. | |
466 Do not do this unless you want to fiddle with MPlayer internals as this can | |
467 can cause many problems. If you want to change the codecs search order, use | |
468 the <option>-vc</option>, <option>-ac</option>, <option>-vfm</option>, | |
469 or <option>-afm</option> options either on the command line or in your | |
470 config file (see the manual page). | |
471 </para> | |
472 | |
473 | |
474 <para> | |
9675 | 475 Debian users can build a .deb package for themselves, it's very simple. |
476 Just exec | |
477 <screen>fakeroot debian/rules binary</screen> | |
478 in <application>MPlayer</application>'s root directory. See | |
11271
252fb0cf331a
spelling fixes, mostly by <ismail.donmez@boun.edu.tr>
diego
parents:
10913
diff
changeset
|
479 <link linkend="debian">Debian packaging</link> for detailed instructions. |
9675 | 480 </para> |
481 | |
482 <para> | |
483 <emphasis role="bold">Always browse the output of</emphasis> | |
484 <filename>./configure</filename>, and the | |
485 <filename>configure.log</filename> file, they contain information about | |
486 what will be built, and what will not. You may also want to view | |
487 <filename>config.h</filename> and <filename>config.mak</filename> files. | |
488 If you have some libraries installed, but not detected by | |
489 <filename>./configure</filename>, then check if you also have the proper | |
490 header files (usually the -dev packages) and their version matches. The | |
491 <filename>configure.log</filename> file usually tells you what is missing. | |
492 </para> | |
493 | |
494 <para> | |
495 Though not mandatory, the fonts should be installed in order to gain OSD, | |
496 and subtitle functionality. The recommended method is installing a TTF | |
497 font file and telling MPlayer to use it. See the <link linkend="subosd">Subtitles | |
498 and OSD</link> section for details. | |
499 </para> | |
500 | |
501 </sect2> | |
502 </sect1> | |
503 | |
504 <!-- ********** --> | |
505 | |
506 <sect1 id="gui"> | |
507 <title>What about the GUI?</title> | |
508 | |
509 <para> | |
510 The GUI needs GTK 1.2.x (it isn't fully GTK, but the panels are). The skins | |
511 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
|
512 (and their devel stuff, usually called <systemitem class="library">gtk-dev</systemitem> |
9675 | 513 and <systemitem class="library">libpng-dev</systemitem>) has to be installed. |
514 You can build it by specifying <option>--enable-gui</option> during | |
10000 | 515 <filename>./configure</filename>. Then, to turn on GUI mode, you have to |
516 execute the <command>gmplayer</command> binary. | |
9675 | 517 </para> |
518 | |
519 <para> | |
520 Currently you can't use the <option>-gui</option> option on the command | |
521 line, due to technical reasons. | |
522 </para> | |
523 | |
524 <para> | |
525 As <application>MPlayer</application> doesn't have a skin included, you | |
526 have to download them if you want to use the GUI. See the <ulink | |
527 url="http://www.mplayerhq.hu/homepage/dload.html">download page</ulink>. | |
528 They should be extracted to the usual system-wide directory (<filename | |
529 class="directory">$PREFIX/share/mplayer/Skin</filename>), or to <filename | |
530 class="directory">$HOME/.mplayer/Skin</filename>. | |
531 <application>MPlayer</application> by default looks in these directories | |
532 for a directory named <filename class="directory">default</filename>, but | |
533 you can use the <option>-skin <replaceable>newskin</replaceable></option> | |
534 option, or the <literal>skin=newskin</literal> config file directive to use | |
535 the skin in <filename class="directory">*/Skin/newskin</filename> | |
536 directory. | |
537 </para> | |
538 </sect1> | |
539 | |
540 <!-- ********** --> | |
541 | |
542 <sect1 id="subosd"> | |
543 <title>Subtitles and OSD</title> | |
544 | |
545 <para> | |
546 MPlayer can display subtitles along with movie files. Currently the | |
547 following formats are supported: | |
548 <itemizedlist> | |
549 <listitem><para>VobSub</para></listitem> | |
550 <listitem><para>OGM</para></listitem> | |
551 <listitem><para>CC (closed caption)</para></listitem> | |
552 <listitem><para>Microdvd</para></listitem> | |
553 <listitem><para>SubRip</para></listitem> | |
554 <listitem><para>SubViewer</para></listitem> | |
555 <listitem><para>Sami</para></listitem> | |
556 <listitem><para>VPlayer</para></listitem> | |
557 <listitem><para>RT</para></listitem> | |
558 <listitem><para>SSA</para></listitem> | |
559 <listitem><para><link linkend="mpsub">MPsub</link></para></listitem> | |
560 <listitem><para>AQTitle</para></listitem> | |
10277 | 561 <listitem><para><ulink url="http://unicorn.us.com/jacosub/">JACOsub</ulink></para></listitem> |
9675 | 562 </itemizedlist> |
563 </para> | |
564 | |
565 <para> | |
566 MPlayer can dump the previously listed subtitle formats | |
567 (<emphasis role="bold">except the three first</emphasis>) into the following | |
568 destination formats, with the given options: | |
569 <itemizedlist> | |
570 <listitem><para>MPsub: <option>-dumpmpsub</option></para></listitem> | |
571 <listitem><para>SubRip: <option>-dumpsrtsub</option></para></listitem> | |
572 <listitem><para>Microdvd: <option>-dumpmicrodvdsub</option></para></listitem> | |
573 <listitem><para>JACOsub: <option>-dumpjacosub</option></para></listitem> | |
574 <listitem><para>Sami: <option>-dumpsami</option></para></listitem> | |
575 </itemizedlist> | |
576 </para> | |
577 | |
578 <para> | |
10132 | 579 MEncoder can dump DVD subtitles into <link linkend="menc-feat-extractsub">VobSub</link> format. |
580 </para> | |
581 | |
582 <para> | |
9675 | 583 The command line options differ slightly for the different formats: |
584 </para> | |
585 | |
586 <formalpara> | |
587 <title>VobSub subtitles</title> | |
588 <para> | |
589 VobSub subtitles consist of a big (some megabytes) <filename>.SUB</filename> file, | |
590 and optional <filename>.IDX</filename> and/or <filename>.IFO</filename> | |
591 files. If you have files like <filename>sample.sub</filename>, | |
592 <filename>sample.ifo</filename> (optional), <filename>sample.idx</filename> - | |
593 you have to pass <application>MPlayer</application> the | |
594 <option>-vobsub sample [-vobsubid <replaceable>id</replaceable>]</option> options | |
595 (full path optional). The <option>-vobsubid</option> option is like | |
596 <option>-sid</option> for DVDs, you can choose between subtitle tracks | |
597 (languages) with it. In case that <option>-vobsubid</option> is omitted, | |
598 <application>MPLayer</application> will try to use the languages given by the | |
599 <option>-slang</option> option and fall back to the <systemitem>langidx</systemitem> | |
600 in the <filename>.IDX</filename> file to set the subtitle language. If it fails, | |
601 there will be no subtitles. | |
602 </para> | |
603 </formalpara> | |
604 | |
605 <formalpara> | |
606 <title>Other subtitles</title> | |
607 <para> | |
608 The other formats consist of a single text file containing timing, | |
609 placement and text information. Usage: If you have a file like | |
610 <filename>sample.txt</filename>, you have to pass the option <option>-sub | |
611 sample.txt</option> (full path optional). | |
612 </para> | |
613 </formalpara> | |
614 | |
615 <variablelist> | |
616 <title>Adjusting subtitle timing and placement:</title> | |
617 <varlistentry> | |
618 <term><option>-subdelay <replaceable>sec</replaceable></option></term> | |
619 <listitem><simpara> | |
620 Delays subtitles by <option><replaceable>sec</replaceable></option> seconds. | |
621 Can be negative. | |
622 </simpara></listitem> | |
623 </varlistentry> | |
624 <varlistentry> | |
625 <term><option>-subfps <replaceable>RATE</replaceable></option></term> | |
626 <listitem><simpara> | |
627 Specify frame/sec rate of subtitle file (float number). | |
628 </simpara></listitem> | |
629 </varlistentry> | |
630 <varlistentry> | |
631 <term><option>-subpos <replaceable>0-100</replaceable></option></term> | |
632 <listitem><simpara> | |
633 Specify the position of subtitles. | |
634 </simpara></listitem> | |
635 </varlistentry> | |
636 </variablelist> | |
637 | |
638 <para> | |
639 If you experience a growing delay between the movie and the subtitles when | |
640 using a MicroDVD subtitle file, most likely the frame rate of the movie and | |
641 the subtitle file are different. Please note that the MicroDVD subtitle | |
642 format uses absolute frame numbers for its timing, and therefore the | |
643 <option>-subfps</option> option cannot be used with this format. As | |
644 <application>MPlayer</application> has no way to guess the frame rate of | |
645 the subtitle file, you have to manually convert the frame rate. There is a | |
646 little perl script in the <filename class="directory">contrib</filename> | |
647 directory of the MPlayer FTP site to do this conversion for you. | |
648 </para> | |
649 | |
650 <para> | |
11483 | 651 About DVD subtitles, read the <link linkend="dvd">DVD</link> section. |
9675 | 652 </para> |
653 | |
654 | |
655 <sect2 id="mpsub"> | |
9736
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
656 <title>MPlayer's own subtitle format (MPsub)</title> |
9675 | 657 |
658 <para> | |
659 <application>MPlayer</application> introduces a new subtitle format called | |
660 <emphasis role="bold">MPsub</emphasis>. It was designed by Gabucino. Basically | |
661 its main feature is being <emphasis>dynamically</emphasis> time-based (although | |
662 it has frame-based mode too). Example (from <ulink | |
663 url="../../tech/mpsub.sub">DOCS/tech/mpsub.sub</ulink>): | |
664 <programlisting> | |
10132 | 665 FORMAT=TIME |
9675 | 666 # first number : wait this much after previous subtitle disappeared |
667 # second number : display the current subtitle for this many seconds | |
668 | |
669 15 3 | |
670 A long long, time ago... | |
671 | |
672 0 3 | |
673 in a galaxy far away... | |
674 | |
675 0 3 | |
676 Naboo was under an attack.<!-- | |
677 --></programlisting> | |
678 </para> | |
679 | |
680 <para> | |
681 So you see, the main goal was to <emphasis role="bold">make subtitle | |
682 editing/timing/joining/cutting easy</emphasis>. And, if you - say - get an | |
683 SSA subtitle but it's badly timed/delayed to your version of the movie, you | |
684 simply do a | |
685 <screen>mplayer dummy.avi -sub source.ssa -dumpmpsub</screen> | |
686 A <filename>dump.mpsub</filename> file will be created in the | |
687 current directory, which will contain the source subtitle's text, but in | |
688 <emphasis role="bold">MPsub</emphasis> format. Then you can freely add/subtract | |
689 seconds to/from the subtitle. | |
690 </para> | |
691 | |
692 <para> | |
693 Subtitles are displayed with a technique called <emphasis role="bold">'OSD', | |
694 On Screen Display</emphasis>.OSD is used to display current time, volume bar, | |
695 seek bar etc. | |
696 </para> | |
697 </sect2> | |
698 | |
699 | |
700 <sect2 id="mpsub-install"> | |
701 <title>Installing OSD and subtitles</title> | |
702 | |
703 <para> | |
704 You need an MPlayer font package to be able to use OSD/SUB feature. | |
705 There are many ways to get it: | |
706 </para> | |
707 | |
708 <itemizedlist> | |
709 <listitem><para> | |
10132 | 710 using a TrueType (TTF) font, by the means of the <systemitem class="library">freetype</systemitem> |
711 library. Version 2.0.9 or greater is mandatory! Then you have two methods: | |
712 <itemizedlist> | |
713 <listitem><para> | |
714 use the <option>-font /path/to/arial.ttf</option> option to specify a | |
715 TrueType font file on every occasion | |
716 </para></listitem> | |
717 <listitem><para> | |
718 create a symlink:<screen>ln -s /path/to/arial.ttf ~/.mplayer/subfont.ttf</screen> | |
719 </para></listitem> | |
720 </itemizedlist> | |
721 </para></listitem> | |
722 <listitem><para> | |
9675 | 723 Download ready-to-use font packages from MPlayer site. Note: currently |
724 available fonts are limited for ISO 8859-1/2 support, but there are some | |
725 other (including Korean, Russian, ISO 8859-8 etc) fonts at contrib/font | |
726 section of FTP, made by users. | |
727 </para><para> | |
728 <!-- FIXME: this para should be before the list --> | |
729 Font should have appropriate <filename>font.desc</filename> file which | |
730 maps unicode font positions to the actual code page of the subtitles | |
731 text. Other solution is to have subtitles encoded in UTF8 encoding and | |
732 use <option>-utf8</option> option or just name the subtitles file | |
733 <filename><video_name>.utf</filename> and have it in the same dir | |
734 as the video file. Recoding from different codepages to UTF8 could be | |
735 <!-- FIXME: iconv (Debian) konwert (Red Hat) instead? --> | |
736 done by using <command>konwert</command> (Debian) or | |
737 <command>iconv</command> (Red Hat) programs. | |
738 </para><para> | |
739 | |
740 <table> | |
741 <title>Some URLs</title> | |
742 <tgroup cols="2"> | |
743 <thead> | |
744 <row><entry>URL</entry><entry>Comment</entry></row> | |
745 </thead> | |
746 <tbody> | |
747 <row><entry> | |
9683 | 748 <ulink url="ftp://ftp.mplayerhq.hu/MPlayer/releases/fonts/"></ulink> |
9675 | 749 </entry><entry> |
750 ISO fonts | |
751 </entry></row> | |
752 <row><entry> | |
753 <ulink url="ftp://ftp.mplayerhq.hu/MPlayer/contrib/fonts/"></ulink> | |
754 </entry><entry> | |
755 various fonts by users | |
756 </entry></row> | |
757 <row><entry> | |
9683 | 758 <ulink url="http://realtime.ssu.ac.kr/~lethean/mplayer/"></ulink> |
9675 | 759 </entry><entry> |
760 Korean fonts and RAW plugin | |
761 </entry></row> | |
762 </tbody> | |
763 </tgroup> | |
764 </table> | |
10132 | 765 |
9675 | 766 </para></listitem> |
767 <listitem><para> | |
768 Use the font generator tool at <filename | |
769 class="directory">TOOLS/subfont-c</filename>. It's a complete tool to | |
770 convert from TTF/Type1/etc font to mplayer font pkg. (read | |
771 <filename>TOOLS/subfont-c/README</filename> for details) | |
772 </para></listitem> | |
773 <listitem><para> | |
774 Use the font generator GIMP plugin at <filename | |
775 class="directory">TOOLS/subfont-GIMP</filename> (note: you must have HSI | |
776 RAW plugin too, see URL below) | |
777 <!-- FIXME: where's that URL? --> | |
778 </para></listitem> | |
779 </itemizedlist> | |
780 | |
781 <para> | |
782 If you chose non-TTF fonts, UNZIP the file you downloaded to <filename | |
783 class="directory">~/.mplayer</filename> or <filename | |
784 class="directory">$PREFIX/share/mplayer</filename>. Then rename or symlink | |
785 one of the extracted directories to <filename>font</filename>, for example: | |
786 | |
787 <screen>ln -s ~/.mplayer/arial-24 ~/.mplayer/font</screen> | |
788 | |
789 Now you have to see a timer at the upper left corner of the movie (switch | |
790 it off with the <keycap>o</keycap> key). | |
791 </para> | |
792 | |
793 <para> | |
9736
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
794 (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
|
795 read the man page) |
9737 | 796 </para> |
797 | |
9736
520f6d60bf75
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
798 <para> |
9675 | 799 OSD has 4 states (switch with <keycap>o</keycap>): |
800 | |
801 <orderedlist> | |
802 <listitem><simpara> | |
803 volume bar + seek bar (default) | |
804 </simpara></listitem> | |
805 <listitem><simpara> | |
806 volume bar + seek bar + timer + file position percentage on seeking | |
807 </simpara></listitem> | |
808 <listitem><simpara> | |
809 volume bar + seek bar + timer + total duration of the media | |
810 </simpara></listitem> | |
811 <listitem><simpara> | |
812 subtitles only | |
813 </simpara></listitem> | |
814 </orderedlist> | |
815 | |
816 You can change default behaviour by setting <varname>osdlevel</varname> | |
817 variable in config file, or the <option>-osdlevel</option> command line option. | |
818 | |
819 </para> | |
820 </sect2> | |
821 | |
822 | |
823 <sect2 id="osdmenu"> | |
824 <title>OSD menu</title> | |
825 | |
826 <para> | |
827 MPlayer has a completely user definiable OSD Menu interface. | |
828 </para> | |
829 | |
830 <note><simpara> | |
831 the Preferences menu is currently UNIMPLEMENTED! | |
832 </simpara></note> | |
833 | |
834 <orderedlist> | |
835 <title>Installation</title> | |
836 <listitem><simpara> | |
837 compile <application>MPlayer</application> by passing the <option>--enable-menu</option> | |
838 to <filename>./configure</filename> | |
839 </simpara></listitem> | |
840 <listitem><simpara> | |
841 make sure you have an OSD font installed | |
842 </simpara></listitem> | |
843 <listitem><simpara> | |
844 copy <filename>etc/menu.conf</filename> to your | |
845 <filename class="directory">.mplayer</filename> directory | |
846 </simpara></listitem> | |
847 <listitem><simpara> | |
848 copy <filename>etc/input.conf</filename> to your | |
849 <filename class="directory">.mplayer</filename> directory, or to the system-wide | |
850 <application>MPlayer</application> config dir (default: | |
851 <filename class="directory">/usr/local/etc/mplayer</filename>) | |
852 </simpara></listitem> | |
853 <listitem><simpara> | |
854 check and edit <filename>input.conf</filename> to enable menu movement keys | |
855 (it is described there). | |
856 </simpara></listitem> | |
857 <listitem><para> | |
858 start <application>MPlayer</application> by the following example: | |
859 <screen>$ mplayer -menu file.avi</screen> | |
860 </para></listitem> | |
861 <listitem><simpara> | |
862 push any menu key you defined | |
863 </simpara></listitem> | |
864 </orderedlist> | |
865 | |
866 </sect2> | |
867 </sect1> | |
868 | |
869 <!-- ********** --> | |
870 | |
871 <sect1 id="rtc"> | |
872 <title>RTC</title> | |
873 <para> | |
874 There are three timing methods in MPlayer. | |
875 | |
876 <itemizedlist> | |
877 <listitem><simpara> | |
878 <emphasis role="bold">To use the old method</emphasis>, you don't have to do | |
879 anything. It uses <systemitem>usleep()</systemitem> to tune | |
880 A/V sync, with +/- 10ms accuracy. However sometimes the sync has to be | |
881 tuned even finer. | |
882 </simpara></listitem> | |
883 <listitem><para> | |
884 <emphasis role="bold">The new timer</emphasis> code uses PC's RTC (Real Time Clock) | |
885 for this task, because it has precise 1ms timers. It is automagically enabled | |
886 when available, but requires root privileges, a <emphasis>setuid root</emphasis> | |
887 <application>MPlayer</application> binary or a properly set up kernel. | |
888 If you are running kernel 2.4.19pre8 or later you can adjust the maximum RTC | |
889 frequency for normal users through the /proc filesystem. Use this command to | |
890 enable RTC for normal users: | |
891 <screen>echo 1024 > /proc/sys/dev/rtc/max-user-freq</screen> | |
892 If you do not have such a new kernel, you can also change one line in | |
893 <filename>drivers/char/rtc.c</filename> and recompile your kernel. | |
894 Find the section that reads | |
895 <programlisting> | |
896 * We don't really want Joe User enabling more | |
897 * than 64Hz of interrupts on a multi-user machine. | |
898 */ | |
899 if ((rtc_freq > 64) && (!capable(CAP_SYS_RESOURCE))) | |
900 </programlisting> | |
901 and change the 64 to 1024. You should really know what you are doing, though. | |
902 You can see the new timer's efficiency in the status line. | |
903 The power management functions of some notebook BIOSes with speedstep CPUs | |
904 interact badly with RTC. Audio and video may get out of sync. Plugging the | |
905 external power connector in before you power up your notebook seems to help. | |
906 You can always turn off RTC support with the <option>-nortc</option> option. | |
907 In some hardware combinations (confirmed during usage of non-DMA DVD drive | |
908 on an ALi1541 board) usage of the RTC timer causes skippy playback. It's | |
909 recommended to use the third method in these cases. | |
910 </para></listitem> | |
911 <listitem><simpara> | |
912 <emphasis role="bold">The third timer code</emphasis> is turned on with the | |
913 <option>-softsleep</option> option. It has the efficiency of the RTC, but it | |
914 doesn't use RTC. On the other hand, it requires more CPU. | |
915 </simpara></listitem> | |
916 </itemizedlist> | |
917 <note><para><emphasis role="bold">NEVER install a setuid root | |
918 <application>MPlayer</application> binary on a multiuser system!</emphasis> | |
919 It's a clear way for everyone to become root. | |
920 </para></note> | |
921 </para> | |
922 </sect1> |