A new German translation of the XML documentation is in the works.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18134 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
diego 2006-04-18 08:03:20 +00:00
parent 3f08af229f
commit 685d7b7418
10 changed files with 0 additions and 8024 deletions

View File

@ -1,307 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Fehler berichten - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H1><A NAME="appendix_b">Anhang B - Wie man einen Fehler berichtet</A></H1>
<P>Gute Fehlerberichte sind bei jedem Softwareprojekt sehr wertvolle
Beitr&auml;ge f&uuml;r die Entwicklung. Aber genauso, wie es beim Schreiben
guter Software ist, so verh&auml;lt es sich auch mit guten Fehlerberichten: sie
erfordern Arbeit. Bitte denk daran, dass die meisten Entwickler sehr
besch&auml;ftigt sind und t&auml;glich einen unglaublichen Berg Mail erhalten.
Auch wenn deine R&uuml;ckmeldungen f&uuml;r die Entwicklung von MPlayer von
entscheidender Bedeutung ist, so verstehe bitte, dass du wirklich <B>alle</B>
hier verlangten Informationen zur Verf&uuml;gung stellen und den Anweisungen
dieses Dokumentes folgen musst, damit wir dir helfen k&ouml;nnen.</P>
<H2><A NAME="fix">B.1 Wie sollen Fehler behoben werden?</A></H2>
<P>Wenn man geschickt genugt ist, kann man versuchen, den Fehler selber zu
beheben, was &auml;u&szlig;erst positiv aufgenommen wird. Falls du das schon
getan hast, solltest du <A HREF="../tech/patches.txt">dieses kurze Dokument</A>
lesen, um zu erfahren, wie der Code in MPlayer integriert werden kann.
Die Leute auf der
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">mplayer-dev-eng</A>
Mailingliste k&ouml;nnen ansonsten bei Fragen helfen.</P>
<H2><A NAME="report">B.2 Wie sollen Fehler berichtet werden?</A></H2>
<P>Probiere es als allererstes die aktuelle CVS-Version, da dein Problem
m&ouml;glicherweise schon gel&ouml;st ist. Die Entwicklung geht extrem
schnell voran. Die meisten Probleme in offiziellen MPlayer-Versionen
werden innerhalb von Tagen oder sogar Stunden den Entwicklern mitgeteilt.
Deswegen berichte Fehler nur dann, wenn sie in der <B>aktuellen CVS-Version</B>
auch noch vorliegen. CVS-Anweisungen k&ouml;nnen am unteren Ende
<A HREF="http://www.mplayerhq.hu/dload.html">dieser Seite</A> oder im
README gefunden werden. Wenn dies nicht hilft, sollte in der
<A HREF="documentation.html#known_bugs">Liste der bekannten Fehler</A> und dem
Rest der Dokumentationen nachgesehen werden. Wenn dein Problem nicht bekannt
ist oder durch unsere Anweisungen nicht gelst werden kann, dann berichte
&uuml;ber den Fehler.</P>
<P>Sende auf keinen Fall Fehlerberichte an individuelle Entwickler.
MPlayer ist Gemeinschaftsarbeit, also wird es vielleicht mehrere
interessierte Leute geben. Es kommt auch teilweise vor, dass derselbe Fehler
von anderen Benutzern gefunden wurde, die bereits eine L&ouml;sung
zur Umgehung des Problems haben (sogar bei einem Fehler im
MPlayer-Code).</P>
<P>Bitte beschreibe dein Problem so detailiert wie m&ouml;glich. Dazu
geh&ouml;rt ein klein wenig Detektivarbeit, um die Umst&auml;nde einzuengen,
unter denen das Problem auftritt. Tritt der Fehler nur in bestimmten
Situationen auf? Ist er abh&auml;ngig von der Datei oder dem Dateityp? Tritt er
nur mit einem Codec oder mit allen auf? Tritt er mit allen Ausgabetreibern auf?
Je mehr Information zur Verf&uuml;gung gestellt werden, um so besser stehen die
Chance, dass das Problem gel&ouml;st werden wird. Es sollte nicht vergessen
werden, auch die wertvollen unten angeforderten Informationen miteinzubeziehen.
Ansonsten ist es wahrscheinlich unm&ouml;glich, eine Diagnose des Fehlers zu
erstellen.</P>
<P>Ein exzellenter und gut geschriebener F&uuml;hrer, wie Fragen in
&ouml;ffentlichen Foren gestellt werden sollen, ist <A
HREF="http://www.tuxedo.org/~esr/faqs/smart-questions.html">How To Ask
Questions The Smart Way</A> von Eric S. Raymond. Es gibt auch einen zweiten
F&uuml;hrer namens
<A HREF="http://www.chiark.greenend.org.uk/~sgtatham/bugs.html">How to Report
Bugs Effectively</A> von
<A HREF="http://www.chiark.greenend.org.uk/~sgtatham/">Simon Tatham</A>. Falls
du diesen Richtlinien folgst, sollte alles gut gehen. Bitte verstehe, dass wir
alle den Mailinglisten freiwillig in unserer Freizeit folgen. Wir sind sehr
besch&auml;ftigt und k&ouml;nnen nicht garantieren, dass eine L&ouml;sung oder
blo&szlig; eine Antwort zum beschriebenen Problem kommen wird.</P>
<H2><A HREF="where">B.3 Wo sollen Fehler berichtet werden?</A></H2>
<P>Tritt der mplayer-users Mailingliste bei:<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-users">http://mplayerhq.hu/mailman/listinfo/mplayer-users</A><BR>
und sende deinen Fehlerbericht an:<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="mailto:mplayer-users@mplayerhq.hu">mplayer-users@mplayerhq.hu</A></P>
<P>Die Sprache der Liste ist <B>Englisch</B>. Es wird gebeten, den <A
HREF="http://www.ietf.org/rfc/rfc1855.txt">Netiquette-Richtlinien</A> zu folgen
und <B>keine HTML-Mails</B> zu irgendeiner unserer Listen zu senden. Man wird
dabei bloss ignoriert oder von der Liste versto&szlig;en. Falls du nicht
wei&szlig;t, was eine HTML-Mail ist, oder warum sie b&ouml;se ist, dann lies <A
HREF="http://expita.com/nomime.html">dieses gute Dokument</A>. Es erkl&auml;rt
alle Details und enth&auml;lt Anweisungen, wie man HTML f&uuml;r Mails
ausschaltet. Bitte denk auch daran, keine individuellen Kopien (CC) an
einzelne Personen zu versenden. Es ist also eine gute Idee, sich an der Liste
anzumelden, wenn man auch seine Antwort erhalten will.</P>
<H2><A HREF="what">B.4 Was soll berichtet werden?</A></H2>
<P>Du wirst wahrscheinlich Logdateien, Konfigurationsinformationen und
Beispieldateien in deinen Fehlerbericht aufnehmen m&uuml;ssen. Wenn einige
von ihnen ziemlich gro&szlig; werden, so ist es besser, wenn du sie auf unseren
<A HREF="ftp://mplayerhq.hu/MPlayer/incoming/">FTP-Server</A> hochl&auml;dst
und sie vorher komprimierst (bitte mit <CODE>gzip</CODE> oder
<CODE>bzip2</CODE>). Gib dann in deinem Fehlerbericht nur den Pfad- und
Dateinamen an. Unsere Mailinglisten haben eine
Gr&ouml;&szlig;enbeschr&auml;nkung auf 80k, sodass du gr&ouml;&szlig;ere
Sachen definitiv komprimieren und hochladen musst.</P>
<H3><A NAME="system">B.4.1 Systeminformationen</A></H3>
<UL>
<LI>Deine Linux-Distribution oder Betriebssystem und die Versionsnummer:
<UL>
<LI>RedHat 7.1</LI>
<LI>Slackware 7.0 + Development-Pakete von 7.1 ...</LI>
</UL>
</LI>
<LI>Kernelversion:<BR>
<CODE>uname -a</CODE></LI>
<LI>libc-Version:<BR>
<CODE>ls -l /lib/libc[.-]*</CODE></LI>
<LI>X-Version:<BR>
<CODE>X -version</CODE></LI>
<LI>gcc- und ld-Versionen:<BR>
<CODE>gcc -v<BR>
ld -v</CODE></LI>
<LI>binutils-Version:<BR>
<CODE>as --version</CODE></LI>
<LI>Wenn du Pobleme mit dem Vollbildmodus hast:
<UL>
<LI>Window-manager-Typ und -Version</LI>
</UL>
</LI>
<LI>Bei Problemen mit XVIDIX:
<UL>
<LI>X-Farbtiefe:<BR>
<CODE>xdpyinfo | grep "depth of root"</CODE></LI>
</UL>
</LI>
<LI>Falls nur das GUI einen Fehler enth&auml;lt:
<UL>
<LI>GTK-Version</LI>
<LI>GLIB-Version</LI>
<LI>libpng-Version</LI>
<LI>Zustand des GUIs, in dem der Fehler auftritt</LI>
</UL>
</LI>
</UL>
<H3><A NAME="hardware">B.4.2 Hardware und Treiber</A></H3>
<UL>
<LI>CPU-Infos (dies funktioniert nur mit Linux):<BR>
<CODE>cat /proc/cpuinfo</CODE></LI>
<LI>Grafikkartenhersteller und Modell:
<UL>
<LI>ASUS V3800U, Chipset: nVidia TNT2 Ultra Pro 32MB SDRAM</LI>
<LI>Matrox G400 DH 32MB SGRAM</LI>
</UL>
</LI>
<LI>Grafikkartentreiber-Typ &amp; -Version:
<UL>
<LI>X eigener Treiber</LI>
<LI>nVidia 0.9.623</LI>
<LI>Utah-GLX CVS 2001-02-17</LI>
<LI>DRI von X 4.0.3</LI>
</UL>
</LI>
<LI>Soundkartentyp und -Treiber:
<UL>
<LI>Creative SBLive! Gold mit OSS-Treiber von oss.creative.com</LI>
<LI>Creative SB16 mit OSS-Treiber des Kernels</LI>
<LI>GUS PnP mit ALSA-OSS-Emulation</LI>
</UL>
</LI>
<LI>Wenn du unsicher bist, solltest du die Ausgabe von <CODE>lspci -vv</CODE>
mitschicken (auf Linux-Systemen).</LI>
</UL>
<H3><A NAME="compilation">B.4.3 Bei Fehlern bei <CODE>configure</CODE></A></H3>
<P>Wenn du Fehlermeldungen beim Aufruf von <CODE>./configure</CODE> bekommst
oder einige Sachen nicht automatisch richtig erkannt werden, so lies
<CODE>configure.log</CODE>. Eventuell findest du dort die Antwort, z.B. wenn
verschiedene Versionen einer Bibliothek auf deinem System gemischt rumliegen,
oder wenn du vergessen hast, das Entwicklungspaket zu installieren
(das sind die, die auf -dev oder -devel enden).</P>
<H3><A NAME="compilation">B.4.4 Bei Fehlern w&auml;hrend des
&Uuml;bersetzens</A></H3>
Bitte schicke diese Dateien mit:
<UL>
<LI><CODE>config.h</CODE></LI>
<LI><CODE>config.mak</CODE></LI>
</UL>
Nur wenn die Compilierung in einem der unten genannten Verzeichnisse
fehlschl&auml;gt, f&uuml;ge diese Datein an:
<UL>
<LI><CODE>Gui/config.mak</CODE></LI>
<LI><CODE>libvo/config.mak</CODE></LI>
<LI><CODE>libao2/config.mak</CODE></LI>
</UL>
<H3><A NAME="playback">B.4.5 Bei Wiedergabeproblemen</A></H3>
<P>Bitte f&uuml;ge die Ausgabe von MPlayer in Ausführlichkeits-Stufe 1
bei, aber denk daran <B>die Ausgabe nicht zu kürzen</B>, wenn diese der Mail
eingef&uuml;gt wird. Die Entwickler ben&ouml;tigen alle Meldungen, um eine
geignete Diagnose des Problems durchf&uuml;hren zu k&ouml;nnen. Die Ausgabe
kann mit folgendem Befehl in eine Datei geschrieben werden:</P>
<P><CODE>&nbsp;&nbsp;&nbsp;&nbsp;mplayer -v [Optionen] [Dateiname]
&gt; mplayer.log 2&gt;&amp;1</CODE></P>
<P>Wenn das Problem nur bei einer oder einigen wenigen Dateien auftritt, dann
lade die Datei bitte auf
<A HREF="ftp://mplayerhq.hu/MPlayer/incoming/">
ftp://mplayerhq.hu/MPlayer/incoming/</A></P> hoch.</P>
<P>Uploade auch eine kleine .txt-Datei mit dem selben Namen wie die Datei (+
.txt Endung), die eine Problembeschreibung zur jeweiligen Datei, die
detaillierte Ausgabe (-v) von MPlayer und deine Email-Adresse
enth&auml;lt. Normalerweise reichen die ersten 1-5MB der Datei aus, um das
Problem zu reproduzieren, aber als erstes solltest du folgendes
ausprobieren:</P>
<P><CODE>&nbsp;&nbsp;&nbsp;dd if=deinedatei of=kleinedatei bs=1024k
count=5</CODE></P>
<P>Das kopiert die ersten 5 MB von <STRONG>'deinedatei'</STRONG> in die Datei
<STRONG>'kleinedatei'</STRONG>. Nun versuche es nochmals mit dieser kleinen
Datei. Wenn der Fehler immer noch auftritt, dann reicht es, die kleine Datei
hochzuladen.<BR> Sende <STRONG>NIE</STRONG> solche Dateien via Mail! Lade sie
herauf und schicke nur den Pfad/Dateinamen der Datei auf dem FTP Server. Wenn
die Datei im Internet bereits verf&uuml;gbar ist, so reicht die
<STRONG>exakte</STRONG> URL aus.</P>
<H3><A NAME="crash">B.4.6 Bei Abst&uuml;rzen</A></H3>
<P>Du musst MPlayer aus <CODE>gdb</CODE> heraus aufrufen und uns
die vollst&auml;ndige Ausgabe schicken. Wenn du einen core dump hast, dann
kannst du auch aus der <CODE>core</CODE>-Datei n&uuml;tzliche Informationen
extrahieren. So geht's:</P>
<H4><A NAME="debug">B.4.6.1 Wie man Informationen bei einem reproduzierbaren
Absturz bewahrt</A></H4>
Kompiliere MPlayer mit eingeschaltetem Debugging:
<P><CODE>&nbsp;&nbsp;&nbsp;&nbsp;./configure --enable-debug=3<BR>
&nbsp;&nbsp;&nbsp;&nbsp;make</CODE></P>
Starte nun gdb mit MPlayer:
<P><CODE>&nbsp;&nbsp;&nbsp;&nbsp;gdb ./mplayer</CODE></P>
Du bist nun in gdb. Gib folgendes ein:
<P><CODE>&nbsp;&nbsp;&nbsp;&nbsp;run -v [options-to-mplayer]
filename</code></P>
und reproduziere deinen Absturz. Sobald er auftritt, wird gdb zur
Eingabeaufforderung zur&uuml;ckkehren, bei der du
<P><CODE>&nbsp;&nbsp;&nbsp;&nbsp;bt<BR>
&nbsp;&nbsp;&nbsp;&nbsp;disass $pc-32 $pc+32<BR>
&nbsp;&nbsp;&nbsp;&nbsp;info all-registers</CODE></P>
eingibst.
<H4><A NAME="core">B.4.6.2 Wie man brauchbare Informationen von einem core
dump extrahiert</A></H4>
<P>Bitte erzeuge die folgende Befehlsdatei (Command File):</P>
<P><CODE>disass $pc-32 $pc+32<BR>
info all-registers</CODE></P>
<P>Dann f&uuml;hre einfach den folgenden Befehl auf der Konsole aus:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>gdb mplayer --core=core -batch
--command=command_file &gt; mplayer.bug</CODE></P>
<H2><A NAME="advusers">B.5 Ich wei&szlig;, was ich tue...</A></H2>
<P>Wenn du einen Fehlerbericht wie oben beschrieben geschreiben hast und du dir
sicher bist, dass es ein Bug in MPlayer und nicht ein Problem mit dem
Compiler oder eine defekte Datei ist, dann kannst du auch der
mplayer-advusers-Mailingliste beitreten und dort posten, wenn du alle
Dokumentation gelesen hast und dein Soundtreiber ok ist. Du wirst dort
schnellere und besser Antworten erhalten.<BR><BR> Aber sei gewarnt: Wenn du
Newbiefragen oder Fragen stellst, die in dieser Anleitung bereits beantwortet
werden, wirst du ignoriert oder angemeckert, anstatt eine Antwort zu
erhalten.<BR> Also &auml;rgere uns nicht und trette der -advusers-Liste nur
bei, wenn du wei&szlig;t, was du machst und du dich wie ein erfahrener
MPlayer-Benutzer oder -Entwickler f&uuml;hlst. Wenn du wirklich ein
erfahrener Benutzer bist sollte es kein Problem f&uuml;r dich sein, dich
anzumelden...</P>
</BODY>
</HTML>

View File

@ -1,322 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>CD, DVD, VCD - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H2><A NAME="drives">4.1 CD-ROM- und DVD-ROM-Laufwerke</A></H2>
<P>Auszug aus der Linux-Dokumentation:</P>
<P>Moderne CDROM-Laufwerke k&ouml;nnen sehr hohe Abtastgeschwindigkeiten
erreichen. Einige k&ouml;nnen jedoch auch ihre Geschwindigkeit reduzieren.
Es gibt mehrere Gr&uuml;nde, dies zu tun:</P>
<UL>
<LI>Es gibt Berichte, dass diese Laufwerke bei hohen Geschwindkeiten
Lesefehler erzeugen, vor allem bei schlecht gepressten CD-ROMs. Das
Herabsetzen der Geschwindigkeit kann in diesen F&auml;llen die
Datenverluste verringern.</LI>
<LI>Viele CD-ROM Laufwerke erzeugen st&ouml;rend laute Ger&auml;usche, die
eine niedrigere Geschwindigkeit ebenfalls reduzieren kann.</LI>
</UL>
<P>Die Lesegeschwindigkeit eines IDE-CD-Laufwerkes kann mit <CODE>hdparm</CODE>
oder einem Programm namens <CODE>setcd</CODE> verringert werden. Das geht
so:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>hdparm -E &lt;Geschwindigkeit&gt;
&lt;CD-ROM-Device&gt;</CODE></P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>setcd -x &lt;Geschwindigkeit&gt;
&lt;CD-ROM-Device&gt;</CODE></P>
<P>Du kannst auch folgendes probieren:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>echo current_speed:4 &gt;
/proc/ide/[CDROM-Device]/settings</CODE></P>
<P>Aber daf&uuml;r brauchst du Root-Privilegien. Der folgende Befehl
k&ouml;nnte ebenfalls helfen:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>echo file_readahead:2000000 &gt;
/proc/ide/[CDROM-Device]/settings</CODE></P>
<P>Dies setzt einen 2MB Lesepuffer für die Daten, was sich bei zerkratzten CDs
als n&uuml;tzlich erweist. Wenn du die Gr&ouml;&szlig;e zu hoch w&auml;hlst,
dann wird das Laufwerk st&auml;ndig beschleunigen und abbremsen und dadurch die
Geschwindigkeit dramatisch verringern. Es ist auch empfehlenswert, das CD-ROM
Laufwerk via hdparm auf performantere Werte einzustellen:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>hdparm -d1 -a8 -u1 &lt;CDROM-Device&gt;
</CODE></P>
<P>Dies aktiviert den DMA-Zugriff, Vorauslesen und IRQ-Unmasking
(genauere Details dazu findest du in der <CODE>hdparm</CODE>-Manpage)</P>
<P>Bitte schau dir "<CODE>/proc/ide/[CDROM-Device]/settings</CODE>" an, um
das CD-ROM feineinzustellen.</P>
<P>SCSI-Laufwerke kennen keine einheitliche Schnittstelle zum Setzen dieser
Werte (oder kennst du eine? Dann sag sie uns!) Es gibt ein Tool, das mit <A
HREF="http://das.ist.org/~georg/">Plextor-SCSI-Laufwerken</A> funktioniert.</P>
<P>FreeBSD:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;Speed: <CODE>cdcontrol [-f device] speed [speed]
</CODE></P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;DMA: <CODE>sysctl hw.ata.atapi_dma=1</CODE></P>
<H2><A NAME="dvd">4.2 DVD-Wiedergabe</A></H2>
<P>Bitte schau in der man-Page nach, wenn du eine Auflistung aller
verf&uuml;gbaren Optionen willst. Die Syntax bei einer normalen Digital
Versatile Disc (DVD) sieht wie folgt aus:</P>
<P><CODE>mplayer dvd://&lt;track&gt; [-dvd-device &lt;Ger&auml;t&gt;]</CODE></P>
<P>Beispiel: <CODE>mplayer dvd://1 -dvd-device /dev/hdc</CODE></P>
<P>Das Standard-DVD-Ger&auml;t ist <CODE>/dev/dvd</CODE>. Wenn das bei dir
anders ist, so erstelle einen symbolischen Link auf das richtige Ger&auml;t,
oder gib es auf der Kommandozeile mit der Option <CODE>-dvd-device</CODE> an.
</P>
<P>MPlayer benutzt <CODE>libdvdread</CODE> und <CODE>libdvdcss</CODE>
f&uuml;r die DVD Entschl&uuml;sselung und Wiedergabe. Diese beiden Bibliotheken
sind im <CODE>libmpdvdkit2/</CODE>-Unterverzeichnis enthalten und m&uuml;ssen
nicht separat installiert werden. Wir haben uns dazu entschlossen, da wir einen
Fehler in der <CODE>libdvdread</CODE> beheben mussten und einen Patch
hinzuf&uuml;gt haben, welcher <B>Caching-Support f&uuml;r gecrackte
CSS-Keys</B> f&uuml;r <CODE>libdvdcss</CODE> erm&ouml;glicht. Dies f&uuml;hrt
zu einer Geschwindigkeitssteigerung, da MPlayer nicht vor jeder
Wiedergabe die Verschl&uuml;sselung erneut knacken muss.</P>
<P>MPlayer kann jedoch auch die systemweiten <CODE>libdvdread</CODE>-
und <CODE>libdvdcss</CODE>-Bibliotheken verwenden. Diese L&ouml;sung wird
jedoch aus oben den oben genannten Gr&uuml;nden <B>nicht</B> empfohlen.
Aus&szlig;erdem kann es zu Fehlern, Inkompatibilit&auml;ten zwischen den
Bibliotheken und niedriger Geschwindigkeit f&uuml;hren.</P>
<H4>Unterst&uuml;tzung f&uuml;r DVD-Navigation</H4>
<P>An einer Unterst&uuml;tzung f&uuml;r DVD-Navigation via <CODE>dvdnav</CODE>
wird gearbeitet. Sie ist jedoch noch nicht vollendet und wird momentan nicht
gewartet. Wer wei&szlig; - vielleicht l&auml;sst sie sich sogar
compilieren.</P>
<H4>Alte DVD-Unterst&uuml;tzung - OPTIONAL</H4>
<P>Nützlich, wenn du verschl&uuml;sselte VOBs von der Festplatte abspielen
willst. Kompiliere und installiere <B>libcss</B> 0.0.1 (nicht neuer). Wenn
MPlayer sie nicht findet, dann benutze die Option <CODE>-csslib
/pfad/zu/libcss.so</CODE>. Um diese Bibliothek zu benutzen musst du root-Rechte
haben, das SUID-Bit f&uuml;r die MPlayer-Programmdatei setzen oder den
fibmap_mplayer-Wrapper benutzen, der das SUID-Bit gesetzt hat.</P>
<H4>DVD-Strukturen</H4>
<P>DVDs benutzen alle 2048 Bytes/Sektor mit ECC/CRC. Meistens beinhalten sie
ein UDF-Dateisystem in einem einzigen Track. Dieses Dateisystem enth&auml;lt
mehrere Dateien (kleine .IFO- und .BUK-Dateien sowie die gro&szlig;en (1GB)
.VOB-Dateien). Sie sind echte Dateien und k&auml;nnen von einem in's
Dateisystem eingeh&auml;ngten Dateisystem einer nicht verschl&auml;usselten
DVD abgespielt oder kopiert werden.</P>
<P>Die .IFO-Dateien enthalten Filmnavigationsinformationen (z.B. Kapitel,
Titel, verschiedene Kameraeinstellungen sofern vorhanden, Tabelle mit den
Sprachen etc.) und werden ben&auml;tigt, um den Inhalt der .VOB-Dateien (den
eigentlichen Film) lesen und interpretieren zu k&ouml;nnen. Die .BUK-Dateien
sind Backups der .IFO-Dateien. Sie benutzen ausschlie&szlig;lich
<B>Sektornummern</B> zur Adressierung, sodass man zur DVD-Navigation das
direkte Ansprechen einzelner Sektoren der DVD implementieren muss. .IFOs werden
ebenfalls ben&auml;tigt, um den Inhalt entschl&auml;sseln zu k&auml;nnen.</P>
<P>Aus diesem Grund braucht die alte DVD-Unterst&uuml;tzung ein in den
Dateibaum eingeh&auml;ngtes DVD-Dateisystem sowie zus&auml;tzlich Zugriff auf
das Device, um einzelne Sektoren der DVD lesen zu k&ouml;nnen. Leider musst du
(unter Linux) root-Rechte besitzen, um die Sektorenadresse einer Datei zu
erhalten. Du hast nun die folgenden M&ouml;glichkeiten:</P>
<UL>
<LI>Sei root oder gib der mplayer-Programmdatei das SUID-Bit.</LI>
<LI>Lass MPlayer das Wrapper-Programm fibmap_mplayer ausf&uuml;hren,
welches das SUID-Bit gesetzt hat, um Zugriff auf die DVD zu bekommen
(wird bei der alten DVD-Unterst&uuml;tzung mit der <CODE>libcss</CODE> so
sgemacht).</LI>
<LI>Lass die Dateisystemtreiber des Kernels links liegen und programmiere
den Support daf&uuml;r erneut im User-Space. <CODE>libdvdread</CODE>
0.9.x und <CODE>libmpdvdkit2</CODE> machen das genau so (neue
DVD-Unterst&uuml;tzung). Der
UDF-Treiber des Kernels wird nicht ben&ouml;tigt, da diese Bibliotheken
ihren eigenen UDF-Dateisystemtreiber mitbringen. Die DVD muss nicht einmal
in den Dateibaum eingeh&auml;ngt sein, da direkt auf die Sektoren der
DVD zugegriffen wird.</LI>
</UL>
<P>Manchmal hat ein Benutzer keinen Zugriff auf das Device (z.B.
<CODE>/dev/dvd</CODE>). Deswegen haben die Autoren der <CODE>libdvdread</CODE>
einen Emulationsmodus spendiert, der eine Umsetzung zwischen Sektornummern und
Dateinamen/Offsets vornimmt. Damit wird Sektorzugriff auch bei in das
Dateisystem eingeh&auml;ngten DVDs und sogar bei auf die Festplatte kopierten
Dateien erm&ouml;glicht.</P>
<P><CODE>libdvdread</CODE> akzeptiert sogar Mountpoints anstelle von
Devicenamen. Dabei schaut sie in <CODE>/proc/mounts</CODE> nach, um den
tats&auml;chlichen Devicenamen f&uuml;r den Sektorzugriff herauszufinden.
Entwickelt wurde diees Verfahren f&uuml;r Solaris, da Solaris Devicenamen
dynamisch vergibt.</P>
<P>Der Standardname f&uuml;r das DVD-Device ist <CODE>/dev/dvd</CODE>. Sollte
das bei dir anders sein, so erstelle einen symbolischen Link auf das richtige
Device, oder gib es beim Starten mit der Option <CODE>-dvd-device</CODE>
separat an.
<H4>DVD-Authentifizierung</H4>
<P>Die Authentifizierung und Entschl&uuml;sselung der neuen
DVD-Unterst&uuml;tzung wird durch eine gepatchte <CODE>libdvdcss</CODE>
erm&ouml;glicht (siehe oben). Die Zugriffsmethoden k&ouml;nnen &uuml;ber die
Umgebungsvariable <CODE>DVDCSS_METHOD</CODE> gew&auml;hlt werden. G&auml;ultige
Werte sind <CODE>key</CODE>, <CODE>disk</CODE> und <CODE>title</CODE>.</P>
<P>Wird nichts angegeben, so versucht libdvdcss die folgenden Methoden
(Standardwerte: key, title-Request):</P>
<OL>
<LI><B>bus key:</B>Dieser Schl&uuml;ssel wird w&auml;hrend der
Authentifizierung (eine lange Mischung aus ioctls und verschiedenen
Schl&uuml;sselaustauschen, dient der Entschl&uuml;sselung) verhandelt.
Er wird benutzt, um die title- und disk-Schl&uuml;ssel vor dem Versand
&uuml;ber den ungesch&uuml;tzten Systembus zu verschl&uuml;sseln und damit
ein Ablauschen der Schl&uuml;ssel zu verhindern. Der bus key ist
erforderlich, um den verschl&uuml;sselten disk key zu erhalten und zu
entschl&uuml;sseln.</LI>
<LI><B>cached key:</B> MPlayer sucht nach bereits gecrackten
Schl&uuml;sseln, die im <CODE>~/.mplayer/DVDKeys</CODE>-Verzeichnis
gespeichert werden (das ist schnell ;).</LI>
<LI><B>key:</B> Falls kein cached key vorhanden ist, so versucht
MPlayer den disk key mit Hilfe einer Reihe von mitgelieferten
und eincompilierten player keys zu entschl&uuml;sseln.</LI>
<LI><B>disk:</B> Wenn die key-Methode fehlschl&auml;gt (z.B. wenn keine
Player-Schl&uuml;ssel dabei sind), so versucht MPlayer, den
disk key mit Hilfe eines brute-force-Algorithmusses zu knacken. Dieser
Prozess belastet die CPU sehr und ben&ouml;tigt mindestens 64MB Speicher
(16M 32Bit breite Eintr&auml;ge in einer Hashtabelle), um tempor&auml;re
Werte zu speichern. Diese Methode sollte immer funktionieren, ist aber
langsam.</LI>
<LI><B>title request:</B> Mit dem disk key kann MPlayer den
verschl&uuml;sselten title key anfordern, der auf <I>versteckten
Sektoren</I>, die mit <CODE>ioctl()</CODE> ausgelesen werden, auf der DVD
gespeichert ist. Der Gebietsschutz der RPC-2-konformen DVD-Laufwerke
wird in diesem Schritt realisiert. Bei manchen Laufwerken kann dieser
Schritt fehlschlagen. Wenn die Anforderung erfolgreich war, wird der
title key mit dem bus key und dem disk key entschl&uuml;sselt.</LI>
<LI><B>title:</B> Diese Methode wird dann benutzt, wenn die Anforderung
f&uuml;r den title key fehlgeschlagen ist. Sie basiert nicht auf einem
Datenaustausch mit dem DVD-Laufwerk sondern benutzt einen kryptographischen
Angriff, der den title key versucht zu erraten. (Dabei wird versucht, sich
wiederholende Muster im entschl&uuml;sselten Inhalt der VOBs zu finden.
Geraten wird dann, dass die ersten verschl&uuml;sselten Bytes des dazu
passenden verschl&uuml;sselten Textes
eine Weiterf&uuml;hrung dieser Muster sind.) Diese Methode ist auch als
"known plaintext attack" (Angriff bei bekanntem Klartext) oder "DeCSSPlus"
bekannt. In seltenen F&auml;llen kann auch diese Methode fehlschlagen,
wenn nicht genug verschl&uuml;sselte Daten auf der DVD vorhanden sind,
um einen statistischen Angriff zu starten, oder weil sich der Schl&uuml;ssel
mitten in einem Titel &auml;ndert. Diese Methode ist die
einzige M&ouml;glichkeit, den auf der Festplatte gespeicherten Inhalt einer
DVD zu entschl&uuml;sseln und bei RPC2-Laufwerken mit falschem Regionalcode
(langsam).</LI>
</OL>
<P>RPC-1-konforme DVD-Laufwerke sind nur &uuml;ber den Gebietsschutz
gesch&uuml;tzt, den der Softwareplayer bietet. RPC-2-konforme Laufwerke haben
dagegen einen Hardwareschutz, der es nur f&uuml;nf mal erlaubt, den Gebietscode
zu &auml;ndern. Es ist evtl. n&ouml;tig oder empfehlenswert, dass du Firmware
f&uuml;r dein Laufwerk zu finden, die nur einen RPC-1-Schutz implementiert.
Firmwareupgrades k&ouml;nnen auf dieser
<A HREF="http://perso.club-internet.fr/farzeno/firmware/">Firmwareseite</A>
gefunden werden. Solltest du dort keine Firmware f&uuml;r dein Laufwerk finden,
so kannst du mit dem
<A HREF="http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz">
region set tool</A> den Gebietscode deines DVD-Laufwerks &auml;ndern (klappt
nur unter Linux). <B>Warnung:</B> Du kannst nur f&uuml;nf mal den Gebietscode
&auml;dnern.</P>
<H2><A NAME="vcd">4.3 VCD Wiedergabe</A></H2>
<P><B>Abspielen von Standard Video-CDs:</B></P>
<P><CODE>mplayer vcd://&lt;Tracknummer&gt; [-cdrom-device
&lt;Ger&auml;t&gt;]</CODE></P>
<P>Beispiele:<BR>
<CODE>mplayer vcd://2 -cdrom-device /dev/hdc</CODE><BR></P>
<P>Das Standard-CD-Rom-Laufwerk ist <CODE>/dev/cdrom</CODE>. Falls das bei dir
nicht der Fall ist, erstelle einen symbolischen Link oder gib das richtige
Ger&auml;t mit <CODE>-cdrom-device</CODE> auf der Kommandozeile an.</P>
<P><B>Anmerkung</B>: Zumindest einige Plextor- und Toshiba-SCSI-CD-Rom-Laufwerke
haben eine grauenvolle Geschwindkeit beim Lesen von VCDs. Das liegt daran,
dass der ioctl-Aufruf CDROMREADRAW nicht vollst&auml;ndig implementiert ist.
Wenn du Ahnung von der SCSI-Programmierung hast, dann
<A HREF="../tech/patches.txt">hilf uns</A>, generische Unterst&uuml;tzung
f&uuml;r VCD auf SCSI-Laufwerken zu implementieren.</P>
<P>Bis dahin kannst du mit
<A HREF="http://140.132.1.204/OS/Linux/packages/X/viewers/readvcd/">readvcd</A>
Daten von der VCD extrahieren und diese mit MPlayer abspielen.</P>
<H4>VCD-Struktur</H4>
<P>Eine VCD besteht aus einem oder mehreren Spuren:</P>
<UL>
<LI>Die erste Spur ist eine kleine Datenspur mit 2048 Bytes pro Sektor, die
ein ISO9660-Dateisystem enth&auml;lt, auf dem meist ein VCD-Player
f&uuml;r Windows und eventuell auch andere Informationen (Bilder, Texte
etc.) gespeichert sind.</LI>
<LI>Die zweite Spur und alle folgenden sind MPEG-Spuren mit 2324 Bytes pro
Sektor, die ein MPEG-PS-Datenpaket pro Sektor anstelle des Dateisystems
enthalten. &Auml;hnlich wie bei Audio-CDs k&ouml;nnen diese Spuren
<B>nicht gemountet</B> werden (hast du jemals eine Audio-CD gemountet,
um sie abzuspielen?). Da die meisten Filme sich auf der zweiten Spur
befinden, solltest du zuerst <CODE>vcd://2</CODE> ausprobieren.</LI>
<LI>Es existieren auch VCDs ohne die erste Spur (nur eine Spur, &uuml;berhaupt
kein Dateisystem). Diese lassen sich abspielen aber nicht mounten.</LI>
</UL>
<H4>&Uuml;ber .DAT-Dateien:</H4>
<P>Die ca. 600MB gro&szlig;e sichtbare Datei auf der ersten Spur der
gemounteten VCD ist keine echte Datei! Es handelt sich dabei um ein sogenanntes
ISO-Gateway, das erstellt wurde, um Windows zu erm&ouml;glichen, solche Spuren
zu lesen (Windows erlaubt Anwendungen den direkten Zugtriff auf das Laufwekr
n&auml;mlich nicht). Unter Linux kannst du diese Datei weder einfach kopieren
noch einfach abspielen (sie enthalten dann nur M&uuml;ll). Unter Windows geht
das, weil der ISO9660-Treiber den direkten Zugriff auf die Spur emuliert. Um
eine .DAT-Datei abzuspielen, brauchst du einen Kerneltreiber, der in der
Linux-Version von PowerDVD enthalten ist. Er enth&auml;lt einen modifizierten
Treiber f&uuml;r das ISO9660-Dateisystem (<CODE>vcdfs/isofs-2.4.X.o</CODE>),
der ebenfalls in der Lage ist, das direkte Auslesen &uuml;ber diese .DAT-Datei
zu emulieren. Wenn du die Disc mit diesem Treiber mountest, dann kannst du die
.DAT-Datei kopieren und sogar direkt mit MPlayer abspielen. Das wird
aber <B>nicht</B> mit dem Standard-ISO9660-Treiber funktionieren! Benutze dabei
<CODE>-vcd</CODE>. Alternativen f&uuml;r's Kopieren einer VCD sind der neue <A
HREF="http://www.elis.rug.ac.be/~ronsse/cdfs/">cdfs</A>-Kerneltreiber (der
nicht Teil des offiziellen Kernels ist), der CD-<I>Sessions</I> als Abbilder
anzeigt, und <A HREF="http://cdrdao.sourceforge.net/">cdrdao</A>, ein
Anwendung zum Bit-f&uuml;r-Bit-Grabben/Kopieren von CDs.</P>
</BODY>
</HTML>

