Mercurial > mplayer.hg
changeset 15496:99b823247dfd
Synced to 1.60
author | jheryan |
---|---|
date | Tue, 17 May 2005 12:35:58 +0000 |
parents | da4a935a3412 |
children | f51726118f57 |
files | DOCS/xml/cs/ports.xml |
diffstat | 1 files changed, 597 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/xml/cs/ports.xml Tue May 17 12:35:58 2005 +0000 @@ -0,0 +1,597 @@ +<?xml version="1.0" encoding="iso-8859-2"?> +<!-- Synced with: 1.60 --> +<chapter id="ports" xreflabel="Ports"> +<title>Porty</title> + +<sect1 id="linux"> +<title>Linux</title> +<para> +Hlavní vývojovou platformou je Linux na x86, ačkoli +<application>MPlayer</application> pracuje na mnoha jiných portech Linuxu. +Binární balíčky <application>MPlayer</application>u jsou dostupné z několika +zdrojů. Nicméně <emphasis role="bold">není žádný z těchto balíčků podporován</emphasis>. +Hlaste tedy problémy jejich autorům, nikoli nám. +</para> + +<sect2 id="debian"> +<title>Vytvoření balíčku pro Debian</title> +<para> +Pro vytvoření balíčku pro Debian spusťte následující příkaz v adresáři se +zdrojovým kódem <application>MPlayer</application>u: + +<screen>fakeroot debian/rules binary</screen> + +Pokud chcete předat nějaké volby pro configure, můžete nastavit proměnnou +prostředí <envar>DEB_BUILD_OPTIONS</envar>. Například, pokud chcete GUI a +podporu OSD menu, měli byste použít: + +<screen>DEB_BUILD_OPTIONS="--enable-gui --enable-menu" fakeroot debian/rules binary</screen> + +Rovněž můžete předat některé proměnné do Makefile. Například, pokud chcete +kompilovat pomocí gcc 3.4 i v případě, že to není výchozí kompilátor: + +<screen>CC=gcc-3.4 DEB_BUILD_OPTIONS="--enable-gui" fakeroot debian/rules binary</screen> + +K vyčistění zdrojového stromu spusťte následující příkaz: + +<screen>fakeroot debian/rules clean</screen> + +Jako root můžete nainstalovat <filename>.deb</filename> balíček obvyklým +způsobem: + +<screen>dpkg -i ../mplayer_<replaceable>version</replaceable>.deb</screen> +</para> + +<para> +Christian Marillat vytvářel jistou dobu neoficiální Debianí balíčky +<application>MPlayer</application>u, <application>MEncoder</application>u a +našich bitmapových fontů, můžete si je stáhnout (apt-get) z +<ulink url="http://hpisi.nerim.net/">jeho domácí stránky</ulink>. +</para> +</sect2> + +<sect2 id="rpm"> +<title>Balení RPM</title> +<para> +Dominik Mierzejewski vytvořil a udržuje oficiální Red Hat RPM balíčky +<application>MPlayer</application>u. Tz jsou dostupné z jeho +<ulink url="http://greysector.rangers.eu.org/mplayer.html">domácí stránky</ulink>. +</para> + +<para> +RPM balíčky pro Mandrake jsou dostupné z +<ulink url="http://plf.zarb.org/">P.L.F.</ulink>. +SuSE zařadilo do své distribuce zmrzačenou verzi +<application>MPlayer</application>u. V posledních verzích ji odstranili. Funkční +RPM naleznete na +<ulink url="http://packman.links2linux.de/?action=128">links2linux.de</ulink>. +</para> +</sect2> + +<sect2 id="arm"> +<title>ARM</title> +<para> +<application>MPlayer</application> pracuje na Linuxových PDA s ARM CPU např. +Sharp Zaurus, Compaq Ipaq. Nejjednodušší způsob jak si opatřit +<application>MPlayer</application> je, stáhnout si jej z některého +<ulink url="http://www.openzaurus.org">OpenZaurus</ulink> balíčkového kanálu. +Pokud si jej chcete skompilovat sami, měli byste nahlédnout do adresáře +<ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/mplayer?nav=index.html|src/.|src/packages">mplayer</ulink> +a +<ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/libavcodec?nav=index.html|src/.|src/packages">libavcodec</ulink> +v buildroot OpenZaurus distribuce. Zde mají vždy poslední Makefile a patche používané +pro sestavení CVS verze <application>MPlayer</application>u s +<systemitem class="library">libavcodec</systemitem>em. +Pokud potřebujete GUI rozhraní, můžete použít xmms-embedded. +</para> +</sect2> +</sect1> + +<sect1 id="bsd"> +<title>*BSD</title> +<para> +<application>MPlayer</application> běží na FreeBSD, OpenBSD, NetBSD, +BSD/OS a Darwinu. Existují portované/pkgsrc/fink/atd verze +<application>MPlayer</application>u, které lze pravděpodobně snadněji použít, +než naše surové zdrojové kódy. +</para> + +<para> +K sestavení <application>MPlayer</application>u budete potřebovat GNU make +(gmake - nativní BSD make nebude pracovat) a současnou verzi binutils. +</para> + +<para> +Pokud si <application>MPlayer</application> stěžuje, že nemůže najít +<filename>/dev/cdrom</filename> nebo <filename>/dev/dvd</filename>, +vytvořte příslušný symbolický link: +<screen>ln -s /dev/<replaceable>vaše_cdrom_zařízení</replaceable> /dev/cdrom</screen> +</para> + +<para> +Chcete-li používat Win32 DLL v <application>MPlayer</application>u, budete muset +rekompilovat jádro s volbou "<envar>USER_LDT</envar>" +(pokud nepoužíváte FreeBSD-CURRENT, kde je to výchozí). +</para> + + +<sect2 id="freebsd"> +<title>FreeBSD</title> +<para> +Pokud váš procesor má SSE, rekompilujte jádro s volbami +"<envar>CPU_ENABLE_SSE</envar>" (vyžaduje FreeBSD-STABLE nebo patche +do jádra). +</para> +</sect2> + +<sect2 id="openbsd"> +<title>OpenBSD</title> +<para> +Vzhledem k omezením v různých verzích gas (GNU assembleru – pozn. překl.) +(relokace vs MMX), budete muset kompilovat ve dvou krocích: +Nejprve se ujistěte že je nenativní as jako první ve vaší <envar>$PATH</envar> +a proveďte <command>gmake -k</command>, pak zajistěte, aby se použila nativní +verze a proveďte <command>gmake</command>. +</para> +<para> +Od OpenBSD 3.4 není již výše uvedená metoda potřeba. +</para> +</sect2> + +<sect2 id="darwin"> +<title>Darwin</title> +<para> +Viz sekce <link linkend="macos">Mac OS</link>. +</para> +</sect2> +</sect1> + +<sect1 id="solaris"> +<title>Sun Solaris</title> +<para> +<application>MPlayer</application> by měl běžet na Solarisu 2.6 nebo novějším. +Použijte SUN audio rozhraní pomocí volby <option>-ao sun</option> pro přehrávání +zvuku. +</para> + +<para> +On <emphasis role="bold">UltraSPARCs</emphasis>, <application>MPlayer</application> +takes advantage of their <emphasis role="bold">VIS</emphasis> extensions +(equivalent to MMX), currently only in +<systemitem class="library">libmpeg2</systemitem>, +<systemitem class="library">libvo</systemitem> +and <systemitem class="library">libavcodec</systemitem>, but not in +<systemitem class="library">mp3lib</systemitem>. You can watch a VOB file +on a 400MHz CPU. You'll need +<ulink url="http://www.sun.com/sparc/vis/mediaLib.html"><systemitem class="library">mLib</systemitem></ulink> +installed. +</para> + +<para> +To build the package you will need GNU <application>make</application> +(<filename>gmake</filename>, <filename>/opt/sfw/gmake</filename>), native +Solaris make will not work. Typical error you get when building with +Solaris' make instead of GNU make: +<screen> + % /usr/ccs/bin/make + make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen +</screen> +</para> + +<para> +On Solaris SPARC, you need the GNU C/C++ Compiler; it does not matter if +GNU C/C++ compiler is configured with or without the GNU assembler. +</para> + +<para> +On Solaris x86, you need the GNU assembler and the GNU C/C++ compiler, +configured to use the GNU assembler! The <application>MPlayer</application> +code on the x86 platform makes heavy use of MMX, SSE and 3DNOW! instructions +that cannot be compiled using Sun's assembler <filename>/usr/ccs/bin/as</filename>. +</para> + +<para> +The <filename>configure</filename> script tries to find out, which +assembler program is used by your "gcc" command (in case the autodetection +fails, use the <option>--as=<replaceable>/wherever/you/have/installed/gnu-as</replaceable></option> +option to tell the <filename>configure</filename> script where it can find GNU +"as" on your system). +</para> + +<para> +Error message from <filename>configure</filename> on a Solaris x86 system using +GCC without GNU assembler: +<screen> + % configure + ... + Checking assembler (/usr/ccs/bin/as) ... , failed + Please upgrade(downgrade) binutils to 2.10.1... +</screen> +(Solution: Install and use a gcc configured with <option>--with-as=gas</option>) +</para> + +<para> +Typical error you get when building with a GNU C compiler that does not use GNU as: +<screen> + % gmake + ... + gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math + -fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c + Assembler: mplayer.c + "(stdin)", line 3567 : Illegal mnemonic + "(stdin)", line 3567 : Syntax error + ... more "Illegal mnemonic" and "Syntax error" errors ... +</screen> +</para> + +<para> +Due to bugs in Solaris 8, you may not be able to play DVD discs larger than 4 GB: +</para> + +<itemizedlist> +<listitem><para> +The sd(7D) driver on Solaris 8 x86 has a bug when accessing a disk block >4GB +on a device using a logical blocksize != DEV_BSIZE (i.e. CD-ROM and DVD media). +Due to a 32Bit int overflow, a disk address modulo 4GB is accessed +(<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22516"/>). +This problem does not exist in the SPARC version of Solaris 8. +</para></listitem> + +<listitem><para> +A similar bug is present in the hsfs(7FS) filesystem code (AKA ISO9660), +hsfs may not not support partitions/disks larger than 4GB, all data is +accessed modulo 4GB +(<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22592"/>). +The hsfs problem can be fixed by installing patch 109764-04 (sparc) / 109765-04 (x86). +</para></listitem> +</itemizedlist> +</sect1> + +<sect1 id="irix"> +<title>Silicon Graphics Irix</title> +<para> +You can either try to install the GNU install program, and (if you did +not put it in your global path) then point to the location with: +<screen>./configure --with-install=<replaceable>/path/and/name/of/install</replaceable></screen> +</para> + +<para> +Or you can use the default install delivered with IRIX 6.5 in which case +you will have to edit the <filename>Makefile</filename> by hand a little bit. +Change the following two lines: +<programlisting> + $(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1 + + $(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf +</programlisting> +to: +<programlisting> + $(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/ + + $(INSTALL) -m 644 codecs.conf $(CONFDIR)/ +</programlisting> +And then do (from within the <application>MPlayer</application> source dir): +<screen>cp DOCS/mplayer.1 . ; cp etc/codecs.conf .</screen> +and then go on with building and installing. +</para> +</sect1> + + +<sect1 id="hp-ux"> +<title>HP-UX</title> +<para> +Joe Page hosts a detailed HP-UX <application>MPlayer</application> +<ulink url="http://users.rcn.com/joepage/mplayer_on_hpux11.htm">HOWTO</ulink> +by Martin Gansser on his homepage. With these instructions the build should +work out of the box. The following information is taken from this HOWTO. +</para> + +<para> +You need GCC 3.4.0 or later, GNU make 3.80 or later and SDL 1.2.7 or later. +HP cc will not produce a working program, prior GCC versions are buggy. +For OpenGL functionality you need to install Mesa and the gl and gl2 video +output drivers should work, speed may be very bad, depending on the CPU speed, +though. A good replacement for the rather poor native HP-UX sound system is +GNU esound. +</para> + +<para> +Create the DVD device +scan the SCSI bus with: +</para> + +<screen> +# ioscan -fn + +Class I H/W Path Driver S/W State H/W Type Description +... +ext_bus 1 8/16/5 c720 CLAIMED INTERFACE Built-in SCSI +target 3 8/16/5.2 tgt CLAIMED DEVICE +disk 4 8/16/5.<emphasis role="bold">2</emphasis>.<emphasis role="bold">0</emphasis> sdisk CLAIMED DEVICE <emphasis role="bold">PIONEER DVD-ROM DVD-305</emphasis> + /dev/dsk/c1t2d0 <emphasis role="bold">/dev/rdsk/c1t2d0</emphasis> +target 4 8/16/5.7 tgt CLAIMED DEVICE +ctl <emphasis role="bold">1</emphasis> 8/16/5.7.0 sctl CLAIMED DEVICE Initiator + /dev/rscsi/c1t7d0 /dev/rscsi/c1t7l0 /dev/scsi/c1t7l0 +... +</screen> + +<para> +The screen output shows a Pioneer DVD-ROM at SCSI address 2. +The card instance for hardware path 8/16 is 1. +</para> + +<para> +Create a link from the raw device to the DVD device. +</para> + +<screen> +# ln -s /dev/rdsk/c<replaceable><SCSI bus instance></replaceable>t<replaceable><SCSI target ID></replaceable>d<replaceable><LUN></replaceable> /dev/<replaceable><device></replaceable> +</screen> + +<para> +Example: +</para> + +<screen> +# ln -s /dev/rdsk/c1t2d0 /dev/dvd +</screen> + +<para> +Below are solutions for some common problems: +</para> + +<itemizedlist> +<listitem> +<para> +Crash at Start with the following error message: +<screen> +/usr/lib/dld.sl: Unresolved symbol: finite (code) from /usr/local/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.2/../../../libGL.sl +</screen> +</para> + +<para> +This means that the function <systemitem>.finite().</systemitem> is not +available in the standard HP-UX math library. +Instead there is <systemitem>.isfinite().</systemitem>. +Solution: Use the latest Mesa depot file. +</para> +</listitem> + +<listitem> +<para> +Crash at playback with the following error message: +<screen> +/usr/lib/dld.sl: Unresolved symbol: sem_init (code) from /usr/local/lib/libSDL-1.2.sl.0 +</screen> +</para> + +<para> +Solution: Use the extralibdir option of configure +<option>--with-extralibdir="/usr/lib -lrt"</option> +</para> +</listitem> + +<listitem> +<para> +MPlayer segfaults with a message like this: +<screen> +Pid 10166 received a SIGSEGV for stack growth failure. +Possible causes: insufficient memory or swap space, or stack size exceeded maxssiz. +Segmentation fault +</screen> +</para> + +<para> +Solution: +The HP-UX kernel has a default stack size of 8MB(?) per process.(11.0 and +newer 10.20 patches let you increase <systemitem>maxssiz</systemitem> up to +350MB for 32-bit programs). You need to extend <systemitem>maxssiz</systemitem> +and recompile the kernel (and reboot). You can use SAM to do this. (While at +it, check out the <systemitem>maxdsiz</systemitem> parameter for the maximum +amount of data a program can use. It depends on your applications, if the +default of 64MB is enough or not.) +</para> +</listitem> +</itemizedlist> + +</sect1> + + +<sect1 id="qnx"> +<title>QNX</title> +<para> +Works. You'll need to download SDL for QNX, and install it. Then run +<application>MPlayer</application> with <option>-vo sdl:photon</option> +and <option>-ao sdl:nto</option> options, and it should be fast. +</para> + +<para> +The <option>-vo x11</option> output will be even slower than on Linux, +since QNX has only X <emphasis>emulation</emphasis> which is VERY slow. Use SDL. +</para> +</sect1> + +<sect1 id="windows"> +<title>Windows</title> + +<para>Yes, <application>MPlayer</application> runs on Windows under + <ulink url="http://www.cygwin.com/"><application>Cygwin</application></ulink> and + <ulink url="http://www.mingw.org/"><application>MinGW</application></ulink>. + It does not have a GUI yet, but the command line version is almost completely + functional. <ulink url="../../tech/patches.txt">Patches</ulink> are always welcome. + You should check out the + <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-cygwin/">mplayer-cygwin</ulink> + mailing list for help and latest information.</para> + +<para>Best results are achieved with the native DirectX video output driver + (<option>-vo directx</option>) and the native Windows waveout audio driver + (<option>-ao win32</option>). Alternatives are OpenGL and SDL, but OpenGL + performance varies greatly between systems and SDL is known to + distort sound and video or crash on some systems. If the image is + distorted, try turning off hardware acceleration with + <option>-vo directx:noaccel</option>. Download + <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32-beta/contrib/dx7headers.tgz">DirectX 7 header files</ulink> + to compile the DirectX video output driver. Furthermore you need to have + DirectX 7 or later installed for the DirectX video output driver to work. + </para> + +<para><link linkend="vidix">VIDIX</link> now works under Windows as + <option>-vo winvidix</option>, although it is still experimental + and needs a bit of manual setup. Download + <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32-beta/dhahelperwin/dhahelper.sys">dhahelper.sys</ulink> or + <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32-beta/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (with MTRR support)</ulink> + and copy it to the + <filename class="directory">libdha/dhahelperwin</filename> directory in your + <application>MPlayer</application> source tree. + Open a console and change to that directory. Then type + + <screen>gcc -o dhasetup.exe dhasetup.c</screen> + + and execute + + <screen>dhasetup.exe install</screen> + + as Administrator. After that you will have to reboot. When you are + done, copy the <systemitem class="library">.so</systemitem> files from + <filename class="directory">vidix/drivers</filename> to the + <filename class="directory">mplayer/vidix</filename> directory + relative to your <filename>mplayer.exe</filename>.</para> + +<para>For best results <application>MPlayer</application> should use a + colorspace that your video card supports in hardware. Unfortunately many + Windows graphics drivers wrongly report some colorspaces as supported in + hardware. To find out which, try + + <screen>mplayer -benchmark -nosound -frames 100 -vf format=<replaceable>colorspace</replaceable> <replaceable>movie</replaceable></screen> + + where <replaceable>colorspace</replaceable> can be any colorspace + printed by the <option>-vf format=fmt=help</option> option. If you + find a colorspace your card handles particularly bad + <option>-vf noformat=<replaceable>colorspace</replaceable></option> + will keep it from being used. Add this to your config file to permanently + keep it from being used.</para> + +<para>There are special codec packages for Windows available on our + <ulink url="http://mplayerhq.hu/homepage/design7/codecs.html">codecs page</ulink> + to allow playing formats for which there is no native support yet. + Put the codecs somewhere in your path or pass + <option>--with-codecsdir=<replaceable>c:/path/to/your/codecs</replaceable></option> + (alternatively + <option>--with-codecsdir=<replaceable>/path/to/your/codecs</replaceable></option> + only on <application>Cygwin</application>) to <filename>configure</filename>. + We have had some reports that Real DLLs need to be writable by the user + running <application>MPlayer</application>, but only on some systems (NT4). + Try making them writable if you have problems.</para> + +<para>You can play VCDs by playing the <filename>.DAT</filename> or <filename>.MPG</filename> files + that Windows exposes on VCDs. It works like this (adjust for the drive letter + of your CD-ROM):</para> + +<screen>mplayer <replaceable>d:/mpegav/avseq01.dat</replaceable></screen> + +<para>DVDs also work, adjust <option>-dvd-device</option> for the drive letter + of your DVD-ROM:</para> + +<screen>mplayer dvd://<replaceable><title></replaceable> -dvd-device <replaceable>d</replaceable>:</screen> + +<para>The <application>Cygwin</application>/<application>MinGW</application> + console is rather slow. Redirecting output or using the + <option>-quiet</option> option has been reported to improve performance on + some systems. Direct rendering (<option>-dr</option>) may also help. + You can prevent OSD flicker through double buffering with the + <option>-double</option> option. If playback is jerky, try + <option>-autosync 100</option>. If some of these options help you, you + may want to put them in your config file.</para> + +<para>Sascha Sommer releases official Windows binaries from time to time, + Joey Parrish makes unofficial Windows packages complete with installer. + Look for these in the Windows section of + <ulink url="http://www.mplayerhq.hu/homepage/design7/projects.html#windows">our projects page</ulink>.</para> + +<sect2 id="cygwin"> +<title><application>Cygwin</application></title> + +<para>You need to run <application>Cygwin</application> 1.5.0 or later in + order to compile <application>MPlayer</application>.</para> + +<para>DirectX header files need to be extracted to <filename class="directory">/usr/include/</filename> or + <filename class="directory">/usr/local/include/</filename>.</para> + +<para>Instructions and files for making SDL run under + <application>Cygwin</application> can be found on the + <ulink url="http://www.libsdl.org/extras/win32/cygwin/">libsdl site</ulink>.</para> + +</sect2> + + +<sect2 id="mingw"> +<title><application>MinGW</application></title> + +<para>Installing a version of <application>MinGW</application> that could + compile <application>MPlayer</application> used to be quite tricky, but it + works out of the box now. Just install <application>MinGW</application> + 3.1.0 or later and MSYS 1.0.9 or later and tell the MSYS postinstall that + <application>MinGW</application> is installed.</para> + +<para>Extract DirectX header files to <filename class="directory">/mingw/include/</filename>.</para> + +<para>MOV compressed header support requires + <ulink url="http://www.gzip.org/zlib/">zlib</ulink>, which + <application>MinGW</application> does not provide by default. + Configure it with <option>--prefix=/mingw</option> and install + it before compiling <application>MPlayer</application>.</para> + +</sect2> + + +</sect1> + +<sect1 id="macos"> +<title>Mac OS</title> +<para> +Only Mac OS X 10.2 and up is supported by the "raw" +<application>MPlayer</application> source. Feel free to make support for older +Mac OS versions and send patches! +</para> + +<para> +Apple's modified GCC 3.x is preferred for compiling +<application>MPlayer</application> especially when using +<systemitem class="library">libavcodec</systemitem> as Apple's +modified GCC 2.95.x doesn't support C99 syntax well. +</para> + +<para> +One can get an Aqua GUI for <application>MPlayer</application> together with +compiled <application>MPlayer</application> binaries for Mac OS X from the +<ulink url="http://mplayerosx.sf.net/">MPlayerOSX</ulink> project. +</para> +</sect1> + +<sect1 id="amiga"> +<title>Amiga/MorphOS (GeekGadgets)</title> +<para> +Nicholas Det at Genesi has done a big and powerful port of <application>MPlayer +</application> for MorphOS. Sadly it's based on the 0.90 series. +</para> + +<para> +Get if from <ulink url="http://www.morphzone.org/">MorphZone</ulink>: +<itemizedlist> +<listitem><para> +<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=90"> +<application>MPlayer</application> 0.91 binary</ulink> +</para></listitem> +<listitem><para> +<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=91"> +<application>MPlayer</application> 0.91 source</ulink> +</para></listitem> +<listitem><para> +<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=92"> +<application>MEncoder</application> 1.0pre3 binary</ulink> +</para></listitem> +</itemizedlist> +</para> +</sect1> + +</chapter>