Mercurial > mplayer.hg
annotate DOCS/xml/en/ports.xml @ 11031:f57563a141aa
libfaad FAQ, external FAAD info added back.
author | diego |
---|---|
date | Tue, 07 Oct 2003 10:18:55 +0000 |
parents | b96a23f1fa24 |
children | 4dc3f08f03e7 |
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:
10909
diff
changeset
|
2 <!-- $Revision$ --> |
9675 | 3 <chapter id="ports" xreflabel="Ports"> |
4 <title>Ports</title> | |
5 | |
6 <sect1 id="linux"> | |
7 <title>Linux</title> | |
8 <para> | |
9 The main development platform is Linux on x86, although | |
10 <application>MPlayer</application> works on many other Linux ports. | |
11 Binary packages of MPlayer are available from several sources. However, | |
12 <emphasis role="bold">none of these packages are supported</emphasis>. | |
13 Report problems to the authors, not to us. | |
14 </para> | |
15 | |
16 <sect2 id="debian"> | |
17 <title>Debian packaging</title> | |
18 <para> | |
19 To build a Debian package, run the following command in the MPlayer | |
20 source directory: | |
21 <screen>fakeroot debian/rules binary</screen> | |
22 As root you can then install the <filename>.deb</filename> package as usual: | |
23 <screen>dpkg -i ../mplayer_<replaceable>version</replaceable>.deb</screen> | |
24 </para> | |
25 | |
26 <para> | |
27 Christian Marillat has been making unofficial Debian MPlayer, MEncoder and font | |
28 packages for a while, you can (apt-)get them from his | |
29 <ulink url="http://marillat.free.fr/">homepage</ulink>. | |
30 </para> | |
31 </sect2> | |
32 | |
33 <sect2 id="rpm"> | |
34 <title>RPM packaging</title> | |
35 <para> | |
36 Dominik Mierzejewski created and maintains official Red Hat RPM packages of | |
37 <application>MPlayer</application>. They are available from his | |
38 <ulink url="http://www.piorunek.pl/~dominik/linux/pkgs/mplayer/">homepage</ulink>. | |
39 </para> | |
40 | |
41 <para> | |
42 Mandrake RPM packages are available from the <ulink url="http://plf.zarb.org/">P.L.F.</ulink>. | |
10277 | 43 SuSE includes a crippled version of MPlayer in their distribution. You can get working RPMs |
44 from <ulink url="http://packman.links2linux.de/?action=128">links2linux.de</ulink>. | |
9675 | 45 </para> |
46 </sect2> | |
47 | |
48 <sect2 id="arm"> | |
49 <title>ARM</title> | |
50 <para> | |
51 MPlayer works on Linux PDAs with ARM CPU e.g. Sharp Zaurus, Compaq Ipaq. The | |
52 easiest way to obtain MPlayer is to get it from one of the | |
53 <ulink url="http://www.openzaurus.org">OpenZaurus</ulink> package feeds. If | |
54 you want to compile it yourself, you should look at the | |
55 <ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/mplayer?nav=index.html|src/.|src/packages">MPlayer</ulink> | |
56 and the | |
57 <ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/libavcodec?nav=index.html|src/.|src/packages">libavcodec</ulink> | |
58 directory in the OpenZaurus distribution buildroot. These always have the latest | |
59 Makefile and patches used for building a CVS MPlayer with libavcodec. | |
60 If you need a GUI frontend, you can use xmms-embedded. | |
61 </para> | |
62 </sect2> | |
63 </sect1> | |
64 | |
65 <sect1 id="bsd"> | |
66 <title>*BSD</title> | |
67 <para> | |
68 <application>MPlayer</application> runs on FreeBSD, OpenBSD, NetBSD, | |
69 BSD/OS and Darwin. There are ports/pkgsrc/fink/etc versions of MPlayer | |
70 available that are probably easier to use than our raw sources. | |
71 </para> | |
72 | |
73 <para> | |
74 To build MPlayer you will need GNU make (gmake - native BSD make | |
75 will not work) and a recent version of binutils. | |
76 </para> | |
77 | |
78 <para> | |
79 If MPlayer complains about not finding <filename>/dev/cdrom</filename> or | |
80 <filename>/dev/dvd</filename>, create an appropiate symbolic link: | |
10958 | 81 <screen>ln -s /dev/<replaceable>your_cdrom_device</replaceable> /dev/cdrom</screen> |
9675 | 82 </para> |
83 | |
84 <para> | |
85 To use Win32 DLLs with MPlayer you will need to re-compile the kernel with | |
86 "<envar>option USER_LDT</envar>" (unless you run FreeBSD-CURRENT, | |
87 where this is the default). | |
88 </para> | |
89 | |
90 | |
91 <sect2 id="freebsd"> | |
92 <title>FreeBSD</title> | |
93 <para> | |
94 If your CPU has SSE, recompile your kernel with | |
95 "<envar>options CPU_ENABLE_SSE</envar>" (FreeBSD-STABLE or kernel | |
96 patches required). | |
97 </para> | |
98 </sect2> | |
99 | |
100 <sect2 id="openbsd"> | |
101 <title>OpenBSD</title> | |
102 <para> | |
103 Due to limitations in different versions of gas (relocation vs MMX), you | |
104 will need to compile in two steps: First make sure that the non-native as | |
105 is first in your <envar>$PATH</envar> and do a <command>gmake -k</command>, then | |
106 make sure that the native version is used and do <command>gmake</command>. | |
107 </para> | |
108 </sect2> | |
109 </sect1> | |
110 | |
111 <sect1 id="solaris"> | |
112 <title>Solaris</title> | |
113 <para> | |
114 <application>MPlayer</application> should work on Solaris 2.6 or newer. | |
115 </para> | |
116 | |
117 <para> | |
118 On <emphasis role="bold">UltraSPARCs</emphasis>, MPlayer takes advantage of their | |
119 <emphasis role="bold">VIS</emphasis> extensions (equivalent to MMX), currently | |
120 only in <emphasis>libmpeg2</emphasis>, <emphasis>libvo</emphasis> and | |
121 <emphasis>libavcodec</emphasis>, but not in mp3lib. You can watch a VOB file | |
122 on a 400MHz CPU. You'll need | |
123 <ulink url="http://www.sun.com/sparc/vis/mediaLib.html">mLib</ulink> installed. | |
124 </para> | |
125 | |
126 <para> | |
127 To build the package you will need GNU <application>make</application> | |
128 (<filename>gmake</filename>, <filename>/opt/sfw/gmake</filename>), native | |
129 Solaris make will not work. Typical error you get when building with | |
130 Solaris' make instead of GNU make: | |
131 <screen> | |
132 % /usr/ccs/bin/make | |
133 make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen | |
134 </screen> | |
135 </para> | |
136 | |
137 <para> | |
138 On Solaris SPARC, you need the GNU C/C++ Compiler; it does not matter if | |
139 GNU C/C++ compiler is configured with or without the GNU assembler. | |
140 </para> | |
141 | |
142 <para> | |
143 On Solaris x86, you need the GNU assembler and the GNU C/C++ compiler, | |
144 configured to use the GNU assembler! The mplayer code on the x86 platform | |
145 makes heavy use of MMX, SSE and 3DNOW! instructions that cannot be compiled | |
146 using Sun's assembler <filename>/usr/ccs/bin/as</filename>. | |
147 </para> | |
148 | |
149 <para>The <filename>configure</filename> script tries to find out, which | |
150 assembler program is used by your "gcc" command (in case the autodetection | |
151 fails, use the <option>--as=/whereever/you/have/installed/gnu-as</option> | |
152 option to tell the <filename>configure</filename> script where it can find GNU | |
153 "as" on your system). | |
154 </para> | |
155 | |
156 <para> | |
157 Error message from <filename>configure</filename> on a Solaris x86 system using | |
158 GCC without GNU assembler: | |
159 <screen> | |
160 % configure | |
161 ... | |
162 Checking assembler (/usr/ccs/bin/as) ... , failed | |
163 Please upgrade(downgrade) binutils to 2.10.1... | |
164 </screen> | |
165 (Solution: Install and use a gcc configured with <option>--with-as=gas</option>) | |
166 </para> | |
167 | |
168 <para> | |
169 Typical error you get when building with a GNU C compiler that does not use GNU as: | |
170 <screen> | |
171 % gmake | |
172 ... | |
173 gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math | |
174 -fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c | |
175 Assembler: mplayer.c | |
176 "(stdin)", line 3567 : Illegal mnemonic | |
177 "(stdin)", line 3567 : Syntax error | |
178 ... more "Illegal mnemonic" and "Syntax error" errors ... | |
179 </screen> | |
180 </para> | |
181 | |
182 <para> | |
183 Due to bugs in Solaris 8, you may not be able to play DVD discs larger than 4 GB: | |
184 </para> | |
185 | |
186 <itemizedlist> | |
187 <listitem><para> | |
188 The sd(7D) driver on Solaris 8 x86 has a bug when accessing a disk block >4GB | |
189 on a device using a logical blocksize != DEV_BSIZE (i.e. CD-ROM and DVD media). | |
190 Due to a 32Bit int overflow, a disk address modulo 4GB is accessed | |
191 (<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22516"/>). | |
192 This problem does not exist in the SPARC version of Solaris 8. | |
193 </para></listitem> | |
194 | |
195 <listitem><para> | |
196 A similar bug is present in the hsfs(7FS) filesystem code (aka ISO9660), | |
197 hsfs may not not support partitions/disks larger than 4GB, all data is | |
198 accessed modulo 4GB | |
199 (<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22592"/>). | |
200 The hsfs problem can be fixed by installing patch 109764-04 (sparc) / 109765-04 (x86). | |
201 </para></listitem> | |
202 </itemizedlist> | |
203 | |
204 <para> | |
205 On Solaris with an UltraSPARC CPU, you can get some extra speed by using the | |
206 CPU's VIS instructions for certain time consuming operations. VIS acceleration | |
207 can be used in MPlayer by calling functions in Sun's | |
208 <ulink url="http://www.sun.com/sparc/vis/mediaLib.html">mediaLib</ulink>. | |
209 </para> | |
210 | |
211 <para> | |
212 VIS accelerated operations from mediaLib are used for mpeg2 video decoding | |
213 and for color space conversion in the video output drivers. | |
214 </para> | |
215 </sect1> | |
216 | |
217 <sect1 id="sgi"> | |
218 <title>Silicon Graphics / Irix</title> | |
219 <para> | |
220 You can either try to install the GNU install program, and (if you did | |
221 not put it in your global path) then point to the location with: | |
222 <screen>./configure --install-path=PATH</screen> | |
223 </para> | |
224 | |
225 <para> | |
226 Or you can use the default install delivered with IRIX 6.5 in which case | |
227 you will have to edit the <filename>Makefile</filename> by hand a little bit. | |
228 Change the following two lines: | |
229 <programlisting> | |
230 $(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1 | |
231 | |
232 $(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf | |
233 </programlisting> | |
234 to: | |
235 <programlisting> | |
236 $(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/ | |
237 | |
238 $(INSTALL) -m 644 codecs.conf $(CONFDIR)/ | |
239 </programlisting> | |
240 And then do (from within the MPlayer source dir): | |
241 <screen>cp DOCS/mplayer.1 . ; cp etc/codecs.conf .</screen> | |
242 and then go on with building and installing. | |
243 </para> | |
244 </sect1> | |
245 | |
246 <sect1 id="qnx"> | |
247 <title>QNX</title> | |
248 <para> | |
249 Works. You'll need to download SDL for QNX, and install it. Then run | |
250 <application>MPlayer</application> with <option>-vo sdl:photon</option> | |
251 and <option>-ao sdl:nto</option> options, and it should be fast. | |
252 </para> | |
253 | |
254 <para> | |
255 The <option>-vo x11</option> output will be even slower than on Linux, | |
256 since QNX has only X <emphasis>emulation</emphasis> which is VERY slow. Use SDL. | |
257 </para> | |
258 </sect1> | |
259 | |
10561 | 260 <sect1 id="windows"> |
261 <title>Windows</title> | |
262 | |
263 <para>Yes, MPlayer runs on Windows under | |
264 <ulink url="http://www.cygwin.com/">Cygwin</ulink> and | |
265 <ulink url="http://www.mingw.org/">MinGW</ulink>. | |
266 It does not have a GUI yet, but the command line version is almost completely | |
267 functional. <ulink url="../../tech/patches.txt">Patches</ulink> are always welcome. | |
268 You should check out the | |
269 <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-cygwin/">mplayer-cygwin</ulink> | |
270 mailing list for help and latest information.</para> | |
271 | |
272 <para>Best results are achieved with the native DirectX video output driver | |
273 (<option>-vo directx</option>) and the native Windows waveout audio driver | |
274 (<option>-ao win32</option>) as OpenGL does not work and SDL is known to | |
275 distort sound and image or crash on some systems. You can make the movie | |
276 window stay on top with <option>-vo directx:ontop</option>. If the image is | |
277 distorted, try turning off hardware acceleration with | |
278 <option>-vo directx:noaccel</option>. Download | |
279 <ulink url="http://www.videolan.org/vlc/dx7headers.tgz">DirectX 7 header files</ulink> | |
280 to compile the DirectX video output driver.</para> | |
9675 | 281 |
10650
6f51d17ecfc8
Binary codecs finally work as they should on Windows.
diego
parents:
10645
diff
changeset
|
282 <para>Win32 codecs, QuickTime DLLs and Real Win32 codecs (not Real Linux codecs) |
6f51d17ecfc8
Binary codecs finally work as they should on Windows.
diego
parents:
10645
diff
changeset
|
283 also work. Put the codecs somewhere in your path or pass |
6f51d17ecfc8
Binary codecs finally work as they should on Windows.
diego
parents:
10645
diff
changeset
|
284 <option>--with-codecsdir=c:/path/to/your/codecs</option> (alternatively |
6f51d17ecfc8
Binary codecs finally work as they should on Windows.
diego
parents:
10645
diff
changeset
|
285 <option>--with-codecsdir=/path/to/your/codecs</option> only on Cygwin) to |
6f51d17ecfc8
Binary codecs finally work as they should on Windows.
diego
parents:
10645
diff
changeset
|
286 <filename>configure</filename>. We have had some reports that Real DLLs need |
6f51d17ecfc8
Binary codecs finally work as they should on Windows.
diego
parents:
10645
diff
changeset
|
287 to be writable by the user running MPlayer, but only on some systems. Try |
6f51d17ecfc8
Binary codecs finally work as they should on Windows.
diego
parents:
10645
diff
changeset
|
288 making them writable if you have problems.</para> |
10645 | 289 |
290 <para>The Cygwin/MinGW console is rather slow. Redirecting output or using | |
291 the <option>-quiet</option> option has been reported to improve performance | |
292 on some systems. Direct rendering (<option>-dr</option>) may also help. | |
293 You can prevent OSD flicker through double buffering with the | |
294 <option>-double</option> option. If playback is jerky, try | |
295 <option>-autosync 100</option>. If some of these options help you, you | |
296 may want to put them in your config file.</para> | |
10561 | 297 |
298 <para>There are precompiled binary versions made by Sascha Sommer available for | |
299 download from | |
300 <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32-beta/">our homepage</ulink>. | |
301 Joey Parrish has been making | |
302 <ulink url="http://joey.nicewarrior.org/cygmp/">unofficial Windows packages</ulink> | |
303 complete with installer.</para> | |
9675 | 304 |
10561 | 305 <sect2 id="cygwin"> |
306 <title>Cygwin</title> | |
307 | |
308 <para>Cygwin versions prior to 1.5.0 do not include <filename>inttypes.h</filename>. You | |
309 will have to copy or symlink <filename>etc/cygwin_inttypes.h</filename> from the | |
310 MPlayer source directory to <filename>/usr/include/inttypes.h</filename> in order to | |
311 make MPlayer compile.</para> | |
312 | |
313 <para>DirectX header files need to be extracted to <filename class="directory">/usr/include/</filename> or | |
314 <filename class="directory">/usr/local/include/</filename>.</para> | |
315 | |
316 <para>Instructions and files for making SDL run under Cygwin can be found on the | |
317 <ulink url="http://www.libsdl.org/extras/win32/cygwin/">libsdl site</ulink>.</para> | |
9675 | 318 |
10561 | 319 <para>You can play VCDs by playing the <filename>.DAT</filename> or <filename>.MPG</filename> files |
320 that Windows exposes on VCDs. It works like this (adjust for the drive letter | |
321 of your CD-ROM):</para> | |
322 | |
323 <screen>mplayer d:/mpegav/avseq01.dat</screen> | |
9675 | 324 |
325 <screen>mplayer /cygdrive/d/MPEG2/AVSEQ01.MPG</screen> | |
326 | |
10998
b96a23f1fa24
More precise wording as suggested by Maciej Paszta <macp@wp.pl>.
diego
parents:
10958
diff
changeset
|
327 <para>DVDs also work, adjust <option>-dvd-device</option> for the drive letter |
b96a23f1fa24
More precise wording as suggested by Maciej Paszta <macp@wp.pl>.
diego
parents:
10958
diff
changeset
|
328 of your DVD-ROM:</para> |
10561 | 329 |
10184
b6c63ab184a4
Changed a few remaining -dvd and -vcd options to dvd:// and vcd://.
diego
parents:
9675
diff
changeset
|
330 <screen>mplayer dvd://<title> -dvd-device '\\.\d:'</screen> |
10561 | 331 |
332 </sect2> | |
333 | |
334 | |
335 <sect2 id="mingw"> | |
336 <title>MinGW</title> | |
337 | |
338 <para>Installing a version of MinGW that could compile MPlayer used to be quite | |
10909 | 339 tricky, but it works out of the box now. Just install MinGW 3.1.0 or later |
340 and MSYS 1.0.9 or later and tell the MSYS postinstall that MinGW is | |
341 installed.</para> | |
9675 | 342 |
10909 | 343 <para>If you use a version of MinGW before 3.1.0, you need to replace |
344 <filename>/mingw/include/sys/types.h</filename> with this | |
345 <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32-beta/contrib/types.h"><filename>types.h</filename></ulink>.</para> | |
10561 | 346 |
347 <para>Extract DirectX header files to <filename class="directory">/mingw/include/</filename>.</para> | |
10191 | 348 |
10561 | 349 <para>VCDs and DVDs work almost like Cygwin (adjust for the drive letter of your |
10998
b96a23f1fa24
More precise wording as suggested by Maciej Paszta <macp@wp.pl>.
diego
parents:
10958
diff
changeset
|
350 CD-ROM/DVD-ROM):</para> |
10561 | 351 |
352 <screen>mplayer d:/mpegav/avseq01.dat</screen> | |
353 | |
354 <screen>mplayer /d/MPEG2/AVSEQ01.MPG</screen> | |
355 | |
356 <screen>mplayer dvd://<title> -dvd-device /d/</screen> | |
357 | |
358 </sect2> | |
359 | |
360 | |
9675 | 361 </sect1> |
362 | |
363 </chapter> |