View File

@ -1,602 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Codecs - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H2><A NAME="codecs">2.2 Unterst&uuml;tzte Codecs</A></H2>
<H3><A NAME="video_codecs">2.2.1 Video-Codecs</A></H3>
<P>Siehe
<A HREF="http://www.mplayerhq.hu/DOCS/codecs-status.html">Codec-Status</A>-Seite
f&uuml;r die komplette, t&auml;glich generierte Liste. Eine Vielzahl von
Codecs kann von unserer Homepage runtergeladen werden. Du findest sie auf der
<A HREF="http://www.mplayerhq.hu/MPlayer/releases/codecs/">Codec-Seite</A>.</P>
<P>Die wichtigsten Video-Codecs:</P>
<UL>
<LI><B>MPEG1</B>- (<B>VCD</B>) und <B>MPEG2</B>-Video (<B>DVD</B>)</LI>
<LI>eingebauter Dekoder f&uuml;r <B>DivX ;-)<B>, <B>OpenDivX</B>,
<B>DivX4</B>, <B>DivX5</B>, <B>M$ MPEG4</B> v1, v2 und andere
MPEG4-Varianten</LI>
<LI>eingebauter Decoder f&uuml;r <B>Windows Media Video 7/8</B>
(<B>WMV1/WMV2</B>) und Win32-DLL-Decoder f&uuml;r <B>Windows Media Video
9</B> (<B>WMV3</B>). Beide werden in .wmv-Dateien verwendet.</LI>
<LI>eingebauter <B>Sorenson 1 (SVQ1)</B> Decoder</LI>
<LI>Win32/QT <B>Sorenson 3 (SVQ3)</B> Decoder</LI>
<LI><B>3ivx</B>-Decoder f&uuml;r v1 und v2</LI>
<LI>Cinepak und <B>Intel Indeo</B> Codecs (3.1, 3.2, 4.1, 5.0)</LI>
<LI><B>MJPEG</B>, AVID, VCR2, ASV2 und andere Hardwareformate</LI>
<LI>VIVO 1.0, 2.0, I263 und andere <B>h263</B>(+)-Varianten</LI>
<LI>FLI/FLC</LI>
<LI><B>RealVideo 1.0</B> von libavcodec und <B>RealVideo 2.0</B>, <B>3.0</B>
und <B>4.0</B> durch die RealPlayer-Libraries</LI>
<LI>eingebauter Decoder f&uuml;r HuffYUV</LI>
<LI>Verschiedene alte, einfache RLE-&auml;hnliche Formate</LI>
</UL>
<P>Wenn du einen Win32-Codec hast, der noch nicht aufgelistet und
unterst&uuml;tzt ist, dann lies <A HREF="#importing">Win32
Codec-Importierungs-HOWTO</A> und hilf uns, die Unterst&uuml;tzung
hinzuzuf&uuml;gen.</P>
<H4><A NAME="divx">2.2.1.1 DivX4/DivX5</A></H4>
<P>Diese Sektion enth&auml;lt Informationen &uuml;ber den DivX4- und
Divx5-Codec vom <A HREF="http://www.projectmayo.com">Project Mayo</A>. Ihre
ersten verf&uuml;gbaren alpha-Versionen waren OpenDivX 4.0 alpha 47 und 48.
Unterst&uuml;tzung daf&uuml;r war fr&uuml;her standardgem&auml;&szlig; in
MPlayer eingebaut. Es wurde auch deren Postprocessing Code verwendet, um
optional die Bildqualit&auml;t von MPEG1/2-Filmen zu verbessern. Nun benutzen
wir unseren eigenen f&uuml;r alle Dateitypen.</P>
<P>Die neue Version dieses Codecs heisst DivX4Linux und kann sogar Filme
decodieren, die mit dem ber&uuml;chtigten DivX-Codec (DivX 3 ;-)) erzeugt
wurden! Dazu ist sie noch um einiges schneller als die traditionelle
Win32-DivX-DLL aber immer noch langsamer als libavcodec. Vom Gebrauch dieses
Codecs wird desshalb <B>abgeraten</B>. Er l&auml;sst sich jedoch trotzdem zum
Encodieren verwenden. Ein Nachteil diese Codecs ist, dass er zurzeit
nicht unter einer OpenSource-Lizenz verf&uuml;gbar ist.</P>
<P>MPlayer erkennt automatisch, ob DivX4/DivX5 korrekt installiert ist,
du kannst ihn wie gew&ouml;hnlich kompilieren. Wenn es nicht erkannt wird,
wurde es nicht korrekt installiert oder konfiguriert.</P>
<P>DivX4Linux arbeitet in zwei verschiedenen Modi:</P>
<DL>
<DT><CODE>-vc odivx</CODE></DT>
<DD>Spricht den Codec so wie den alten OpenDivX-Codec an. In diesem Fall
produziert der Codec YV12-Bilder in seinem eigenen Puffer, und
MPlayer nimmt die Farbraumkonvertierung mittels libvo vor
(<B>schneller und empfohlener Modus!</B>).</DD>
<DT><CODE>-vc divx4</CODE></DT>
<DD>Benutzt die Farbraumkonvertierung des Codecs. In diesem Modus kannst
du auch YUY2/UYVY benutzen (<B>LANGSAM</B>).</DD>
</DL>
<P>Der <CODE>-vc odivx</CODE>-Modus ist normalerweise schneller, da er die
Daten in einem YV12-Format (planares YUV 4:2:0) &uuml;bermittelt, was weniger
Bandbreite f&uuml;r den Bus bedeutet. F&uuml;r gepackte YUV-Formate (YUY2,
UYVY) verwende den <CODE>-vc divx4</CODE>-Modus. F&uuml;r den RGB-Modus ist die
Geschwindigkeit gleich und h&auml;ngt am ehesten von deiner momentanen
Farbtiefe ab.</P>
<P><B>Hinweis:</B> Wenn der -vo-Treiber "direct rendering" unterst&uuml;tzt,
ist <CODE>-vc divx4</CODE> wahrscheinlich die schnellere oder sogar die
schnellste L&ouml;sung.</P>
<P>Die bin&auml;re DivX4/5-Bilbiothek kann von
<A HREF="http://avifile.sourceforge.net">avifile</A> oder
<A HREF="http://www.divx.com">divx.com</A> heruntergeladen werden.
heruntergeladen werden. Entpacke ihn, starte <CODE>./install.sh</CODE> als
root, und vergiss nicht, <CODE>/usr/local/lib</CODE> deiner
<CODE>/etc/ld.so.conf</CODE> hinzuzuf&uuml;gen und <CODE>ldconfig</CODE>
aufzurufen.</P>
<P>Besorge dir die CVS-Version der ALTEN OpenDivX-Kernbibliothek wie folgt:</P>
<OL>
<LI><CODE>cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot
login</CODE></LI>
<LI><CODE>cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co
divxcore</CODE></LI>
<LI>Diese Kernbibliothek inst in eine Dekodierbibliothek und eine
Enkodierbibliothek aufgeteilt, sie separat compiliert werden m&uuml;ssen.
Bei der Dekodierbibliothek gibst du einfach folgendes ein:
<PRE>
cd divxcore/decore/build/linux
make
cp libdivxdecore.so /usr/local/lib
ln -s libdivxdecore.so /usr/local/lib/libdivxdecore.so.0
cp ../../src/decore.h /usr/local/include
</PRE>
</LI>
<LI>F&uuml;r die Enkodierbibliothek gibt es leider kein Linux-Makefile,
und der MMX-optimierte Code funktioniert auch nur unter Windows. Du kannst
die Bibliothek aber trotzdem compilieren, wenn du dieses
<A HREF="ftp://ftp.mplayerhq.hu/MPlayer/contrib/divx-mf/Makefile">
Makefile</A> benutzt:
<PRE>
cd ../../../encore/build
mkdir linux
cd linux
cp path/Makefile .
make
cp libdivxencore.so /usr/local/lib
ln -s libdivxencore.so /usr/local/lib/libdivxencore.so.0
cp ../../src/encore.h /usr/local/include
</PRE>
</LI>
</OL>
<P>MPlayer findet DivX4/DivX5 automatisch, sofern es richtig installiert
wurde. Compiliere also einfach wie sonst auch. Wenn <CODE>configure</CODE>
die Bibliothek nicht findet, dann hast du DivX4/5 einfach nicht richtig
installiert.</P>
<H4><A NAME="libavcodec">2.2.1.2 FFmpeg's DivX/libavcodec</A></H4>
<P>Das <A HREF="http://ffmpeg.sourceforge.net">FFmpeg</A>-Projekt enth&auml;lt
ein <B>Open-Source</B>-Codec-Paket, das f&auml;hig ist, mit
H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1/WMV2/HuffYUV codiertes Video
und mit WMA (Windows Media Audio) codiertes Audio zu decodieren. Man kann nicht
nur einige dieser Codecs zum Encodieren benutzen, sondern die Geschwindigkeit
ist sogar um einiges h&auml;her als die der Win32-Codecs oder der ProjectMayo
DivX4/5-Bibliothek!</P>
<P>FFmpeg beinhaltet auch viele nette Codecs. Die wichtigsten sind die
MPEG4-Varianten: DivX3, DivX4, DivX5, Windows Media Video 7 (WMV1). Ein
weiterer sehr interessanter Deocder ist der f&uuml;r WMA.</P>
<P>Wenn ein offizielles MPlayer-Release verwendet wird, befindet sich
libavcodec (die Codec-Bilbiothek des FFmpeg-Projektes) bereits im Paket,
welches normal kompiliert werden kann. Wenn du die MPlayer-Sourcen per
CVS runterl&auml;dst, musst du die libavcodec vom FFmpeg CVS-Server verwenden,
da das offizielle FFmpeg-Release 0.4.5 <B>nicht</B> mit MPlayer
zusammen l&auml;uft. Um dies zu erreichen gibst du folgendes ein:</P>
<OL>
<LI><CODE>cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg
login</CODE></LI>
<LI><CODE>cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg
co ffmpeg</CODE></LI>
<LI>Das <CODE>libavcodec</CODE>-Verzeichnis von den FFmpeg-Sourcen muss in's
Hauptverzeichnis des MPlayer CVS-Baums verschoben/kopiert werden.
Es sollte etwa so aussehen:
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>main/libavcodec</CODE></P>
Das Erstellen eines symbolischen Links ist <B>nicht</B> genug; es muss
kopiert/verschoben werden!</LI>
<LI>Es folgt die Compilierung. configure sollte Probleme vor der
Compilierung erkennen.</LI>
</OL>
<P><B>Hinweis:</B> Die MPlayer-Sourcen im CVS enthalten ein
libavcodec-Unterverzeichnis. Es enth&auml;lt jedoch <B>nicht</B> den Quellcode
von libavcodec! Du musst - wie oben beschrieben - dir die CVS-Version von
FFmpeg besorgen.</P>
<P>Mit FFmpeg und meiner Matrox G400 kann ich sogar DivX-Filme in hoher
Aufl&ouml;sung auf meinem K6/2 500 ohne Framedrops betrachten.</P>
<H4><A NAME="xanim">2.2.1.3 XAnim-Codecs</A></H4>
<H4>VORWORT</H4>
<P>Es ist darauf hinzuweisen, dass die XAnim-Binary-Codecs mit
einem Textst&uuml;ck geliefert werden, das eine legal bindende Softwarelizenz
sein soll, welche (neben einigen anderen Einschr&auml;nkungen) dem Benutzer das
Verwenden der Codecs mit anderen Programmen als XAnim verbietet. Der
XAnim-Autor hat jedoch noch keine rechtliche Schritte gegen irgendjemanden
wegen Codec bezogenen Fragen unternommen.</P>
<H4>INSTALLATION UND BEDIENUNG</H4>
<P>MPlayer kann XAnims Codecs f&uuml;r das Decodieren verwenden. Um
diese zu aktivieren, solltest folgenden Anweisungen folgen:</P>
<OL>
<LI>Lade dir die Codecs, die du verwenden willst, von der
<A HREF="http://xanim.va.pubnix.com">XAnim-Seite</A> herunter.
Der <B>3ivx</B> Codec befindet sich nicht dort. Er kann jedoch von der
<A HREF="http://www.3ivx.com">3ivx-Seite</A> heruntergeladen werden.</LI>
<LI><B>ODER</B> lade dir das Codec-Paket von unserer
<A HREF="http://www.mplayerhq.hu/MPlayer/releases/codecs/">Codecseite</A>
herunter.</LI>
<LI>Verwende die <CODE>--with-xanimlibdir</CODE>-Option, um configure zu
sagen, wo es die XAnim-Codecs finden kann. Normalerweise werden diese in
<CODE>/usr/local/lib/xanim/mods</CODE>, <CODE>/usr/lib/xanim/mods/</CODE>
und <CODE>/usr/lib/xanim</CODE> gesucht. Weiterhin kannst du auch die
Umgebungsvariable <I>XANIM_MOD_DIR</I> auf den Verzeichnisnamen
der XAnim-Codecs setzen.</LI>
<LI>Entferne/Symlinke die Dateinamen, wobei du das Architektur-Zeugs
l&ouml;schst, sodass die Dateinamen etwa so aussehen:
<CODE>vid_cvid.xa</CODE>, <CODE>vid_h263.xa</CODE>,
<CODE>vid_iv50.xa</CODE>.</LI>
</OL>
<P>XAnim ist die Videocodec-Familie <CODE>xanim</CODE>. Du kannst also die
<CODE>-vfm xanim</CODE>-Option verwenden, um MPlayer zu sagen, dass er
sie, wenn m&ouml;glich, verwenden soll.</P>
<P>Die getesteten Codecs beinhalten: <B>Indeo 3.2</B>, <B>4.1</B>, <B>5.0</B>,
<B>CVID</B>, <B>3ivX</B>, <B>h263</B>.</P>
<H4><A NAME="vivo_video">2.2.1.4 VIVO-Video</A></H4>
<P>MPlayer kann VIVO (1.0 und 2.0) Videos abspielen. Der beste geeignete Codec
f&uuml;r 1.0-Dateien ist FFmpegs H263-Decoder. Du kannst ihn mit der <CODE>-vc
ffh263</CODE>-Option aufrufen. F&uuml;r v2.0-Dateien musst du die Win32-DLLs
mit der Option <CODE>-vc vivo</CODE> benutzen. Wenn du keine expliziten Angaben
zum Codec auf der Kommandozeile machst, so w&auml;hlt MPlayer automatisch den
besten aus.</P>
<H4><A NAME="mpeg">2.2.1.5 MPEG 1/2-Video</A></H4>
<P>MPEG1 und MPEG2 werden von der eingebauten Multiplatform-Bibliothek
<B>libmpeg2</B> decodiert, deren Source in MPlayer enthalten ist. Wir
spielen fehlerhafte MPEG1/2-Videos durch das Abfangen des sig11 (segmentation
fault) und die anschlie&szlig;end schnelle Neuinitialisierung des Codecs ab.
Dadurch kann exakt an der Stelle des Fehlers fortgefahren werden. Es ist dabei
kein Geschwindigkeitsverlust messbar.</P>
<H4><A NAME="ms_video1">2.2.1.6 MS Video 1</A></H4>
<P>Dies ist dein sehr alter und sehr schlechter Codec von Microsoft. In der
Vergangenheit wurde es mit dem <CODE>msvidc32.dll</CODE> Win32-Codec decodiert,
aber nun haben wir einen Open-Source-Codec (von <A
HREF="mailto:melanson@pcisys.net">Mike Melanson</A>) eingebaut.</P>
<H4><A NAME="cinepak">2.2.1.7 Cinepak CVID</A></H4>
<P>MPlayer verwendet normalerweise seinen eigenen, Open-Source
multiplatformf&auml;higen Cinepak-Decoder, der von <A
HREF="mailto:timf@csse.monash.edu.au">Dr. Tim Ferguson</A> geschrieben wurde.
Er unterst&uuml;tzt YUV-Ausgabe, was Hardwarescaling erm&ouml;glicht, wenn dies
vom Videoausgabetreiber unterst&uuml;tzt wird.</P>
<H4><A NAME="realvideo">2.2.1.8 RealVideo</A></H4>
<P>MPlayer unterst&uuml;tzt die Dekodierung aller Versionen von
RealVideo:</P>
<UL>
<LI>RealVideo 1.0 (fourcc RV10) - En/Dekodierung durch <B>libavcodec</B>
unterst&uuml;tzt</LI>
<LI>RealVideo 2.0, 3.0, 4.0 (fourcc RV20, RV30, RV40) - Dekodierung durch die
<B>RealPlayer Libraries</B> unterst&uuml;tzt</LI>
</UL>
<P> Es wird empfohlen, RealPlayer8 oder RealONE herunterzuladen und zu
installieren, da MPlayer deren Bibliotheken verwenden kann, um RealVideo
2.0, 3.0 oder 4.0 zu decodieren. Das <CODE>configure</CODE>-Script von
MPlayer sollte die RealPlayer-Bibliotheken an der normalen Stelle der
Vollinstallation finden. Falls nicht, kannst du <CODE>configure</CODE>
&uuml;ber die Option <CODE>--with-reallibdir</CODE> mitteilen, wo sie zu
suchen/finden sind.</P>
<P><B>Hinweis:</B> Momentan <B>funktionieren die RealPlayer-Bibliotheken nur
mit Linux, FreeBSD, NetBSD und Cygwin auf der x86 oder der Alpha-Plattform.</B>
</P>
<H4><A NAME="xvid">2.2.1.9 XviD</A></H4>
<P><A HREF="http://www.xvid.org/"><B>XviD</B></A> ist eine abgespaltene
Entwicklung des OpenDivX-Codecs. Es geschah, als ProjectMayo OpenDivX in das
ClosedSource-Projekt DivX4 (jetzt DivX5) &auml;nderte, woraufhin die Leute, die
an OpenDivX aber nicht beim ProjectMayo arbeiteten, sauer wurden und XviD
starteten. Beide Projekte haben also den selben Urpsrung.</P>
<H4>VORTEILE</H4>
<UL>
<LI>Open Source</LI>
<LI>Das API ist kompatibel mit DivX4, sodass es leicht ist,
Unterst&uuml;tzung daf&uuml;r einzubauen.</LI>
<LI>2-Pass Encodierungs-Unterst&uuml;tzung</LI>
<LI>gute Encodierungsqualit&auml;t, h&ouml;here Geschwindigkeit als DivX4
(man kann es w&auml;hrend des Compilierens f&uuml;r den jeweiligen Rechner
optimieren)</LI>
</UL>
<H4>NACHTEILE</H4>
<UL>
<LI>Es <B>decodiert</B> momentan nicht alle DivX/DivX4-Dateien sauber
(kein Problem, da man sie ja immer noch mit der libavcodec abspielen kann).
</LI>
<LI>Man muss sich beim Compilieren f&uuml;r die DivX4- <B>ODER</B>
XviD-Unterst&uuml;tzung entscheiden.</LI>
<LI>in der Entwicklung</LI>
</UL>
<H4>INSTALLATION DER XVID-CVS-VERSION</H4>
<P>XviD ist momentan nur als CVS erh&auml;ltlich. Hier sind die
Download- und Installations-Anweisungen:</P>
<OL>
<LI><CODE>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login</CODE></LI>
<LI><CODE>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co
xvidcore</CODE></LI>
<LI><CODE>cd xvidcore/build/generic</CODE></LI>
<LI>&auml;ndere <CODE>Makefile.linux</CODE> deinen Bed&uuml;rfnissen
entsprechend</LI>
<LI><CODE>make -f Makefile.linux</CODE><LI>
<LI>Nimm die <CODE>encore2.h</CODE> und <CODE>decore.h</CODE> vom
Divx4linux-Paket und kopiere diese nach <CODE>/usr/local/include/</CODE>.
</LI>
<LI>compiliere MPlayer neu mit
<CODE>--with-xvidcore=/pfad/zu/libcore.a</CODE>.</LI>
</OL>
<H4><A NAME="sorenson">2.2.1.10 Sorenson</A></H4>
<P><B>Sorenson</B> ist eine von Sorenson Media entwickelte und von Apple
lizensierte Videocodecfamilie. Wir sind momentan in der Lage, alle Videos zu
decodieren, die mit einer der folgenden Sorenson-Versionen erstellt wurden:</P>
<UL>
<LI>Sorenson 1 (fourcc <I>SVQ1</I>) - Decodierung durch <B>selbstentwickelte
Codecs</B>. Tats&auml;chlich gibt es zwei (qualitativ nahezu identische)
Decoder f&uuml;r SVQ1: Einer ist der in MPlayer enthaltene
OpenSource-Codec, der andere ist der in libavcodec vorhandene Decoder.
Du kannst sie mit <CODE>-vc svq1</CODE> respektive <CODE>-vc ffsvq1</CODE>
benutzen. Manche Dateien funktionieren eventuell nur mit einem der beiden
Decoder. Probier als bei problematischen Dateien beide Decoder aus.
Der Decoder wurde von den
<A HREF="http://www.xinehq.de">xine</A>-Autoren geschrieben.</LI>
<LI>Sorenson 3 (fourcc <I>SVQ3</I>) - Decodierung mit den
<B>Win32-QuickTime-Bibliotheken</B></LI>
</UL>
<H4>COMPILIERUNG VON MPLAYER MIT UNTERST&Uuml;TZUNG F&Uuml;R
QUICKTIME-BIBLIOTHEKEN</H4>
<P><B>Anmerkung:</B> Momentan wird nur die 32bit-Intel-Architektur
unterst&uuml;tzt. </P>
<OL>
<LI>Lade die CVS-Version von MPlayer herunter.</LI>
<LI>Compiliere MPlayer mit:<BR>
<CODE>$ ./configure --enable-qtx-codecs</CODE></LI>
<LI>Lade dir das QuickTime-DLL-Paket von
<A HREF="http://www.mplayerhq.hu/MPlayer/releases/codecs">http://www.mplayerhq.hu/MPlayer/releases/codecs</A>
herunter.</LI>
<LI>Entapcke die QuickTime-DLLs in dein Win32-Codec-Verzeichnis, das
standardm&auml;&szlig;ig <CODE>/usr/lib/codecs</CODE> ist.</LI>
</OL>
s
<H3><A NAME="audio_codecs">2.2.2 Audio-Codecs</A></H3>
<P>Die wichtigsten Audiocodecs als erstes:</P>
<UL>
<LI>MPEG layer 2 und layer 3 (MP3) Audio (<B>eingebauter</B> Code, mit
MMX/SSE/3DNow!-Optimierungen)</LI>
<LI>MPEG layer 1 Audio (<B>eingebauter</B> Code, mit libavcodec)</LI>
<LI>Windows Media Audio 9 (WMAv3) (mit der DMO-DLL)</LI>
<LI>AC3 Dolby Audio (<B>eingebauter</B> Code, mit
MMX/SSE/3DNow!-Optimierungen)</LI>
<LI>Ogg Vorbis Audiocodec (<B>eingebaute</B> Bibliothek)</LI>
<LI>RealAudio: DNET (AC3 mit niedriger Bitrate), Cook, Sipro, Atrac</LI>
<LI>QuickTime: Qualcomm und QDesign Audiocodecs</LI>
<LI>VIVO Audio (G723, Vivo Siren)</LI>
<LI>Voxware Audio (Verwendung der DirectShow-DLL)</LI>
<LI>alaw, MSGSM, PCM und andere einfache, alte Audioformate</LI>
</UL>
<H4><A NAME="software_ac3">2.2.2.1 AC3-Decodierung in Software</A></H4>
<P>Dieser ist der standardm&auml;&szlig;e Dekoder f&uuml;r Dateien mit
AC3-Audio.</P>
<P>Der AC3 Dekoder kann die Audio-Ausgabe f&uuml;r 2, 4 oder 6 Lautsprecher
erzeugen. Wenn er f&uuml;r 6 Lautsprecher konfigieriert ist, unterst&uuml;tzt
dieser Decoder die Ausgabe aller AC3-Kan&auml;le an den Soundtreiber. Damit
erm&ouml;glicht er die vollst&auml;ndige "Surround Sound"-Erfahrung ohne einen
externen AC3-Decoder, der bei der Verwendung des hwac3-Codecs n&ouml;tig
ist.</P>
<P>Verwende die <CODE>-channels</CODE>-Option um die Anzahl der
Ausgabekan&auml;le zu w&auml;hlen. Verwende <CODE>-channels 2</CODE> f&uuml;r
Downmix auf Stereo. F&uuml;r Downmix auf 4 Kan&auml;le (links vorne, rechts
vorne, links Surround und rechts Surround) verwende <CODE>-channels 4</CODE>.
In diesem Fall werden alle Center-K&auml;nale gleichm&auml;&szlig;ig den
Frontkan&auml;len beigemischt. <CODE>-channels 6</CODE> gibt alle
AC3-Kan&auml;le wie Aufgezeichnet in der Reihenfolge links, rechts,
links Surround, rechts Surround, Center und LFE aus.</P>
<P>Die Standardanzahl der Ausgabekan&auml;le ist 2.</P>
<P>Um mehr als 2 Kan&auml;le zu verwenden, musst du OSS verwenden und eine
Soundkarte besitzen, die die Anzahl der Ausgabekan&auml;le via
SNDCTL_DSP_CHANNELS ioctl unterst&uuml;tzt. Ein Beispiel eines passenden
Treibers ist emu10k1 (verwendet bei SB Live! Karten) vom August 2001 oder neuer
(ALSA CVS sollte auch funktionieren).</P>
<H4><A NAME="hardware_ac3">2.2.2.2 AC3 Decodierung in Hardware</A></H4>
<P>Du brauchst eine AC3-f&auml;hige Soundkarte mit einem Digitalausgang
(SP/DIF). Der Treiber muss das AFMT_AC3 Format richtig unterst&uuml;tzen (wie
z.B. der f&uuml;r die C-Media-Karten). Verbinde den AC3-Decoder mit dem
SP/DIF-Ausgang, und benutze die Option <CODE>-ac hwac3</CODE>. Dieser Code
ist not experimentell, laeuft aber bekannterma&szlig;en mit C-Media-Karten,
SoundBlaster Live!-Karten mit dem ALSA-Treiber (aber nicht mit dem OSS-Treiber)
und mit den DXR3/Hollywood+-MPEG-Decoderkarten.</P>
<H4><A NAME="libmad">2.2.2.3 libmad-Unterst&uuml;tzung</A></H4>
<P><A HREF="http://mad.sourceforge.net">libmad</A> ist eine
Multiplattform-Bibliothek f&uuml;r die Decodierung von MPEG-Audio. Sie
verarbeitet kaputte Dateien nicht so gut und hat teilweise Probleme mit dem
Suchen.</P>
<P>Um die Unterst&uuml;tzung zu aktivieren, verwende configure mit der Option
<CODE>--enable-mad</CODE>.</P>
<H4><A NAME="vivo_audio">2.2.2.4 VIVO-Audio</A></H4>
<P>Der verwendete Audiocodec in VIVO-Dateien h&auml;ngt davon ab, ob es eine
VIVO/1.0- oder VIVO/2.0-Datei ist. VIVO/1.0-Dateien verwenden
<B>g.723</B>-Audio und VIVO/2.0-Dateien <B>Vivo-Siren</B>-Audio. Beide werden
unterst&uuml;tzt.</P>
<H4><A NAME="realaudio">2.2.2.5 RealAudio</A></H4>
<P>MPlayer unterst&uuml;tzt die Dekodierung fast aller
RealAudio-Versionen:</P>
<UL>
<LI>RealAudio DNET - Decodierung durch <B>liba52</B></LI>
<LI>RealAudio Cook/Sipro/Atrac - Decodierung durch die
<B>RealPlayer-Bibliotheken</B></LI>
</UL>
<P>Wie die RealPlayer Libraries installiert werden k&ouml;nnen, wird in der
<A HREF="#realvideo">RealVideo-Sektion</A> behandelt.</P>
<H4><A NAME="qdesign">2.2.2.6 QDesign-Codecs</A></H4>
<P>QDesign-Audio (fourcc: <I>QDMC</I>, <I>QDM2</I>) findest du in
MOV/QT-Dateien. Beide Versionen dieses Codecs k&ouml;nnen mit den
QuickTime-Bibliotheken decodiert werden. Schau in der <A
HREF="#sorenson">Sorenson-Video-Codec-Sektion</A> f&uuml;r
Installationsanweisungen nach.</P>
<H4><A NAME="qclp">2.2.2.7 Qualcomm-Codec</A></H4>
<P>Qualcomm-Audiostreams (FourCC: <I>Qclp</I>) finden sich in MOV/QT-Dateien.
Sie k&ouml;nnen mit den Quicktime-Bibliotheken decidiert werden.
Installationsanweisungen findest du in der Sektion &uuml;ber den
<A HREF="#sorenson">Sorenson Videocodec</A>.</P>
<H3><A NAME="importing">2.2.3 Win32 Codec-Importierungs-HOWTO</A></H3>
<H4><A NAME="importing_vfw">2.2.3.1 VfW-Codecs</A></H4>
<P>VfW (Video for Windows) ist die alte Video-Schnittstelle f&uuml;r Windows.
Diese Codecs haben die Erweiterung .DLL oder (eher selten) .DRV.
Wenn MPlayer mit folgender Meldung fehlschl&auml;gt, ein AVI
abzuspielen:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>UNKNOWN video codec: HFYU (0x55594648)</CODE>
</P>
<P>...bedeutet es, dass das AVI mit einem Codec erstellt wurde, der den fourcc
HFYU besitzt (HFYU = HuffYUV-Codec, DIV3 = DivX Low Motion, usw...). Jetzt
musst du nur noch herausgefunden, welche DLL Windows l&auml;dt, um diese Datei
abzuspielen. In diesem Fall enth&auml;lt die <CODE>System.ini</CODE> diese
Information in solch einer Zeile:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>VIDC.HFYU=huffyuv.dll</CODE></P>
<P>Also braucht man die Datei huffyuv.dll. Hinweis: die Audio-Codecs werden
durch das MSACM-Prefix angegeben:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>msacm.l3acm=L3codeca.acm</CODE></P>
<P>Dies ist ein MP3 Codec. Da du nun alle n&ouml;tigen Informationen hast
(fourcc, Codec-Datei, AVI-Beispiel), solltest du per Mail um Unterst&uuml;tzung
f&uuml;r diesen Codec bitten und die Dateien auf folgenden FTP-Server
hochladen:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/</CODE></P>
<P><B>Anmerkung:</B> Auf Windows NT/2000/XP-Systemem solltest du in der Registry
nach diesen Informationen suchen, also z.B. nach "VIDC.HFYU". Um herauszufinden,
wie das geht, lies die Sektion "alte DirectShow-Methode".</P>
<H4><A NAME="importing_directshow">2.2.3.2 DirectShow Codecs</A></H4>
<P>DirectShow ist die neuere Video-Programmierschnittstelle, welche noch
schlimmer als ihr Vorg&auml;nger ist. Den Namen der DLL herauszufinden ist bei
DirectShow schwieriger, weil...</P>
<UL>
<LI>die <CODE>system.ini</CODE> nicht mehr die ben&ouml;tigten Informationen
enth&auml;lt (stattdessen stehen diese in der Registry), und weil</LI
<LI>man die GUID des Codecs braucht.</LI>
</UL>
<P><B>Neue Methode:</B> mittels Microsoft GraphEdit (schnell)</P>
<OL>
<LI>Besorg dir GraphEdit entweder aus dem DirectX-SDK oder von
<A HREF="http://doom9.org">Doom9</A>.</LI>
<LI>Starte <CODE>graphedit.exe</CODE>.</LI>
<LI>W&auml;hle im Men&uuml; "Graph -&gt; Insert Filters".</LI>
<LI>Klappe <CODE>DirectShow Filters</CODE> auf.</LI>
<LI>Suche und w&auml;hle den richtigen Codec, dann klappe auch diesen auf.
</LI>
<LI>Der Eintrag <CODE>DisplayName</CODE> enth&auml;lt die gesuchte GUID.
Diese steht nach dem Backslash (\) in geschweiften Klammern und besteht
aus f&uuml;nf Bl&ouml;cken mit Ziffern und Buchstaben, die jeweils mit
Punkten voneinander getrennt sind. Schreib diese GUID auf.</LI>
<LI>Der Dateiname des Codecs steht im Eintrag <CODE>Filename</CODE>.
</OL>
<P><B>Anmerkdung:</B> Wenn es keinen Eintrag namens <CODE>Filename</CODE> gibt
und der <CODE>DisplayName</CODE>-Eintrag etwas in der Art
<CODE>device:dmo</CODE> enth&auml;lt, so handelt es sich um einen DMO-Codec.</P>
<P><B>Alte Methode</B>: Atme tief durch und beginne mit dem Durchsuchen der
Registry...</P>
<OL>
<LI>Starte <CODE>regedit</CODE></LI>
<LI>Dr&uuml;cke <CODE>Strg-f</CODE>, deaktiviere die ersten beiden
Auswahlfelder und aktiviere das Dritte. Nun gib den fourcc des Codecs ein
(z.B.: TM20).</LI>
<LI>Du solltest ein Feld sehen, welches den Pfad und Dateinamen enth&auml;lt
(z.B.: <CODE>C:\WINDOWS\SYSTEM\TM20DEC.AX</CODE>).</LI>
<LI>Jetzt da man die Datei hat, braucht man die GUID. Versuche erneut zu
suchen, aber nun nach dem Codec-Namen, nicht nach der fourcc. Der
Codec-Name kann bei der Wiedergabe mit dem Windows Media Player
herausgefunden werden, indem man unter Datei -&gt; Eigenschaften -&gt;
Erweitert nachschaut. Falls dies nichts bringt, hast du Pech. Versuche zu
raten (suche z.B. nach: TrueMotion).</LI>
<LI>Wenn die GUID gefunden wurde, sollte ein FriendlyName- und ein CLSID-Feld
auftauchen. Schreibe die 16 Byte lange CLSID auf, dies ist die von uns
ben&ouml;tigte GUID.</LI>
</OL>
<P><B>Hinweis:</B> Wenn die Suche fehlschl&auml;gt, versuche alle Auswahlfelder
zu aktivieren. Du wirst m&ouml;glicherweise falsche Ergebnisse finden, aber
vielleicht hast du auch Gl&uuml;ck...</P>
<P>Da du nun alle n&ouml;tigen Informationen hast (fourcc, GUID, Codec-Datei,
AVI-Beispiel), solltest du per Mail um Unterst&uuml;tzung f&uuml;r diesen Codec
bitten und die Dateien auf folgenden FTP-Server hochladen:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/
</CODE></P>
</BODY>
</HTML>

