<?xml version="1.0" encoding="iso-8859-1"?> <!-- in sync with r19104 --> <chapter id="ports" xreflabel="Ports"> <title>Portierungen</title> <sect1 id="linux"> <title>Linux</title> <para> Die Hauptentwicklungsplattform ist Linux auf x86, obwohl <application>MPlayer</application> auf vielen anderen Linux-Portierungen funktioniert. Binary Packages von <application>MPlayer</application> stehen auf mehreren Quellen zur Verf�gung. Jedoch wird <emphasis role="bold">keines dieser Packages unterst�tzt</emphasis>. Melde den Autoren die Probleme, nicht uns. </para> <sect2 id="debian"> <title>Debian-Packaging</title> <para> Um ein Debian-Package zu bauen, f�hre folgenden Befehl im source-Verzeichnis von <application>MPlayer</application> aus: <screen>fakeroot debian/rules binary</screen> Wenn du eigene Optionen an configure �bergeben willst, kannst du die Umgebungsvariable <envar>DEB_BUILD_OPTIONS</envar> einrichten. Zum Beispiel, wenn du die GUI- und OSD-Men�-Unterst�tzung willst, die du gerne nutzen w�rdest: <screen>DEB_BUILD_OPTIONS="--enable-gui --enable-menu" fakeroot debian/rules binary</screen> Du kannst auch einige Variablen an Makefile �bergeben. Zum Beispiel, wenn du mit gcc 3.4 compilieren willst, auch wenn er nicht der Standard-Compiler ist: <screen>CC=gcc-3.4 DEB_BUILD_OPTIONS="--enable-gui" fakeroot debian/rules binary</screen> Um den Sourcetree aufzur�umen, f�hre folgenden Befehl aus: <screen>fakeroot debian/rules clean</screen> Als root kannst du dann das <filename>.deb</filename>-Package wie immer installieren: <screen>dpkg -i ../mplayer_<replaceable>version</replaceable>.deb</screen> </para> <para> Christian Marillat hatte eine Weile lang inoffizielle Debian-Packages von <application>MPlayer</application>, <application>MEncoder</application> und unseren Bitmap-Fonts erstellt, du kannst sie auf <ulink url="http://www.debian-multimedia.org/">seiner Homepage</ulink> (passend) bekommen. </para> </sect2> <sect2 id="rpm"> <title>RPM-Packaging</title> <para> Dominik Mierzejewski entwarf und wartet die inoffiziellen RPM-Packages von <application>MPlayer</application> f�r Red Hat und Fedora Core. Sie sind von seinem <ulink url="http://rpm.greysector.net/mplayer/">Repository</ulink> verf�gbar. </para> <para> Mandrake/Mandriva RPM-Packages stehen auf <ulink url="http://plf.zarb.org/">P.L.F.</ulink> zur Verf�gung. SuSE verwendet eine verkr�ppelte Version von <application>MPlayer</application> in seiner Distribution. Diese haben sie aus ihren neuesten Releases entfernt. Du bekommst funktionierende RPMs auf <ulink url="http://packman.links2linux.de/?action=128">links2linux.de</ulink>. </para> </sect2> <sect2 id="arm"> <title>ARM</title> <para> <application>MPlayer</application> l�uft auf Linux PDAs mit ARM CPU, z.B. Sharp Zaurus, Compaq Ipaq. Der einfachste Weg, sich <application>MPlayer</application> zu besorgen ist, sich ihn von einer der <ulink url="http://www.openzaurus.org">OpenZaurus</ulink> Package Feeds zu holen. Falls du ihn dir selbst compilieren willst, solltest du im <ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/mplayer?nav=index.html|src/.|src/packages">mplayer</ulink>- und im <ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/libavcodec?nav=index.html|src/.|src/packages">libavcodec</ulink>-Verzeichnis der OpenZaurus Distribution Buildroot nachsehen. Diese haben stets die neueste Makefile und Patches, die zum Erstellen eines CVS-<application>MPlayer</application> mit <systemitem class="library">libavcodec</systemitem> verwendet werden. Brauchst du ein GUI-Frontend, kannst du xmms-embedded nutzen. </para> </sect2> </sect1> <sect1 id="bsd"> <title>*BSD</title> <para> <application>MPlayer</application> l�uft auf allen bekannten BSD-Derivaten. Es stehen ports/pkgsrc/fink/etc-Versionen des <application>MPlayer</application> bereit, die m�glicherweise leichter anzuwenden sind als unsere Originalquellen. </para> <para> Um <application>MPlayer</application> zu erstellen, brauchst du GNU make (gmake - natives BSD make wird nicht funktionieren) und eine aktuelle Version der binutils. </para> <para> Beschwert sich <application>MPlayer</application>, er k�nne <filename>/dev/cdrom</filename> oder <filename>/dev/dvd</filename> nicht finden, erstelle einen geeigneten symbolischen Link: <screen>ln -s /dev/<replaceable>dein_cdrom_geraet</replaceable> /dev/cdrom</screen> </para> <para> Um Win32-DLLs mit <application>MPlayer</application> zu nutzen, musst du den Kernel mit "<envar>option USER_LDT</envar>" recompilieren (es sei denn du l�sst FreeBSD-CURRENT laufen, wobei dies die Standard-Einstellung ist). </para> <sect2 id="freebsd"> <title>FreeBSD</title> <para> Besitzt deine CPU SSE, recompiliere deinen Kernel mit "<envar>options CPU_ENABLE_SSE</envar>" (FreeBSD-STABLE oder Kernel-Patches erforderlich). </para> </sect2> <sect2 id="openbsd"> <title>OpenBSD</title> <para> Aufgrund von Einschr�nkungen in verschiedenen Versionen von GAS (der GNU Assembler, Relocation vs MMX), wirst du in zwei Schritten compilieren m�ssen: Stell als erstes sicher, dass der nicht-native zuvor in deinem <envar>$PATH</envar> liegt und f�hre ein <command>gmake -k</command> aus. Sorge dann daf�r, dass die native Version benutzt wird, und f�hre <command>gmake</command> aus. </para> <para> Ab OpenBSD 3.4 ist der oben beschriebene Hack nicht l�nger n�tig. </para> </sect2> <sect2 id="darwin"> <title>Darwin</title> <para> Siehe Abschnitt <link linkend="macos">Mac OS</link>. </para> </sect2> </sect1> <sect1 id="unix"> <title>Kommerzielles Unix</title> <para> <application>MPlayer</application> wurde auf einige kommerzielle Unix-Varianten portiert. Seit die Entwicklungsumgebungen auf diesen Systemen dahin tendieren, verschieden von denen freier Unixes zu sein, musst du m�glicherweise einige manuelle Anpassungen vornehmen, um das Build lauff�hig zu bekommen. </para> <sect2 id="solaris"> <title>Solaris</title> <para> <application>MPlayer</application> sollte auf Solaris 2.6 oder neuer funktionieren. Verwende den Audio-Treiber von SUN mit der Option <option>-ao sun</option> f�r den Sound. </para> <para> Auf <emphasis role="bold">UltraSPARCs</emphasis>, profitiert <application>MPlayer</application> von deren <emphasis role="bold">VIS</emphasis>-Erweiterungen (�quivalent zu MMX), zur Zeit nur in <systemitem class="library">libmpeg2</systemitem>, <systemitem class="library">libvo</systemitem> und <systemitem class="library">libavcodec</systemitem>, jedoch nicht in <systemitem class="library">mp3lib</systemitem>. Du kannst dir eine VOB-Datei auf einer 400MHz CPU ansehen. Dazu muss <ulink url="http://www.sun.com/sparc/vis/mediaLib.html"><systemitem class="library">mLib</systemitem></ulink> installiert sein. </para> <para><emphasis role="bold">Vorbehalt:</emphasis></para> <itemizedlist> <listitem><para><emphasis role="bold">mediaLib</emphasis> wird in <application>MPlayer</application> momentan aufgrund Fehlerhaftigkeit per Voreinstellung <emphasis role="bold">deaktiviert</emphasis>. SPARC-Benutzer, die MPlayer mit mediaLib-Unterst�tzung bauen, haben gro�e gr�ne Farbstiche gemeldet bei Video, das mit libavcodec en- und decodiert wurde. Du kannst es, wenn du m�chtest, aktivieren mit: <screen> $ ./configure --enable-mlib </screen> Du tust dies auf eigenes Risiko. x86-Benutzer sollten mediaLib <emphasis role="bold">niemals</emphasis> benutzen, da dies zu sehr schlechter Performance von MPlayer f�hrt. </para></listitem> </itemizedlist> <para> Um das Package zu erstellen, brauchst du GNU <application>make</application> (<filename>gmake</filename>, <filename>/opt/sfw/gmake</filename>), das native Solaris make wird nicht funktionieren. Ein typischer Fehler, den du bekommst, wenn du mit einem make von Solaris arbeitest statt mit einem GNU make: <screen> % /usr/ccs/bin/make make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen </screen> </para> <para> Auf Solaris SPARC, brauchst du den GNU C/C++ Compiler; es spielt keine Rolle, ob der GNU C/C++ Compiler mit oder ohne dem GNU Assembler compiliert ist. </para> <para> Auf Solaris x86 brauchst du den GNU Assembler und den GNU C/C++ Compiler so konfiguriert, dass er den GNU Assembler verwendet! Der <application>MPlayer</application>-Code auf der x86-Plattform macht starken Gebrauch von MMX-, SSE- und 3DNOW!-Instruktionen, die nicht compiliert werden k�nnen, wenn man den Assembler von Sun <filename>/usr/ccs/bin/as</filename> verwendet. </para> <para> Das <filename>configure</filename>-Script versucht herauszufinden, welches Assembler-Programm von deinem "gcc"-Befehl genutzt wird (falls die automatische Erkennung fehlschl�gt, nimm die Option <option>--as=<replaceable>/pfad/zum/installierten/gnu-as</replaceable></option>, um dem <filename>configure</filename>-Script zu zeigen, wo es GNU "as" auf deinem System finden kann). </para> <para>L�sung f�r gebr�uchliche Probleme:</para> <itemizedlist> <listitem><para> Fehlermeldung von <filename>configure</filename> auf einem Solaris x86 System, wenn man GCC ohne GNU Assembler anwendet: <screen> % configure ... Checking assembler (/usr/ccs/bin/as) ... , failed Please upgrade(downgrade) binutils to 2.10.1... </screen> (L�sung: Installiere und verwende einen gcc, konfiguriert mit <option>--with-as=gas</option>) </para> <para> Ein typischer Fehler, den du bekommst, wenn du mit einem GNU C Compiler arbeitest, der GNU "as" nicht verwendet: <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> </listitem> <listitem> <para><application>MPlayer</application> kann eine Schutzverletzung ausl�sen, wenn mit win32codecs decodiert und encodiert wird: <screen> ... Trying to force audio codec driver family acm... Opening audio decoder: [acm] Win32/ACM decoders sysi86(SI86DSCR): Invalid argument Couldn't install fs segment, expect segfault MPlayer interrupted by signal 11 in module: init_audio_codec ... </screen> Das liegt an einer �nderung an sysi86() in Solaris 10 und pr�-Solaris Nevada b31-Releases. Bei Solaris Nevada b32 wurde dieser Fehler behoben; trotzdem, Sun muss diese L�sung noch immer nach Solaris 10 r�ckportieren. Das MPlayer-Projekt hat Sun auf das Problem hingewiesen, und ein Patch f�r Solaris 10 ist gerade in Vorbereitung. Weitere Informationen �ber diesen Fehler k�nnen hier gefunden werden: <ulink url="http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6308413"/>. </para> </listitem> <listitem><para> Aufgrund von Bugs in Solaris 8 kann es dazu kommen, dass du keine DVD-Disks gr��er 4 GB abspielen kannst: </para> <itemizedlist> <listitem><para> Der sd(7D)-Treiber auf Solaris 8 x86 hat einen Bug, wenn er auf einen Diskblock >4GB auf einem Ger�t zugreift, das eine logische blocksize != DEV_BSIZE verwendet (z.B. CD-ROM- und DVD-Medien). Wegen eines 32Bit int Overflows wird auf eine Disk-Adresse modulo 4GB zugegriffen (<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22516"/>). Dieses Problem existiert nicht in der SPARC-Version von Solaris 8. </para></listitem> <listitem><para> Ein �hnlicher Bug is pr�sent im Dateisystem-Code (AKA ISO9660) von hsfs(7FS), hsfs unterst�tzt keine Partitionen/Disks gr��er als 4GB, auf alle Daten wird modulo 4GB zugegriffen (<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22592"/>). Dieses hsfs-Problem kann durch die Installation von Patch 109764-04 (sparc) / 109765-04 (x86) gefixt werden. </para></listitem> </itemizedlist> </listitem> </itemizedlist> </sect2> <sect2 id="irix"> <title>IRIX</title> <para> Du kannst entweder versuchen, das GNU-Installationsprogramm zu installieren und dann (falls du es nicht in deinen globalen Path gelegt hast) auf den Standort zeigen mit: <screen>./configure --with-install=<replaceable>/path/and/name/of/install</replaceable></screen> </para> <para> Oder du kannst die mit IRIX 6.5 gelieferte Standard-Installation verwenden, falls du das <filename>Makefile</filename> ein bisschen von Hand editieren willst. �ndere folgende beiden Zeilen von: <programlisting> $(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1 $(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf </programlisting> nach: <programlisting> $(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/ $(INSTALL) -m 644 codecs.conf $(CONFDIR)/ </programlisting> Mache dann (vom <application>MPlayer</application>-Quellverzeichnis aus) <screen>cp DOCS/mplayer.1 . ; cp etc/codecs.conf .</screen> und fahre dann fort mit Compilierung und Installation. </para> </sect2> <sect2 id="hp-ux"> <title>HP-UX</title> <para> Joe Page unterh�lt ein detailliertes HP-UX <application>MPlayer</application>-<ulink url="http://users.rcn.com/joepage/mplayer_on_hpux11.htm">HOWTO</ulink> von Martin Gansser auf seiner Homepage. Mit diesen Instruktionen sollte das bauen hervorragend funktionieren. Die folgende Information wurde aus diesem HOWTO �bernommen. </para> <para> Du ben�tigst GCC 3.4.0 oder neuer, GNU make 3.80 oder neuer und SDL 1.2.7 oder neuer. HP cc wird kein lauff�higes Programm produzieren, fr�here GCC-Versionen sind fehlerhaft. F�r OpenGL-Funktionalit�t musst du Mesa installieren, und die gl- und gl2-Video-Ausgabetreiber sollten funktionieren, wenngleich die Geschwindigkeit sehr mies sein kann, abh�ngig von der CPU-Geschwindigkeit. Ein guter Ersatz f�r das eher armselige, native HP-UX-Soundsystem ist GNU esound. </para> <para> Erzeuge das DVD-Ger�t, scanne den SCSI-Bus mit: </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> Die Bildschirmausgabe zeigt ein Pioneer DVD-ROM an SCSI-Adresse 2. Die Karteninstanz f�r den Hardwarepfad 8/16 ist 1. </para> <para> Erstelle einen Link von deinem Originalger�t zum DVD-Ger�t. </para> <screen> # ln -s /dev/rdsk/c<replaceable><SCSI-Bus-Instanz></replaceable>t<replaceable><SCSI Ziel-ID></replaceable>d<replaceable><LUN></replaceable> /dev/<replaceable><geraet></replaceable> </screen> <para> Beispiel: </para> <screen> # ln -s /dev/rdsk/c1t2d0 /dev/dvd </screen> <para> Unten stehen l�sungen f�r einige verbreitete Probleme: </para> <itemizedlist> <listitem> <para> Absturz beim Start mit folgender Fehlermeldung: <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> Dies bedeutet, dass die Funktion <systemitem>.finite().</systemitem> nicht in der Standard-Bibliothek HP-UX math zur Verf�gung steht. Statt dessen gibt es <systemitem>.isfinite().</systemitem>. L�sung: Benutze die neueste Mesa-Depotdatei. </para> </listitem> <listitem> <para> Absturz beim Playback mit folgender Fehlermeldung: <screen> /usr/lib/dld.sl: Unresolved symbol: sem_init (code) from /usr/local/lib/libSDL-1.2.sl.0 </screen> </para> <para> L�sung: Benutze die Option extralibdir von configure <option>--with-extralibdir="/usr/lib -lrt"</option> </para> </listitem> <listitem> <para> MPlayer produziert eine Schutzverletzung (segfault) mit einer Meldung wie dieser: <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> L�sung: Der HP-UX-Kernel hat eine Standard-Stackgr��e von 8MB(?) pro Prozess. (11.0- und neuere 10.20-Patches lassen dich <systemitem>maxssiz</systemitem> bis auf 350MB f�r 32bit-Programme erh�hen). Du musst <systemitem>maxssiz</systemitem> erweitern und den Kernel recompilieren (und neu starten). Dazu kannst du SAM verwenden. (�berpr�fe w�hrend des Neustarts den <systemitem>maxdsiz</systemitem>-Parameter f�r die maximale Anzahl Daten, die ein Programm nutzen darf. Er h�ngt von deiner Anwendung ab, ob der Standard von 64MB ausreicht oder nicht.) </para> </listitem> </itemizedlist> </sect2> <sect2 id="aix"> <title>AIX</title> <para> <application>MPlayer</application> wird erfolgreich auf AIX 5.1, 5.2 und 5.3 erzeugt, verwendet man GCC 3.3 oder h�her. Das Erzeugen von <application>MPlayer</application> auf AIX 4.3.3 und darunter wurde nicht getestet. Es wird dringend empfohlen, <application>MPlayer</application> mit GCC 3.4 oder h�her zu erzeugen, oder es wird, falls du auf POWER5 arbeitest, GCC 4.0 ben�tigt. </para> <para> Stelle sicher, dass du GNU make (<filename>/opt/freeware/bin/gmake</filename>) zum bauen von <application>MPlayer</application> nutzt, da du auf Probleme stossen wirst, wenn du <filename>/usr/ccs/bin/make</filename> anwendest. </para> <para> Die CPU-Erkennung ist noch in Arbeit. Die folgenden Architekturen wurden getestet: </para> <itemizedlist> <listitem><para>604e</para></listitem> <listitem><para>POWER3</para></listitem> <listitem><para>POWER4</para></listitem> </itemizedlist> <para> Folgende Architekturen wurden nicht getestet, sollten jedoch trotzdem funktionieren: </para> <itemizedlist> <listitem><para>POWER</para></listitem> <listitem><para>POWER2</para></listitem> <listitem><para>POWER5</para></listitem> </itemizedlist> <para> Sound �ber die Ultimedia Services wird nicht unterst�tzt, da Ultimedia in AIX 5.1 weggelassen wurde; deshalb ist die einzige Option, die Treiber des AIX Open Sound System (OSS) von 4Front Technologies auf <ulink url="http://www.opensound.com/aix.html"/> zu verwenden. 4Front Technologies stellt die OSS-Treiber f�r AIX 5.1 f�r den nicht-kommerziellen Gebrauch frei zur Verf�gung; wie auch immer, momentan gibt es keine Soundausgabetreiber f�r AIX 5.2 oder 5.3. Dies bedeutet, dass <emphasis role="bold">AIX 5.2 und 5.3 momentan keine MPlayer-Tonausgabe beherrschen.</emphasis> </para> <para>L�sung f�r gebr�uchliche Probleme:</para> <itemizedlist> <listitem> <para> Wenn du folgende Fehlermeldung von <filename>configure</filename> erh�ltst: <screen> $ ./configure ... Checking for iconv program ... no No working iconv program found, use --charset=US-ASCII to continue anyway. Messages in the GTK-2 interface will be broken then. </screen> Das liegt daran, dass AIX Namen f�r Zeichens�tze benutzt, die nicht dem Standard entsprechen; daher wird die Konvertierung von MPlayer-Ausgaben zu anderen Zeichens�tzen momentan nicht unterst�tzt. Die L�sung besteht darin, folgendes zu tun: <screen> $ ./configure --charset=noconv </screen> </para> </listitem> </itemizedlist> </sect2> </sect1> <sect1 id="windows"> <title>Windows</title> <para> Ja, <application>MPlayer</application> l�uft auf Windows unter <ulink url="http://www.cygwin.com/"><application>Cygwin</application></ulink> und <ulink url="http://www.mingw.org/"><application>MinGW</application></ulink>. Es besitzt noch kein offizielles GUI, aber die Befehlszeilen-Version ist voll funktionst�chtig. Du solltest die <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-cygwin/">MPlayer-cygwin</ulink> Mailing-Liste f�r Hilfe und f�r neueste Informationen hernehmen. Offizielle Windows-Binaries k�nnen auf der <ulink url="http://www.mplayerhq.hu/design7/dload.html">Download-Seite</ulink> gefunden werden. Installationspakete und einfache GUI-Frontends stehen auf externen Quellen bereit, wir haben sie in der Windows-Sektion unserer <ulink url="http://www.mplayerhq.hu/design7/projects.html#windows">Projektseite</ulink> zusammengestellt. </para> <para> Wenn du die Verwendung der Befehlszeile vermeiden willst, hilft der simple Trick, eine Verkn�pfung auf deinem Desktop zu erstellen, der einen �hnlichen Ausf�hrungsabschnitt wie folgenden enth�lt: <screen><replaceable>c:\pfad\zur\</replaceable>mplayer.exe %1</screen> Dies l�sst <application>MPlayer</application> jeden Film abspielen, der �ber der Verkn�pfung fallen gelassen wird. F�ge <option>-fs</option> f�r den Vollbildmodus hinzu. </para> <para> Die besten Ergebnisse werden mit dem nativen DirectX-Video-Ausgabetreiber (<option>-vo directx</option>) erzielt. Alternativen sind OpenGL und SDL, jedoch variiert die OpenGL-Performance stark von System zu System, und SDL ist daf�r bekannt, Videos kaputt zu machen oder auf manchen Systemen abzurauchen. Wird das Bild zerst�rt, versuche, die Hardwarebeschleunigung mit <option>-vo directx:noaccel</option> abzuschalten. Lade dir die <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/contrib/dx7headers.tgz">DirectX7-Headerdateien</ulink> herunter, um den DirectX-Video-Ausgabetreiber zu compilieren. Desweiteren musst du DirectX 7 oder h�her installiert haben, damit der DirectX-Video-Ausgabetreiber funktioniert. </para> <para> <link linkend="vidix">VIDIX</link> l�uft jetzt unter Windows als <option>-vo winvidix</option>, obwohl es nach wie vor experimentell ist und ein wenig manuelles Setup ben�tigt. Lade dir die <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/dhahelper.sys">dhahelper.sys</ulink> oder <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (mit MTRR-Unterst�tzubg)</ulink> herunter und kopiere sie ins Verzeichnis <filename class="directory">libdha/dhahelperwin</filename> deines <application>MPlayer</application>-Source-Baums. �ffne die Console und wechsle in dieses Verzeichnis. Gib dann <screen>gcc -o dhasetup.exe dhasetup.c</screen> ein und f�hre <screen>dhasetup.exe install</screen> als Administrator aus. Danach wirst du neu starten m�ssen. Bist du damit fertig, kopiere die <systemitem class="library">.so</systemitem>-Dateien von <filename class="directory">vidix/drivers</filename> ins Verzeichnis <filename class="directory">mplayer/vidix</filename> relativ zu deiner <filename>mplayer.exe</filename>. </para> <para> F�r die besten Resultate sollte <application>MPlayer</application> einen Farbraum anwenden, den deine Grafikkarte hardwareseitig unterst�tzt. Leider melden viele Windows-Grafikkartetreiber f�lschlich einige Farbr�ume als von der Hardware unterst�tzt. Um herauszufinden welche das sind, versuche <screen>mplayer -benchmark -nosound -frames 100 -vf format=<replaceable>Farbraum</replaceable> <replaceable>vilm</replaceable></screen> wobei <replaceable>Farbraum</replaceable> jeder von der Option <option>-vf format=fmt=help</option> ausgegebene Farbraum sein kann. Findest du den von deiner Karte verarbeiteten Farbraum besonders schlecht, wird <option>-vf noformat=<replaceable>farbraum</replaceable></option> sie daran hindern, diesen anzuwenden. F�ge dies in deine config-Datei ein, um die Verwendung permanent zu unterbinden. </para> <para> Es stehen spezielle Codec-Packs f�r Windows auf unserer <ulink url="http://www.mplayerhq.hu/design7/codecs.html">Codec-Seite</ulink> zu Verf�gung, die das Abspielen von Formaten zu erm�glichen, f�r die es noch keinen nativen Support gibt. Leg die Codecs irgendwo in deinem Pfad ab oder �bergib <option>--with-codecsdir=<replaceable>c:/pfad/zu/deinen/codecs</replaceable></option> (alternativ nur auf <application>Cygwin</application> <option>--with-codecsdir=<replaceable>/pfad/zu/deinen/codecs</replaceable></option>) an <filename>configure</filename>. Wir bekamen einige Berichte, dass Real-DLLs beschreibbar sein m�ssen, um <application>MPlayer</application> starten zu k�nnen, aber nur auf manchen Systemen (NT4). Versuche, sie beschreibbar zu machen, falls du Probleme hast. </para> <para> Du kannst VCDs �ber die <filename>.DAT</filename>- oder <filename>.MPG</filename>-Dateien, die Windows auf VCDs anzeigt, abspielen. Das funktioniert wie folgt (an den Laufwerksbuchstaben deines CD-ROMs anpassen: </para> <screen>mplayer <replaceable>d:/mpegav/avseq01.dat</replaceable></screen> <para> DVDs gehen ebenfalls, passe <option>-dvd-device</option> an den Laufwerksbuchstaben deines DVD-ROMs an: </para> <screen>mplayer dvd://<replaceable><Titel></replaceable> -dvd-device <replaceable>d</replaceable>:</screen> <para> Die <application>Cygwin</application>-/<application>MinGW</application>-Konsole ist sehr langsam. Die Umleitung der Ausgabe oder das Anwenden der Option <option>-quiet</option> soll laut Berichten die Performance auf einigen Systemen verbessern. Direktes Rendern (<option>-dr</option>) kann auch helfen. Ist das Playback ruckelig, versuche <option>-autosync 100</option>. Helfen dir einige dieser Optionen, kannst du sie ja in deine config-Datei eintragen. </para> <note> <para> Auf Windows deaktiviert die CPU-Erkennung zur Laufzeit den SSE-Support wegen periodisch wiederkehrender und schwer zu ortender, SSE-bezogener Abst�rze. W�nschst du SSE-Support unter Windows, musst du ohne CPU-Erkennung zur Laufzeit compilieren. </para> <para> Hast du einen Pentium 4 und erlebst einen Absturz bei Verwendung von RealPlayer-Codecs, musst du den Support f�r Hyperthreading deaktivieren. </para> </note> <sect2 id="cygwin"> <title><application>Cygwin</application></title> <para> Du musst <application>Cygwin</application> 1.5.0 oder sp�ter laufen lassen, um <application>MPlayer</application> zu compilieren. </para> <para> DirectX-Headerdateien werden gew�hnlich nach <filename class="directory">/usr/include/</filename> oder <filename class="directory">/usr/local/include/</filename> extrahiert. </para> <para> Instruktionen und Dateien, um SDL unter <application>Cygwin</application> laufen zu lassen, k�nnen auf der <ulink url="http://www.libsdl.org/extras/win32/cygwin/">libsdl-Seite</ulink> gefunden werden. </para> </sect2> <sect2 id="mingw"> <title><application>MinGW</application></title> <para> Das Installieren einer Version von <application>MinGW</application>, das <application>MPlayer</application> compilieren k�nnte zwar f�r gew�hnlich ziemlich trickreich sein, funktioniert jetzt aber hervorragend. Installiere einfach <application>MinGW</application> 3.1.0 oder neuer und MSYS 1.0.9 oder neuer und erz�hle der nachtr�glichen Installation von MSYS, dass <application>MinGW</application> installiert ist. </para> <para> Extrahiere die DirectX-Headerdateien nach <filename class="directory">/mingw/include/</filename>. </para> <para> Die Unterst�tzung f�r MOV-komprimierte Header erfordert <ulink url="http://www.gzip.org/zlib/">zlib</ulink>, was <application>MinGW</application> standardm��ig nicht bereith�lt. Konfiguriere es mit <option>--prefix=/mingw</option> und installiere es vor dem Compilieren des <application>MPlayer</application>. </para> <para> Komplette Anweisungen zum Erzeugen des <application>MPlayer</application> und der notwendigen Bibliotheken findest du in den <ulink url="http://mplayerhq.hu/MPlayer/releases/win32/contrib/MPlayer-MinGW-Howto.txt">MPlayer MinGW HOWTO</ulink>s. </para> </sect2> </sect1> <sect1 id="macos"> <title>Mac OS</title> <para> <application>MPlayer</application> l�uft nicht auf Mac OS Versionen vor 10, sollte jedoch hervorragend auf Mac OS X 10.2 und dar�ber compilieren. Der vorgezogene Compiler ist die Apple-Version von GCC 3.x oder h�her. Du kannst die grundlegende Compilierumgebung schaffen, indem du <ulink url="http://developer.apple.com/tools/download/">Xcode</ulink> von Apple installierst. Besitzt du Mac OS X 10.3.9 oder sp�ter und QuickTime 7 kannst du den Videoausgabetreiber <option>macosx</option> verwenden. </para> <para> Leider erm�glicht es dir diese grundlegende Umgebung nicht, von allen netten Features von <application>MPlayer</application> Gebrauch zu machen. Beispielsweise m�ssen die Bibliotheken <systemitem class="library">fontconfig</systemitem> und <systemitem class="library">freetype</systemitem> auf deinem System installiert sein, damit das OSD eincompiliert werden kann. Im Gegensatz zu anderen Unices wie den meisten Linux- und BSD-Varianten besitzt OS X kein Paketsystem, das im System enthalten ist. </para> <para> Es stehen mindestens zwei zur Wahl: <ulink url="http://fink.sourceforge.net/">Fink</ulink> und <ulink url="http://darwinports.opendarwin.org/">DarwinPorts</ulink>. Beide bieten in etwa denselben Funktionsumfang (z.B. eine Menge Pakete, von denen gew�hlt werden kann, Aufl�sung von Abh�ngigkeiten, die M�glichkeit, einfach Pakete hinzuzuf�gen/zu aktualisieren/zu entfernen, etc...). Fink bietet sowohl vorcompilierte Bin�rpakete als auch das Erstellen aus den Quelldateien, wohingegen DarwinPorts nur das Erstellen aus den Quellen anbietet. Der Autor dieser Anleitung hat DarwinPorts gew�hlt aus dem Grund, dass das grundlegende Setup etwas leichtgewichtiger war. Folgende Beispiele werden sich auf DarwinPorts beziehen. </para> <para> Um zum Beispiel <application>MPlayer</application> mit OSD-Unterst�tzung zu compilieren: <screen>sudo port install pkgconfig</screen> Dies wird <application>pkg-config</application> installieren, was ein System f�r die Handhabung von Compiler-/Link-Flags f�r Bibliotheken ist. Das <systemitem>configure</systemitem>-Skript von <application>MPlayer</application> benutzt dies, um Bibliotheken angemessen zu erkennen. Dann kannst du <application>fontconfig</application> auf �hnliche Weise installieren: <screen>sudo port install fontconfig</screen> Dann kannst du fortfahren mit der Ausf�hrung von <application>MPlayer</application>s <systemitem>configure</systemitem>-Skript (beachte die Umgebungsvariablen <systemitem>PKG_CONFIG_PATH</systemitem> und <systemitem>PATH</systemitem>, so dass <systemitem>configure</systemitem> die mit DarwinPorts installierten Bibliotheken findet): <screen>PKG_CONFIG_PATH=/opt/local/lib/pkgconfig/ PATH=$PATH:/opt/local/bin/ ./configure</screen> </para> <sect2 id="osx_gui"> <title>MPlayer OS X GUI</title> <para> Du bekommst ein natives GUI f�r <application>MPlayer</application> zusammen mit f�r Mac OS X vorcompilierten <application>MPlayer</application>-Binaries vom <ulink url="http://mplayerosx.sf.net/">MPlayerOSX</ulink>-Projekt, sei aber gewarnt: Dieses Projekt ist nicht mehr aktiv. </para> <para> Zum Gl�ck wurde <application>MPlayerOSX</application> von einem Mitglied des <application>MPlayer</application>-Teams �bernommen. Preview-Releases findet man auf unserer <ulink url="http://mplayerhq.hu/dload.html">Download-Seite</ulink>, und ein offizielles Release sollte bald herauskommen. </para> <para> Um <application>MPlayerOSX</application> selbst von den Quellen zu bauen, brauchst du <systemitem>mplayerosx</systemitem>, das <systemitem>main</systemitem> und eine Kopie des <systemitem>main</systemitem> CVS-Moduls genannt <systemitem>main_noaltivec</systemitem>. <systemitem>mplayerosx</systemitem> ist das GUI-Frontend, <systemitem>main</systemitem> ist MPlayer und <systemitem>main_noaltivec</systemitem> ist MPlayer ohne AltiVec-Unterst�tzung. </para> <para> Um ein Checkout der SVN-Module durchzuf�hren, benutze: <screen> svn checkout svn://svn.mplayerhq.hu/mplayerosx/trunk/ mplayerosx svn checkout svn://svn.mplayerhq.hu/mplayer/trunk/ main </screen> </para> <para> Um <application>MPlayerOSX</application> zu bilden, musst du so etwas �hnliches einrichten: <screen> MPlayer_source_verzeichnis | |--->main (MPlayer SVN-Quelldateien) | |--->main_noaltivec (MPlayer SVN-Quelldateien konfiguriert mit --disable-altivec) | |--->mplayerosx (MPlayer OS X SVN-Quelldateien) </screen> Du musst zuerst main und main_noaltivec erzeugen. </para> <para> Setze als n�chstes eine globale Variable: <screen>export MACOSX_DEPLOYMENT_TARGET=10.3</screen> </para> <para> Dann konfiguriere: </para> <para> Wenn du f�r eine G4 oder eine neuere CPU mit AltiVec-Support konfigurierst, mache folgendes: <screen> ./configure --with-termcaplib=ncurses.5 --disable-gl --disable-x11 </screen> Wenn du f�r einen G3-getriebenen Rechner mit AltiVec konfigurierst, mache dies: <screen> ./configure --with-termcaplib=ncurses.5 --disable-gl --disable-x11 --disable-altivec </screen> Du musst <filename>config.mak</filename> editieren und <systemitem>-mcpu</systemitem> und <systemitem>-mtune</systemitem> von <systemitem>74XX</systemitem> auf <systemitem>G3</systemitem> �ndern. </para> <para> Fahre fort mit <screen> make </screen> und gehe dann ins Verzeichnis mplayerosx, gib dort folgendes ein: <screen> make dist </screen> Dies wird ein komprimiertes <systemitem>.dmg</systemitem>-Archiv mit der gebrauchsfertigen Binary erzeugen. </para> <para> Du kannst auch das <application>Xcode</application> 2.1 Projekt verwenden; das alte Projekt f�r <application>Xcode</application> 1.x l�uft nicht mehr. </para> </sect2> </sect1> <sect1 id="exotic_platforms"> <title>Exotische Plattformen</title> <para> <application>MPlayer</application> l�uft auf einer Reihe exotischer Plattformen, aber die meisten der plattformspezifischen �nderungen dieser Systeme wurden nicht in den Hauptquellbaum zur�ckgemergt. Build-Instruktionen findest du in der System-spezifischen Dokumentation. </para> <sect2 id="qnx"> <title>QNX</title> <para> Du musst SDL f�r QNX herunterladen und installieren. Dann starte <application>MPlayer</application> mit den Optionen <option>-vo sdl:driver=photon</option> und <option>-ao sdl:nto</option>, es sollte schnell laufen. </para> <para> Der Output mit <option>-vo x11</option> wird etwas langsamer sein als unter Linux, da QNX nur X-<emphasis>Emulation</emphasis> besitzt, was sehr langsam ist. </para> </sect2> <sect2 id="amiga"> <title>Amiga/MorphOS (GeekGadgets)</title> <para> Die Leute dr�ben auf <ulink url="www.amigasoft.net"/> machen aktuelle <application>MPlayer</application>- und <application>MEncoder</application>-Packages. </para> <para> Nicholas Det bei Genesi hat eine gro�e und starke Portierung des <application>MPlayer</application> f�r MorphOS gemacht. Traurig, dass sie auf der 0.90-Serie basiert. </para> <para> Hol sie dir von <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> </sect2> </sect1> </chapter>