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