File diff suppressed because it is too large Load Diff

View File

@ -1,376 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Encodieren - MEncoder - The Movie Encoder for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H2><A NAME="encoding">7. Encodieren mit MEncoder</A></H2>
<P>Eine komplette Auflistung aller MEncoder-Optionen und aller Beispiele
findest du in der man-page. Einige sinnvolle Beispiele und detaillierte
Anleitungen, wie die diversen Parameter benutzt werden, findest du in den
<A HREF="../tech/encoding-tips.txt">Encodierungstipps (englisch)</A>, die
von mehreren Emails auf der
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-users">mplayer-users</A>
zusammengetragen wurden. Durchsuche auch das
<A HREF="http://mplayerhq.hu/pipermail/mplayer-users/">Archiv</A>. Dort findest
du eine Unmenge an Diskussionen &uuml;ber alle m&ouml;glichen Themen rund um
die Encodierung mit MEncoder.</P>
<H3><A NAME="2pass">7.1 MPEG4-Encodierung ("DivX") in zwei oder drei
Durchl&auml;ufen </A></H3>
<P><U><B>2-pass-Encodierung:</B></U> Der Name kommt in der Tat daher, dass
diese Methode die Datei <I>zweimal</I> encodiert. Das erste Encodieren (1.
<P>Pass</I> [=Durchlauf]) erzeugt einige tempor&auml;re Dateien (*.log) mit
einer Dateigr&ouml;&szlig;e von nur wenigen MB. L&ouml;sche sie nicht (das AVI
kannst du aber l&ouml;schen). Im zweiten Pass wird die Ausgabedatei unter
Verwendung der Bitraten-Daten der tempor&auml;ren Datei erzeugt. Die
endg&uuml;ltige Datei wird deswegen eine weitaus bessere Bildqualit&auml;t
besitzen. Wenn dies das erst Mal ist, dass du davon h&ouml;rst, solltest du
einige Guides im Internet lesen.</P>
<P>Dieses Beispiel zeigt dir, wie du mit 2 Passes eine DVD in ein MPEG4-AVI
("DivX") encodierst. Nur 2 Befehle sind erforderlich:<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;rm frameno.avi</CODE> - L&ouml;sche diese Datei,
welche von einer fr&uuml;heren 3-Pass-Encodierung kommen kann (Sie f&uuml;hrt zu
einem Konflikt mit der momentanen Encodierung).<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder dvd://2 -lavcopts
vcodec=mpeg4:vpass=1 -oac copy -o film.avi</CODE><BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder dvd://2 -lavcopts
vcodec=mpeg4:vpass=2 -oac copy -o film.avi</CODE></P>
<P><U><B>3-Pass-Encodierung:</B></U> Dies ist eine Erweiterung der
2-Pass-Encodierung, in der die Encodierung von Audio in einem separaten
Durchlauf erledigt wird. Diese Methode erlaubt es MEncoder,
Vorschl&auml;ge f&uuml;r die Videobitrate zu machen, sodass das Ergebnis auf
eine CD passt. Auch wird der Ton im Unterschied zum 2-Pass nur einmal
encodiert. Das Schema: </P>
<OL>
<LI>L&ouml;sche die alte Datei:
<P>CODE>rm frameno.avi</CODE></P></LI>
<LI>Erster Durchlauf:
<P><CODE>mencoder &lt;file/DVD&gt; -ovc frameno -oac mp3lame -lameopts
vbr=3 -o frameno.avi</CODE></P>
<P>Hierbei wird ein AVI erstellt, das <B>nur</B> die gew&auml;hlte
Audiospur enth&auml;lt. Vergiss nicht, die <CODE>-lameopts</CODE> deinen
W&uuml;nschen anzupassen. Wenn du einen langen Film encodierst, so gibt
dir MEncoder am Schluss die empfohlenen Videobitraten aus, damit
ein resultierender Film auf eine 650MB-, eine 700MB- oder eine 800MB-CD
passt.</P></LI>
<LI>Zweiter Durchgang:
<P><CODE>mencoder &lt;file/DVD&gt; -oac copy
-ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=&lt;bitrate&gt;
</CODE></P>
<P>Genauso wie der erste Durchgang vom DivX4-Beispiel oben. Gib hier die
nach dem ersten Durchlauf von MEncoderempfohlene oder eine andere
von dir gew&auml;hlte Videobitrate an.</LI></P>
<LI>Dritter Durchgang:
<P><CODE>mencoder &lt;file/DVD&gt; -oac copy
-ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=&lt;bitrate&gt;
</CODE></P>
<P>Genauso wie der zweite Durchgang vom DivX4-Beispiel oben. Gib hier die
gleiche Bitrate wie im ersten Durchgang an, es sei denn, du wei&szlig;t
genau, was du tust. In diesem Durchgang wird die im
ersten Durchgang encodierte Audiospur in die endg&uuml;ltige Datei
eingef&uuml;gt. Nun ist alles fertig!</LI></P>
</OL>
<H4>Beispiel einer 3-Pass-Encodierung:</H4>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;rm frameno.avi</CODE> - L&ouml;sche diese Datei,
welche von einer fr&uuml;heren 3-Pass-Encodierung kommen kann (Sie f&uuml;hrt
zu einem Konflikt mit der momentanen Encodierung).<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder dvd://2 -ovc frameno
-o frameno.avi -oac mp3lame -lameopts vbr=3<BR>
&nbsp;&nbsp;&nbsp;&nbsp;mencoder dvd://2 -ovc lavc
-lavcopts vcodec=mpeg4:vpass=1 -oac copy -o movie.avi<BR>
&nbsp;&nbsp;&nbsp;&nbsp;mencoder dvd://2 -ovc lavc
-lavcopts vcodec=mpeg4:vpass=2 -oac copy -o movie.avi</CODE></P>
<H2><A NAME="mpeg">7.2 In das MPEG-Format encodieren</A></H2>
<P>MEncoder kann MPEG-Dateien (MPEG-PS) erstellen. Das ist wahrscheinlich
nur in Kombination mit dem <I>mpeg1video</I>-Codec der libavcodec sinnvoll,
da alle Player (bis auf MPlayer) MPEG1-Video und MPEG1 Layer 2 (MP2)-Audio
in MPEG-Dateien erwarten.</P>
<P>Dieses Feature ist momentan nicht wirklich n&uuml;tzlich, mal davon
abgesehen, dass es wahrscheinlich noch einige Fehler enth&auml;lt. Schlimmer
ist aber, dass MEncoder momentan kein MPEG1 Layer 2 (MP2)-Audio erzeugen
kann, das alle anderen Player in einer MPEG-Datei erwarten.</P>
<P>Das Ausgabeformat von MEncoder kann mit <CODE>-of mpeg</CODE> auf MPEG
ge&auml;ndert werden.</P>
<P>Beispiel:<BR>
&nbsp;&nbsp;<CODE>mencoder -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video
-oac copy &lt;weitere Optionen&gt; media.avi -o ausgabe.mpg</CODE></P>
<H3><A NAME="rescaling">7.3 Skalierung von Filmen</A></H3>
<P>Oftmals ist die &Auml;nderung der Bildgr&ouml;&szlig;e erforderlich. Die
Gr&uuml;nde daf&uuml;r k&ouml;nnen verschieden sein: Dateigr&ouml;&szlig;e
verringern, Netzwerkbandbreite nicht &uuml;berlasten etc. Viele Leute skalieren
das Bild auch, wenn sie von DVD zu SVCD oder DivX-AVI konvertieren. <B>Das ist
allgemein schlecht.</B> Wenn du das vermeiden willst, dann lies den Abschnitt
&uuml;ber das <A HREF="#aspect">Beibehalten des
H&ouml;hen-/Breitenverh&auml;ltnisses</A>.</P>
<P>Der Skalierungsprozess erfolgt durch den <I>'scale</I>-Videofilter:
<CODE>-vf scale=breite:hoehe</CODE>. Die Qualit&auml;t kann durch die Option
<CODE>-sws</CODE> angegeben werden. Wenn nichts angegeben ist, verwendet
MEncoder 0: schnelle bilienare Filterung ('fast bilinear').</P>
<H4>VERWENDUNG</H4>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder beispiel-svcd.mpg -ovc lavc -lavcopts
vcodec=mpeg4 -vf scale=640:480 -sws 2 -oac copy -o ausgabe.avi</CODE></P>
<H3><A NAME="copying">7.4 Stream-Kopiermodus</A></H3>
<P>MEncoder kann Input-Streams auf zwei Arten bearbeiten:
<B>encodieren</B> oder <B>kopieren (copy)</B>. Diese Sektion erkl&auml;rt die
<B>Stream-Kopie</B>.</P>
<UL>
<LI><B>Videostreams</B> (Option <CODE>-ovc copy</CODE>): Es k&ouml;nnen nette
Sachen gemacht werden :)<BR> Wie das kopieren (nicht konvertieren) von FLI-
oder VIVO- oder MPEG1-Video in eine AVI-Datei. Nat&uuml;rlich ist nur
MPlayer in der Lage, solche Dateien abspielen :) Und vermutlich ist
das auch absolut nicht praxisrelevant. Das Kopieren von Videostream
kann n&uuml;tzlicher sein, wenn man zum Beispiel nur den Audiostream
encodieren will (z.B.: unkomprimiertes PCM zu MP3).</LI>
<LI><B>Audiostreams</B> (Option <CODE>-oac copy</CODE>): geht genauso.</LI>
Es ist m&ouml;glich, eine externe Audiodatei (MP3, AC3, Vorbis) zu nehmen,
und diese dem Ausgabestream hinzuzuf&uuml;gen. Benutze dazu die Option
<CODE>-audiofile &lt;dateiname&gt;</CODE>.</LI>
</UL>
<H3><A NAME="fixing">7.5 Reparieren von AVIs mit defektem Index oder
schlechtem Interleaving</A></H3>
<P>Trivial. Wir kopieren einfach die Video- und Audiostreams, und
MEncoder erzeugt den Index. Nat&uuml;rlich kann das keine Fehler in den
Video- und/oder Audiostreams beheben. Es kann auch Dateien mit kaputten
Interleaving reparieren, sodass die Option <CODE>-ni</CODE> f&uuml;r diese
nicht mehr gebraucht wird.</P>
<P>Befehl: <CODE>mencoder -idx eingabe.avi -ovc copy -oac copy -o
ausgabe.avi</CODE></P>
<H3><A NAME="appending">7.5.1 Aneinanderh&auml;ngen mehrerer AVI-Dateien</A>
</H3>
<P>Ein Nebeneffekt des oben erw&auml;hnten Reparierens ist, dass MEncoder
damit auch zwei oder mehrere aneinandergeh&auml;ngte AVI-Dateien reparieren
kann:</P>
<P>Kommando: <CODE>cat 1.avi 2.avi | mencoder -noidx -ovc copy -oac copy -o
ausgabe.avi -</CODE></P>
<P><B>Anmerkung:</B> Hier wird angenommen, dass <CODE>1.avi</CODE> und
<CODE>2.avi</CODE> den gleichen Codec verwenden, die gleiche Aufl&ouml;ung und
Streamrate besitzen etc., und wenigstens 1.avi darf nicht defekt sein.
Eventuell musst du, wie <A HREF="#fixing">oben</A> beschrieben, die
Quelldateien erst reparieren.</P>
<H3><A NAME="libavcodec">7.6 Encodierung mit der
<I>libavcodec</I>-Codec-Familie</A></H4>
<P><A HREF="codecs.html#libavcodec">libavcodec</A> bietet eine einfache
Encodierung f&uuml;r viele interessante Video-und Audio-formate (momentan
werden deren Audio-Codecs nicht unterst&uuml;tzt). Du kannst zu folgenden
Codecs encodieren:</P>
<UL>
<LI>mjpeg - Motion JPEG</LI>
<LI>h263 - H263</LI>
<LI>h263p - H263 Plus</LI>
<LI>mpeg4 - ISO-Standard-MPEG4 (kompatibel zu DivX5, XviD)</LI>
<LI>msmpeg4 - pre-Standard-MPEG4-Variante von MS, v3 (aka DivX3)</LI>
<LI>msmpeg4v2 - pre-Standard-MPEG4-Variante von MS, v2 (wird in alten
ASF-Dateien benutzt)</LI>
<LI>rv10 - ein alter RealVideo-Codec</LI>
<LI>mpeg1video - MPEG1-Video :)</LI>
<LI>huffyuv - verlustfreie Kompression</LI>
</UL>
<P>Die erste Spalte enth&auml;lt den Codec-Namen, den du nach dem
<CODE>vcodec</CODE>-Stichwort &uuml;bergibst, wie z.B.:
<CODE>-lavcopts vcodec=msmpeg4</CODE></P>
<P>Ein Beispiel mit MJPEG-Compression:<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder dvd://2 -o titel2.avi -ovc lavc -lavcopts
vcodec=mjpeg -oac copy</CODE></P>
<H3><A NAME="image_files">7.7 Encodierung von mehreren Einzelbildern
(JPEGs, PNGs oder TGAs)</A></H3>
<P>MEncoder kann aus mehreren JPEG-, PNG- oder TGA-Einzelbildern
einen Film erstellen. Durch einfaches Kopieren der Bilder kann er MJPEG-
(Motion JPEG), MPNG- (Motion PNG) oder MTGA-Filme (Motion TGA) erzeugen.</P>
<P>So l&auml;uft dieser Prozess ab:</P>
<OL>
<LI>MEncoder <I>decodiert</I> das/die Eingangsbild(er) mit
<CODE>libjpeg</CODE> (wenn PNGs decodiert werden, wird die <B>libpng</B>
benutzt).</LI>
<LI>MEncoder f&uuml;hrt die decodierten Bilder danach dem
gew&auml;hlten Videokompressor zu (DivX4, Xvid, ffmpeg msmpeg4, etc...).
</LI>
</OL>
<H4>Beispiele</H4>
<P>Die Erkl&auml;rung der <CODE>-mf</CODE>-Option kann in der Manpage gefunden
werden.</P>
<P><I>Erstellung einer DivX4-Datei aus allen JPEG-Dateien im aktuellen
Verzeichnis:</I><BR>
&nbsp;&nbsp;<CODE>mencoder -mf on:w=800:h=600:fps=25 -ovc divx4
-o ausgabe.avi \*.jpg</CODE></P>
<P><I>Erstellung einer DivX4-Datei aus einigen JPEG-Dateien im aktuellen
Verzeichnis:</I><BR>
&nbsp;&nbsp;<CODE>mencoder -mf on:w=800:h=600:fps=25
-ovc divx4 -o ausgabe.avi frame001.jpg,frame002.jpg</CODE></P>
<P><I>Erstellung einer Motion JPEG-Datei (MJPEG) aus allen JPEG-Dateien im
aktuellen Verzeichnis:</I><BR>
&nbsp;&nbsp;<CODE>mencoder -mf on:w=800:h=600:fps=25 -ovc copy
-o output.avi \*.jpg</CODE></P>
<P><I>Erstellung einer unkomprimierten Datei aus allen PNG-Dateien im
momentanen Verzeichnis:</I><BR>
&nbsp;&nbsp;<CODE>mencoder -mf on:w=800:h=600:fps=25:type=png -ovc rawrgb
-o output.avi \*.png</CODE></P>
<P><B>Anmerkung:</B> Die Breite muss ein Vielfaches von 4 betragen, was eine
Beschr&auml;nkung des RGB-AVI-Formates ist.</P>
<P><I>Erstellung einer Motion PNG-Datei (MPNG) aus allen PNG-Dateien im
momentanen Verzeichnis:</I><BR>
&nbsp;&nbsp;<CODE>mencoder -mf on:w=800:h=600:fps=25:type=png -ovc copy
-o output.avi \*.png</CODE></P>
<P><I>Erstellung einer Motion TGA-Datei (MTGA) aus allen TGA-Dateien im
aktuellen Verzeichnis:</I><BR>
&nbsp;&nbsp;<CODE>mencoder -mf on:w=800:h=600:fps=25:type=tga -ovc copy
-o output.avi \*.tga</CODE></P>
<H3><A NAME="vobsub">7.8 Extrahieren von DVD-Untertiteln in eine
Vobsub-Datei</A></H3>
<P>MEncoder kann Untertitel von einer DVD extrahieren und sie als Datei
im Vobsub-Format speichern. Dieses besteht aus einem Dateipaar
(<CODE>.sub</CODE> und <CODE>.idx</CODE>) und wird gew&auml;hnlich in ein
einziges <CODE>.rar</CODE> Archiv verpackt. MPlayer kann diese mit den
Optionen <CODE>-vobsub</CODE> und <CODE>-vobsubid</CODE> wiedergeben.</P>
<P>Du gibst mit <CODE>-vobsubout</CODE> den Basisnamen der Ausgabedatei (ohne
<CODE>.idx</CODE>- oder <CODE>.sub</CODE>-Endung) und mit
<CODE>-vobsuboutindex</CODE> den Index des Untertitels der Ausgabedatei
an.</P>
<P>Wenn die Eingabe nicht von einer DVD stammt, solltest du mit der Option
<CODE>-ifo</CODE> die Datei angeben, die zur Erstellung der resultierenden
<CODE>.idx</CODE>-Datei ben&ouml;tigt wird.</P>
<P>Wenn die Eingabe nicht von einer DVD stammt und keine
<CODE>.ifo</CODE>-Datei vorhanden ist, ben&ouml;tigst du die
<CODE>-vobsuboutid</CODE>-Option, um MPlayer zu sagen, welche Sprach-ID
f&uuml;r die <CODE>.idx</CODE> Datei verwendet werden soll.</P>
<P>Jeder Aufruf f&uuml;gt neue Untertitel dazu, falls die <CODE>.idx</CODE>-
und <CODE>.sub</CODE>-Dateien bereits existieren. Sie sollten im Bedarfsfall
also vor dem Starten gel&ouml;scht werden.</P>
<H4>Beispiele:</H4>
<P><I>Kopieren zweier Untertitel von einer DVD mit 3-Pass-Encodierung</I><BR>
&nbsp;&nbsp;<CODE>rm untertitel.idx untertitel.sub</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder dvd://1 -vobsubout untertitel -vobsuboutindex 0 -sid
2 -o frameno.avi -ovc frameno -oac mp3lame -lameopts vbr=3</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder dvd://1 -oac copy -ovc divx4 -divx4opts
pass=1</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder dvd://1 -oac copy -ovc divx4 -divx4opts pass=2
-vobsubout untertitel -vobsuboutindex 1 -sid 5</CODE></P>
<P><I>Kopieren eines franz&ouml;sischen Untertitels von einer MPEG-Datei</I><BR>
&nbsp;&nbsp;<CODE>rm untertitel.idx untertitel.sub</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder film.mpg -ifo film.ifo -vobsubout untertitel
-vobsuboutindex 0 -vobsuboutid fr -sid 1</CODE></P>
<H3><A NAME="aspect">7.9 Das H&ouml;hen-/Breitenverh&auml;ltnisses erhalten
</A></H3>
<P>DVDs und SVCDs (z.B. MPEG1/2) enthalten einen Wert, der das Verh&auml;ltnis
zwischen der Ausgebeh&ouml;he und der Ausgebebreite enth&auml;lt. Der Player
sorgt dann durch Skalierung daf&uuml;r, dass dieses Verh&auml;ltnis erreicht
wird, sodass wir Menschen keine Eierk&ouml;pfe sehen (Beispiel: die
Bildma&szlig;e betragen 480x480, das gespeicherte Verh&auml;ltnis betr&auml;gt
4:3, und der Player spielt den Videostream dann bei 640x480 ab). Wenn du
allerdings solche Dateien in ein AVI umwandelst, dann musst du beachten, dass
das AVI-Format das H&ouml;hen-/Breitenverh&auml;ltnis <B>nicht</B> speichern
kann. Die Skalierung beim Encodieren ist ein zeitraubender und
qualit&auml;tsmindernder Prozess. Es sollte doch eine bessere M&ouml;glichkeit
geben!?</P>
<P>Ganz genau - die gibt es.</P>
<P>MPEG4 enth&auml;lt ein einzigartiges Feature: Im Videostream selber kann
das H&ouml;hen-/Breitenverh&auml;ltnis gespeichert werden. Jop, genauso wie
bei MPEG1/2 (DVD, SVCD). Leider gibt es bisher <U>keinen</U> Videoplayer, der
dieses Feature unterst&uuml;tzt. Bis auf MPlayer nat&uuml;rlich.</P>
<P>Dieses Feature kann nur in Verbindung mit dem <CODE>mpeg4</CODE>-Codec der
<B>libavcodec</B> genutzt werden. Denke immer daran, dass - auch wenn
MPlayer die Datei richtig wiedergeben wird - alle anderen Player ein
falsches H&ouml;hen-/Breitenverh&auml;ltnis anzeigen werden.</P>
<P>Du solltest ernsthaft in Erw&auml;gung ziehen, die eventuell vorhandenen
schwarzen Balken oberhalb und unterhalb des Bildes wegzuschneiden. Lies
in der man-Page dazu, wie du die <CODE>cropdetect</CODE>- und
<CODE>crop</CROP>-Filter benutzt.</P>
<H4>BENUTZUNG</H4>
<P><CODE>$ mencoder beispiel-svcd.mpg -ovc lavc -lavcopts
vcodec=mpeg4:aspect=16.0/9.0 -vf crop=714:548:0:14 -oac copy -o
ausgabe.avi</CODE></P>
</BODY>
</HTML>

View File

@ -1,940 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>FAQ - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<STYLE TYPE="text/css">
dt {
font-weight : bold;
}
</STYLE>
</HEAD>
<BODY>
<H1><A NAME="faq">5. FAQ</A></H1>
<UL>
<LI><A HREF="#compilation">5.1 Kompilierung</A></LI>
<LI><A HREF="#general">5.2 Allgemeine Fragen</A></LI>
<LI><A HREF="#playback">5.3 Dateiwiedergabe-Probleme</A></LI>
<LI><A HREF="#driver">5.4 Video/Audio-Treiber-Probleme</A></LI>
<LI><A HREF="#dvd">5.5 DVD-Wiedergabe</A></LI>
<LI><A HREF="#features">5.6 Feature-W&uuml;nsche</A></LI>
<LI><A HREF="#encoding">5.7 Konvertierung</A></LI>
</UL>
<H2><A NAME="compilation">5.1 Kompilierung</A></H2>
<DL>
<DT>Q: Die Kompilierung bricht mit in etwa folgender Meldung ab:
<PRE>
In file included from mplayer.c:34:
mw.h: In function `mplMainDraw':
mw.h:209: Internal compiler error in print_rtl_and_abort, at flow.c:6458
Please submit a full bug report,
with preprocessed source if appropriate.
</PRE></DT>
<DD>A: Dies ist ein bekanntes Problem des gcc 3.0.4. Upgrade auf 3.1, um es
zu beheben. Wie gcc installiert werden kann, ist in der
<A HREF="users_against_developers.html">gcc 2.96</A>-Sektion
beschrieben.</DD>
<DD>&nbsp;</DD>
<DT>Q: Configure beendet sich mit diesem Text, und MPlayer kann nicht
kompiliert werden!<BR>
<CODE>Your gcc does not support even i386 for '-march' and '-mcpu'.
</CODE></DT>
<DD>A: Dein gcc ist nicht richtig installiert, pr&uuml;fe
<CODE>configure.log</CODE> f&uuml;r Details.</DD>
<DD>&nbsp;</DD>
<DT>Q: Was bedeutet "No such file or directory"?</DT>
<DD>A: Vermutlich gibt es keine solche Datei oder kein solches
Verzeichnis.</DD>
<DD>&nbsp;</DD>
<DT>Q: Was ist das Problem mit gcc 2.96?</DT>
<DD>A: <B>Wir raten sehr davon abgeraten, den gcc 2.96 einzusetzen!</B><BR>
Lies <A HREF="users_against_developers.html">dieses</A> Dokument, in dem
die Gr&uuml;nde stehen, warum RedHat den gcc 2.96 herausgegeben hat, und
welche Probleme es damit gibt. Wenn du diese Version aber trotzdem wirklich
einsetzen willst, dann stell sicher, dass du die neueste Version
verwendest, und &uuml;bergib die Option <CODE>--disable-gcc-checking</CODE>
an <CODE>configure</CODE>. Bedenke aber, dass du auf dich alleine gestellt
bist. Sende <B>keine</B> Meldungen oder Bugs, und frag in der Mailingliste
nicht um Hilfe. Wir werden sie <B>nicht</B> zur Verf&uuml;gung stellen,
noch Unterst&uuml;tzung bei Problemen anbieten.</DD>
<DD>&nbsp;</DD>
<DT>Q: Gro&szlig;artig, ich habe gcc 3.0.1 von Red Hat/Mandrake, dann ist
alles fein!</DT>
<DD>A: Nein, denn auch mit diesen Compilern gab/gibt es Probleme.
Der Status der momentanen Compilerunterst&uuml;tzung findet sich in der
<A HREF="documentation.html#installation">Installationssektion</A>.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe versucht, MPlayer zu compilieren, aber ich bekommen folgende
Ausgabe:
<PRE>
In file included from /usr/include/g++-v3/bits/std_cwchar.h:42,
from /usr/include/g++-v3/bits/fpos.h:40,
from /usr/include/g++-v3/bits/char_traits.h:40,
from /usr/include/g++-v3/bits/std_string.h:41,
from /usr/include/g++-v3/string:31,
from libwin32.h:36,
from DS_AudioDecoder.h:4,
from DS_AudioDec.cpp:5:
/usr/include/wchar.h: In function Long long int wcstoq(const wchar_t*,
wchar_t**, int)':
/usr/include/wchar.h:514: cannot convert `const wchar_t* __restrict' to
`const
</PRE></DT>
<DD>A: Update deine glibc auf die neueste Release. Bei Mandrake verwende
2.2.4-8mdk.</DD>
<DD>&nbsp;</DD>
<DT>Q: ... 2.96 ... (ja, einige Leute beschweren sich NOCH IMMER wegen gcc
2.96!)</DT>
<DD>A: Zitat aus einer <A
HREF="http://www.mplayerhq.hu/pipermail/mplayer-users/2001-October/005351.html">
Mail</A>, die A'rpi an die <A
HREF="http://mplayerhq.hu/pipermail/mplayer-users/">mplayer-users</A>
Mailing-Liste geschrieben hat [&Uuml;bersetzung]
(Das Wort 'ideg' ist unten beschrieben):
<BLOCKQUOTE>
<P>Aber wir hatten idegs. Und unser Idegcounter hatte wieder und wieder
Overflows.</P>
<P>Leider entweicht MPlayer unsere Kontrolle. Er wird von Idioten
verwendet, die nicht mal Windows verwenden k&ouml;nnen und auch noch nie
versucht, haben einen Kernel zu kompilierent. Sie installieren Mandrake,
Red Hat oder Suse (mit Standardeinstellungen) und schreiben uns 'Es
funktioniert nicht! Helft mir! Bitte! Ich bin neu bei Linux! Hilfe! Oh!
Helft mir!', ohne vorher die Dokumentation zu lesen. Wir k&ouml;nnen sie
nicht aufhalten, aber wir versuchen, sie zum Lesen der Dokumentation und
der Ausgabe von ./configure und MPlayer zu zwingen.</P>
<P>Und ihr kleveren Leute kommt und beleidigt uns mit gcc 2.96 und
bin&auml;ren Paketen. Anstatt anderen Users zu helfen oder Patches zu
erzeugen um, Probleme zu l&ouml;sen.</P>
<P>Die h&auml;lfte unserer Freizeit verbrauchen wirh beim Beantworten
sinnloser Mails und beim Einbauen von neuen Tricks f&uuml;r configure, um
solche Mails zu vermeiden.</P>
<P>Und hier gibt es Gleichgewicht. Auf der einen Seite seid ihr cleveren
Jungs, die sagen, dass wir b&ouml;se sind, da wir das fehlerhafte gcc 2.96
nicht m&ouml;gen, und auf der anderen Seite sind die 'neu bei Linux'-Leute,
welche uns zeigen, wie schlecht der gcc 2.96 ist.</P>
<P>Schlussfolgerung: wir k&ouml;nnen nicht gut sein. Die H&auml;lfte der
Leute sagt, dass wir b&ouml;se sind.</P>
<P>M&ouml;glicherweise sollten wir das Projekt schlie&szlig;en,
kommerzielles Closed-Source daraus machen und euch dann Installationssupport
anbieten. Dann k&ouml;nnten wir unsere aktelle Arbeitsst&auml;tte
verlassen, die Entwicklung ginge schneller, and wir k&ouml;nnten eine Menge
Geld verdienen und ein gro&szlig;es Haus kaufen, usw. usw. Willst du das
wirklich? Es scheint so.</P>
</BLOCKQUOTE></DD>
<DD>&nbsp;</DD>
<DT>Q: SDL Ausgabe funktioniert/kompiliert nicht. Das Problem ist ...</DT>
<DD>A: Es wurde mit SDL 1.2.x getestet und l&auml;uft vielleicht auf
SDL 1.1.7+. Es funktioniert <B>nicht</B> mit irgendeiner fr&uuml;heren
Version. Wenn du eine solche einsetzen willst, dann bist du auf dich
allein gestellt.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe immer noch Probleme mit dem SDL Support. gcc sagt etwas
&uuml;ber "undefined reference to `SDL_EnableKeyRepeat'". Was ist nun?</DT>
<DD>A: Wo hast du die SDL Library installiert? Wenn du es in /usr/local
(Standard) installiert hast, editiere config.mak und f&uuml;ge
"-L/usr/local/lib " nach "X_LIBS=" ein. Nun gib make ein. Es sollte
funktionieren!</DD>
<DD>&nbsp;</DD>
<DT>Q: Es wird nicht kompiliert, und es vermisst uint64_t, inttypes.h oder
&auml;hnliche Dinge ...</DT>
<DD>A: Kopiere <CODE>etc/inttypes.h</CODE> in das MPlayer-Verzeichnis
(<CODE>cp etc/inttypes.h</CODE>) und versuche es erneut ...</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe Linux auf einem Pentium III, aber <CODE>./configure</CODE>
erkennt SSE nicht ...</DT>
<DD>A: Nur Kernel mit der Version 2.4.x unterst&uuml;tzen SSE (oder
versuche 2.2.19 oder neuer, aber sei auf Probleme vorbereitet).</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe eine G200/G400, wie kompiliere/verwende ich den
mga_vid-Treiber?</DT>
<DD>A: Lies die <A HREF="video.html#mga_vid">mga_vid-Dokumentation</A>.</DD>
<DD>&nbsp;</DD>
<DT>Q: Gibt es rpm/deb/...-Pakete von MPlayer?</DT>
<DD>A: Du kannst ein .deb Paket f&uuml;r dich selbst machen, lies die
<A HREF="documentation.html#debian">Debian-Pakete-Sektion</A>.
Es gibt Links zu offiziellen RedHat-RPM-Paketen. Sie sind auf der
<A HREF="http://www.mplayerhq.hu/dload.html">Download-Seite</A>
zu finden.</DD>
<DD>&nbsp;</DD>
<DT>Q: W&auml;hrend 'make' beschwert sich MPlayer &uuml;ber die X11-
Librarys. Ich verstehe das nicht, ich habe X installiert!?</DT>
<DD>A: ... aber du hast die X Development Pakete nicht installiert. Oder
nicht richtig. Diese heissen unter Red Hat XFree86-devel* und unter Debian
xlibs-dev* . Pr&uuml;fe auch, ob die symbolischen Links
<CODE>/usr/X11</CODE> und <CODE>/usr/include/X11</CODE> existieren (dies
kann ein Problem auf Mandrake-Systemen sein). Diese k&ouml;nnen mit diesen
Befehlen erzeugt werden: <BR> &nbsp;&nbsp;&nbsp;&nbsp;<CODE>$ ln -sf
/usr/X11R6 /usr/X11</CODE><BR> &nbsp;&nbsp;&nbsp;&nbsp;<CODE>$ ln -sf
/usr/X11R6/include/X11 /usr/include/X11</CODE><BR> Deine Distribution
unterscheidet sich vielleicht vom <A
HREF="http://www.pathname.com/fhs/">Dateisystem-Hierarchie-Standard</A>.
</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich kann SVGAlib nicht kompilieren. Ich verwende eine 2.3/2.4er
Kernel.</DT>
<DD>A: Du musst die Makefile.cfg von SVGAlib editieren. Kommentier
<CODE>BACKGROUND = y</CODE> aus.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe MPlayer mit libdvdcss/libdivxdecore-Unterst&uuml;tzung
kompiliert, aber wenn ich versuche es zu starten, erhalte ich eine
Fehlermeldung, obwohl ich die Datei &uuml;berpr&uuml;ft habe und sie sich
in <CODE>/usr/local/lib</CODE> befindet! Die Fehlermeldung lautet:
<PRE>
error while loading shared libraries: lib*.so.0: cannot load
shared object file: No such file or directory
</PRE></DT>
<DD>A: F&uuml;ge <CODE>/usr/local/lib</CODE> deiner
<CODE>/etc/ld.so.conf</CODE> Datei hinzu und starte
<CODE>ldconfig</CODE>.</DD>
<DD>&nbsp;</DD>
<DT>Q: Hmm, eigenartig. Beim Laden des mga_vid.o-Kernelmodules kann ich
folgendes in den Logs finden:
<PRE>
Warning: loading mga_vid.o will taint the kernel: no license
</PRE></DT>
<DD>A: Die neuesten Kernelmodule ben&ouml;tigen einen Parameter, um ihre
Lizenz anzuzeigen (haupts&auml;chlich, um Kernel-Hacker am Debuggen von
Closed-Source-Treibern zu hindern). Update deinen Kernel, modutils und
MPlayer.</DD>
<DD>&nbsp;</DD>
<DT>Q: W&auml;hrend des Linkens von MEncoder passiert ein
segfault!</DT>
<DD>A: Dies ist ein Linker-Problem. Ein Upgrade deiner binutils sollte
helfen (2.11.92.* oder neuer w&auml;re gut). Melde den Fehler <B>nicht</B>,
da er nicht von uns ist!</DD>
<DD>&nbsp;</DD>
<DT>Q: MPlayer bricht mit einem segmentation fault bei der
pthread-&Uuml;berpr&uuml;fung ab!</DT>
<DD>A: chmod 644 /usr/lib/libc.so</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich m&ouml;chte gerne MPlayer auf Minix kompilieren!</DT>
<DD>A: Ich auch. :)</DD>
<DD>&nbsp;</DD>
</DL>
<H2><A NAME="general">5.2 Allgemeine Fragen</A></H2>
<DL>
<DT>Q: Wie erzeuge ich einen vern&uuml;nftigen Patch f&uuml;r
MPlayer?</DT>
<DD>A: Wir haben daf&uuml;r ein <A HREF="../tech/patches.txt">kleines
Dokument</A> erstellt, das alle notwendigen Details erkl&auml;rt. Folge
bitte seinen Anweisungen.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wie kann ich die Entwicklung von MPlayer unterst&uuml;tzen?</DT>
<DD>A: Wir nehmen sehr gerne
<A HREF="http://www.mplayerhq.hu/donations.html">Hard- und
Softwarespenden</A> an. Sie helfen uns, MPlayer st&auml;ndig zu
verbessern.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wie kann ich ein MPlayer-Entwickler werden?</DT>
<DD>A: Wir nehmen Programmierer und Leute auf, die Dokumentation schreiben
wollen. Lies die <A HREF="../tech/">technische Dokumentation</A>, um
einen ersten &Uuml;berblick &uuml;ber MPlayer zu bekommen. Dann
solltest du dich bei der
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">
mplayer-dev-eng</A>-Mailingliste anmelden und mit dem Programmieren
anfangen.</DD>
<DD>&nbsp;</DD>
<DT>Q: Kann ich MPlayer mehrmals aufrufen?</DT>
<DD>A: Ja. Einige Video-Ausgabetreiber wie xv, dga oder (x)mga erlauben
jedoch nur eine Instanz, andere tun dies in Kombination mit gewissen
Grafikkarten oder -treibern. Du wirst in diesen F&auml;llen nur jeweils
eine Instanz mit diesen Videoausgabetreibern laufen lassen k&ouml;nnen.
Etwas weniger stark trifft das auch auf die Audioausgabetreiber. Nicht
alle erlauben die gleichzeitige Wiedergabe mehrerer Streams auf dem
gleichen Ger&auml;t.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich sehe in der linken oberen Ecke einen Timer. Wie werde ich den los?
</DT>
<DD>A: Dr&uuml;cke <CODE>o</CODE> oder verwende die
<CODE>-osdlevel</CODE>-Option.</DD>
<DD>&nbsp;</DD>
<DT>Q: Die <CODE>-xy</CODE> oder <CODE>-fs</CODE>-Option funktioniert
nicht mit dem X11-Treiber (<CODE>-vo x11</CODE>)</DT>
<DD>A: Doch, das funktioniert, aber du musst explizit die Softwareskalierung
mit der <CODE>-zoom</CODE>-Option aktivieren (sehr langsam). Du solltest
besser die XF86VidMode-Unterst&uuml;tzung verwenden. Du musst
dazu die <CODE>-vm</CODE>-Option und die <CODE>-fs</CODE>-Option verwenden.
Stelle sicher, dass du die richtigen modelines in deiner XF86Config-Datei
hast, und versuche, den <A HREF="video.html#dga">DGA-Treiber</A> und <A
HREF="video.html#sdl">SDLs DGA-Treiber</A> f&uuml;r dich zum Laufen zu
bringen. Er ist um einiges schneller. Wenn SDL-DGA auch funktioniert,
verwende das, es ist NOCHMALS schneller.</DD>
<DD>&nbsp;</DD>
<DT>Q: Was ist die Bedeutung der Nummern auf der Statusleiste?</DT>
<DD>A: Beispiel:
<CODE>A: 2.1 V: 2.2 A-V: -0.167 ct: 0.042 57/57 41% 0% 2.6%
0 4 49%</CODE><BR>
<UL>
<LI>A: Audioposition in Sekunden</LI>
<LI>V: Videoposition in Sekunden</LI>
<LI>A-V: Audio-Video Differenz in Sekunden</LI>
<LI>ct: ingesamte geleistete A-V Synchronisation</LI>
<LI>abgespiele Frames (gez&auml;hlt ab der letzten Suche)</LI>
<LI>dekodierte Frames (gez&auml;hlt ab der letzten Suche)</LI>
<LI>Video-Codec CPU-Auslastung in Prozent (bei "slices" und DR ist auch
die Video-Ausgabe enthalten)</LI>
<LI>Video-Ausgabe CPU-Auslastung</LI>
<LI>Audio-Codec CPU-Auslastung in Prozent</LI>
<LI>ausgelassene Frames f&uuml;r die A-V Sync</LI>
<LI>aktuelle Level des Bild-Postprocessing (wenn -autoq verwendet)</LI>
<LI>aktuelle ben&uuml;tzte Cachegr&ouml;sse (normal ist ~50%)</LI>
</UL>
<I>Die meisten sind f&uuml;r debugging-Zwecke und werden irgendwann
entfernt.</I></DD>
<DD>&nbsp;</DD>
<DT>Q: Was ist, wenn ich die nicht sehen will?</DT>
<DD>A: Dann verwende die <CODE>-quiet</CODE>-Option, und lies die
Manpage.</DD>
<DD>&nbsp;</DD>
<DT>Q: Warum ist die Video-Ausgabe CPU-Auslastung null (0%) f&uuml;r einige
Dateien?</DT>
<DD>&nbsp;</DD>
<DD>A1: Es ist nicht null, aber der Codec ruft die Videoausgabe selber auf,
weswegen sie nicht genau gemessen werden kann. Du solltest versuchen, die
Datei mit <CODE>-vo null</CODE> und dann mit <CODE>-vo</CODE> ...
abzuspielen. Die Differenz ist die die Videoausgabegeschwindigkeit.</DD>
<DD>&nbsp;</DD>
<DD>A2: Du verwendest Direct Rendering, der Codec schreibt also selbst in den
Videospeicher. In diesem Fall beinhaltet die
Decodierungs-Prozentrate auch die Wiedergabe-Prozentrate.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe Fehlermeldunge &uuml;ber "file not found
<CODE>/usr/lib/codecs/</CODE> ..."</DT>
<DD>A: Downloade und installiere die
<A HREF="ftp://ftp.mplayerhq.hu/MPlayer/releases/w32codec-0.90.tar.bz2">
Win32 Codecs</A> von <B>unserem</B> FTP-Server (avifiles Codec-Paket hat
unterschiedliche DLLs).</DD>
<DD>&nbsp;</DD>
<DT>Q: Gibt es Mailing-Listen &uuml;ber MPlayer?</DT>
<DD>A: Ja. Lies dazu das Ende der Infoseite auf
<A HREF="http://www.mplayerhq.hu/info.html">unserer Homepage</A>,
um dich anzumelden.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe einen b&ouml;sen Fehler beim Abspielen meines Lieblingsvideos
gefunden. Wen soll ich informieren?</DT>
<DD>A: Bitte lies die <A HREF="bugreports.html">Leitlinien zu
Fehlerberichten</A> und folge den Anweisungen.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe Probleme beim Abspielen von Dateien mit dem ... Codec. Kann
ich sie trotzdem verwenden?</DT>
<DD>A: Pr&uuml;fe den <A
HREF="http://www.mplayerhq.hu/DOCS/codecs-status.html">Codecs-Status</A>.
Wenn dein Codec nicht aufgelistet ist, lies die
<A HREF="codecs.html">Codec-Documentation</A>, vorallem das
<A HREF="codecs.html#importing">Codec-Importierungs-HOWTO</A> und
kontaktiere uns.</DD>
<DD>&nbsp;</DD>
<DT>Q: Hmmm, was ist "IdegCounter"?</DT>
<DD>A: Eine Kombination eines ungarischen und eines englischen Wortes. "Ideg"
in Ungarn bedeutet etwa das gleiche wie "Nerv" in Deutschland und wird etwa
"ydaegh" ausgesprochen. Es wurde zuerst benutzt, um die
Nerv&ouml;sit&auml;t von A'rpi nach eigenartigem, mystischen Verschwinden
von Code aus dem CVS auszudr&uuml;cken ;)</DD>
<DD>&nbsp;</DD>
<DT>Q: Und was ist "Faszom(C)ounter"?</DT>
<DD>A: "Fasz" ist ein ungarisches Wort, das du nicht kennen willst, die
anderen stehen in Verbindung zu den perversen Gedanken der
MPlayer-Entwickler.</DD>
<DD>&nbsp;</DD>
<DT>Q: LIRC funktioniert nicht, weil ...</DT>
<DD>A: Bist du sicher, dass du <CODE>mplayer</CODE> anstatt
<CODE>mplayer_lirc</CODE> verwendest? Eine lange Zeit lang hie&szlig; das
Executable <CODE>mplayer_lirc</CODE>, sogar im 0.60 Release, wurde jedoch
neulich wieder zu <CODE>mplayer</CODE> ge&auml;ndert.</DD>
<DD>&nbsp;</DD>
<DT>Q: Die Untertitel sind sehr nett, die wundersch&ouml;nsten die ich
jemals gesehen habe, aber sie bremsen das abspielen! Ich weiss, das klingt
unwahrscheinlich ...</DT>
<DD>A: Editiere <CODE>config.h</CODE> nach dem Ablaufen von ./configure und
&auml;ndere <CODE>#undef FAST_OSD</CODE> in <CODE>#define FAST_OSD</CODE>.
Compiliere MPlayer danach neu.</DD>
<DD>&nbsp;</DD>
<DT>Q: Das OSD (onscreen display) flackert!</DT>
<DD>A: Du verwendest einen vo-Treiber mit einfachem-Buffering (x11, xv).
Verwende bei xv die <CODE>-double</CODE>-Option. Versuche auch
<CODE>-vf expand</CODE>.</DD>
<DD>&nbsp;</DD>
<DT>Q: Was genau ist dieses libavcodec-Dingens?</DT>
<DD>A: Siehe <A HREF="codecs.html#libavcodec">libavcodec-Sektion</A>.</DD>
<DD>&nbsp;</DD>
<DT>Q: Aber configure sagt mir "Checking for libavcodec ... no"!</DT>
<DD>A: Du brauchst libavcodec vom FFmpeg CVS. Lies die Anweisungen
in der <A HREF="codecs.html#libavcodec">libavcodec-Sektion</A>.</DD>
<DD>&nbsp;</DD>
<DT>Q: Icewm's Taskbar bleibt im Vollbildschirm-Modus st&auml;ndig &uuml;ber
der Filmausgabe!</DT>
<DD>A: Dies sollte nicht mehr geschehen, falls doch ist die
<CODE>-icelayer</CODE>-Option zu verwenden und ein Bericht an die
<A HREF="http://mplayerhq.hu/pipermail/mplayer-users/">mplayer-users</A>
zu senden.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich kann nicht auf das GUI Men&uuml; zugreifen. Ich dr&uuml;cke die
rechte Maustaste, kann aber auf kein Men&uuml; zugreifen.</DT>
<DD>A: Verwendest du FVWM? Versuche folgendens:<BR>
Start -&gt; Settings -&gt; Configuration -&gt; Base Configuration<BR>
Setze "Use Applications position hints" auf "Yes".</DD>
<DD>&nbsp;</DD>
<DT>Q: Wie kann ich MPlayer im Hintergrund laufen lassen?</DT>
<DD>A: Verwende: <CODE>mplayer &lt;Optionen&gt; &lt;Dateiname&gt; &lt;
/dev/null &</CODE></DD>
<DD>&nbsp;</DD>
</DL>
<H2><A NAME="playback">5.3 Dateiwiedergabe-Probleme</A></H2>
<DL>
<DT>Q: Ich kann einige AVIs wiedergeben, erhalte jedoch keine Tonausgabe und
diese Fehlermeldung:</B>
<PRE>
Detected audio codec: [divx] afm:4 (DivX audio (WMA))
Requested audio codec family [divx] (afm=4) not available (enable it at
compile time!)
</PRE></DT>
<DD>A: Wahrscheinlich wird ein Audiocodec verwendet,
der nicht in MPlayer eingebaut ist. Zur Abhilfe sollte das
Win32-Codec Paket wie im README oder in der
<A HREF="documentation.html#installation">Installation</A>
beschrieben installiert werden.</DD>
<DD>&nbsp;</DD>
<DT>Q: ... funktioniert mit avifile/aviplay, aber nicht bei MPlayer.
</DT>
<DD>A: MPlayer ist nicht avifile.
Der einzige gemeinsame Teil zwischen diesen beiden Playern ist der
Win32-DLL-Loader. Das Codec-(DLL)-Setup, die Synchronisation,
das Demultiplexing usw sind total unterschiedlich und sollten nicht
verglichen werden. Wenn etwas mit aviplay funktioniert, bedeutet das nicht,
dass es bei MPlayer auch funktionieren wird (und umgekehrt).</DD>
<DD>&nbsp;</DD>
<DT>Q: Audio-Video-Synchronisation geht beim Abspielen eines AVIs
verloren.</DT>
<DD>A: Versuche die <CODE>-bps</CODE>- und <CODE>-nobps</CODE>-Optionen.
Lies <A HREF="bugreports.html">dies</A>, falls es zu keiner Verbesserung
f&uuml;hrt, und lade die Datei auf den FTP-Server hoch.</DD>
<DD>&nbsp;</DD>
<DT>Q: MPlayer beendet sich mit einem Fehler bei der Verwendung von
l3codeca.acm.</DT>
<DD>A: Pr&uuml;fe die <CODE>ldd /usr/local/bin/mplayer</CODE>-Ausgabe. Wenn
sie<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<CODE>libc.so.6 =&gt; /lib/libc.so.6
(0x4???????)</CODE><BR>
enth&auml;lt, wobei "?" irgendeine Nummer ist, ist es OK, und der Fehler
liegt nicht hier. Wenn aber die Ausgabe<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<CODE>libc.so.6 =&gt; /lib/libc.so.6
(0x00??????)</CODE><BR>
enth&auml;lt, hast du ein Problem mit deinem Kernel und/oder deiner libc.
M&ouml;glichweise verwendest du auch einige Sicherheits-Patches
(z.B. Solar Designer's OpenWall Patch), welcher das Landen von Libs in
sehr niedrige Speicheradressen erzwingt. Aufgrund der tatsache, dass
l3codeca.acm eine nicht-verlegbare DLL ist, muss sie auf den
Speicherbereich 0x00400000 geladen werden. Wir k&ouml;nnen das nicht
&auml;ndern. Du solltest einen nicht-gepachten Kernel oder
MPlayers <CODE>-afm 1</CODE> Option verwenden, um die l3codeca.acm
auszuschalten.</DD>
<DD>&nbsp;</DD>
<DT>Q: Mein Computer spielt M$-DivX-AVIs mit Aufl&ouml;sungen von ~ 640x300
und Stereo-MP3-Sound zu langsam ab. Wenn ich den
<CODE>-nosound</CODE>-Parameter verwende ist alles OK, aber ich h&ouml;re
halt keinen Ton.</DT>
<DD>A: Dein Computer ist zu langsam oder dein Soundkarten-Treiber kaputt.
Lies in der Dokumenation, um zu sehen, wie sich die Geschwindigkeit noch
steigern l&auml;sst.</DD>
<DD>&nbsp;</DD>
<DT>Q: MPlayer beendet sich mit "MPlayer interrupted by signal 4 in module:
decode_video".</DT>
<DD>A: Versuche MPlayer auf dem Computer zu starten, auf dem es
kompiliert wurde. Oder kompiliere MPlayer mit
Laufzeit-CPU-Erkennung (runtime CPU detection) neu
(<CODE>./configure --enable-runtime-cpudetection</CODE>). Verwende
MPlayer auf keiner anderen CPU als auf der, auf der MPlayer
kompiliert wurde ohne dieses Feature zu aktivieren.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe Probleme mit [dein Window-Manager] und
Vollbild-xv/xmga/sdl/x11.</DT>
<DD>A: Lies die <A HREF="bugreports.html">Richtlinien f&uuml;r
Fehlerberichte</A> und schreib einen Fehlerbericht.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich bekomme diese Meldung beim Abspielen von MPEG-Dateien:
Can't find codec for video format 0x10000001!</DT>
<DD>A: Du verwendest eine alte Version der codecs.conf in
<CODE>~/.mplayer/</CODE>. Upgrade sie von <CODE>etc/</CODE>,<BR>
<B>oder</B> du verwendest die <CODE>vc=</CODE> Option oder eine
&auml;hnliche in deiner Config-Datei.</DD>
<DD>&nbsp;</DD>
<DT>Q: Nach dem Starten von MPlayer unter KDE I bekomme ich einen schwarzen
Bildschirm, und nichts passiert. Nach etwa einer Minute beginnt das Video
zu spielen.</DT>
<DD>A: Der KDE Arts Sound Daemon blockiert das Sound-Device. Du kannst also
die Zeit warten, bis das Video startet, oder den Arts-Daemin im
Kontroll-Zentum ausschalten. Um Arts zu verwenden, sollte die Audio-Ausgabe
&uuml;ber den eingebauten Arts-Audiotreiber (<CODE>-ao arts</CODE>)
aktiviert werden. Falls dies fehlschl&auml;gt oder der Treiber nicht
einkompiliert wurde, kann SDL (<CODE>-ao sdl</CODE>) verwendet werden.
Dabei muss jedoch sichergestellt werden, dass SDL mit Arts umgehen kann.
Eine weitere M&ouml;glichkeit besteht darin, MPlayer mit artsdsp zu
starten.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe eine AVI-Datei, die mit <CODE>-vc odivx</CODE> einen grauen
und mit <CODE>-vc divx4</CODE> einen gr&uuml;nen Bildschirm wiedergibt.</DT>
<DD>A: Es ist keine DivX-Datei, sondern eine M$ MPEG4v3. Update deine
codecs.conf.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wenn ich diesen Film abspiele erhalte ich eine
Audio/Video-Desynchronisation und/oder MPlayer
st&uuml;rzt mit folgender Nachricht ab:
<PRE>
DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!
</PRE></DT>
<DD>A: Dies kann mehrere Gr&uuml;nde haben.<BR>
<UL>
<LI>Deine CPU <B>und/oder</B> deine Grafikkarte <B>und/oder</B> dein BUS
ist/sind zu <B>langsam</B>.
MPlayer zeigt in diesem Fall eine Meldung (und der Z&auml;hler
f&uuml;r die ausgelassenen Frames steigt).</LI>
<LI>Wenn es eine AVI-Datei ist, hat sie m&ouml;glichweise ein schlechtes
Interleaving. Versuche die <CODE>-ni</CODE> Option.</LI>
<LI>Dein Soundtreiber ist schei&szlig;e, oder du verwendest ALSA 0.5 mit
<CODE>-ao oss</CODE>. Siehe in der
<A HREF="sound.html">Soundkarten-Sektion</A>.</LI>
<LI>Deine AVI-Datei hat einen defekten Header, versuche die
<CODE>-nobps</CODE> Option und/oder <CODE>-mc 0</CODE> .</LI>
</UL></DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe hier eine MJPEG-Datei, die bei anderen Playern funktioniert.
MPlayer zeigt jedoch nur ein schwarzes Bild an.</DT>
<DD>A: Deaktiviere die Windows-DLL in <CODE>codecs.conf</CODE>, oder
verwende die <CODE>-vc ffmjpeg</CODE>-Option (kompiliere dazu
libavcodec!).</DD>
<DD>&nbsp;</DD>
<DT>Q: Wenn ich versuch, von meinem Tuner zu grabben, funktioniert es, aber
die Farben sind mehrw&uuml;rdig. Mit anderen Anweundgen sehen sie aber
normal aus.</DT>
<DD>A: Deine Karte gibt vielleicht falsche Farbraum-F&auml;higkeiten an.
Versuche es mit YUY2 anstatt des Standards YV12 (siehe
<A HREF="documentation.html#tv">TV Input Dokumentation</A>).</DD>
<DD>&nbsp;</DD>
<DT>Q: Wenn ich beginne abzuspielen, bekomme ich diese Meldung, aber die
Wiedergabe ist gut:<BR>
<CODE>Linux RTC init: ioctl (rtc_pie_on): Permission denied</CODE></DT>
<DD>A: Du ben&ouml;tigst root-Privilegien oder einen speziell vorbereiteten
Kernel, um den neuen Timing-Code zu verwenden.
F&uuml;r Details lies die <A HREF="documentation.html#rtc">RTC-Sektion</A>
der Dokumentation.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe A/V-Sync-Probleme. Einige meiner AVIs spielen problemlos,
aber andere werden mit doppelter Geschwindigkeit abgespielt!</DT>
<DD>A: Du hast eine fehlerhafte Soundkarte / einen fehlerhaften Treiber.
Wahrscheindlicht kann die Soundkarte nur 44100Hz und du versuchst, eine
Datei mit 22050Hz Audio anzuspielen. Probier das Audio-Resample-Plugin
aus.</DD>
<DD>&nbsp;</DD>
<DT>Q: Alle WMV-Dateien (oder andere..), die ich abspiele, erzeugen ein
gr&uuml;nes/graues Fenster und nur Ton! MPlayer gibt folgendes aus:<BR>
<CODE>Detected video codec: [null] drv:0 (NULL codec (no decoding))
</CODE></DT>
<DD>A: Update deine <CODE>codecs.conf</CODE>.</DD>
<DD>&nbsp;</DD>
<DT>Q: I erhalte w&auml;hrend der Wiedergabe von Dateien auf meinem Notebook
sehr seltsame Prozentangaben (viel zu hohe)?</DT>
<DD>A: Dies ist ein Effekt des Power Managements / Power Saving Systems auf
deinem Notebook (BIOS, nicht Kernel). Stecke das externe Netzteil
ein, <B>bevor</B> du dein Notebook einschaltest. Du kannst auch
ausprobieren, ob dir <A HREF="http://www.brodo.de/cpufreq/">cpufreq</A>
hilft (ein SpeedStep-Interface f&uuml;r Linux).</DD>
<DD>&nbsp;</DD>
<DT>Q: Ton/Bild geraten total aus der Synchronisation, wenn ich MPlayer
als root starte auf meinem Notebook starte. Als Benutzer l&auml;uft
jedoch alles normal.</DT>
<DD>A: Dies ist wieder ein Power-Management-Effekt (siehe oben).
Stecke den externen Stromstecker ein, <B>bevor</B> du dein Notebook
einschaltest, oder benutze die Option <CODE>-nortc</CODE>.</DD>
<DD>&nbsp;</DD>
</DL>
<H2><A NAME="driver">5.4 Video/Audio-Treiber-Probleme</A></H2>
<DL>
<DT>Q: Ich erhalte keinen Ton bei der Wiedergabe eines Filmes
und folgende Fehlermeldung:
<PRE>
AO: [oss] 44100Hz 2ch Signed 16-bit (Little-Endian)
audio_setup: Can't open audio device /dev/dsp: Device or resource busy
couldn't open/init audio device -&gt; NOSOUND
Audio: no sound!!!
Start playing...
</PRE></DT>
<DD>A: Verwendest du KDE oder GNOME mit dem arts- oder esd-Sounddaemon?
Versuche ihn zu deaktivieren, oder verwende die
<CODE>-ao arts</CODE>-Option, um MPlayer arts verwenden zu
lassen.</DD>
<DD>&nbsp;</DD>
<DT>Q: Was ist mit dem DGA-Treiber? Ich kann ihn nicht finden!</DT>
<DD>A: <CODE>./configure</CODE> erkennt den DGA-Treiber automatisch.
Wenn <CODE>-vo help</CODE> DGA nichts anzeigt, gibt es ein Problem mit der
X-Installation. Versuche <CODE>./configure --enable-dga</CODE> und lies
die <A HREF="video.html#dga">Dokumentation</A>.
Alternativ kannst du auch versuchen, den SDL-DGA Treiber mit der
Option <CODE>-vo sdl:dga</COD> zu verwenden.</DD>
<DD>&nbsp;</DD>
<DT>Q: <CODE>-vo help</CODE> zeigt den DGA-Treiber, aber es beschwert
sich &uuml;ber die Zugriffsrechte! Helft mir!</DT>
<DD>A: DGA funktioniert nur als Root! Dies ist eine
DGA-Beschr&auml;nkung. Du solltest root werden (<CODE>su -</CODE>) und
es erneut versuchen.
Eine andere L&ouml;sung ist, MPlayer auf SUID root zu stellen,
aber das ist <B>nicht empfehlenswert!</B><BR>
&nbsp;&nbsp;&nbsp;&nbsp;<CODE>chown root /usr/local/bin/mplayer</CODE><BR>
&nbsp;&nbsp;&nbsp;&nbsp;<CODE>chmod 755 /usr/local/bin/mplayer</CODE><BR>
&nbsp;&nbsp;&nbsp;&nbsp;<CODE>chmod +s /usr/local/bin/mplayer</CODE><BR>
<BLOCKQUOTE>
<B>Warnung: Sicherheitsrisiko</B><BR>
Dies ist ein <B>gr&ouml;sseres</B> Sicherheitsrisiko! Tu das <B>nie</B>
auf einem Server oder einem Computer, den du nicht vollst&auml;ndig
kontrollierst. Die User bekommen durch einen SUID root MPlayer
Root-Privilegien! <B>Du bist also gewarnt worden.</B>
</BLOCKQUOTE>
</DD>
<DD>&nbsp;</DD>
<DT>Q: Wenn ich Xvideo verwende, meldet meine Voodoo 3/Banshee:<BR>
<CODE>
X Error of failed request: BadAccess (attempt to access private
resource denied)<BR>
&nbsp;&nbsp;Major opcode of failed request: 147 (MIT-SHM)<BR>
&nbsp;&nbsp;Minor opcode of failed request: 1 (X_ShmAttach)<BR>
&nbsp;&nbsp;Serial number of failed request: 26<BR>
&nbsp;&nbsp;Current serial number in output stream:27<BR>
</CODE></DT>
<DD>A: Der "tdfx"-Treiber in XFree86 4.0.2/4.0.3 hatte diesen Bug. Er
wurde durch den <A HREF="http://www.xfree86.org/cvs/changes_4_1.html">
bugfix #621 in XFree86 4.1.0</A> behoben. Upgrade also auf XFree86 4.1.0
oder neuer. Alternativ kannst du auch entweder DRI Version 0.6
(oder neuer) von der <A HREF="http://dri.sourceforge.net">
DRI-Homepage</A> oder CVS DRI verwenden.</DD>
<DD>&nbsp;</DD>
<DT>Q: OpenGL-(<CODE>-vo gl</CODE>)-Ausgabe funktioniert nicht
(aufh&auml;ngen/schwarzes Fenster/X11-Fehler/ ...).</DT>
<DD>A: Dein OpenGL-Treiber unterst&uuml;tzt keine "Dynamic Texture
Changes" (<CODE>glTexSubImage</CODE>). Es ist bekannt, dass es nicht
mit nVidias Bin&auml;r-Schei&szlig; nicht funktioniert.
Es funktioniert mit Utah-GLX/DRI und Matrox-G400-Karten ebenso wie mit
Radeon-Karten und DRI. Es wird nicht mit DRI und anderen Karten
funktionieren. Es wird auch nicht mit 3DFX-Karten funktionieren, denn
sie haben eine Texture-Gr&ouml;&szlig;enbeschr&auml;nkung auf 256x256.
</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe eine nVidia TNT/TNT2-Karte und Probleme mit eigenartigen
Farben rechts unter dem Film! Was ist der Ausl&ouml;ser?</DT>
<DD>A: Es ist ein Bug des bin&auml;ren nVidia X-Treibers. Diese Bugs
treten NUR mit TNT/TNT2-Karten auf. Wir k&ouml;nnen nichts
dagegen tun. Um das Problem zu l&ouml;sen, sollte die neuste
nVidia Treiber-Version verwendet werden. Wenn dies nichts n&uuml;tzt:
Beklag dich bei nVidia!</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich habe eine nVidia XYZ-Karte. Wenn ich auf der GUI-Fenster
klicke, erscheint an der Stelle, wo ich geklickt habe, ein scharzes
Quadrat. Ich verwende den neusten Treiber.</DT>
<DD>A: Ja ... nVidia hat einen vorherigen Bug (siehe oben) korrigiert
und einen neuen implementiert. Lass uns nVidia gratulieren.
UPDATE: Nach
<A HREF="users_against_developers.html#nvidia">nVidia</A> wurde dieser
bereits behoben.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wenn ich das GUI mit SDL Videoausgabe verwende, wird ein zweites
Fenster erzeugt.</DT>
<DD>A: Bekannt, verwende SDL f&uuml;r GUI zur Zeit nicht.</DD>
<DD>&nbsp;</DD>
<DT>Q: Oh die Welt ist grausam ...! SDL besitzt nur <CODE>x11</CODE>
aber kein <CODE>xv</CODE> als Ausgabe!</DT>
<DD>A: Versuch nochmals die <CODE>x11</CODE> Ausgabe. Nun versuch
<CODE>-vo x11 -fs -zoom</CODE>. Siehst du irgendwelche Unterschiede?
Nein?! OK, hier die Erleuchtung: SDLs <CODE>x11</CODE>-Ausgabe verwendet
<CODE>xv</CODE>, falls vorhanden. Du musst dir keine Sorgen dazu
machen ... Hinweis: Du kannst Xv via SDL mit den Optionen
<CODE>-forcexv<CODE> und <CODE>-noxv</CODE> erzwingen/deaktivieren.</DD>
<DD>&nbsp;</DD>
</DL>
<H2><A NAME="dvd">5.5 DVD-Wiedergabe</A></H2>
<DL>
<DT>Q: Was steht's mit DVD-Navigation?</DT>
<DD>A: Die Unterst&uuml;tzung f&uuml;r DVD-Navigation in MPlayer ist
momentan kaputt. Die normale Wiedergabe funtkioniert nat&uuml;rlich. Wenn
du unbedingt tolle Men&uuml;s haben m&ouml;chtest, dann benutze einen
anderen Player wie z.B. <A HREF="http://xine.sourceforge.net/">xine</A>
oder <A HREF="http://www.dtek.chalmers.se/groups/dvd/">Ogle</A>. Wenn dir
DVD-Navigation wichtig ist, dann schick uns einen
<A HREF="../tech/patches.txt">Patch</A>.</DD>
<DD>&nbsp;</DD>
<DT>Q: Beim Abspielen der DVD erscheint folgender Fehler:<BR>
<CODE>
mplayer: ifo_read.c:1143: ifoRead_C_ADT_internal: Assertion
nfo_length /
sizeof(cell_adr_t) &gt;= c_adt-&gt;nr_of_vobs' failed.
</CODE></DT>
<DD>A: Dies ist ein bekannter Fehler in libdvdread 0.9.1/0.9.2.
Verwende <B>libmpdvdkit2</B>, welche sich in den MPlayer-Sourcen
befindet und standardm&auml;&szlig;ig verwendet wird.</DD>
<DD>&nbsp;</DD>
<DT>Q: Kann ich libdvdread und libdvdcss z.B. auf meinem
s&uuml;ssen Sparc/Solaris kompilieren?</DT>
<DD>A: Wer wei&szlig;... Angeblich soll es funktionieren. Teste es, und
sag uns dann bitte bescheid. Bitte lies auch die Documentation von
libdvdread und seine Homepage. Wir sind nicht die Autoren von libdvdread.
Verwende <B>libmpdvdkit2</B>, welches sich in den MPlayer-Sourcen
befindet und standardm&auml;&szlig;ig verwendet wird.</DD>
<DD>&nbsp;</DD>
<DT>Q: Was ist mit den Untertiteln? Kann MPlayer sie anzeigen?</DT>
<DD>A: Ja. Lies das <A HREF="cd-dvd.html#dvd">DVD-Kapitel</A> der
Dokumentation.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wie kann ich den Reginal-Code meine DVD-Laufwerks einstellen?
Ich habe kein Windows!</DT>
<DD>A: Verwende das 'regionset'-Tool:
<A HREF="http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz">
http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz</A></DD>
<DD>&nbsp;</DD>
<DT>Q: Muss ich root oder fibmap_mplayer setuid root sein, um DVDs
abspielen zu k&ouml;nnen?</DT>
<DD>A: Nein, das ist nur bei der alten DVD-Unterst&uuml;tzung notwendig.
Nat&uuml;rlich brauchst du aber die
Zugriffsrechte f&uuml;r das DVD-Laufwerk (in <CODE>/dev</CODE>).</DD>
<DD>&nbsp;</DD>
<DT>Q: Wo kann ich die libdvdread- und libcss-Pakete bekommen?</DT>
<DD>A: Die werden nicht ben&ouml;tigt. Verwende <B>libmpdvdkit2</B>, welches
sich in den MPlayer-Sourcen befindet und standardm&auml;&szlig;ig
verwendet wird. Die erw&auml;hnten Pakete k&ouml;nnen
von der <A HREF="http://www.dtek.chalmers.se/groups/dvd">Ogle-Seite</A>
heruntergeladen werden.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ist es m&ouml;glich, nur ausgew&auml;hlte Kapitel
abzuspielen/zu encodieren?</DT>
<DD>A: Ja, mit der <CODE>-chapter</CODE>-Option.</DD>
<DD>&nbsp;</DD>
<DT>Q: Meine DVD-Wiedergabe ist tr&auml;ge!</DT>
<DD>A: Benutze die <CODE>-cache</CODE>-Option (siehe Manpage).
Versuche auch, den DMA-Modus f&uuml;r das DVD-Laufwerk mit
<CODE>hdparm</CODE> zu aktivieren (lies die
<A HREF="cd-dvd.html">DVD-Sektion</A> der Dokumentation).</DD>
<DD>&nbsp;</DD>
</DL>
<H2><A NAME="features">5.6 Feature-W&uuml;nsche</A></H2>
<DL>
<DT>Q: Wenn MPlayer pausiert wird und ich vorspule oder zur&uuml;ckspu;e
oder eine andere Taste dr&uuml;cke, dann beendet MPlayer die
Pause. Ich w&uuml;rde gerne im pausierten Film spulen.</DT>
<DD>A: Das ist sehr schwierig zu implementieren, ohne die
A/V-Synchronisation zu verlieren. Alle Versuche scheiterten bisher.
Patches sind jedoch willkommen.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich m&ouml;chte gerne 1 Frames vorw&auml;rts oder
r&uuml;ckw&auml;rts springen anstatt den 10 Sekunden.</DT>
<DD>A: Dies ist nicht implementiert. Es war bereits implementiert, aber
es verursachte A/V-Desynchronisation. Implementiere es und schick
uns einen Patch ... aber frag nicht danach.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wo ist die Windows Version?</DT>
<DD>A: Sie ist nicht erschienen und wird auch nicht erscheinen. Schau
dich in der Windows-Szene um (Opensource-ASF-Parser,
Opensource-ASF-Encoders, usw), und du wei&szlig;t warum. Wir wollen
nicht eingesperrt werden. Du kannst es &uuml;brigens f&uuml;r dich
kompilieren. eine Anleitung findet sich unter
<A HREF="documentation.html#cygwin">Cygwin</A>.</DD>
<DD>&nbsp;</DD>
</DL>
<H2><A NAME="encoding">5.7 Konvertierung</A></H2>
<DL>
<DT>Q: Wie kann ich konvertieren?</DT>
<DD>A: Lies <A HREF="encoding.html">diese Dokumentation</A>.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wie erstelle ich VCDs?</DT>
<DD>A: Verwende das <CODE>mencvcd</CODE>-Script im
<CODE>TOOLS</CODE>-Unterverzeichnis. Damit k&ouml;nnen DVDs oder andere
Filme ins VCD- oder SVCD-Format konvertiert oder sogar direkt auf eine
CD gebrannt werden.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wie kann ich zwei Videodateien aneinanderh&auml;ngen?</DT>
<DD>A: Das wurde schon unglaublich oft auf der MPlayer-Users-Mailingliste
diskutiert. Durchsuche das
<A HREF="http://mplayerhq.hu/cgi-bin/htsearch?restrict=/mplayer-users/">
Archiv</A>. Dort findest du vollst&auml;ndige Antworten. Das
Aneinanderh&auml;ngen ist ein sehr komplexes Thema, und dein (Mis-)Erfolg
h&auml;ngt sehr von der Art deiner aneinanderzuh&auml;ngenden Dateien
ab. MPEGs lassen sich noch relativ einfach aneinanderh&auml;ngen. F&uuml;r
AVIs gibt es zwei Tools, die das eventuell hinkriegen k&ouml;nnen:
<A HREF="http://fixounet.free.fr/avidemux/">avidemux</A>
und avimerge, das Teil von
<A HREF="http://www.theorie.physik.uni-goettingen.de/~ostreich/transcode/">
transcode</A> ist. Wenn du zwei Dateien hast, deren Aufl&ouml;sung und
Codec identisch sind, dann kannst du eventuell auch MEncoder
daf&uuml;r benutzen:<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<CODE>cat file1 file2 &gt; file3</CODE><BR>
&nbsp;&nbsp;&nbsp;&nbsp;<CODE>mencoder -ovc copy -oac copy -o out.avi
-forceidx file3.avi</CODE></DD>
<DD>&nbsp;</DD>
<DT>Q: Mein Tuner funktioniert. Ich h&ouml;re Ton und sehe Video mit
MPlayer, aber MEncoder nimmt keinen Ton auf!</DT>
<DD>A: TV-Audioaufnahme f&uuml;r Linux ist momentan nicht implementiert.
Wir arbeiten daran. Es l&auml;uft momentan nur auf BSD.</DD>
<DD>&nbsp;</DD>
<DT>Q: Ich kann keine DVD-Untertitel in ein AVI kodieren!</DT>
<DD>A: Du musst die <CODE>-sid</CODE> Option korrekt verwenden!</DD>
<DD>&nbsp;</DD>
<DT>Q: MEncoder segfaultet beim Start!</DT>
<DD>A: Besorg dir neue Versionen von DivX4Linux/XviD/etc.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wie kann ich nur ein bestimmtes Kapitel von einer DVD kodieren?</DT>
<DD>A: Verwende die <CODE>-chapter</CODE>-Option korrekt, z.B. so:
<CODE>-chapter 5-7</CODE></DD>
<DD>&nbsp;</DD>
<DT>Q: Ich versuche, mit 2GB+-Dateien auf einem VFAT-Dateisystem zu
arbeiten. Geht das?</DT>
<DD>A: Nein, VFAT unterst&uuml;tzt keine Dateien, welche gr&ouml;sser
als 2Gb sind.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wieso ist die von MEncoder vorgeschlagene Bitrate
negativ?</DT>
<DD>A: Weil die Bitrate, die bei der Audiokonvertierung verwendet wurde,
zu hoch war, um den Film auf eine CD bringen. Du solltest
&uuml;berpr&uuml;fen, ob libmp3lame korrekt installiert wurde.</DD>
<DD>&nbsp;</DD>
<DT>Q: Wie kann ich MPlayer f&uuml;r eine bestimmte Datei Optionen
beibringen, ohne sie jeweils auf der Kommandozeile angeben zu m&uuml;ssen?
</DT>
<DD>A: Schreib all die dateispezifischen Einstellungen in eine Datei
namens <CODE>movie.avi.conf</CODE>, wenn dein Film <CODE>movie.avi</CODE>
hei&szlig;t, und leg diese Datei nach <CODE>~/.mplayer</CODE> oder in
das gleiche Verzeichnis wie der Film selber.</DD>
</DL>
</BODY>
</HTML>

View File

@ -1,344 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Formate - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H2><A NAME="formats">2.1 Unterst&uuml;tzte Formate</A></H2>
<P>Es ist wichtig, einen h&auml;ufigen Fehler zu berichtigen. Wenn Leute eine
Datei mit <B>.AVI</B>-Erweiterung sehen denken sie sofort, dass es keine MPEG-
Datei ist. Das ist nicht wahr. Zumindest nicht vollst&auml;ndig. Im Gegensatz
zur verbreiteten Ansicht <B>kann</B> solche eine Datei MPEG1-Video
enthalten.</P>
<P>Ein <B>Codec</B> ist nicht dasselbe wie ein <B>Dateiformat</B>.<BR>
Beispiele f&uuml;r <B>Video-Codecs</B> sind: MPEG1, MPEG2, DivX, Indeo5,
3ivx.<BR> Beispiele f&uuml;r <B>Dateiformate</B> sind: MPG, AVI, ASF.<BR></P>
<P>Theoretisch kannst du ein OpenDivX-Video und MP3-Audio in einer
<B>.MPG</B>-Datei vereinigen. Die meisten Player k&ouml;nnten es jedoch nicht
abspielen, da sie MPEG1-Video und MP2-Audio erwarten (im Gegensatz zu
<B>AVI</B> besitzt <B>MPG</B> nicht die n&ouml;tigen Felder, die die Video-
und Audio-Streams beschreiben). Oder du k&ouml;nntest ein MPEG1-Video in ein
.AVI geben. <A HREF="http://ffmpeg.sourceforge.net">ffmpeg</A> und <A
HREF="encoding.html">MEncoder</A> k&ouml;nnen solche Dateien erzeugen.</P>
<H3><A NAME="video_formats">2.1.1 Videoformate</A></H3>
<H4><A NAME="mpeg">2.1.1.1 MPEG-Dateien</A></H4>
<P>MPEG-Dateien kommen in unterschiedlichen Erscheinungen:</P>
<UL>
<LI>MPG: Dies ist die <B>grundlegende</B> Form des MPEG Dateiformates. Es
enth&auml;lt MPEG1-Video und MP2-(MPEG-1 layer 2) oder selten MP1-
Audio.</LI>
<LI>DAT: Dies ist dasselbe Format wie MPG mit einer unterschiedlichen
Endung. Es wird auf <B>Video CD</B>s benutzt. Auf Grund der Tatsache, wie
VCDs erzeugt werden und wie Linux entworfen wurde, kann man die DAT-
Dateien einer VCD weder abspielen noch kopieren. Du musst die
<CODE>-vcd</CODE>-Option zum Abspielen verwenden.</LI>
<LI>VOB: VOB ist das MPEG Dateiformat bei <B>DVD</B>s. Es ist das gleiche
wie MPG mit zus&auml;tzlicher Unterst&uuml;tzung f&uuml;r Untertitel oder
nicht-MPEG-(AC3)-Audio. Es enth&auml;lt MPEG2-Video und normalerweise AC3-
Audio, aber auch DTS, MP2 und unkomprimierte LPCMs sind erlaubt.<BR>
<B>Lies die <A HREF="cd-dvd.html#dvd">DVD-Sektion</A> !</B></LI>
</UL>
<P>Serien von Frames bilden unabh&auml;ngige Gruppen in MPEG-Dateien. Das
bedeutet, dass du eine MPEG-Datei mit einem Standard-Dateitool (wie
<CODE>dd</CODE> oder <CODE>cut</CODE>) schneiden und zusammenf&uuml;gen kannst
und dieses trotzdem vollst&auml;ndig funktionsf&auml;hig bleibt.</P>
<P>Ein wichtiges Feature von MPGs ist, dass sie ein Feld besitzen, das das
Breiten-/H&ouml;henverh&auml;ltnis des Video-Streams angibt. SVCDs haben zum
Beispiel Video mit einer Aufl&ouml;sung von 480x480, und im Header ist dieses
Feld auf 4:3 gesetzt. Also wird es als 640x480 abgespielt. AVI-Dateien haben
diese Feld nicht, sodass diese w&auml;hrend des Encodierens skaliert werden
m&uuml;ssen oder die Option <CODE>-aspect</CODE> bei der Wiedergabe verwendet
werden muss.</P>
<H4><A NAME="avi">2.1.1.2 AVI-Dateien</A></H4>
<P>AVI (Audio Video Interleaved) ist ein von Microsoft entworfenes und
weitverbeitetes Multifunktionsformat, das zur Zeit haupts&auml;chlich f&uuml;r
DivX und DivX4 Videos verwendet wird. Es hat einige bekannte Nachteile, und
ihm fehlen ein paar wichtige Features (zum Beispiel Streaming). Es
unterst&uuml;tzt einen Videostream und 0 bis 99 Audiostreams. Die Dateien
k&ouml;nnen bis zu 2 GB gro&szlig; sein. Es existiert eine Erweiterung
f&uuml;r gr&ouml;&szlig;ere Dateien, genannt <B>OpenDMS</B>. Microsoft
t&auml;t von der Verwendung stark ab und propergiert ASF/WMV. Als ob das
irgendwen kratzen w&uuml;rde.</P>
<P>Es gibt einen Hack, der es AVI-Dateien erlaubt, Ogg Vorbis Audio-Streams zu
enthalten, sie aber auch inkompatibel zu Standard-AVIs macht. MPlayer
unterst&uuml;tzt die Wiedergabe solcher Dateien. Eine Spulfunktion ist auch
implementiert, jedoch wird diese start von schlecht konvertierten Dateien mit
verwirrenden Headers gest&ouml;rt. Leider schreibt der einzige Encodierer, der
f&auml;hig ist, solche Dateien zu erzeugen (NanDub), solch problematischen
Header.</P>
<P><B>Hinweis:</B> DV-Kameras k&ouml;nnen Raw-DV-Streams erzeugen, welche von
DV-Aufnahmetools in zwei unterschiedliche Typen von AVI-Dateien konvertiert
werden. Die AVI-Datei enth&auml;lt dabei entweder separate Audio- und
Video-Streams, die MPlayer wiedergeben kann, oder den
unver&auml;nderten DV-Stream. An dessen Unterst&uuml;tzung wird gerade
gearbeitet.</P>
<P>Es gibt 2 Arten von AVI-Dateien:</P>
<UL>
<LI><B>Interleaved:</B> Audio- und Video-Inhalt werden paketweise
ineinandergeschachtelt. Die ist &uuml;blich, wird empfohlen und auch meist
verwendet. Einige Tools erzeugen interleaved AVIs mit schlechtem Sync.
MPlayer erkennt diese als interleaved, was zum Verlust von A/V-Sync
f&uuml;hren kann (evtl. erst beim Vor-/Zur&uuml;ckspueln). Diese Dateien
sollten non-interleaved (mit der <CODE>-ni</CODE>-Option) abgespielt
werden.</LI>
<LI><B>Non-interleaved:</B> Als erstes kommt der ganze Videostream, dann
dann der ganze Audiostream. Dies erfordert viel Suchen in der Datei, was
die Wiedergabe vom Netzwerk oder von CDROM schwierig macht.</LI>
</UL>
<P>MPlayer unterst&uuml;tzt zwei Arten des timings f&uuml;r AVI-Dateien:</P>
<UL>
<LI><B>bps-basiert</B>: Diese Methode basiert auf der Bitrate/Samplerate
des Video-/Audio-Streams. Diese Methode wird von den meisten Playern
verwendet, inklusive <A HREF="http://avifile.sourceforge.net/">avifile</A>
und Windows Media Player. Dateien mit kaputten Headern und Datein, welche
mit VBR-Audio aber nicht VBR-unterst&uuml;tzendem Encoder erstellt wurden,
f&uuml;hren zu A/V-Desync mit dieser Methode (meistens beim Spulen).</LI>
<LI><B>interleaving-basiert</B>: Diese Methode benutzt nicht mehr den Wert
der Bitrate sondern die relative Position des Audio-Paketes zum aktuellen
Video-Paket, was einige falsch codierte Dateien mit VBR-Audio
abspielbar macht.</LI>
</UL>
<P>Jeglicher Audio- und Video-Codec ist erlaubt. Aber bedenke, dass VBR-Audio
von den meisten Playern nicht gut unst&uuml;tzt wird. Das Dateiformat macht es
m&ouml;glich, VBR-Audio zu verwendenm, aber die meinsten Player erwarten CBR-
Audio, weswegen VBR-Audio nicht funktioniert. VBR ist ungew&ouml;hnlich, und
Microsofts Spezifikation zu AVI beschreiben nur CBR-Audio. Bedenke auch, dass
die meisten AVI-Encoder/Multiplexer schlechte Dateien mit VBR-Audio erzeugen.
Es gibt nur zwei Ausnahmen: NanDub und <A
HREF="encoding.html">MEncoder</A>.</P>
<H4><A NAME="asf">2.1.1.3 ASF/WMV-Dateien</A></H4>
<P>ASF (Active Streaming Format) kommt von Microsoft. Sie habe zwei Arten von
ASF entwickelt, v1.0 und v2.0. v1.0 wird von ihren Media Tools (Windows Media
Player und Windows Media Encoder) verwendet und ist sehr geheim. v2.0 ist
ver&ouml;ffentlicht und patentiert :). Nat&uuml;rlich sind sie unterschiedlich
und besitzten &uuml;berhaupt keine Gemeinsamkeiten (es ist nur ein weiteres
Spiel mit den Gesetzen). MPlayer unterst&uuml;tzt nur v1.0, weil noch
niemand v2.0 Dateien gesehen hat :). Beachte, dass .ASF-Dateien heute auch mit
der Extension .WMA oder .WMV vorkommen.</P>
<H4><A NAME="mov">2.1.1.4 QuickTime/MOV-Dateien</A></H4>
<P>Diese Formate sind von Apple designt und k&ouml;nnen jeden beliebigen Codec
enthalten, CBR oder VBR. Normalerweise haben sie die Endung .QT oder .MOV.
Seitdem die MPEG4-Gruppe QuickTime als das empfohlene Dateiformat f&uuml;r
MPEG4 ausgew&auml;hlt hat, kommen ihre .MOV-Dateien mit den Endungen .MPG oder
.MP4. (Interessanterweise sind bei diesen Dateien die Video- und Audiostreams
richtige MPG- und AAC-Dateien. Mit den den Optionen <CODE>-dumpvideo</CODE>
und <CODE>-dumpaudio</CODE> kannst du sie sogar extrahieren.).</P>
<P><B>Hinweis</B>: Die meisten QuickTime-Dateien benutzen <B>Sorenson</B>-
Video und QDesign-Audio. Lies dazu die <A
HREF="codecs.html#sorenson">Sorenson</A>-Codec-Sektion.</P>
<H4><A NAME="vivo">2.1.1.5 VIVO-Dateien</A></H4>
<P>MPlayer demuxt nun auch fr&ouml;hlich VIVO-Dateiformate. Der
gr&ouml;sste Nachteil des Formates ist, dass es keinen Index-Block besitzt,
auch keine fixe Paketgr&ouml;&szlig;e oder Sync-Bytes. Die meisten Dateien
besitzen nicht mal Keyframes, also vergiss das Spulen!</P>
<P>Der Videocodec von VIVO/1.0-Datei ist Standard-<B>h.263</B>. Der Videocodec
der VIVO/2.0 Dateien ist ver&auml;nderter, nichtstandard-<B>h.263</B>. Bei
Audio ist es dasselbe, es ist <B>g.723</B> (Standard) oder <B>Vivo
Siren</B>.</P>
<P>In den <A HREF="codecs.html#vivo_video">VIVO-Videocodec-</A> und <A
HREF="codecs.html#vivo_audio">VIVO-Audiocodec</A>-Sektionen findest du
Installationsanweisungen.</P>
<H4><A NAME="fli">2.1.1.6 FLI-Dateien</A></H4>
<P><B>FLI</B> ist ein sehr altes vom Autodesk Animator benutztes Dateiformat.
Es ist aber immer noch ein im Internet gebr&auml;ucliches Dateiformat f&uuml;r
kurze Animationen. MPlayer demuxt und decodiert FLI-Filme und ist sogar
f&auml;hig, in ihnen vor- und zur&uuml;ckzuspulen (n&uuml;tzlich, wenn man
looping mit der <CODE>-loop</CODE>-Option aktiviert hat). FLI-Dateien haben
keine Keyframes, was zu verunstalteten Bildern kurz nach dem Spulen
f&uuml;hrt.</P>
<H4><A NAME="real">2.1.1.7 RealMedia-(RM)-Dateien</A></H4>
<P>Ja, MPlayer kann RealMedia (.rm) Dateien lesen (demuxen). Spulen
(seeking) funktioniert, jedoch muss die <CODE>-forceidx</CODE>-Option
verwendet werden (das Format unterst&uuml;zt Keyframes). Hier ist die Liste
der unterst&uuml;tzten <A HREF="codecs.html#realvideo">RealVideo-</A> und <A
HREF="codecs.html#realaudio">RealAudio-</A>Codecs.</P>
<H4><A NAME="nuppelvideo">2.1.1.8 NuppelVideo-Dateien</A></H4>
<P><A HREF="http://mars.tuwien.ac.at/~roman/nuppelvideo">NuppelVideo</A> ist,
soweit ich weiss, ein TV-Aufnahmeprogramm. MPlayer kann dessen .NUV-
Dateien (nur NuppelVideo 5.0) lesen. Diese Dateien k&ouml;nnen unkomprimierte
YV12-, komprimierte YV12+RTJpeg-, komprimierte YV12-RTJpeg+lzo- und
komprimierte YV12+lzo-Frames enthalten, welche MPlayer alle dekodiert
(und diese auch mit MEncoder zu DivX/etc! <B>encodiert</B>). Spulen (seeking)
funktioniert.</P>
<H4><A NAME="yuv4mpeg">2.1.1.9 yuv4mpeg-Dateien</A></H4>
<P><A HREF="http://mjpeg.sourceforge.net">yuv4mpeg / yuv4mpeg2</A> ist ein
Dateiformat, das von den <A HREF="http://mjpeg.sf.net">mjpegtools-
Programmen</A> verwendet wird. Du kannst damit Video in diesem Format
einlesen, produzieren, filtern oder encodieren. Das Dateiformat ist eigentlich
eine Sequenz von unkomprimierten YUV 4:2:0 Bildern. </P>
<H4><A NAME="film">2.1.1.10. FILM-Dateien</A></H4>
<P>Dieses Format wird auf alten Sega Saturn CD-Rom-Spielen verwendet.</P>
<H4><A NAME="roq">2.1.1.11. RoQ-Dateien</A></H4>
<P>RoQ-Dateien sind Multimedia-Dateien, welche in gewissen ID-Spielen wie
Quake III und Return to castle Wolfenstein benutzt werden.</P>
<H4><A NAME="ogg">2.1.1.12. OGG/OGM-Dateien</A></H4>
<P>Dies ist ein neues Dateiformat von <A
HREF="http://www.xiph.org">Xiphophorus</A>. Es kann beliebige Video- und
Audio-Codecs enthalten, sowohl CBR als auch VBR. Man ben&ouml;tigt dazu
installierte <CODE>libogg-</CODE> und <CODE>libvorbis-</CODE>Bibliotheken vor
der Kompilierung von MPlayer, um sie wiedergeben zu k&ouml;nnen.</P>
<H4><A NAME="sdp">2.1.1.13 SDP-Dateien</A></H4>
<P><A HREF="ftp://ftp.rfc-editor.org/in-notes/rfc2327.txt">SDP</A> ist ein
IETF-Standardformat, das Video- und/oder Audio-RTP-Streams beschreibt. (Dazu
werden die <A HREF="http://www.live.com/mplayer/">LIVE.COM Streaming
Media</A>-Bibliotheken ben&ouml;tigt.)</P>
<H4><A NAME="pva">2.1.1.14 PVA-Dateien</A></H4>
<P>PVA ist MPEG-&auml;hnliches Format, das von verschiedenen Windowsprogrammen
benutzt wird, die bei DVB-TV-Karten mitgeliefert werden (z.B. MultiDec,
WinTV).</P>
<P>Die PVA-Spezifikationen k&ouml;nnen an der folgenden Adresse
heruntergeladen werden: <A
HREF="http://www.technotrend.de/download/av_format_v1.pdf">http://www.technotr
end.de/download/av_format_v1.pdf</A></P>
<H4><A NAME="gif">2.1.1.15 GIF-Dateien</A></H4>
<P>Das <B>GIF</B>-Format ist ein weit verbreitetes Format f&uuml;r Grafiken
im Web. Es gibt zwei Versionen der GIF-Spezifikationen, GIF87a und GIF89a.
Der gr&ouml;&szlig;te Unterschied liegt darin, dass GIF89a Animationen
unterst&uuml;tzt. MPlayer unterst&uuml;tzt beide Formate mit Hilfe der
libungif-Bibliothek oder einer anderen libgif-kompatiblen Bibliothek.
Nicht animierte GIFs werden als Ein-Bild-Videos dargestellt. (Mit den
Optionen <CODE>-loop</CODE> und <CODE>-fixed-vo</CODE> k&ouml;nnen solche
GIFs l&auml;nger angezeigt werden.)</P>
<P>Momentan unterst&uuml;tzt MPlayer nicht das Spulen in GIF-Dateien. Die
einzelnen Bilder in GIF-Dateien haben nicht zwangsl&auml;ufig die gleichen
Dimensionen, und auch nicht eine feste Bildrate. Jedes Bild hat vielmehr
seine eigenen Dimensionen und soll an einer bestimmten Position auf einem
Bereich angezeigt werden, der selber aber eine feste Gr&ouml;&szlig;e hat.
Die Bildrate wird von einem optionalen Block vor jedem Bild kontrolliert,
der die Anzeigedauer des nachfolgenden Bildes in Zentisekunen angibt.</P>
<P>Standard-GIF-Dateien enthalten 24 Bit RGB-Bilder mit einer indizierten
Palette, die h&ouml;chstens bis 8 Bit geht. Die Bilder sind normalerweise
mit dem LZW-Algorithmus komprimiert. Es gibt aber auch GIF-Encoder, die
unkomprimierte Bilder erzeugen, um die Patentprobleme mit dem LZW-Algorithmus
zu umgehen.</P>
<P>Wenn bei deiner Distribution die libungif nicht dabei ist, dann lade sie
von der <A HREF="http://prtr-13.ucsc.edu/~badger/software/libungif/index.shtml">
libungif-Homepage</A> herunter. Detaillierte technische Informationen findest
du in den <A HREF="http://www.w3.org/Graphics/GIF/spec-gif89a.txt">
GIF89a-Spezifikationen</A>.</P>
<H3><A NAME="audio_formats">2.1.2 Audio Formate</A></H3>
<P>MPlayer ist ein <B>Movie-(Film-)</B> und kein <B>Media-</B>Player.
Er kann auch einige Audioformate wiedergeben (diese sind in der unteren
Sektion beschrieben). Dies wird jedoch nicht empfohlen, und du solltest besser
<A HREF="http://www.xmms.org">xmms</A> verwenden.</P>
<H4><A NAME="mp3">2.1.2.1 MP3-Dateien</A></H4>
<P>Du hast vielleicht Probleme mit der Wiedergabe einiger MP3-Dateien, die
MPlayer falsch als MPEGs erkennt und dementsprechend falsch oder gar
nicht wiedergibt. Dies kann nicht gel&ouml;st werden, ohne die
Unterst&uuml;tzung f&uuml;r einige kaputte MPEG-Dateien aufzugeben und wird
desshalb bis auf weiteres so bleiben. Die Option <CODE>-demuxer</CODE>, welche
in der Manpage beschrieben wird, k&ouml;nnte dir in diesen F&auml;llen
helfen.</P>
<H4><A NAME="wav">2.1.2.2 WAV-Dateien</A></H4>
<H4><A NAME="ogg_vorbis">2.1.2.3 OGG/OGM-Dateien (Vorbis)</A></H4>
<P>Ben&ouml;tigt richtig installierte <CODE>libogg</CODE> und
<CODE>libvorbis</CODE>.</P>
<H4><A NAME="wma">2.1.2.4 WMA/ASF-Dateien</A></H4>
<H4><A NAME="mp4">2.1.2.5 MP4-Dateien</A></H4>
<H4><A NAME="cdda">2.1.2.6 CD-Audio</A></H4>
<P>MPlayer kann die Bibliotheken von <B>cdparanoia</B> benutzen,
um CDDA-Dateien wiederzugeben. Alle Kommandozeilenparameter von cdparanoia
aufzuz&auml;hlen geh&ouml;rt nicht zu den Aufgaben dieser Dokumentation.</P>
<P>Schau in der Manpage bei der Option <CODE>-cdda</CODE> nach, wie mit ihr
Parameter an cdparanoia &uuml;bergeben werden k&ouml;nnen.</P>
<H4><A NAME="xmms">2.1.2.7 XMMS</A></H4>
<P>MPlayer kann XMMS-Inputplugins benutzen, um eine Vielzahl von Dateiformaten
abzuspielen. Es gibt Plugins f&uuml;r SNES-Spielemusik, SID-Musik (vom guten
alten Commodore 64), viele Amiga-Formate, .xm, .it, VQF, musepack, Bonk
shorten und viele weitere. Du findest sie auf der Seite f&uuml;r
<A HREF="http://www.xmms.org/plugins_input.html">XMMS-Inputplugins</A>.</P>
<P>Um dieses Feature benutzen zu k&ouml;nnen, brauchst du XMMS und musst
MPlayer mit <CODE>./configure --enable-xmms</CODE> compilieren. Funktioniert
das nicht, dann musst du eventuell die Pfade f&uuml;r die XMMS-Plugings und die
XMMS-Bibliotheken explizit mit <CODE>--with-xmmsplugindir</CODE> und
<CODE>--withxmmslibdir</CODE> angeben.</P>
</BODY>
</HTML>

View File

@ -1,899 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Sound - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H3><A NAME="audio">2.3.2 Audio-Ausgabe-Ger&auml;te</A></H3>
<H4><A NAME="sync">2.3.2.1 Audio-/VideoSynchronisation</A></H4>
<P>MPlayers Audio-Interface wird <I>libao2</I> genannt. Es enth&auml;lt
zur Zeit diese Treiber:</P>
<DL>
<DT>oss</DT>
<DD>OSS (ioctl)-Treiber (unterst&uuml;tzt das Durchreichen von AC3)</DD>
<DT>sdl</DT>
<DD>SDL-Treiber (untertst&uuml;tzt Sound-D&auml;monen wie <B>ESD</B> und
<B>ARTS</B>)</DD>
<DT>nas</DT>
<DD>NAS (Network Audio System)-Treiber</DD>
<DT>alsa5</DT>
<DD>ALSA 0.5-Treiber</DD>
<DT>alsa9</DT>
<DD>ALSA 0.9-Treiber (unterst&uuml;tzt das Durchreichen von AC3)</DD>
<DT>sun</DT>
<DD>SUN Audiotreiber (<CODE>/dev/audio</CODE>) f&uuml;r BSD und Solaris8</DD>
<DT>arts</DT>
<DD>ARTS-Treiber (haupts&auml;chlich f&uuml;r KDE-Benutzer)</DD>
<DT>esd</DT>
<DD>ESD-Treiber (haupts&auml;chlich f&uuml;r GNOME-Benutzer)</DD>
</DL>
<P>Linux-Soundkartentreiber haben Probleme mit der Kompatibilit&auml;t.
MPlayer benutzt einen in <EM>vern&uuml;nftig</EM> implementierten Treibern
eingebauten Mechanismus, um die Audio-/Video-Synchronisation korrekt
beizubehalten. Leider sind einige Treiberautoren nicht sonderlich gr&uuml;ndlich
bei der Implementation dieses Mechanismusses, da er nicht ben&ouml;tigt wird,
um MP3s abzuspielen oder Soundeffekte zu erzeugen.</P>
<P>Andere Medienplayer wie z.B. <A HREF="http://avifile.sourceforge.net">
aviplay</A> oder <A HREF="http://xine.sourceforge.net">xine</A> funktionieren
bei dir wahrscheinlich so, wie sie sind, weil sie eine "simplere" Methode wie
internes Timing f&uuml;r die Audio-/Video-Synchronisation verwenden.
Verschiedene Tests haben gezeigt, dass ihre Methoden nicht ganz so effizient
wie MPlayers Methoden sind.</P>
<P>Wenn du MPlayer zusammen mit einem korrekt geschriebenen
Soundkartentreiber verwendest, dann wirst du niemals A/V-Desyncs aufgrund des
Audiotreibers erleben (h&ouml;chstens mit sehr schlecht erstellten Dateien.
Schau in einem solchen Fall in die Dokumentation, wie du das beheben
kannst).</P>
<P>Wenn du einen solchen nicht gut implementierten Audiotreiber verwendest,
dann probier die Option <CODE>-autosync</CODE> aus, die deine Probleme
l&ouml;sen sollte. Schau in der man-Page nach; dort findest du mehr
Informationen dazu.</P>
<P>Einige Anmerkungen:</P>
<UL>
<LI>Wenn du einen OSS-Treiber hast, versuche als erstes <CODE>-ao
oss</CODE> (dies ist die Standardeinstellung). Wenn du kleine Fehler,
Verz&ouml;gerungen oder irgendetwas anderes ungew&ouml;hliches h&ouml;rst,
versuche mal <CODE>-ao sdl</CODE> (HINWEIS: die SDL-Bibliotheken und das
dazugeh&ouml;rige Devel-Paket m&uuml;ssen installiert sein). Der SDL-
Audiotreiber hilft in vielen F&auml;llen und unterst&uuml;tzt auch ESD
(GNOME) und ARTS (KDE).</LI>
<LI>Wenn du ALSA Version 0.5 verwendest, musst du fast immer <CODE>-ao
alsa5</CODE> verwenden, weil ALSA 0.5 einen fehlerhaften OSS-
Emulationscode hat. MPlayer wird mit etwa so einer Meldung
<B>abst&uuml;rzen</B>:<BR> <CODE>DEMUXER: Too many (945 in 8390980 bytes)
video packets in the buffer!</CODE></LI>
<LI>Unter Solaris solltest du den SUN-Audiotreiber mittels <CODE>-ao
sun</CODE> benutzen, da ansonsten weder Video noch Audio funktionierne.</LI>
<LI>Wenn beim Ton Klickger&auml;usche beim Abspielen vom CD-ROM-Laufwerk zu
h&ouml;rne sind, dann schalte "IRQ unmasking" an, z.B. mit
<CODE>hdparm -u1 /dev/cdrom</CODE> (<CODE>man hdparm</CODE>). Das ist auch
generell von Vorteil, wie du in der
<A HREF="cd-dvd.html#drives">CD-ROM-Sektion</A> nachleesn kannst.</LI>
</UL>
<H4><A NAME="experiences">2.3.2.2 Soundkarten-Erfahrungen,
-Empfehlungen</A></H4>
<P>Unter Linux wird ein 2.4.x Kernel sehr empfohlen. Kernel 2.2 wird nicht
getestet.</P>
<P>Linux-Soundtreiber werden haupts&auml;chlich von der freien Version von
OSS bereitgestellt. Diese Treiber werden inzwischen von denen des
<A HREF="http://www.alsa-project.org">ALSA-Projektes</A> abgel&ouml;st
(Advanced Linux Sound Architecture), die bereits im Entwicklerbaum des Kernels
(2.5) zu finden sind. Wenn deine Distribution nicht bereits ALSA verwendet
und du Probleme mit dem Sound hast, dann solltest du die ALSA-Treiber mal
ausprobieren. Die ALSA-Treiber sind den OSS-Treibern meistens in Sachen
Kompatibilit&auml;t, Performance und Featuren &uuml;berlegen. Ledier werden
einige Soundkarten dagegen nur von OSS-Treibern von
<A HREF="http://www.opensound.com/">4Front Technologies</A> unterst&uuml;tzt.
Sie unterst&uuml;tzen ebenfalls einige Nicht-Linux-Systeme.</P>
<TABLE BORDER="1" WIDTH="100%">
<TR>
<TH ROWSPAN="2"><B>SOUNDKARTE</B></TH>
<TH COLSPAN="4"><B>TREIBER</B></TH>
<TH ROWSPAN="2"><B>Max kHz</B></TH>
<TH ROWSPAN="2"><B>Max Anz. Kan&auml;le</B></TH>
<TH ROWSPAN="2"><B>Max Anz. gleichzeitiger Zugriffe<FONT SIZE="-2"><A HREF="#note1">[1]</A></FONT></B></TH>
</TR>
<TR>
<TH><B>OSS/Free</B></TH>
<TH><B>ALSA</B></TH>
<TH><B>OSS/Pro</B></TH>
<TH><B>andere</B></TH>
</TR>
<TR>
<TD><B>VIA onboard (686/A/B, 8233, 8235)</B></TD>
<TD><A HREF="http://sourceforge.net/project/showfiles.php?group_id=3242&amp;release_id=59602">via82cxxx_audio</A></TD>
<TD>snd-via82xx</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
<TD>4-48 kHz oderr nur 48 kHz, abh&auml;ngig vom Chipsatz</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>Aureal Vortex 2</B></TD>
<TD>keine</TD>
<TD>keine</TD>
<TD>OK</TD>
<TD><A HREF="http://aureal.sourceforge.net">Linux Aureal-Treiber</A><BR>
<A HREF="http://makacs.poliod.hu/~pontscho/aureal/au88xx-1.1.3.tar.bz2">buffer size increased to 32k</A></TD>
<TD>48</TD>
<TD>4.1</TD>
<TD>5+</TD>
</TR>
<TR>
<TD><B>SB Live!</B></TD>
<TD>Analog OK, SP/DIF funktioniert nicht</TD>
<TD>beide OK</TD>
<TD>beide OK</TD>
<TD><A HREF="http://opensource.creative.com">Creatives OSS-Treiber (mit SP/DIF-Unterst&uuml;tzung)</A></TD>
<TD>192</TD>
<TD>4.0/5.1</TD>
<TD>32</TD>
</TR>
<TR>
<TD><B>SB 128 PCI (es1371)</B></TD>
<TD>OK</TD>
<TD>?</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
<TD>48</TD>
<TD>stereo</TD>
<TD>2</TD>
</TR>
<TR>
<TD><B>SB AWE 64</B></TD>
<TD>max 44kHz</TD>
<TD>48kHz klingt schlecht</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
<TD>48</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>GUS PnP</B></TD>
<TD>keine</TD>
<TD>OK</TD>
<TD>OK</TD>
<TD>&nbsp;</TD>
<TD>48</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>Gravis UltraSound ACE</B></TD>
<TD>nicht OK</TD>
<TD>OK</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
<TD>44</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>Gravis UltraSound MAX</B></TD>
<TD>OK</TD>
<TD>OK (?)</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
<TD>48</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>ESS 688</B></TD>
<TD>OK</TD>
<TD>OK (?)</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
<TD>48</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>C-Media-Karten (welche genau?)</B></TD>
<TD>nicht OK (zischt) (?)</TD>
<TD>OK</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
<TD>?</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>Yamaha-Karten (*ymf*)</B></TD>
<TD>nicht OK (?) (vielleicht mit <CODE>-ao sdl</CODE>)</TD>
<TD>nur mit der OSS-Emulation von ALSA 0.5 OK <B>UND</B>
<CODE>-ao sdl</CODE> (!) (?)</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
<TD>?</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>Karten mit envy24-Chips (wie z.B. Terratec EWS88MT)</B></TD>
<TD>?</TD>
<TD>?</TD>
<TD>OK</TD>
<TD>&nbsp;</TD>
<TD>?</TD>
<TD>&nbsp;</TD>
<TD>&nbsp;</TD>
</TR>
<TR>
<TD><B>PC-Lautsprecher oder DAC</B></TD>
<TD>OK</TD>
<TD>none</TD>
<TD>&nbsp;</TD>
<TD><A HREF="http://www.geocities.com/stssppnn/pcsp.html">OSS-Treiber f&uuml;r den PC-Lautsprecher</a></TD>
<TD>Der Treiber emuliert 44.1, vielleicht auch mehr.</TD>
<TD>mono</TD>
<TD>1</TD>
</TR>
</TABLE>
<P><A NAME="note1"><B>[1]</B></A>: Die Anzahl der Anwendungen, die <I>zur
gleichen Zeit</I> auf das Ger&auml;t zugreifen k&ouml;nnen.</P>
<P>R&uuml;ckmeldungen zu diesem Dokument sind willkommen. Bitte sag uns, wie
MPlayer und deine Soundkarte(n) zusammen funktionieren.</P>
<H4><A NAME="af">2.3.2.3 Audiofilter</A></H4>
<P>Die alten Audioplugins wurden von einer neuen Filterschicht abgel&ouml;st.
Audiofilter werden benutzt, um die Parameter der Daten zu &auml;ndern, bevor
sie die Soundkarte erreichen. Die Aktivierung der Filter geschieht normalerweise
automatisch, kann aber auch erzwungen oder verhindert werden. Die Filter
werden aktiviert, wenn die Parameter der Daten von denen der Soundkarte
abweichen und deaktiviert, wenn sie gleich sind. Die Option <CODE>-af
filter1,filter2,...</CODE> wird benutzt, um Filter einzuf&uuml;gen, die nicht
automatisch eingef&uuml;gt werden. Diese Filter werden in der Reihenfolge
abgearbeitet, wie sie angegeben wurden.</P>
<P>Beispiele:<BR>
&nbsp;&nbsp;<CODE>mplayer -af resample,pan movie.avi </CODE></P>
<P>Schickt die Audiodaten durch das Resample-Filter und danach durch den
Pan-Filter. Die Liste darf keine Leerzeichen enthalten, sonst klappt's nicht.
</P>
<P>Viele Filter kennen Parameter, mit denen ihr Verhalten ge&auml;ndert werden
kann. Diese Parameter werden unten detailliert beschrieben. Wenn keine
Parameter angegeben werden, dann verwendet der Filter seine Standardwerte. Hier
ist ein Beispiel, wie Filter mit Parametern verwendet werden k&ouml;nnen:</P>
<P>&nbsp;&nbsp;<CODE>mplayer -af resample=11025,pan=1:0.5:0.5 -channels 1
-srate 11025 media.avi</CODE></P>
<P>Das setzt die Ausgabefrequenz des Resampleplugins auf 11025Hz und
downmixt das Audio auf einen Kanal mit dem Pan-Filter.</P>
<P>Die allgemeine Kontrolle der Filterschicht geschieht &uuml;ber
<CODE>-af-adv</CODE>. Diese Option kennt zwei Parameter:</P>
<DL>
<DT><CODE>force</CODE><DT>
<DD>ist ein Bitfeld, das angibt, wie die Filter
einzuf&uuml;gen sind und welche Geschwindigkeits-/Genauigkeitsoptimierungen
sie verwenden:
<DL>
<DT><CODE>0</CODE></DT>
<DD>Benutzt automatisches Einf&uuml;gen und optimiert in Abh&auml;ngigkeit
der CPU-Geschwindigkeit.</DD>
<DT><CODE>1</CODE></DT>
<DD>Benutzt automatisches Einf&uuml;gen und optimiert f&uuml;r die
h&ouml;chstm&ouml;gliche Geschwindigkeit.<BR>
<EM>Warnung:</EM> Einige
Features der Audiofilter werden kommentarlos deaktiviert, und die
Soundqualit&auml;t k&ouml;nnte niedriger sein als erwartet.</DD>
<DT><CODE>2</CODE></DT>
<DD>Benutzt automatisches Einf&uuml;gen der Filter und optimiert f&uuml;r
Qualit&auml;t.</DD>
<DT><CODE>3</CODE></DT>
<DD>F&uuml;t nicht automatisch Filter ein.<BR>
<I>Warnung:</I> Hiermit kann
MPlayer eventuell zum Absturz gebracht werden.</DD>
<DT><CODE>4</CODE></DT>
<DD>F&uuml;gt automatisch Filter so wie bei 0 hinzu, benutzt aber
Flie&szlig;kommaarithmetik, wo dies m&ouml;glich ist.</DD>
<DT><CODE>5</CODE></DT>
<DD>F&uuml;gt automatisch Filter so wie bei 1 hinzu, benutzt aber
Flie&szlig;kommaarithmetik, wo dies m&ouml;glich ist.</DD>
<DT><CODE>6</CODE></DT>
<DD>F&uuml;gt automatisch Filter so wie bei 2 hinzu, benutzt aber
Flie&szlig;kommaarithmetik, wo dies m&ouml;glich ist.</DD>
<DT><CODE>7</CODE></DT>
<DD>F&uuml;gt keine Filter automatisch hinzu, benutzt aber
Flie&szlig;kommaarithmetik, wo dies m&ouml;glich ist.</DD>
</DL>
</DD>
<DT><CODE>list</CODE></DT>
<DD>Dies ist ein Synonym f&uuml;r <CODE>-af</CODE>.</DD>
</DL>
<P>Die Filterschicht wird auch von den folgenden allgemeinen Optionen
beeinflusst:</P>
<DL>
<DT><CODE>-v</CODE></DT>
<DD>Gibt ausf&uuml;hrlichere Meldungen aus. Die meisten Filter geben hiermit
auch mehr Statusinformationen aus.</DD>
<DT><CODE>-channels</CODE></DT>
<DD>Diese Option setzt die Anzahl der Ausgabekan&auml;le, die du von deiner
Soundkarte ausgegeben haben m&ouml;chtest. Sie beeinflusst auch die Anzahl
der Kan&auml;le, die
vom Quellstream decodiert werden. Wenn der Stream weniger als die hiermit
geforderte Anzahl Kan&auml;le enth&auml;lt, so werden automatisch
Filter eingef&uuml;gt (siehe unten). Das Routing ist das Standardrouting
des channels-Filters.</DD>
<DT><CODE>-srate</CODE></DT>
<DD>Diese Option gibt die Samplerate an, die die Soundkarte benutzen soll,
sofern sie diese Rate unterst&uuml;tzt.
Wenn die Samplefrequenz deiner Soundkarte anders ist als die des aktuellen
Quellstreams, so wird der resample-Filter (siehe unten) automatisch
eingef&uuml;gt, um diese Differenz auszugleichen.</DD>
<DT><CODE>-format</CODE><DT>
<DD>Diese Option setzt das Sampleformt zwischen Audiofilterschicht und der
Soundkarte. Wenn das angeforderte Format der Soundkarte nicht das gleiche
wie das des Quellstreams ist, dann wird der format-Filter (siehe unten)
automatisch eingef&uuml;gt, um das Format zu konvertieren.</DD>
</DL>
<H4><A NAME="af_resample">2.3.2.3.1 Up/Down-sampling</A></H4>
<P>MPlayer unterst&uuml;tzt vollst&auml;ndig Up-/Downsampling mit dem
resample-Filter. Dieser Filter kann benutzt werden, wenn du eine Soundkarte
hast, die nur eine feste Frequenz unterst&uuml;tzt, oder die nur maximal
44.1kHz unterst&uuml;tzt. Dieser Filter wird automatisch aktiviert, wenn er
ben&ouml;tigt wird. Er kann aber auch explizit auf der Kommandozeile aktiviert
werden. Er kennt drei Optionen:</P>
<DL>
<DT><CODE>srate &lt;8000-192000&gt;</CODE></DT>
<DD>wird benutzt, um die Ausgabesmaplefrequenz in Hz anzugeben. Der
g&uuml;ltige Bereich liegt zwischen 8kHz und 192kHz. Wenn Eingangs-
und Ausgabefrequenz gleich sind, oder wenn dieser Parameter nicht angegeben
wurde, so wird der Filter wieder entladen. Hohe Samplefrequenzen verbessern
normalerweise die Audioqualit&auml;t, vor allem, wenn auch andere
Filter benutzt werden.</DD>
<DT><CODE>sloppy</CODE></DT>
<DD>Mit dieser Option wird zugelassen, dass die Ausgabefrequenz leicht von
der geforderten Frequenz (<CODE>srate</CODE>) abweicht. Diese Option
kann benutzt werden, wenn das Playback nur sehr langsam startet.
Diese Option ist standardm&auml;&szlig;ig aktiviert.</DD>
<DT><CODE>type &lt;0-2&gt;</CODE><DT>
<DD>ist ein optional anzugebender Integer zwischen <CODE>0</CODE> und
<CODE>2</CODE>, der den zu benutzenden Resamplealgorithmus ausw&auml;hlt.
Hier w&auml;hlt <CODE>0</CODE> lineare Interpolation und <CODE>1</CODE>
mehrphasige Filterb&auml;nke mit Ganzahlarithmetik. <CODE>2</CODE>
w&auml;hlt mehrphasige Filterb&auml;nke mit Flie&szlig;kommaarithmetik.
Lineare Interpolation ist sehr schnell, liefert daf&uuml;r aber auch
schlechte Qualit&auml;t, vor allem, wenn sie benutzt wird, um die
Samplerate zu erh&ouml;hen. Die beste Qualit&auml;t liefert <CODE>2</CODE>.
Daf&uuml;r ben&ouml;tigt sie aber auch die meiste CPU-Zeit.</DD>
</DL>
<P>Beispiele:<BR>
&nbsp;&nbsp;<CODE>mplayer -af resample=44100:0:0</CODE></P>
<P>Dies setzt die Ausgabefrequenz des Resample-Filters auf exakt 44100Hz
mit linearer Interpolation.</P>
<H4><A NAME="af_channels">2.3.2.3.2 &Auml;ndern der Anzahl der Kan&auml;le</A>
</H4>
<P>Der <CODE>channels</CODE>-Filter kann benutzt werden, um Kan&auml;le
hinzuzuf&uuml;gen oder zu entfernen. Er kann auch benutzt werden, um
Kan&auml;le umzuleiten oder sie zu kopieren. Er wird automatisch aktiviert,
falls die Anzahl der Kan&auml;le bei Eingang und Ausgang der Audiofilterschicht
unterschiedlich ist, oder wenn ein anderer Filter diesen Filter ben&ouml;tigt.
Wenn er nicht gebraucht wird, so entl&auml;dt sich dieser Filter automatisch.
Die Anzahl der Parameter ist dynamisch:</P>
<DL>
<DT><CODE>nch &lt;1-6&gt;</CODE></DT>
<DD>ist eine ganze Zahl zwischen <CODE>1</CODE> und <CODE>6</CODE>, die die
Anzahl der Ausgabekan&auml;le festlegt. Dieser Parameter wird
ben&ouml;tigt. Wenn er weggelassen wird, dann erh&auml;lt man einen
Laufzeitfehler.</DD>
<DT><CODE>nr &lt;1-6&gt;</CODE></DT>
<DD>ist eine ganze Zahl zwischen <CODE>1</CODE> und <CODE>6</CODE>, die die
Anzahl der Umleitungen
festlegt. Dieser Parameter ist optional. Wenn er weggelassen wird, dann
werden keine Umleitungen vorgenommen.</DD>
<DT><CODE>von1:nach1:von2:nach2:von3:nach3...</CODE></DT>
<DD>sind paare von Nummern zwischen <CODE>0</CODE> und <CODE>5</CODE>, die
festlegen, wohin jeder Kanal umgeleitet werden soll.</DD>
</DL>
<P>Wenn nur <CODE>nch</CODE> angegeben wird, dann werden die
Standardumleitungen benutzt, die so aussehen: Wenn mehr Ausgabekan&auml;le
gefordert sind als Eingangskan&auml;le existieren, so werden leere Kan&auml;le
erzeugt (bis auf's Mixen von Mono auf Stereo: hier wird der Monokanal auf beide
Kan&auml;le kopiert). Ist die Anzahl dagegen kleiner, so werden die
&uuml;bersch&uuml;ssigen Kan&auml;le entfernt.</P>
<P>Beispiel 1:<BR>
&nbsp;&nbsp;<CODE>mplayer -af channels=4:4:0:1:1:0:2:2:3:3 media.avi </CODE></P>
<P>&Auml;ndert die Anzahl der Kan&auml;le auf 4 und legt vier Routen fest, die
die Kan&auml;le 0 und 1 vertauschen und die Kan&auml;le 2 und 3 intakt lassen.
Wenn die Quelldatei nur zwei Kan&auml;le hat, so sind die Kan&auml;le 2 und 3
leise, aber 0 und 1 werden trotzdem vertauscht.</P>
<P>Beispiel 2:<BR>
&nbsp;&nbsp;<CODE>mplayer -af channels=6:4:0:0:0:1:0:2:0:3 media.avi </CODE></P>
<P>&Auml;ndert die Anzahl der Kan&auml;le auf 6 und gibt 4 Routen an, die Kanal
0 auf Kanal 0 und 3 kopieren. Die Kan&auml;le 4 und 5 bleiben stumm. </P>
<H4><A NAME="af_format">2.3.2.3.3 Formatkonvertierung</A></H4>
<P>Der <CODE>format</CODE>-Filter konvertiert zwischen verschiedenen
Sampleformaten. Er wird automatisch aktiviert, wenn er von der Soundkarte
oder einem anderen Filter ben&ouml;tigt wird.</P>
<DL>
<DT><CODE>bps &lt;Nummer&gt;</CODE></DT>
<DD>kann <CODE>1</CODE>, <CODE>2</CODE> oder <CODE>4</CODE> sein und gibt die
Anzahl der Bytes pro Sample an.
Dieser Parameter wird ben&ouml;tigt und f&uuml;hrt zu einem Laufzeitfehler,
wenn er weggelassen wird.</DD>
<DT><CODE>f &lt;format&gt;</CODE></DT>
<DD>ist ein Textstring, der das Sampleformat beschreibt. Der String besteht
aus einem Mix der folgenden Schl&uuml;sselw&ouml;rter:
<CODE>alaw</CODE>, <CODE>mulaw</CODE> oder
<CODE>imaadpcm</CODE>, <CODE>float</CODE> oder <CODE>int</CODE>,
<CODE>unsigned</CODE> oder <CODE>signed</CODE>, <CODE>le</CODE> oder
<CODE>be</CODE> (little oder big endian).
Dieser Parameter wird ben&ouml;tigt und f&uuml;hrt zu einem Laufzeitfehler,
wenn er weggelassen wird.</DD>
</DL>
<P>Beispiel:<BR>
&nbsp;&nbsp;<CODE>mplayer -af format=4:float media.avi</CODE></P>
<P>setzt das Ausgabeformat auf 4 Bytes pro Sample Flie&szlig;kommadaten.</P>
<H4><A NAME="af_delay">2.3.2.3.4 Verz&ouml;gerung</A></H4>
<P>Der <CODE>delay</CODE>-Filter verz&ouml;gert den Sound auf dem Weg zum
Lautsprecher, damit die verschiedenen Kan&auml;le zur gleichen Zeit bei der
Sitzposition ankommen. Dieser Filter ist nur dann n&uuml;tzlich, wenn du mehr
als zwei Lautsprecher hast. Dieser Filter erh&auml;lt eine variable Anzahl
Parameter:</P>
<DL>
<DT><CODE>d1:d2:d3...</CODE></DT>
<DD>sind Flie&szlig;kommazahlen, die die Verz&ouml;gerung in ms f&uuml;r
den jeweiligen Kanal angeben. Minimum ist 0ms, das Maximum 1000ms.</DD>
</DL>
<P>Um die ben&ouml;tigte Verz&ouml;gerung f&uuml;r die verschiedenen
Kan&auml;le zu berechnen, tu folgendes:</P>
<OL>
<LI>Miss die Entfernung zwischen den Lautsprechern und deiner Sitzposition
in Metern. Dies gibt dir die Distanzen s1 bis s5 (bei einem 5.1-System).
Es lohnt sich nicht, auch f&uuml;r den Subwoofer zu kompensieren, weil
man den Unterschied eh nicht h&ouml;rt.</LI>
<LI>Subtrahiere die Distanzen s1 bis s5 von der maximalen Distanz, z.B.<BR>
s[i] = max(s) - s[i]; i = 1...5</LI>
<LI>Berechne die ben&ouml;tigte Verz&ouml;gerung wie folgt:<BR>
d[i] = 1000*s[i]/342; i = 1...5 </LI>
</OL>
<P>Beispiel:<BR>
&nbsp;&nbsp;<CODE>mplayer -af delay=10.5:10.5:0:0:7:0 media.avi</CODE></P>
<P>verz&ouml;gert die Kan&auml;le vorne links und vorne rechts um 10.5ms,
die beiden hinteren Kan&auml;le um 0ms und den zentrierten Kanal um 7ms.</P>
<H4><A NAME="af_volume">2.3.2.3.5 Lautst&auml;rkekontrolle mit Software</A>
</H4>
<P>Lautst&auml;rkeregelung in Software wird mit dem <CODE>volume</CODE>-Filter
realisiert. Sei bei der Benutzung dieses Filters vorsichtig, da er den
Signal-zu-Rausch-Abstand verringern kann. In den meisten F&auml;llen ist es
besser, beim Mixer deiner Soundkarte den PCM-Regler auf's Maximum zu setzen und
diesen Filter wegzulassen. &Auml;ndere dann die Lautst&auml;rke mit dem
Hauptregler des Mixers.
Wenn deine Soundkarte einen digitalen PCM-Mixer anstelle eines analogen
besitzt und du Verzerrungen h&ouml;rst, dann benutze statt dessen den
MASTER-Mixer.
Wenn der Computer an einen externen Verst&auml;rker
angeschlossen ist (was meistens der Fall ist), dann kann der Rauschpegel
minimiert werden, indem der Hauptregler und der Lautst&auml;rkeregler des
Verst&auml;rkers angepasst werden, bis das Hintergrundzischen verschwunden ist.
Der Filter selber kennt zwei Parameter:</P>
<DL>
<DT><CODE>v &lt;-200 - +60&gt;</CODE></DT>
<DD>ist eine Flie&szlig;kommazahl zwischen <CODE>-200</CODE> und
<CODE>+60</CODE> und gibt die Lautst&auml;rke in dB an. Der Standardlevel
ist 0dB.</DD>
<DT><CODE>c</CODE></DT>
<DD>ist ein Bin&auml;rwert, der soft clipping an- oder ausschaltet.
Soft clipping kann den Sound gl&auml;tten, wenn sehr laute Passagen
auftreten. Aktivier diese Option, wenn die Dynamikbandbreite deiner
Lautsprecher gering ist. Sei gewanrt, dass dieses Feature Verzerrungen
hervorruft. Es sollte nur als letzte M&ouml;glichkeit benutzt werden.</DD>
</DL>
<P>Beispiel:<BR>
&nbsp;&nbsp;<CODE>mplayer -af volume=10.1:0 media.avi</CODE></P>
<P>verst&auml;rkt den Sound um 10.1dB und schneidet hart ab, wenn die
Lautst&auml;rke zu hoch wird.</P>
<P>Dieser Filter besitzt noch ein zweites Feature: Er misst die maximale
Lautst&auml;rke und gibt sie aus, wenn MPlayer beendet wird. Dieser Wert
kann benutzt werden, um die Verst&auml;rkung in MEncoder so zu setzen, dass
die Dynamikbandbreite vollst&auml;ndig ausgenutzt wird.</P>
<H4><A NAME="af_equalizer">2.3.2.3.6 Equalizer</A></H4>
<P>Der <CODE>equalizer</CODE>-Filter ist ein 10-Band Graphicequalizer, der
durch 10 IIR-Bandpassfilter (infinite impulse response, rekursive Filter)
realisiert wird. Das bedeutet, dass er unabh&auml;ngig vom wiederzugebenden
Audiotyp funktioniert. Die Mittenfrequenzen der zehn B&auml;ndern sind:</P>
<TABLE BORDER="0" WIDTH="100%">
<TR><TD>Band Nr.</TD><TD>Mittenfrequenz</TD></TR>
<TR><TD>0</TD><TD>31.25 Hz</TD></TR>
<TR><TD>1</TD><TD>62.50 Hz</TD></TR>
<TR><TD>2</TD><TD>125.0 Hz</TD></TR>
<TR><TD>3</TD><TD>250.0 Hz</TD></TR>
<TR><TD>4</TD><TD>500.0 Hz</TD></TR>
<TR><TD>5</TD><TD>1.000 kHz</TD></TR>
<TR><TD>6</TD><TD>2.000 kHz</TD></TR>
<TR><TD>7</TD><TD>4.000 kHz</TD></TR>
<TR><TD>8</TD><TD>8.000 kHz</TD></TR>
<TR><TD>9</TD><TD>16.00 kHz</TD></TR>
</TABLE>
<P>Wenn die Samplefrequenz des Sounds niedriger als die Mittenfrequenz eines
Bandes ist, so wird dieses Band deaktiviert. Ein bekannter Fehler dieses
Filters liegt darin, dass die Charakteristiken des h&ouml;chsten Bandes nicht
ganz symmetrisch sind, wenn die Samplefrequenz nahe der Mittenfrequenz des
Bandes liegt. Das kann umgangen werden, wenn vorher ein Upsampling mit dem
resample-Filter vorgenommen wird.</P>
<P>Dieser Filter bekommt zehn Parameter:</P>
<DL>
<DT><CODE>g1:g2:g3...g10</CODE></DT>
<DD>sind Flie&szlig;kommazahlen zwischen <CODE>-12</CODE> und
<CODE>+12</CODE>, die die Verst&auml;rkung in dB des jeweiligen Bandes
angeben.</DD>
</DL>
<P>Beispiel:<BR>
&nbsp;&nbsp;<CODE>mplayer -af equalizer=11:11:10:5:0:-12:0:5:12:12 media.avi</CODE></P>
<P>verst&auml;rkt den Sound in den oberen und unteren Frequenzbereichen und
l&ouml;scht ihn um 1kHz beinahe komplett aus.</P>
<H4><A NAME="af_panning">2.3.2.3.7 Panning-Filter</A></H4>
<P>Der <CODE>pan</CODE>-Filter kann benutzt werden, um Kan&auml;le beliebig zu
mischen. Er ist grundlegend nur eine Kombination des Lautst&auml;rkefilters und
des channels-Filters. Es gibt zwei Haupteinsatzgebiete f&uuml;r diesen
Filter:</P>
<OL>
<LI>Heruntermischen vieler Kan&auml;le auf wenige, z.B. Stereo zu Mono.</LI>
<LI>Ver&auml;ndern der "Breite" des zentrierten Kanals bei
Sourround-Sound-Systemem.</LI>
</OL>
<P>Dieser Filter ist nicht ganz leicht zu bedienen und ben&ouml;tigt viel
Ausprobieren, bevor die gew&uuml;nschten Ergebnisse erzielt werden. Die Anzahl
der Parameter h&auml;ngt von der Anzahl der Ausgabekan&auml;le ab:</P>
<DL>
<DT><CODE>nch &lt;1-6&gt;</CODE></DT>
<DD>ist eine ganze Zahl zwischen <CODE>1</CODE> und <CODE>6</CODE> und wird
benutzt, um die Anzahl
der Ausgabekan&auml;le zu setzen. Dieser Parameter wird ben&ouml;tigt.
Wenn er weggelassen wird, erh&auml;lt man einen Laufzeitfehler.</DD>
<DT><CODE>l00:l01:l02:..l10:l11:l12:...ln0:ln1:ln2:...</CODE></DT>
<DD>sind Flie&szlig;kommazhalen zwischen <CODE>0</CODE> und
<CODE>1</CODE>. <CODE>l[i][j]</CODE>
gibt an, wieviel vom Einganskanal <CODE>j</CODE> in den Ausgabekanal
<CODE>i</CODE> zu mischen ist.</DD>
</DL>
<P>Beispiel 1:<BR>
&nbsp;&nbsp;<CODE>mplayer -af pan=1:0.5:0.5 -channels 1 media.avi</CODE></P>
<P>mischt stereo auf mono.</P>
<P>Beispiel 2:<BR>
&nbsp;&nbsp;<CODE>mplayer -af pan=3:1:0:1:0.5:0.5 -channels 3
media.avi</CODE></P>
<P>gibt drei Kan&auml;le aus, l&auml;sst dabei Kan&auml;le 0 und 1 intakt und
mischt die Quellkan&auml;le 0 und 1 in den Ausgabekanal 2 (welcher z.B. an
einen Sub-woofer geschickt werden kann).
<H4><A NAME="af_sub">2.3.2.3.8 Sub-woofer</A></H4>
<P>Der <CODE>sub</CODE>-Filter f&uuml;gt dem Audiostream einen Sub-woofer-Kanal
hinzu. Die dazu verwendeten Audiodaten sind der Durchschnitt der Kan&auml;le 0
und 1. Der resultierende Sound wird dann mit einem Butterworth-Filter vierten
Grades tiefpassgefiltert. Der Filter schneidet bei 60Hz ab. Warnung: deaktivier
diesen Filter, wenn du DVDs mit Dolby Digital 5.1-Sound abspielst, weil dieser
Filter ansonsten den bereits vorhandenen Sub-woofer-Kanal st&ouml;rt. Dieser
Filter bekommt zwei Parameter:</P>
<DL>
<DT><CODE>fc &lt;20-300&gt;</CODE></DT>
<DD>ist eine optionale Flie&szlig;kommazahl, die die Frequenz in Hz angibt,
bei der Tiefpass abschneidet. G&uuml;ltig sind Werte ziwschen
<CODE>20</CODE> und <CODE>300</CODE>. Das beste Ergebnis erh&auml;lst du,
wenn du die Frequenz so niedrig wie m&ouml;glich setzt. Das wird das
Stereo- und Surround-Sound-Erlebnis verbessern. Der Standardwert f&uuml;r
die Frequenzgrenze liegt bei 60Hz.</DD>
<DT><CODE>ch &lt;0-5&gt;</CODE></DT>
<DD>ist eine optionale ganze Zahl zwischen <CODE>0</CODE> und <CODE>5</CODE>,
die angibt, auf welchem Kanal der Sub-woofer-Kanal auszugeben ist.
Der Standardkanal ist <CODE>5</CODE>. Die gesamte Anzahl an Kan&auml;len
wird auf <CODE>ch</CODE> erh&ouml;ht, falls dies notwendig sein sollte.</DD>
</DL>
<P>Beispiel:<BR>
&nbsp;&nbsp;<CODE>mplayer -af sub=100:4 -channels 5 media.avi</CODE></P>
<P>f&uuml;gt einen Sub-woofer-Kanal mit Grenzfrequenz von 100Hz hinzu und gibt
ihn auf Kanal 4 aus.</P>
<H4><A NAME="af_surround">2.3.2.3.9 Surround-sound-Decoder</A></H4>
<P>Matrix encodierter Surround-Sound kann mit dem <CODE>surround</CODE>-Filter
decodiert werden. Dolby Surround ist ein Beispiel f&uuml;r ein matrix
encodiertes Format. Viele Dateien mit Zweikanalaudio enthalten tats&auml;chlich
matrix encodierten Surround-Sound. Um diesen Filter zu benutzen, brauchst du
eine Soundkarte, die mindestens vier Kan&auml;le unterst&uuml;tzt. Dieser
Filter kennt einen Parameter:</P>
<DL>
<DT><CODE>d &lt;0-1000&gt;</CODE></DT>
<DD>ist eine optionale Flie&szlig;kommazahl zwischen <CODE>0</CODE> und
<CODE>1000</CODE>, die die Verz&ouml;gerung in ms f&uuml;r den hinteren
Lautsprecher angibt. Die Verz&ouml;gerung soltle wie folgt gew&auml;hlt
werden: Wenn d1 die Entfernung zwischen der Sitzposition und den vorderen
Lautsprechern ist, und wenn d2 die Entfernung zwischen der Sitzposition
und den hinteren Lautsprechern ist, dann sollte <CODE>d</CODE> auf
15ms gesetzt werden, wenn d1 &lt;= d2 ist, und auf 15 + 5*(d1-d2), wenn
d1 &gt; d2 ist. Der Standardwert <CODE>d</CODE> ist 20ms.</DD>
</DL>
<P>Beispiel:<BR>
&nbsp;&nbsp;<CODE>mplayer -af surround=15 -channels 4 media.avi</CODE></P>
<P>decodiert Surround-Sound mit einer Verz&ouml;gerung von 15ms f&uuml;r die
hinteren Lautsprecher.</P>
<H4><A NAME="plugins">2.3.2.4 Audio-Plugins (veraltet)</A></H4>
<H2><STRONG>Anmerkung: Audioplugins sind veraltet und wurden durch Audiofilter
ersetzt. Sie werden bald entfernt werden.</STRONG></H2>
<P>MPlayer bietet Unterst&uuml;tzung f&uuml;r Audio-Plugins. Audio-
Plugins k&ouml;nnen benutzt werden, um die Einstellungen der Audio-Daten zu
&auml;ndern, bevor sie die Soundkarte erreichen. Sie aktiviert durch die
Option <CODE>-aop</CODE> aktiviert, welche
<CODE>list=plugin1,plugin2,...</CODE> als Argument hat. Das <CODE>list</CODE>
wird ben&ouml;tigt, um festzulegen, in welcher Reihenfolge die Plugins benutzt
werden sollen. Beispiel:</P>
<P>&nbsp;&nbsp;<CODE>mplayer media.avi -aop list=resample,format</CODE></P>
<P>w&uuml;rde den Ton durch das Resampling-Plugin laufen lassen, gefolgt vom
Format-Plugins.</P>
<P>Die Plugins k&ouml;nnen auch Schalter haben, welche ihr Verhalten
&auml;ndern. Diese Schalter werden im unteren Abschnitt im Detail beschrieben.
Ein Plugin wird mit den Standardeinstellungen gestartet, wenn dem Plugin
Optionen mitgegeben werden. Hier ist ein Beispiel, wie man Plugins in
Kombination mit pluginspezifischen Schaltern verwendet:</P>
<P>&nbsp;&nbsp;<CODE>mplayer media.avi -aop
list=resample,format:fout=44100:format=0x8</CODE></P>
<P>w&uuml;rde die Ausgabefrequenz des Resample-Plugins auf 44100Hz and das
Ausgabeformat des Format-Plugins auf AFMT_U8 stellen.</P>
<P>Momentan k&ouml;nnen Audio-Plugins nicht im MEncoder verwendet
werden.</P>
<H4><A NAME="resample">2.3.2.4.1 Up/Downsampling</A></H4>
<P>MPlayer unterst&uuml;tzt vollst&auml;ndiges up/downsampling von
Audiostreams. Dieses Plugin kann verwendet werden, wenn man eine Soundkarte
mit fester Frequenz besitzt, oder wenn man eine alte Soundkarte am Hals hat,
welche nur max 44.1kHz verarbeitet. Ob die Verwendung dieses Plugins
ben&ouml;tigt wird oder nicht erkennt MPlayer <B>automatisch</B>.
Dieses Plugin hat einen Schalter, <CODE>fout</CODE>, welcher benutzt wird, um
die gew&uuml;nschte Ausgabefrequenz zu setzen. Der Standard ist 48kHz und wird
in &lt;Hz&gt; angegeben.</P>
<P>Verwendung:<BR> &nbsp;&nbsp;<CODE>mplayer medium.avi -aop
list=resample:fout=&lt;erforderliche Frequenz in Hz, z.B. 44100&gt;</CODE></P>
<P>Hinweis: Die Ausgabefrequenz sollte nicht vom Standard-Wert hochskaliert
werden. Die Skalierung f&uuml;hrt dazu, dass der Audio- und Video-Stream in
Zeitlupe wiedergegeben werden, und man erh&auml;lt zus&auml;tzlich
Audioverzerrungen.</P>
<H4><A NAME="surround_decoding">2.3.2.4.2 Surround-Sound-Decodierung</A></H4>
<P>MPlayer hat ein Audio-Plugin das matrix-codierten Surround Sound
decodieren kann. Dolby Surround ist ein Beispiel eines matrix-codierten
Formats. Viele Dateien mit zwei Audiokan&auml;len enthalten tats&auml;chlich
matrix Surround Sound. Um dieses Feature zu benutzen, brauchst du eine
Soundkarte mit mindestens vier Kan&auml;len.</P>
<P>Verwendung:<BR>
&nbsp;&nbsp;<CODE>mplayer medium.avi -aop list=surround</CODE></P>
<H4><A NAME="format">2.3.2.4.3 Sample-Format-Konvertierer</A></H4>
<P>Wenn deine Soundkarte keinen signed 16bit <CODE>int</CODE> Datentyp
unterst&uuml;tzt, kann dieses Plugin benutzt werden, um das Format in eines zu
&auml;ndern, das deine Soundkarte versteht. Es hat nur einen Schalter
<CODE>format</CODE>, welcher auf eine Nummer gestellt werden kann, die man der
Datei <CODE>libao2/afmt.h</CODE> findet. Dieses Plugin wird praktisch nie
gebraucht und ist f&uuml;r erfahrene Anwender gedacht. Bedenke, dass dieses
Plugin nur das Sampleformat und nicht die Samplefrequenz oder die Anzahl
Kan&auml;le &auml;ndert.</P>
<P>Verwendung:<BR>
&nbsp;&nbsp;<CODE>mplayer medium.avi -aop
list=format:format=&lt;required output format&gt;</CODE></P>
<H4><A NAME="delay">2.3.2.4.4 Verz&ouml;gerung</A></H4>
<P>Dieses Plugin verz&ouml;gert den Ton und ist als Beispiel gedacht, wie man
neue Plugins schreibt. Es kann f&uuml;r nichts sinnvolles aus der
Anwenderperspektive verwendet werden und ist hier nur aus Gr&uuml;nden der
Vollst&auml;ndigkeit erw&auml;hnt. Verwende dieses Plugin nicht, wenn du kein
Entwickler bist.</P>
<P>Wenn du eine Datei mit einer konstanten A/V-Sync-Differenz hast, dann benutze
einfach die Tasten <CODE>+</CODE> und <CODE>-</CODE>, um das Timing w&auml;hrend
des Abspielens anzupassen. Wenn das OSD aktiviert ist, dann werden die aktuellen
Werte angezeigt, was die Anpassung erleichtert.</P>
<H4><A NAME="volume">2.3.2.4.5 Software Lautst&auml;rkeregelung</A></H4>
<P>Dieses Plugin ist ein Software-Ersatz f&uuml;r die Lautst&auml;rkereglung
und kann in Maschinen mit kaputtem Mixer-Device verwendet werden. Es kann auch
verwendet werden, um die Ausgabelautst&auml;rke von MPlayer zu
&auml;ndern, ohne die Einstellung der PCM-Lautst&auml;rke im Mixer zu
&auml;ndern. Es gibt einen Schalter <CODE>volume</CODE>, welcher verwendet
wird, um den anf&auml;nglichen Schallpegel festzulegen. Der anf&auml;ngliche
Schallpegel kann auf Werte zwischen 0 und 255 festgelegt werden (normal auf
101, was 0db Verst&auml;rkung entspricht). Benutze dieses Plugin mit Vorsicht,
da es den Signal/Rauschabstand verringern kann. In den meisten F&auml;llen ist
es das beste, den Regler f&uuml;r PCM auf das Maximum zu stellen,
dieses Plugin nicht zu verwenden und die Lautst&auml;rke zu deinen Boxen mit
der Master-Lautst&auml;rkeregelung zu kontrollieren. Wenn deine Soundkarte
einen digitalen PCM-Mixer anstelle eines analogen verwendet und du Verzerrungen
h&ouml;rst, so verwende statt dessen den MASTER-Mixer. Wenn ein externer
Verst&auml;rker mit dem Computer verbunden ist (was fast immer der Fall ist),
kann der Ger&auml;uschepegel durch die Anpassung des Master-Stufe und der
Lautst&auml;rkekn&ouml;pfe des Verst&auml;rkers minimiert werden, bis das
Hintergrundrauschen verschwindet.</P>
<P>Verwendung:<BR>
&nbsp;&nbsp;<CODE>mplayer media.avi -aop
list=volume:volume=&lt;0-255&gt;</CODE></P>
<P>Dieses Plugin besitzt auch einen Kompressor oder "soft-clipping"-
F&auml;higkeiten. Die Kompression kann benutzt werden, wenn der Dynamikbereich
des Sounds sehr hoch ist, oder wenn der Dynamikbereich der Lautsprecher sehr
niedrig ist. Sei dir bewusst, dass dieses Feature Verzerrungen verursacht. Es
sollte erst als letzte M&ouml;glichkeit in Betracht gezogen werden.</P>
<P>Verwendung:<BR>
&nbsp;&nbsp;<CODE>mplayer media.avi -aop
list=volume:softclip</CODE></P>
<H4><A NAME="extrastereo">2.3.2.4.6 Extrastereo</A></H4>
<P>Dieses Plugin erh&ouml;ht linear die Differenz zwischen dem linken und
rechten Kanal (wie das XMMS Extrastereo-Plugin), was zum Teil zu "live"-
Effekten bei der Wiedergabe f&uuml;hrt.</P>
<P>Verwendung:<BR>
&nbsp;&nbsp;<CODE>mplayer media.avi -aop list=extrastereo</CODE><BR>
&nbsp;&nbsp;<CODE>mplayer media.avi -aop list=extrastereo:mul=3.45</CODE></P>
<P>Der Koeffizient (<CODE>mul</CODE>) ist eine Flie&szlig;kommazahl,
welche standardm&auml;&szlig;ig auf 2.5 gestellt ist. Wenn man den Wert auf
0.0 setzt, erh&auml;lt man einen Mono-Ton (Durchschnitt beider Kan&auml;le).
Wenn man den Wert auf 1.0 setzt, bleibt der Ton gleich. Wenn man den Wert auf
-1.0 setzt, werden der linke und rechte Kanal vertauscht.</P>
<H4><A NAME="normalizer">2.3.2.4.7 Lautst&auml;rkenormalisierer</A></H4>
<P>Dieses Plugin maximiert die Lautst&auml;rke, ohne den Ton zu
verzerren.</P>
<P>Verwendung:<BR>
&nbsp;&nbsp;<CODE>mplayer media.avi -aop list=volnorm</CODE></P>
</BODY>
</HTML>

View File

@ -1,227 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Developer Cries - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H1><A NAME="appendix_e">Anhang E - Aufschrei der Entwickler</A></H1>
<P>Es gibt zwei Themen, die immer zu gro&szlig;en Streitereien und Beschimpfungen
auf der <A HREF="http://mplayerhq.hu/pipermail/mplayer-users/">mplayer-users</A>
Mailingliste f&uuml;hren. Das erste Thema dreht sich um den...</P>
<H2><A NAME="gcc">E.1 GCC 2.96</A></H2>
<P><B>Zum Hintergrund:</B> Die Serie <B>2.95</B> des GCC ist der offiziell
GNU-Release, und Version 2.95.3 ist die stabilste und fehlerfreieste aus
dieser Serie. Wir haban niemals Probleme beobachten k&ouml;nnen, die auf den
GCC 2.95.3 zur&uuml;ckzuf&uuml;hren waren. Beginnend mit RedHat Linux 7.0
begann <B>Red Hat</B> damit, eine stark ver&auml;nderte CVS-Version des GCC
mitzuliefern. Diese Version nannten sie <B>2.96</B>. Red Hat hat diese
Version aufgenommen, weil sie einen Compiler brauchten, der auf all ihren
unterst&uuml;tzten Plattformen lief (welche auch IA64 und s390 einschloss),
und weil der offizielle GCC 3.0 zu diesem Zeitpunkt noch nicht fertiggestellt
war. Der Linuxdistributor <B>Mandrake</B> folgte bald darauf Red Hats Beispiel
und lieferte ab Linux-Mandrake 8.0 ebenfalls den GCC 2.96 aus.</P>
<P><B>Die Aussagen zu dem Thema:</B> Das GCC-Team hat jegliche Verbindung zu
der Version 2.96 bestritten und dazu eine <A HREF="http://gcc.gnu.org/gcc-
2.96.html">offizielle Stellungnahme</A> abgegeben. Viele Entwickler auf der
ganzen Welt trafen auf Probleme mit dem GCC 2.96 und empfahlen deswegen
andere Compilerversionen. Beispiele daf&uuml;r sind <A
HREF="http://www.mysql.com/downloads/mysql-3.23.html">MySQL</A>, <A
HREF="http://avifile.sourceforge.net/news-old1.htm">avifile</A> und <A
HREF="http://www.winehq.com/news/?view=92#RH%207.1%20gcc%20fixes%20compiler%2
0bug">Wine</A>. Andere interessante Links sind der
<A HREF="http://www.atnf.csiro.au/people/rgooch/linux/docs/kernel-newsflash.html">
Linux kernel news flash &uuml;ber den Kernel 2.4.17</A> und das
<A HREF="http://www.voy.com/3516/572.html">Voy-Forum</A>.
MPlayer war ebenfalls von vorr&uuml;bergehenden Problemen betroffen,
die sich alle l&ouml;sten, sobald eine andere Version des GCC benutzt wurde.
Viele Projekte begannen daraufhin damit, um einige der Probleme mit dem GCC 2.96
herumzuarbeiten, aber wir lehnten es ab, die Probleme zu beheben, die andere
Leute durch vorschnelles Handeln verursacht hatten. Dazu kommt, dass einige
dieser Workarounds zu Performanceeinbu&szlig;en f&uuml;hrten.</P>
<P>Du kannst dir auch die andere Seite der Geschichte auf <A
HREF="http://web.archive.org/web/20011024212120/http://www.bero.org/gcc296.ht
ml"> dieser Seite</A> durchlesen. GCC 2.96 erlaubt keine | (Pipezeichen) in
Assemblerkommentaren, weil er sowohl die Intel- als auch die AT&amp;T-
Assemblersyntax unterst&uuml;tzt und das |-Zeichen ein Symbol in der
Intelvariante darstellt. Das Problem lag nun darin, dass der GCC
<B>kommentarlos</B> den kompletten Assemblerblock ignoriert hat. Dieser
Fehler wurde inzwischen angeblich behoben. GCC gibt eine Warnung aus, anstatt
den kompletten Block einfach unter den Tisch fallen zu lassen.</P>
<P><B>Die Gegenwart:</B> Red Hat behauptet, dass GCC Version 2.96-85 und
neuer keine Fehler mehr enthalten. Das Verhalten dieser Version hat sich
tats&auml;chlich deutlich verbessert. Nichts desto trotz werden auf unseren
Mailinglisten noch immer Probleme berichtet, die verschwinden, sobald ein
anderer Compiler verwendet wird. Sei wie es ist, es ist inzwischen einfach
nicht mehr wichtig. Hoffentlich l&ouml;st eine gereifter GCC 3.x all dieses
Problem ein f&uuml;r alle mal. Wenn du wirklich mit dem GCC 2.96 compilieren
m&ouml;chtest, dann benutze die Option <CODE>--disable-gcc-checking</CODE>
bei <CODE>configure</CODE>. Denk aber daran, dass du dann auf dich allein
gestellt bist. <B>Schick keine Fehlerberichte!</B> Solltest du das doch tun,
so wirst du nur von der Mailingliste verbannt, weil wir wirklich mehr
Flamewars wegen des GCC 2.96 erlebt haben als n&ouml;tig w&auml;r. Lass
dieses Thema bitte ruhen.</P>
<P>Wenn du Probleme mit dem GCC 2.96 hast, so kannst du Pakete f&uuml;r die
Version 2.96-85 auf <A HREF="ftp://updates.redhat.com/">Red Hats FTP-
Server</A> finden. Andererseits kannst du auch einfach die Pakete f&uuml;r
die Version 3.0.4 benutzen, die Red Hat f&uuml;r Red Hat Linux 7.2 und neuer
anbietet. Eine weitere M&ouml;glichkeit besteht darin, Pakete f&uuml;r A
HREF="ftp://people.redhat.com/jakub/gcc/3.2-10/">gcc-3.2-10</A>
herunterzuladen (inoffiziell, aber sie funktionieren trotzdem einwandfrei).
Sie lassen sich neben dem GCC 2.96 installieren, den du bereits hast.
MPlayer wird automatisch Version 3.2-10 finden und diesesn GCC
anstelle der Version 2.96 benutzen. Wenn du aus irgendeinem Grund die
bin&auml;ren Pakete f&uuml;r den GCC nicht benutzen kannst oder willst, dann
folgt hier eine kleine Anleitung, wie du den neuesten GCC compilieren
kannst:</P>
<OL>
<LI>Lade dir <CODE>gcc-core-XXX.tar.gz</CODE> von einem der <A
HREF="http://gcc.gnu.org/mirrors.html">GCC-Mirrorseiten</A> herunter,
wobei <CODE>XXX</CODE> die Versionsnummer darstellt. Dieses Paket
beinhaltet den kompletten C-Compiler und reicht f&uuml;r MPlayer
aus. Wenn du dar&uuml;ber hinaus Unterst&uuml;tzung f&uuml;r C++, Java
oder andere Features des GCC ben&ouml;tigst, dann ist <CODE>gcc-
XXX.tar.gz</CODE> besser f&uuml;r dich geeignet.</LI>
<LI>Entpacke das Archiv:<BR>
<CODE>tar -xvzf gcc-core-XXX.tar.gz</CODE></LI>
<LI>Anders als die meisten Programme wird der GCC nicht innerhalb des
Quelltextverzeichnisses gebaut, sondern er ben&ouml;tigt daf&uuml;r ein
spezielles Buildverzeichnis au&szlig;erhalb des Quelltextbaumes.
Erstell solch ein Verzeichnis mit<BR>
<CODE>mkdir gcc-build</CODE></LI>
<LI>Jetzt kannst du den GCC im Buildverzeichnis konfigurieren lassen -
aber das <CODE>configure</CODE>-Script liegt nat&uuml;rlich im
Quelltextverzeichnis:<BR>
<CODE>cd gcc-build<BR>
../gcc-XXX/configure</CODE></LI>
<LI>Compiliere GCC mit dem folgenden Kommando im Buildverzeichnis:<BR>
<CODE>make bootstrap</CODE></LI>
<LI>Jetzt kannst du (wenn du root bist) den GCC mit diesem Kommando
installieren:<BR>
<CODE>make install</CODE></LI>
</OL>
<H2><A NAME="binary">E.2 Vorcompilierte (bin&auml;re) Pakete</A></H2>
<P>Fr&uuml;her enthielt MPlayer Teile des Quelltextes des OpenDivX-
Projektes, welches es verbietet, vorcompilierte Pakete zu verteilen. Diese
Codeabschnitte wurden aber in Version 0.90pre1 entfernt, und die letzte noch
verbleibende Datei <CODE>divx_vbr.c</CODE>, die noch auf den OpenDivX-Quellen
aufbaut, wurden von den Authoren unter die GPL gestellt (Version 0.90pre9).
Du darfst jetzt also nach Herzenslust bin&auml;re Pakete bauen und
verteilen.</P>
<P>Ein weiteres Hindernis f&uuml;r Bin&auml;rpakete waren die bei der
Compilierung automatisch erkannten Optimierungsm&ouml;glichkeiten seitens der
CPU-Architektur (MMX, 3DNOW etc.). MPlayer unterst&uuml;tzt inzwischen
aber auch die Erkennung der CPU-Features beim Starten von MPlayer,
wenn <CODE>configure</CODE> mit der Option <CODE>--enable-runtime-
cpudetection</CODE> aufgerufen wurde. Diese Option ist
standardm&auml;&szlig;ig deaktiviert, weil sie eine kleine negative
Auswirkung auf die Geschwindigkeit mitbringt. Andererseits ist es mit ihr nun
m&ouml;glich, Bin&auml;rpakete zu erstellen, die auf verschiedenen
Mitgliedern der Intel-CPU-Familie beschleunigt laufen.</P>
<H2><A NAME="nvidia">E.3 nVidia</A></H2>
<P>Uns misf&auml;llt die Tatsache, dass <A
HREF="http://www.nvidia.com">nVidia</A> nur bin&auml;re Treiber f&uuml;r
XFree86 zur Verf&uuml;gung stellt, die oft genug auch noch einige Fehler
enthalten. Auf <A HREF="http://mplayerhq.hu/pipermail/mplayer-
users/">mplayer-users</A> sehen wir viele Fehlermeldungen, die mit diesen
Closed-Source-Treibern zusammenh&auml;ngen: &uuml;ber die allgemein schlechte
Qualit&auml;t der Treiber, &uuml;ber Instabilit&auml;ten und &uuml;ber den
schlechten Support der Endbenutzer durch nVidia. Einige Beispiele daf&uuml;r
kannst du im <A
HREF="http://www.nvnews.net/vbulletin/forumdisplay.php?s=6d83dc289805c37caef4
9b77857a0b7e&daysprune=&forumid=27"> nVidia-Linux-Forum</A> finden. Viele
dieser F&auml;lle sind wiederkehrende Probleme. nVidia hat letztens Kontakt
mit uns aufgenommen und behauptet, dass ihre Treiber keine Fehler enthielten,
sondern dass die Instabilit&auml;ten von schlechten AGP-Chips verursacht
w&uuml;rden, und dass sie keinerlei Fehlerberichte von Nutzern erhalten
h&auml;tten (wie z.B. die lila Linien). Wenn du also ein Problem mit deiner
nVidia-Karte hast, dann solltest du auf jeden Fall die neuesten nVidia-
Treiber ausprobieren und/oder ein neues Motherboard kaufen oder aber nVidia
darum bitten, dass sie OpenSource-Treiber ver&ouml;ffentlichen. Wie dem auch
sei - wenn du die bin&auml;ren nVidia-Treiber benutzt und Treiberprobleme
auftreten, dann sei gewarnt, dass du von uns nur sehr wenig Hilfe erhalten
wirst, weil wir da einfach nichts tun k&ouml;nnen, um dir zu helfen.</P>
<H2><A NAME="barr">E.4 Joe Barr</A></H2>
<P>Joe Barr wurde dadurch ber&uuml;chtigt, dass er einen mehr als schlechten
<A HREF="http://www.linuxworld.com/site-stories/2001/1214.mplayer.html">
Bericht &uuml;ber MPlayer</A> ver&ouml;ffentlichte. Er war der Meinung,
MPlayer sei schwierig zu installieren, aber andererseits mag er auch
<A HREF="http://www.linuxworld.com/linuxworld/lw-2000-06/lw-06-exam.html">
keine Dokumentation lesen</A>. Er schlo&szlig; auch damit, dass die
MPlayer-Entwickler unfreundlich und die Dokumentation
unvollst&auml;ndig seien. Entscheide selber, wie es damit steht. Er schreib
weiter negativ &uuml;ber MPlayer in seinen
<A HREF="http://www.linuxworld.com/site-stories/2001/1227.predictions.html">10
Vorhersagungen zu Linux f&uuml;r 2002</A>. In einem folgenden
<A HREF="http://www.linuxworld.com/site-stories/2002/0125.xine.html">Bericht
&uuml;ber xine</A> hat er weiter versucht, Rivalit&auml;t zu sch&uuml;hren.
Ironischerweise zitiert er am Ende dieses Artikels seine Konversation mit
G&uuml;nter Bartsch, dem Author von xine, der die ganze Situation perfekt
zusammengefasst hat:</P>
<BLOCKQUOTE>
Er sagte auch noch, dass er von meiner Kolumne &uuml;ber MPlayer
"&uuml;berrascht" war und dachte, dass sie unfair sei. Er erinnerte mich
daran, dass es sich dabei um freie Software handele. "Wenn du sie nicht
magst", sagte Bartsch, "dann hast du die Freiheit, sie nicht zu benutzen."
</BLOCKQUOTE>
<P>Er antwortet auch nicht auf unsere Mails. Sein Editor antwortet ebenfalls
nicht auf unsere Mails. Hier sind ein paar Zitate von verschiedenen Personen
&uuml;ber Joa Barr, sodass du dir deine eigene Meinung bilden kannst:</P>
<P>Marc Rassbach hat etwas <A
HREF="http://daily.daemonnews.org/view_story.php3?story_id=2102">&uuml;ber
den Kerl zu sagen</A>:</P>
<BLOCKQUOTE>
Vielleicht erinnert ihr euch an die LinuxWorld 2000, bei der er behauptete,
Linus T. habe gesagt: 'FreeBSD besteht nur aus einer Handvoll Programmierer.'
Linus hat NICHTS dergleichen gesagt. Als Joe dazu zur Rede gestellt wurde,
bestand seine Reaktion darin, die BSD-Unterst&uuml;tzer Arschl&ouml;cher
und Idioten zu nennen.
</BLOCKQUOTE>
<P>Ein <A HREF="http://www.mplayerhq.hu/pipermail/mplayer-users/2001-
December/009118.html">Zitat</A> von Robert Munro von der <A
HREF="http://mplayerhq.hu/pipermail/mplayer-users/">mplayer-users</A>
Mailingliste:</P>
<BLOCKQUOTE>
<P>Er ist interessant aber nicht besonders gut darin... hmm... Konflikte zu
vermeiden. Joe Barr war vor Jahren ein regelm&auml;&szlig;iger Besucher von
Will Zachmanns Canopus-Forum bei Compuserve. Er war damals ein
OS/2-Bf&uuml;rworter (ich war damals ebenfalls ein OS/2-Fan).</P>
<P>Damals hat er st&auml;ndig &uuml;berreagiert, Leute beschimpft, und ich
vermute, dass es f&uuml;r ihn damals ziemlich hart gewesen sein musste.
Er hat sich seitdem ein wenig beruhigt, wenn man sich seine letzten
Kolumnen durchliest. Subtiler Humor war aber auch damals schon nicht sein
Fall - ganz und gar nicht.</P>
</BLOCKQUOTE>
</BODY>
</HTML>

File diff suppressed because it is too large Load Diff