mirror of https://github.com/mpv-player/mpv
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:
parent
3f08af229f
commit
685d7b7418
|
@ -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äge für die Entwicklung. Aber genauso, wie es beim Schreiben
|
||||
guter Software ist, so verhält es sich auch mit guten Fehlerberichten: sie
|
||||
erfordern Arbeit. Bitte denk daran, dass die meisten Entwickler sehr
|
||||
beschäftigt sind und täglich einen unglaublichen Berg Mail erhalten.
|
||||
Auch wenn deine Rückmeldungen für die Entwicklung von MPlayer von
|
||||
entscheidender Bedeutung ist, so verstehe bitte, dass du wirklich <B>alle</B>
|
||||
hier verlangten Informationen zur Verfügung stellen und den Anweisungen
|
||||
dieses Dokumentes folgen musst, damit wir dir helfen kö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 äuß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ö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öglicherweise schon gelö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ö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
|
||||
ü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ösung
|
||||
zur Umgehung des Problems haben (sogar bei einem Fehler im
|
||||
MPlayer-Code).</P>
|
||||
|
||||
<P>Bitte beschreibe dein Problem so detailiert wie möglich. Dazu
|
||||
gehört ein klein wenig Detektivarbeit, um die Umstände einzuengen,
|
||||
unter denen das Problem auftritt. Tritt der Fehler nur in bestimmten
|
||||
Situationen auf? Ist er abhä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ügung gestellt werden, um so besser stehen die
|
||||
Chance, dass das Problem gelöst werden wird. Es sollte nicht vergessen
|
||||
werden, auch die wertvollen unten angeforderten Informationen miteinzubeziehen.
|
||||
Ansonsten ist es wahrscheinlich unmöglich, eine Diagnose des Fehlers zu
|
||||
erstellen.</P>
|
||||
|
||||
<P>Ein exzellenter und gut geschriebener Führer, wie Fragen in
|
||||
ö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ü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äftigt und können nicht garantieren, dass eine Lösung oder
|
||||
bloß 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>
|
||||
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-users">http://mplayerhq.hu/mailman/listinfo/mplayer-users</A><BR>
|
||||
und sende deinen Fehlerbericht an:<BR>
|
||||
<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ßen. Falls du nicht
|
||||
weißt, was eine HTML-Mail ist, oder warum sie böse ist, dann lies <A
|
||||
HREF="http://expita.com/nomime.html">dieses gute Dokument</A>. Es erklärt
|
||||
alle Details und enthält Anweisungen, wie man HTML fü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üssen. Wenn einige
|
||||
von ihnen ziemlich groß werden, so ist es besser, wenn du sie auf unseren
|
||||
<A HREF="ftp://mplayerhq.hu/MPlayer/incoming/">FTP-Server</A> hochlä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ößenbeschränkung auf 80k, sodass du größ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ä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 & -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ährend des
|
||||
Ü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ägt, fü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ü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ügt wird. Die Entwickler benötigen alle Meldungen, um eine
|
||||
geignete Diagnose des Problems durchführen zu können. Die Ausgabe
|
||||
kann mit folgendem Befehl in eine Datei geschrieben werden:</P>
|
||||
|
||||
<P><CODE> mplayer -v [Optionen] [Dateiname]
|
||||
> mplayer.log 2>&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ä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> 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ügbar ist, so reicht die
|
||||
<STRONG>exakte</STRONG> URL aus.</P>
|
||||
|
||||
<H3><A NAME="crash">B.4.6 Bei Abstürzen</A></H3>
|
||||
|
||||
<P>Du musst MPlayer aus <CODE>gdb</CODE> heraus aufrufen und uns
|
||||
die vollständige Ausgabe schicken. Wenn du einen core dump hast, dann
|
||||
kannst du auch aus der <CODE>core</CODE>-Datei nü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> ./configure --enable-debug=3<BR>
|
||||
make</CODE></P>
|
||||
|
||||
Starte nun gdb mit MPlayer:
|
||||
|
||||
<P><CODE> gdb ./mplayer</CODE></P>
|
||||
|
||||
Du bist nun in gdb. Gib folgendes ein:
|
||||
|
||||
<P><CODE> run -v [options-to-mplayer]
|
||||
filename</code></P>
|
||||
|
||||
und reproduziere deinen Absturz. Sobald er auftritt, wird gdb zur
|
||||
Eingabeaufforderung zurückkehren, bei der du
|
||||
|
||||
<P><CODE> bt<BR>
|
||||
disass $pc-32 $pc+32<BR>
|
||||
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ühre einfach den folgenden Befehl auf der Konsole aus:</P>
|
||||
|
||||
<P> <CODE>gdb mplayer --core=core -batch
|
||||
--command=command_file > mplayer.bug</CODE></P>
|
||||
|
||||
<H2><A NAME="advusers">B.5 Ich weiß, 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 ärgere uns nicht und trette der -advusers-Liste nur
|
||||
bei, wenn du weißt, was du machst und du dich wie ein erfahrener
|
||||
MPlayer-Benutzer oder -Entwickler fühlst. Wenn du wirklich ein
|
||||
erfahrener Benutzer bist sollte es kein Problem für dich sein, dich
|
||||
anzumelden...</P>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
|
@ -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önnen sehr hohe Abtastgeschwindigkeiten
|
||||
erreichen. Einige können jedoch auch ihre Geschwindigkeit reduzieren.
|
||||
Es gibt mehrere Grü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ällen die
|
||||
Datenverluste verringern.</LI>
|
||||
<LI>Viele CD-ROM Laufwerke erzeugen störend laute Gerä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> <CODE>hdparm -E <Geschwindigkeit>
|
||||
<CD-ROM-Device></CODE></P>
|
||||
|
||||
<P> <CODE>setcd -x <Geschwindigkeit>
|
||||
<CD-ROM-Device></CODE></P>
|
||||
|
||||
<P>Du kannst auch folgendes probieren:</P>
|
||||
|
||||
<P> <CODE>echo current_speed:4 >
|
||||
/proc/ide/[CDROM-Device]/settings</CODE></P>
|
||||
|
||||
<P>Aber dafür brauchst du Root-Privilegien. Der folgende Befehl
|
||||
könnte ebenfalls helfen:</P>
|
||||
|
||||
<P> <CODE>echo file_readahead:2000000 >
|
||||
/proc/ide/[CDROM-Device]/settings</CODE></P>
|
||||
|
||||
<P>Dies setzt einen 2MB Lesepuffer für die Daten, was sich bei zerkratzten CDs
|
||||
als nützlich erweist. Wenn du die Größe zu hoch wählst,
|
||||
dann wird das Laufwerk stä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> <CODE>hdparm -d1 -a8 -u1 <CDROM-Device>
|
||||
</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> Speed: <CODE>cdcontrol [-f device] speed [speed]
|
||||
</CODE></P>
|
||||
<P> 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ügbaren Optionen willst. Die Syntax bei einer normalen Digital
|
||||
Versatile Disc (DVD) sieht wie folgt aus:</P>
|
||||
|
||||
<P><CODE>mplayer dvd://<track> [-dvd-device <Gerät>]</CODE></P>
|
||||
|
||||
<P>Beispiel: <CODE>mplayer dvd://1 -dvd-device /dev/hdc</CODE></P>
|
||||
|
||||
<P>Das Standard-DVD-Gerät ist <CODE>/dev/dvd</CODE>. Wenn das bei dir
|
||||
anders ist, so erstelle einen symbolischen Link auf das richtige Gerä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ür die DVD Entschlüsselung und Wiedergabe. Diese beiden Bibliotheken
|
||||
sind im <CODE>libmpdvdkit2/</CODE>-Unterverzeichnis enthalten und mü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ügt haben, welcher <B>Caching-Support für gecrackte
|
||||
CSS-Keys</B> für <CODE>libdvdcss</CODE> ermöglicht. Dies führt
|
||||
zu einer Geschwindigkeitssteigerung, da MPlayer nicht vor jeder
|
||||
Wiedergabe die Verschlüsselung erneut knacken muss.</P>
|
||||
|
||||
<P>MPlayer kann jedoch auch die systemweiten <CODE>libdvdread</CODE>-
|
||||
und <CODE>libdvdcss</CODE>-Bibliotheken verwenden. Diese Lösung wird
|
||||
jedoch aus oben den oben genannten Gründen <B>nicht</B> empfohlen.
|
||||
Ausßerdem kann es zu Fehlern, Inkompatibilitäten zwischen den
|
||||
Bibliotheken und niedriger Geschwindigkeit führen.</P>
|
||||
|
||||
<H4>Unterstützung für DVD-Navigation</H4>
|
||||
|
||||
<P>An einer Unterstützung für DVD-Navigation via <CODE>dvdnav</CODE>
|
||||
wird gearbeitet. Sie ist jedoch noch nicht vollendet und wird momentan nicht
|
||||
gewartet. Wer weiß - vielleicht lässt sie sich sogar
|
||||
compilieren.</P>
|
||||
|
||||
<H4>Alte DVD-Unterstützung - OPTIONAL</H4>
|
||||
|
||||
<P>Nützlich, wenn du verschlü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ü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ält
|
||||
mehrere Dateien (kleine .IFO- und .BUK-Dateien sowie die großen (1GB)
|
||||
.VOB-Dateien). Sie sind echte Dateien und kännen von einem in's
|
||||
Dateisystem eingehängten Dateisystem einer nicht verschlä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ätigt, um den Inhalt der .VOB-Dateien (den
|
||||
eigentlichen Film) lesen und interpretieren zu können. Die .BUK-Dateien
|
||||
sind Backups der .IFO-Dateien. Sie benutzen ausschließlich
|
||||
<B>Sektornummern</B> zur Adressierung, sodass man zur DVD-Navigation das
|
||||
direkte Ansprechen einzelner Sektoren der DVD implementieren muss. .IFOs werden
|
||||
ebenfalls benätigt, um den Inhalt entschlässeln zu kännen.</P>
|
||||
|
||||
<P>Aus diesem Grund braucht die alte DVD-Unterstützung ein in den
|
||||
Dateibaum eingehängtes DVD-Dateisystem sowie zusätzlich Zugriff auf
|
||||
das Device, um einzelne Sektoren der DVD lesen zu können. Leider musst du
|
||||
(unter Linux) root-Rechte besitzen, um die Sektorenadresse einer Datei zu
|
||||
erhalten. Du hast nun die folgenden Möglichkeiten:</P>
|
||||
|
||||
<UL>
|
||||
<LI>Sei root oder gib der mplayer-Programmdatei das SUID-Bit.</LI>
|
||||
<LI>Lass MPlayer das Wrapper-Programm fibmap_mplayer ausführen,
|
||||
welches das SUID-Bit gesetzt hat, um Zugriff auf die DVD zu bekommen
|
||||
(wird bei der alten DVD-Unterstützung mit der <CODE>libcss</CODE> so
|
||||
sgemacht).</LI>
|
||||
<LI>Lass die Dateisystemtreiber des Kernels links liegen und programmiere
|
||||
den Support dafür erneut im User-Space. <CODE>libdvdread</CODE>
|
||||
0.9.x und <CODE>libmpdvdkit2</CODE> machen das genau so (neue
|
||||
DVD-Unterstützung). Der
|
||||
UDF-Treiber des Kernels wird nicht benötigt, da diese Bibliotheken
|
||||
ihren eigenen UDF-Dateisystemtreiber mitbringen. Die DVD muss nicht einmal
|
||||
in den Dateibaum eingehä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ängten DVDs und sogar bei auf die Festplatte kopierten
|
||||
Dateien ermöglicht.</P>
|
||||
|
||||
<P><CODE>libdvdread</CODE> akzeptiert sogar Mountpoints anstelle von
|
||||
Devicenamen. Dabei schaut sie in <CODE>/proc/mounts</CODE> nach, um den
|
||||
tatsächlichen Devicenamen für den Sektorzugriff herauszufinden.
|
||||
Entwickelt wurde diees Verfahren für Solaris, da Solaris Devicenamen
|
||||
dynamisch vergibt.</P>
|
||||
|
||||
<P>Der Standardname fü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üsselung der neuen
|
||||
DVD-Unterstützung wird durch eine gepatchte <CODE>libdvdcss</CODE>
|
||||
ermöglicht (siehe oben). Die Zugriffsmethoden können über die
|
||||
Umgebungsvariable <CODE>DVDCSS_METHOD</CODE> gewählt werden. Gä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üssel wird während der
|
||||
Authentifizierung (eine lange Mischung aus ioctls und verschiedenen
|
||||
Schlüsselaustauschen, dient der Entschlüsselung) verhandelt.
|
||||
Er wird benutzt, um die title- und disk-Schlüssel vor dem Versand
|
||||
über den ungeschützten Systembus zu verschlüsseln und damit
|
||||
ein Ablauschen der Schlüssel zu verhindern. Der bus key ist
|
||||
erforderlich, um den verschlüsselten disk key zu erhalten und zu
|
||||
entschlüsseln.</LI>
|
||||
<LI><B>cached key:</B> MPlayer sucht nach bereits gecrackten
|
||||
Schlü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üsseln.</LI>
|
||||
<LI><B>disk:</B> Wenn die key-Methode fehlschlägt (z.B. wenn keine
|
||||
Player-Schlü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ötigt mindestens 64MB Speicher
|
||||
(16M 32Bit breite Einträge in einer Hashtabelle), um temporä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ü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üsselt.</LI>
|
||||
<LI><B>title:</B> Diese Methode wird dann benutzt, wenn die Anforderung
|
||||
fü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üsselten Inhalt der VOBs zu finden.
|
||||
Geraten wird dann, dass die ersten verschlüsselten Bytes des dazu
|
||||
passenden verschlüsselten Textes
|
||||
eine Weiterführung dieser Muster sind.) Diese Methode ist auch als
|
||||
"known plaintext attack" (Angriff bei bekanntem Klartext) oder "DeCSSPlus"
|
||||
bekannt. In seltenen Fällen kann auch diese Methode fehlschlagen,
|
||||
wenn nicht genug verschlüsselte Daten auf der DVD vorhanden sind,
|
||||
um einen statistischen Angriff zu starten, oder weil sich der Schlüssel
|
||||
mitten in einem Titel ändert. Diese Methode ist die
|
||||
einzige Möglichkeit, den auf der Festplatte gespeicherten Inhalt einer
|
||||
DVD zu entschlüsseln und bei RPC2-Laufwerken mit falschem Regionalcode
|
||||
(langsam).</LI>
|
||||
</OL>
|
||||
|
||||
<P>RPC-1-konforme DVD-Laufwerke sind nur über den Gebietsschutz
|
||||
geschützt, den der Softwareplayer bietet. RPC-2-konforme Laufwerke haben
|
||||
dagegen einen Hardwareschutz, der es nur fünf mal erlaubt, den Gebietscode
|
||||
zu ändern. Es ist evtl. nötig oder empfehlenswert, dass du Firmware
|
||||
für dein Laufwerk zu finden, die nur einen RPC-1-Schutz implementiert.
|
||||
Firmwareupgrades können auf dieser
|
||||
<A HREF="http://perso.club-internet.fr/farzeno/firmware/">Firmwareseite</A>
|
||||
gefunden werden. Solltest du dort keine Firmware fü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 ändern (klappt
|
||||
nur unter Linux). <B>Warnung:</B> Du kannst nur fünf mal den Gebietscode
|
||||
ä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://<Tracknummer> [-cdrom-device
|
||||
<Gerät>]</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ä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ändig implementiert ist.
|
||||
Wenn du Ahnung von der SCSI-Programmierung hast, dann
|
||||
<A HREF="../tech/patches.txt">hilf uns</A>, generische Unterstützung
|
||||
fü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ält, auf dem meist ein VCD-Player
|
||||
fü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. Ähnlich wie bei Audio-CDs kö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, überhaupt
|
||||
kein Dateisystem). Diese lassen sich abspielen aber nicht mounten.</LI>
|
||||
</UL>
|
||||
|
||||
<H4>Über .DAT-Dateien:</H4>
|
||||
|
||||
<P>Die ca. 600MB groß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öglichen, solche Spuren
|
||||
zu lesen (Windows erlaubt Anwendungen den direkten Zugtriff auf das Laufwekr
|
||||
nämlich nicht). Unter Linux kannst du diese Datei weder einfach kopieren
|
||||
noch einfach abspielen (sie enthalten dann nur Mü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ält einen modifizierten
|
||||
Treiber für das ISO9660-Dateisystem (<CODE>vcdfs/isofs-2.4.X.o</CODE>),
|
||||
der ebenfalls in der Lage ist, das direkte Auslesen ü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ü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ür-Bit-Grabben/Kopieren von CDs.</P>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
|
@ -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ü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ür die komplette, tä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ü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ür <B>Windows Media Video 7/8</B>
|
||||
(<B>WMV1/WMV2</B>) und Win32-DLL-Decoder fü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ü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ür HuffYUV</LI>
|
||||
<LI>Verschiedene alte, einfache RLE-ähnliche Formate</LI>
|
||||
</UL>
|
||||
|
||||
<P>Wenn du einen Win32-Codec hast, der noch nicht aufgelistet und
|
||||
unterstützt ist, dann lies <A HREF="#importing">Win32
|
||||
Codec-Importierungs-HOWTO</A> und hilf uns, die Unterstützung
|
||||
hinzuzufügen.</P>
|
||||
|
||||
|
||||
<H4><A NAME="divx">2.2.1.1 DivX4/DivX5</A></H4>
|
||||
|
||||
<P>Diese Sektion enthält Informationen über den DivX4- und
|
||||
Divx5-Codec vom <A HREF="http://www.projectmayo.com">Project Mayo</A>. Ihre
|
||||
ersten verfügbaren alpha-Versionen waren OpenDivX 4.0 alpha 47 und 48.
|
||||
Unterstützung dafür war früher standardgemäß in
|
||||
MPlayer eingebaut. Es wurde auch deren Postprocessing Code verwendet, um
|
||||
optional die Bildqualität von MPEG1/2-Filmen zu verbessern. Nun benutzen
|
||||
wir unseren eigenen für alle Dateitypen.</P>
|
||||
|
||||
<P>Die neue Version dieses Codecs heisst DivX4Linux und kann sogar Filme
|
||||
decodieren, die mit dem berü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ässt sich jedoch trotzdem zum
|
||||
Encodieren verwenden. Ein Nachteil diese Codecs ist, dass er zurzeit
|
||||
nicht unter einer OpenSource-Lizenz verfügbar ist.</P>
|
||||
|
||||
<P>MPlayer erkennt automatisch, ob DivX4/DivX5 korrekt installiert ist,
|
||||
du kannst ihn wie gewö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) übermittelt, was weniger
|
||||
Bandbreite für den Bus bedeutet. Für gepackte YUV-Formate (YUY2,
|
||||
UYVY) verwende den <CODE>-vc divx4</CODE>-Modus. Für den RGB-Modus ist die
|
||||
Geschwindigkeit gleich und hängt am ehesten von deiner momentanen
|
||||
Farbtiefe ab.</P>
|
||||
|
||||
<P><B>Hinweis:</B> Wenn der -vo-Treiber "direct rendering" unterstützt,
|
||||
ist <CODE>-vc divx4</CODE> wahrscheinlich die schnellere oder sogar die
|
||||
schnellste Lösung.</P>
|
||||
|
||||
<P>Die binä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ü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ü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ü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ält
|
||||
ein <B>Open-Source</B>-Codec-Paket, das fä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ä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ü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ä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ä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> <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ä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ö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ück geliefert werden, das eine legal bindende Softwarelizenz
|
||||
sein soll, welche (neben einigen anderen Einschrä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ü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ö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ö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ür 1.0-Dateien ist FFmpegs H263-Decoder. Du kannst ihn mit der <CODE>-vc
|
||||
ffh263</CODE>-Option aufrufen. Fü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ä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ß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ähigen Cinepak-Decoder, der von <A
|
||||
HREF="mailto:timf@csse.monash.edu.au">Dr. Tim Ferguson</A> geschrieben wurde.
|
||||
Er unterstützt YUV-Ausgabe, was Hardwarescaling ermöglicht, wenn dies
|
||||
vom Videoausgabetreiber unterstützt wird.</P>
|
||||
|
||||
|
||||
<H4><A NAME="realvideo">2.2.1.8 RealVideo</A></H4>
|
||||
|
||||
<P>MPlayer unterstützt die Dekodierung aller Versionen von
|
||||
RealVideo:</P>
|
||||
|
||||
<UL>
|
||||
<LI>RealVideo 1.0 (fourcc RV10) - En/Dekodierung durch <B>libavcodec</B>
|
||||
unterstützt</LI>
|
||||
<LI>RealVideo 2.0, 3.0, 4.0 (fourcc RV20, RV30, RV40) - Dekodierung durch die
|
||||
<B>RealPlayer Libraries</B> unterstü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>
|
||||
ü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) ä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ützung dafür einzubauen.</LI>
|
||||
<LI>2-Pass Encodierungs-Unterstützung</LI>
|
||||
<LI>gute Encodierungsqualität, höhere Geschwindigkeit als DivX4
|
||||
(man kann es während des Compilierens fü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ür die DivX4- <B>ODER</B>
|
||||
XviD-Unterstützung entscheiden.</LI>
|
||||
<LI>in der Entwicklung</LI>
|
||||
</UL>
|
||||
|
||||
<H4>INSTALLATION DER XVID-CVS-VERSION</H4>
|
||||
|
||||
<P>XviD ist momentan nur als CVS erhä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>ändere <CODE>Makefile.linux</CODE> deinen Bedü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ächlich gibt es zwei (qualitativ nahezu identische)
|
||||
Decoder fü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ÜTZUNG FÜR
|
||||
QUICKTIME-BIBLIOTHEKEN</H4>
|
||||
|
||||
<P><B>Anmerkung:</B> Momentan wird nur die 32bit-Intel-Architektur
|
||||
unterstü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äß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äße Dekoder für Dateien mit
|
||||
AC3-Audio.</P>
|
||||
|
||||
<P>Der AC3 Dekoder kann die Audio-Ausgabe für 2, 4 oder 6 Lautsprecher
|
||||
erzeugen. Wenn er für 6 Lautsprecher konfigieriert ist, unterstützt
|
||||
dieser Decoder die Ausgabe aller AC3-Kanäle an den Soundtreiber. Damit
|
||||
ermöglicht er die vollständige "Surround Sound"-Erfahrung ohne einen
|
||||
externen AC3-Decoder, der bei der Verwendung des hwac3-Codecs nötig
|
||||
ist.</P>
|
||||
|
||||
<P>Verwende die <CODE>-channels</CODE>-Option um die Anzahl der
|
||||
Ausgabekanäle zu wählen. Verwende <CODE>-channels 2</CODE> für
|
||||
Downmix auf Stereo. Für Downmix auf 4 Kanäle (links vorne, rechts
|
||||
vorne, links Surround und rechts Surround) verwende <CODE>-channels 4</CODE>.
|
||||
In diesem Fall werden alle Center-Känale gleichmäßig den
|
||||
Frontkanälen beigemischt. <CODE>-channels 6</CODE> gibt alle
|
||||
AC3-Kanäle wie Aufgezeichnet in der Reihenfolge links, rechts,
|
||||
links Surround, rechts Surround, Center und LFE aus.</P>
|
||||
|
||||
<P>Die Standardanzahl der Ausgabekanäle ist 2.</P>
|
||||
|
||||
<P>Um mehr als 2 Kanäle zu verwenden, musst du OSS verwenden und eine
|
||||
Soundkarte besitzen, die die Anzahl der Ausgabekanäle via
|
||||
SNDCTL_DSP_CHANNELS ioctl unterstü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ähige Soundkarte mit einem Digitalausgang
|
||||
(SP/DIF). Der Treiber muss das AFMT_AC3 Format richtig unterstützen (wie
|
||||
z.B. der fü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ß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ützung</A></H4>
|
||||
|
||||
<P><A HREF="http://mad.sourceforge.net">libmad</A> ist eine
|
||||
Multiplattform-Bibliothek fü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ü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ä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ützt.</P>
|
||||
|
||||
|
||||
<H4><A NAME="realaudio">2.2.2.5 RealAudio</A></H4>
|
||||
|
||||
<P>MPlayer unterstü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ö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önnen mit den
|
||||
QuickTime-Bibliotheken decodiert werden. Schau in der <A
|
||||
HREF="#sorenson">Sorenson-Video-Codec-Sektion</A> fü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önnen mit den Quicktime-Bibliotheken decidiert werden.
|
||||
Installationsanweisungen findest du in der Sektion ü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ür Windows.
|
||||
Diese Codecs haben die Erweiterung .DLL oder (eher selten) .DRV.
|
||||
Wenn MPlayer mit folgender Meldung fehlschlägt, ein AVI
|
||||
abzuspielen:</P>
|
||||
|
||||
<P> <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ädt, um diese Datei
|
||||
abzuspielen. In diesem Fall enthält die <CODE>System.ini</CODE> diese
|
||||
Information in solch einer Zeile:</P>
|
||||
|
||||
<P> <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> <CODE>msacm.l3acm=L3codeca.acm</CODE></P>
|
||||
|
||||
<P>Dies ist ein MP3 Codec. Da du nun alle nötigen Informationen hast
|
||||
(fourcc, Codec-Datei, AVI-Beispiel), solltest du per Mail um Unterstützung
|
||||
für diesen Codec bitten und die Dateien auf folgenden FTP-Server
|
||||
hochladen:</P>
|
||||
|
||||
<P> <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änger ist. Den Namen der DLL herauszufinden ist bei
|
||||
DirectShow schwieriger, weil...</P>
|
||||
|
||||
<UL>
|
||||
<LI>die <CODE>system.ini</CODE> nicht mehr die benötigten Informationen
|
||||
enthä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ähle im Menü "Graph -> Insert Filters".</LI>
|
||||
<LI>Klappe <CODE>DirectShow Filters</CODE> auf.</LI>
|
||||
<LI>Suche und wähle den richtigen Codec, dann klappe auch diesen auf.
|
||||
</LI>
|
||||
<LI>Der Eintrag <CODE>DisplayName</CODE> enthält die gesuchte GUID.
|
||||
Diese steht nach dem Backslash (\) in geschweiften Klammern und besteht
|
||||
aus fünf Blö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ä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ü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ä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 -> Eigenschaften ->
|
||||
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ötigte GUID.</LI>
|
||||
</OL>
|
||||
|
||||
<P><B>Hinweis:</B> Wenn die Suche fehlschlägt, versuche alle Auswahlfelder
|
||||
zu aktivieren. Du wirst möglicherweise falsche Ergebnisse finden, aber
|
||||
vielleicht hast du auch Glück...</P>
|
||||
|
||||
<P>Da du nun alle nötigen Informationen hast (fourcc, GUID, Codec-Datei,
|
||||
AVI-Beispiel), solltest du per Mail um Unterstützung für diesen Codec
|
||||
bitten und die Dateien auf folgenden FTP-Server hochladen:</P>
|
||||
|
||||
<P> <CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/
|
||||
</CODE></P>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
File diff suppressed because it is too large
Load Diff
|
@ -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 über alle möglichen Themen rund um
|
||||
die Encodierung mit MEncoder.</P>
|
||||
|
||||
<H3><A NAME="2pass">7.1 MPEG4-Encodierung ("DivX") in zwei oder drei
|
||||
Durchlä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äre Dateien (*.log) mit
|
||||
einer Dateigröße von nur wenigen MB. Lösche sie nicht (das AVI
|
||||
kannst du aber löschen). Im zweiten Pass wird die Ausgabedatei unter
|
||||
Verwendung der Bitraten-Daten der temporären Datei erzeugt. Die
|
||||
endgültige Datei wird deswegen eine weitaus bessere Bildqualität
|
||||
besitzen. Wenn dies das erst Mal ist, dass du davon hö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> rm frameno.avi</CODE> - Lösche diese Datei,
|
||||
welche von einer früheren 3-Pass-Encodierung kommen kann (Sie führt zu
|
||||
einem Konflikt mit der momentanen Encodierung).<BR>
|
||||
|
||||
<CODE> mencoder dvd://2 -lavcopts
|
||||
vcodec=mpeg4:vpass=1 -oac copy -o film.avi</CODE><BR>
|
||||
|
||||
<CODE> 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äge fü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ösche die alte Datei:
|
||||
<P>CODE>rm frameno.avi</CODE></P></LI>
|
||||
<LI>Erster Durchlauf:
|
||||
<P><CODE>mencoder <file/DVD> -ovc frameno -oac mp3lame -lameopts
|
||||
vbr=3 -o frameno.avi</CODE></P>
|
||||
|
||||
<P>Hierbei wird ein AVI erstellt, das <B>nur</B> die gewählte
|
||||
Audiospur enthält. Vergiss nicht, die <CODE>-lameopts</CODE> deinen
|
||||
Wü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 <file/DVD> -oac copy
|
||||
-ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=<bitrate>
|
||||
</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ählte Videobitrate an.</LI></P>
|
||||
<LI>Dritter Durchgang:
|
||||
<P><CODE>mencoder <file/DVD> -oac copy
|
||||
-ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=<bitrate>
|
||||
</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ßt
|
||||
genau, was du tust. In diesem Durchgang wird die im
|
||||
ersten Durchgang encodierte Audiospur in die endgültige Datei
|
||||
eingefügt. Nun ist alles fertig!</LI></P>
|
||||
</OL>
|
||||
|
||||
<H4>Beispiel einer 3-Pass-Encodierung:</H4>
|
||||
|
||||
<CODE> rm frameno.avi</CODE> - Lösche diese Datei,
|
||||
welche von einer früheren 3-Pass-Encodierung kommen kann (Sie führt
|
||||
zu einem Konflikt mit der momentanen Encodierung).<BR>
|
||||
|
||||
<CODE> mencoder dvd://2 -ovc frameno
|
||||
-o frameno.avi -oac mp3lame -lameopts vbr=3<BR>
|
||||
|
||||
mencoder dvd://2 -ovc lavc
|
||||
-lavcopts vcodec=mpeg4:vpass=1 -oac copy -o movie.avi<BR>
|
||||
|
||||
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ützlich, mal davon
|
||||
abgesehen, dass es wahrscheinlich noch einige Fehler enthä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ändert werden.</P>
|
||||
|
||||
<P>Beispiel:<BR>
|
||||
<CODE>mencoder -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video
|
||||
-oac copy <weitere Optionen> media.avi -o ausgabe.mpg</CODE></P>
|
||||
|
||||
|
||||
|
||||
<H3><A NAME="rescaling">7.3 Skalierung von Filmen</A></H3>
|
||||
|
||||
<P>Oftmals ist die Änderung der Bildgröße erforderlich. Die
|
||||
Gründe dafür können verschieden sein: Dateigröße
|
||||
verringern, Netzwerkbandbreite nicht ü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
|
||||
über das <A HREF="#aspect">Beibehalten des
|
||||
Höhen-/Breitenverhältnisses</A>.</P>
|
||||
|
||||
<P>Der Skalierungsprozess erfolgt durch den <I>'scale</I>-Videofilter:
|
||||
<CODE>-vf scale=breite:hoehe</CODE>. Die Qualitä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> 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ärt die
|
||||
<B>Stream-Kopie</B>.</P>
|
||||
|
||||
<UL>
|
||||
<LI><B>Videostreams</B> (Option <CODE>-ovc copy</CODE>): Es können nette
|
||||
Sachen gemacht werden :)<BR> Wie das kopieren (nicht konvertieren) von FLI-
|
||||
oder VIVO- oder MPEG1-Video in eine AVI-Datei. Natürlich ist nur
|
||||
MPlayer in der Lage, solche Dateien abspielen :) Und vermutlich ist
|
||||
das auch absolut nicht praxisrelevant. Das Kopieren von Videostream
|
||||
kann nü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öglich, eine externe Audiodatei (MP3, AC3, Vorbis) zu nehmen,
|
||||
und diese dem Ausgabestream hinzuzufügen. Benutze dazu die Option
|
||||
<CODE>-audiofile <dateiname></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ü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ü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ängen mehrerer AVI-Dateien</A>
|
||||
</H3>
|
||||
|
||||
<P>Ein Nebeneffekt des oben erwähnten Reparierens ist, dass MEncoder
|
||||
damit auch zwei oder mehrere aneinandergehä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ö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ür viele interessante Video-und Audio-formate (momentan
|
||||
werden deren Audio-Codecs nicht unterstü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ält den Codec-Namen, den du nach dem
|
||||
<CODE>vcodec</CODE>-Stichwort übergibst, wie z.B.:
|
||||
<CODE>-lavcopts vcodec=msmpeg4</CODE></P>
|
||||
|
||||
<P>Ein Beispiel mit MJPEG-Compression:<BR>
|
||||
<CODE> 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ä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ührt die decodierten Bilder danach dem
|
||||
gewählten Videokompressor zu (DivX4, Xvid, ffmpeg msmpeg4, etc...).
|
||||
</LI>
|
||||
</OL>
|
||||
|
||||
<H4>Beispiele</H4>
|
||||
|
||||
<P>Die Erklä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>
|
||||
|
||||
<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>
|
||||
|
||||
<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>
|
||||
|
||||
<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>
|
||||
|
||||
<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änkung des RGB-AVI-Formates ist.</P>
|
||||
|
||||
<P><I>Erstellung einer Motion PNG-Datei (MPNG) aus allen PNG-Dateien im
|
||||
momentanen Verzeichnis:</I><BR>
|
||||
|
||||
<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>
|
||||
|
||||
<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ä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ötigt wird.</P>
|
||||
|
||||
<P>Wenn die Eingabe nicht von einer DVD stammt und keine
|
||||
<CODE>.ifo</CODE>-Datei vorhanden ist, benötigst du die
|
||||
<CODE>-vobsuboutid</CODE>-Option, um MPlayer zu sagen, welche Sprach-ID
|
||||
für die <CODE>.idx</CODE> Datei verwendet werden soll.</P>
|
||||
|
||||
<P>Jeder Aufruf fü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öscht werden.</P>
|
||||
|
||||
<H4>Beispiele:</H4>
|
||||
|
||||
<P><I>Kopieren zweier Untertitel von einer DVD mit 3-Pass-Encodierung</I><BR>
|
||||
|
||||
<CODE>rm untertitel.idx untertitel.sub</CODE><BR>
|
||||
|
||||
<CODE>mencoder dvd://1 -vobsubout untertitel -vobsuboutindex 0 -sid
|
||||
2 -o frameno.avi -ovc frameno -oac mp3lame -lameopts vbr=3</CODE><BR>
|
||||
|
||||
<CODE>mencoder dvd://1 -oac copy -ovc divx4 -divx4opts
|
||||
pass=1</CODE><BR>
|
||||
|
||||
<CODE>mencoder dvd://1 -oac copy -ovc divx4 -divx4opts pass=2
|
||||
-vobsubout untertitel -vobsuboutindex 1 -sid 5</CODE></P>
|
||||
|
||||
|
||||
<P><I>Kopieren eines französischen Untertitels von einer MPEG-Datei</I><BR>
|
||||
|
||||
<CODE>rm untertitel.idx untertitel.sub</CODE><BR>
|
||||
|
||||
<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öhen-/Breitenverhältnisses erhalten
|
||||
</A></H3>
|
||||
|
||||
<P>DVDs und SVCDs (z.B. MPEG1/2) enthalten einen Wert, der das Verhältnis
|
||||
zwischen der Ausgebehöhe und der Ausgebebreite enthält. Der Player
|
||||
sorgt dann durch Skalierung dafür, dass dieses Verhältnis erreicht
|
||||
wird, sodass wir Menschen keine Eierköpfe sehen (Beispiel: die
|
||||
Bildmaße betragen 480x480, das gespeicherte Verhältnis beträ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öhen-/Breitenverhältnis <B>nicht</B> speichern
|
||||
kann. Die Skalierung beim Encodieren ist ein zeitraubender und
|
||||
qualitätsmindernder Prozess. Es sollte doch eine bessere Möglichkeit
|
||||
geben!?</P>
|
||||
|
||||
<P>Ganz genau - die gibt es.</P>
|
||||
|
||||
<P>MPEG4 enthält ein einzigartiges Feature: Im Videostream selber kann
|
||||
das Höhen-/Breitenverhältnis gespeichert werden. Jop, genauso wie
|
||||
bei MPEG1/2 (DVD, SVCD). Leider gibt es bisher <U>keinen</U> Videoplayer, der
|
||||
dieses Feature unterstützt. Bis auf MPlayer natü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öhen-/Breitenverhältnis anzeigen werden.</P>
|
||||
|
||||
<P>Du solltest ernsthaft in Erwä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>
|
940
DOCS/de/faq.html
940
DOCS/de/faq.html
|
@ -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ü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> </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üfe
|
||||
<CODE>configure.log</CODE> für Details.</DD>
|
||||
<DD> </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> </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ü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 ü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ügung stellen,
|
||||
noch Unterstützung bei Problemen anbieten.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Groß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ützung findet sich in der
|
||||
<A HREF="documentation.html#installation">Installationssektion</A>.</DD>
|
||||
<DD> </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> </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 [Ü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ö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ö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ären Paketen. Anstatt anderen Users zu helfen oder Patches zu
|
||||
erzeugen um, Probleme zu lösen.</P>
|
||||
|
||||
<P>Die hälfte unserer Freizeit verbrauchen wirh beim Beantworten
|
||||
sinnloser Mails und beim Einbauen von neuen Tricks fü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öse sind, da wir das fehlerhafte gcc 2.96
|
||||
nicht mö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önnen nicht gut sein. Die Hälfte der
|
||||
Leute sagt, dass wir böse sind.</P>
|
||||
|
||||
<P>Möglicherweise sollten wir das Projekt schließen,
|
||||
kommerzielles Closed-Source daraus machen und euch dann Installationssupport
|
||||
anbieten. Dann könnten wir unsere aktelle Arbeitsstätte
|
||||
verlassen, die Entwicklung ginge schneller, and wir könnten eine Menge
|
||||
Geld verdienen und ein großes Haus kaufen, usw. usw. Willst du das
|
||||
wirklich? Es scheint so.</P>
|
||||
</BLOCKQUOTE></DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: SDL Ausgabe funktioniert/kompiliert nicht. Das Problem ist ...</DT>
|
||||
<DD>A: Es wurde mit SDL 1.2.x getestet und läuft vielleicht auf
|
||||
SDL 1.1.7+. Es funktioniert <B>nicht</B> mit irgendeiner früheren
|
||||
Version. Wenn du eine solche einsetzen willst, dann bist du auf dich
|
||||
allein gestellt.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Ich habe immer noch Probleme mit dem SDL Support. gcc sagt etwas
|
||||
ü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üge
|
||||
"-L/usr/local/lib " nach "X_LIBS=" ein. Nun gib make ein. Es sollte
|
||||
funktionieren!</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Es wird nicht kompiliert, und es vermisst uint64_t, inttypes.h oder
|
||||
ä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> </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ützen SSE (oder
|
||||
versuche 2.2.19 oder neuer, aber sei auf Probleme vorbereitet).</DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: Gibt es rpm/deb/...-Pakete von MPlayer?</DT>
|
||||
<DD>A: Du kannst ein .deb Paket fü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> </DD>
|
||||
|
||||
<DT>Q: Während 'make' beschwert sich MPlayer ü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ü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önnen mit diesen
|
||||
Befehlen erzeugt werden: <BR> <CODE>$ ln -sf
|
||||
/usr/X11R6 /usr/X11</CODE><BR> <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> </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> </DD>
|
||||
|
||||
<DT>Q: Ich habe MPlayer mit libdvdcss/libdivxdecore-Unterstützung
|
||||
kompiliert, aber wenn ich versuche es zu starten, erhalte ich eine
|
||||
Fehlermeldung, obwohl ich die Datei überprü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üge <CODE>/usr/local/lib</CODE> deiner
|
||||
<CODE>/etc/ld.so.conf</CODE> Datei hinzu und starte
|
||||
<CODE>ldconfig</CODE>.</DD>
|
||||
<DD> </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ötigen einen Parameter, um ihre
|
||||
Lizenz anzuzeigen (hauptsächlich, um Kernel-Hacker am Debuggen von
|
||||
Closed-Source-Treibern zu hindern). Update deinen Kernel, modutils und
|
||||
MPlayer.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Wä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äre gut). Melde den Fehler <B>nicht</B>,
|
||||
da er nicht von uns ist!</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: MPlayer bricht mit einem segmentation fault bei der
|
||||
pthread-Überprüfung ab!</DT>
|
||||
<DD>A: chmod 644 /usr/lib/libc.so</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Ich möchte gerne MPlayer auf Minix kompilieren!</DT>
|
||||
<DD>A: Ich auch. :)</DD>
|
||||
<DD> </DD>
|
||||
|
||||
</DL>
|
||||
|
||||
|
||||
<H2><A NAME="general">5.2 Allgemeine Fragen</A></H2>
|
||||
|
||||
<DL>
|
||||
|
||||
<DT>Q: Wie erzeuge ich einen vernünftigen Patch für
|
||||
MPlayer?</DT>
|
||||
<DD>A: Wir haben dafür ein <A HREF="../tech/patches.txt">kleines
|
||||
Dokument</A> erstellt, das alle notwendigen Details erklärt. Folge
|
||||
bitte seinen Anweisungen.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Wie kann ich die Entwicklung von MPlayer unterstü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ändig zu
|
||||
verbessern.</DD>
|
||||
<DD> </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 Überblick ü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> </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ällen nur jeweils
|
||||
eine Instanz mit diesen Videoausgabetreibern laufen lassen können.
|
||||
Etwas weniger stark trifft das auch auf die Audioausgabetreiber. Nicht
|
||||
alle erlauben die gleichzeitige Wiedergabe mehrerer Streams auf dem
|
||||
gleichen Gerät.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Ich sehe in der linken oberen Ecke einen Timer. Wie werde ich den los?
|
||||
</DT>
|
||||
<DD>A: Drücke <CODE>o</CODE> oder verwende die
|
||||
<CODE>-osdlevel</CODE>-Option.</DD>
|
||||
<DD> </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ü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ür dich zum Laufen zu
|
||||
bringen. Er ist um einiges schneller. Wenn SDL-DGA auch funktioniert,
|
||||
verwende das, es ist NOCHMALS schneller.</DD>
|
||||
<DD> </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ählt ab der letzten Suche)</LI>
|
||||
<LI>dekodierte Frames (gezä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ür die A-V Sync</LI>
|
||||
<LI>aktuelle Level des Bild-Postprocessing (wenn -autoq verwendet)</LI>
|
||||
<LI>aktuelle benützte Cachegrösse (normal ist ~50%)</LI>
|
||||
</UL>
|
||||
<I>Die meisten sind für debugging-Zwecke und werden irgendwann
|
||||
entfernt.</I></DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: Warum ist die Video-Ausgabe CPU-Auslastung null (0%) für einige
|
||||
Dateien?</DT>
|
||||
<DD> </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> </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> </DD>
|
||||
|
||||
<DT>Q: Ich habe Fehlermeldunge ü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> </DD>
|
||||
|
||||
<DT>Q: Gibt es Mailing-Listen ü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> </DD>
|
||||
|
||||
<DT>Q: Ich habe einen bö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> </DD>
|
||||
|
||||
<DT>Q: Ich habe Probleme beim Abspielen von Dateien mit dem ... Codec. Kann
|
||||
ich sie trotzdem verwenden?</DT>
|
||||
<DD>A: Prü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> </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ösität von A'rpi nach eigenartigem, mystischen Verschwinden
|
||||
von Code aus dem CVS auszudrücken ;)</DD>
|
||||
<DD> </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> </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ß das
|
||||
Executable <CODE>mplayer_lirc</CODE>, sogar im 0.60 Release, wurde jedoch
|
||||
neulich wieder zu <CODE>mplayer</CODE> geändert.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Die Untertitel sind sehr nett, die wunderschö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
|
||||
ändere <CODE>#undef FAST_OSD</CODE> in <CODE>#define FAST_OSD</CODE>.
|
||||
Compiliere MPlayer danach neu.</DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: Was genau ist dieses libavcodec-Dingens?</DT>
|
||||
<DD>A: Siehe <A HREF="codecs.html#libavcodec">libavcodec-Sektion</A>.</DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: Icewm's Taskbar bleibt im Vollbildschirm-Modus ständig ü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> </DD>
|
||||
|
||||
<DT>Q: Ich kann nicht auf das GUI Menü zugreifen. Ich drücke die
|
||||
rechte Maustaste, kann aber auf kein Menü zugreifen.</DT>
|
||||
<DD>A: Verwendest du FVWM? Versuche folgendens:<BR>
|
||||
Start -> Settings -> Configuration -> Base Configuration<BR>
|
||||
Setze "Use Applications position hints" auf "Yes".</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Wie kann ich MPlayer im Hintergrund laufen lassen?</DT>
|
||||
<DD>A: Verwende: <CODE>mplayer <Optionen> <Dateiname> <
|
||||
/dev/null &</CODE></DD>
|
||||
<DD> </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> </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> </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ührt, und lade die Datei auf den FTP-Server hoch.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: MPlayer beendet sich mit einem Fehler bei der Verwendung von
|
||||
l3codeca.acm.</DT>
|
||||
<DD>A: Prüfe die <CODE>ldd /usr/local/bin/mplayer</CODE>-Ausgabe. Wenn
|
||||
sie<BR>
|
||||
<CODE>libc.so.6 => /lib/libc.so.6
|
||||
(0x4???????)</CODE><BR>
|
||||
enthält, wobei "?" irgendeine Nummer ist, ist es OK, und der Fehler
|
||||
liegt nicht hier. Wenn aber die Ausgabe<BR>
|
||||
<CODE>libc.so.6 => /lib/libc.so.6
|
||||
(0x00??????)</CODE><BR>
|
||||
enthält, hast du ein Problem mit deinem Kernel und/oder deiner libc.
|
||||
Mö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önnen das nicht
|
||||
ändern. Du solltest einen nicht-gepachten Kernel oder
|
||||
MPlayers <CODE>-afm 1</CODE> Option verwenden, um die l3codeca.acm
|
||||
auszuschalten.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Mein Computer spielt M$-DivX-AVIs mit Auflösungen von ~ 640x300
|
||||
und Stereo-MP3-Sound zu langsam ab. Wenn ich den
|
||||
<CODE>-nosound</CODE>-Parameter verwende ist alles OK, aber ich hö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ässt.</DD>
|
||||
<DD> </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> </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ür
|
||||
Fehlerberichte</A> und schreib einen Fehlerbericht.</DD>
|
||||
<DD> </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
|
||||
ähnliche in deiner Config-Datei.</DD>
|
||||
<DD> </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
|
||||
über den eingebauten Arts-Audiotreiber (<CODE>-ao arts</CODE>)
|
||||
aktiviert werden. Falls dies fehlschlä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öglichkeit besteht darin, MPlayer mit artsdsp zu
|
||||
starten.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Ich habe eine AVI-Datei, die mit <CODE>-vc odivx</CODE> einen grauen
|
||||
und mit <CODE>-vc divx4</CODE> einen grünen Bildschirm wiedergibt.</DT>
|
||||
<DD>A: Es ist keine DivX-Datei, sondern eine M$ MPEG4v3. Update deine
|
||||
codecs.conf.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Wenn ich diesen Film abspiele erhalte ich eine
|
||||
Audio/Video-Desynchronisation und/oder MPlayer
|
||||
stü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ü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ähler
|
||||
für die ausgelassenen Frames steigt).</LI>
|
||||
<LI>Wenn es eine AVI-Datei ist, hat sie möglichweise ein schlechtes
|
||||
Interleaving. Versuche die <CODE>-ni</CODE> Option.</LI>
|
||||
<LI>Dein Soundtreiber ist scheiß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> </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> </DD>
|
||||
|
||||
<DT>Q: Wenn ich versuch, von meinem Tuner zu grabben, funktioniert es, aber
|
||||
die Farben sind mehrwürdig. Mit anderen Anweundgen sehen sie aber
|
||||
normal aus.</DT>
|
||||
<DD>A: Deine Karte gibt vielleicht falsche Farbraum-Fähigkeiten an.
|
||||
Versuche es mit YUY2 anstatt des Standards YV12 (siehe
|
||||
<A HREF="documentation.html#tv">TV Input Dokumentation</A>).</DD>
|
||||
<DD> </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ötigst root-Privilegien oder einen speziell vorbereiteten
|
||||
Kernel, um den neuen Timing-Code zu verwenden.
|
||||
Für Details lies die <A HREF="documentation.html#rtc">RTC-Sektion</A>
|
||||
der Dokumentation.</DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: Alle WMV-Dateien (oder andere..), die ich abspiele, erzeugen ein
|
||||
grü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> </DD>
|
||||
|
||||
<DT>Q: I erhalte wä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ür Linux).</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Ton/Bild geraten total aus der Synchronisation, wenn ich MPlayer
|
||||
als root starte auf meinem Notebook starte. Als Benutzer lä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> </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 -> 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> </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> </DD>
|
||||
|
||||
<DT>Q: <CODE>-vo help</CODE> zeigt den DGA-Treiber, aber es beschwert
|
||||
sich über die Zugriffsrechte! Helft mir!</DT>
|
||||
<DD>A: DGA funktioniert nur als Root! Dies ist eine
|
||||
DGA-Beschränkung. Du solltest root werden (<CODE>su -</CODE>) und
|
||||
es erneut versuchen.
|
||||
Eine andere Lösung ist, MPlayer auf SUID root zu stellen,
|
||||
aber das ist <B>nicht empfehlenswert!</B><BR>
|
||||
<CODE>chown root /usr/local/bin/mplayer</CODE><BR>
|
||||
<CODE>chmod 755 /usr/local/bin/mplayer</CODE><BR>
|
||||
<CODE>chmod +s /usr/local/bin/mplayer</CODE><BR>
|
||||
<BLOCKQUOTE>
|
||||
<B>Warnung: Sicherheitsrisiko</B><BR>
|
||||
Dies ist ein <B>grösseres</B> Sicherheitsrisiko! Tu das <B>nie</B>
|
||||
auf einem Server oder einem Computer, den du nicht vollständig
|
||||
kontrollierst. Die User bekommen durch einen SUID root MPlayer
|
||||
Root-Privilegien! <B>Du bist also gewarnt worden.</B>
|
||||
</BLOCKQUOTE>
|
||||
</DD>
|
||||
<DD> </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>
|
||||
Major opcode of failed request: 147 (MIT-SHM)<BR>
|
||||
Minor opcode of failed request: 1 (X_ShmAttach)<BR>
|
||||
Serial number of failed request: 26<BR>
|
||||
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> </DD>
|
||||
|
||||
<DT>Q: OpenGL-(<CODE>-vo gl</CODE>)-Ausgabe funktioniert nicht
|
||||
(aufhängen/schwarzes Fenster/X11-Fehler/ ...).</DT>
|
||||
<DD>A: Dein OpenGL-Treiber unterstützt keine "Dynamic Texture
|
||||
Changes" (<CODE>glTexSubImage</CODE>). Es ist bekannt, dass es nicht
|
||||
mit nVidias Binär-Scheiß 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ößenbeschränkung auf 256x256.
|
||||
</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Ich habe eine nVidia TNT/TNT2-Karte und Probleme mit eigenartigen
|
||||
Farben rechts unter dem Film! Was ist der Auslöser?</DT>
|
||||
<DD>A: Es ist ein Bug des binären nVidia X-Treibers. Diese Bugs
|
||||
treten NUR mit TNT/TNT2-Karten auf. Wir können nichts
|
||||
dagegen tun. Um das Problem zu lösen, sollte die neuste
|
||||
nVidia Treiber-Version verwendet werden. Wenn dies nichts nützt:
|
||||
Beklag dich bei nVidia!</DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: Wenn ich das GUI mit SDL Videoausgabe verwende, wird ein zweites
|
||||
Fenster erzeugt.</DT>
|
||||
<DD>A: Bekannt, verwende SDL für GUI zur Zeit nicht.</DD>
|
||||
<DD> </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> </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ützung für DVD-Navigation in MPlayer ist
|
||||
momentan kaputt. Die normale Wiedergabe funtkioniert natürlich. Wenn
|
||||
du unbedingt tolle Menüs haben mö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> </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) >= c_adt->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äßig verwendet wird.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Kann ich libdvdread und libdvdcss z.B. auf meinem
|
||||
süssen Sparc/Solaris kompilieren?</DT>
|
||||
<DD>A: Wer weiß... 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äßig verwendet wird.</DD>
|
||||
<DD> </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> </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> </DD>
|
||||
|
||||
<DT>Q: Muss ich root oder fibmap_mplayer setuid root sein, um DVDs
|
||||
abspielen zu können?</DT>
|
||||
<DD>A: Nein, das ist nur bei der alten DVD-Unterstützung notwendig.
|
||||
Natürlich brauchst du aber die
|
||||
Zugriffsrechte für das DVD-Laufwerk (in <CODE>/dev</CODE>).</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Wo kann ich die libdvdread- und libcss-Pakete bekommen?</DT>
|
||||
<DD>A: Die werden nicht benötigt. Verwende <B>libmpdvdkit2</B>, welches
|
||||
sich in den MPlayer-Sourcen befindet und standardmäßig
|
||||
verwendet wird. Die erwähnten Pakete können
|
||||
von der <A HREF="http://www.dtek.chalmers.se/groups/dvd">Ogle-Seite</A>
|
||||
heruntergeladen werden.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Ist es möglich, nur ausgewählte Kapitel
|
||||
abzuspielen/zu encodieren?</DT>
|
||||
<DD>A: Ja, mit der <CODE>-chapter</CODE>-Option.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Meine DVD-Wiedergabe ist träge!</DT>
|
||||
<DD>A: Benutze die <CODE>-cache</CODE>-Option (siehe Manpage).
|
||||
Versuche auch, den DMA-Modus für das DVD-Laufwerk mit
|
||||
<CODE>hdparm</CODE> zu aktivieren (lies die
|
||||
<A HREF="cd-dvd.html">DVD-Sektion</A> der Dokumentation).</DD>
|
||||
<DD> </DD>
|
||||
|
||||
</DL>
|
||||
|
||||
|
||||
<H2><A NAME="features">5.6 Feature-Wünsche</A></H2>
|
||||
|
||||
<DL>
|
||||
|
||||
<DT>Q: Wenn MPlayer pausiert wird und ich vorspule oder zurückspu;e
|
||||
oder eine andere Taste drücke, dann beendet MPlayer die
|
||||
Pause. Ich wü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> </DD>
|
||||
|
||||
<DT>Q: Ich möchte gerne 1 Frames vorwärts oder
|
||||
rückwä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> </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ßt warum. Wir wollen
|
||||
nicht eingesperrt werden. Du kannst es übrigens für dich
|
||||
kompilieren. eine Anleitung findet sich unter
|
||||
<A HREF="documentation.html#cygwin">Cygwin</A>.</DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: Wie erstelle ich VCDs?</DT>
|
||||
<DD>A: Verwende das <CODE>mencvcd</CODE>-Script im
|
||||
<CODE>TOOLS</CODE>-Unterverzeichnis. Damit können DVDs oder andere
|
||||
Filme ins VCD- oder SVCD-Format konvertiert oder sogar direkt auf eine
|
||||
CD gebrannt werden.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Wie kann ich zwei Videodateien aneinanderhä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ändige Antworten. Das
|
||||
Aneinanderhängen ist ein sehr komplexes Thema, und dein (Mis-)Erfolg
|
||||
hängt sehr von der Art deiner aneinanderzuhängenden Dateien
|
||||
ab. MPEGs lassen sich noch relativ einfach aneinanderhängen. Für
|
||||
AVIs gibt es zwei Tools, die das eventuell hinkriegen kö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ösung und
|
||||
Codec identisch sind, dann kannst du eventuell auch MEncoder
|
||||
dafür benutzen:<BR>
|
||||
<CODE>cat file1 file2 > file3</CODE><BR>
|
||||
<CODE>mencoder -ovc copy -oac copy -o out.avi
|
||||
-forceidx file3.avi</CODE></DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Mein Tuner funktioniert. Ich höre Ton und sehe Video mit
|
||||
MPlayer, aber MEncoder nimmt keinen Ton auf!</DT>
|
||||
<DD>A: TV-Audioaufnahme für Linux ist momentan nicht implementiert.
|
||||
Wir arbeiten daran. Es läuft momentan nur auf BSD.</DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: MEncoder segfaultet beim Start!</DT>
|
||||
<DD>A: Besorg dir neue Versionen von DivX4Linux/XviD/etc.</DD>
|
||||
<DD> </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> </DD>
|
||||
|
||||
<DT>Q: Ich versuche, mit 2GB+-Dateien auf einem VFAT-Dateisystem zu
|
||||
arbeiten. Geht das?</DT>
|
||||
<DD>A: Nein, VFAT unterstützt keine Dateien, welche grösser
|
||||
als 2Gb sind.</DD>
|
||||
<DD> </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
|
||||
überprüfen, ob libmp3lame korrekt installiert wurde.</DD>
|
||||
<DD> </DD>
|
||||
|
||||
<DT>Q: Wie kann ich MPlayer für eine bestimmte Datei Optionen
|
||||
beibringen, ohne sie jeweils auf der Kommandozeile angeben zu mü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ßt, und leg diese Datei nach <CODE>~/.mplayer</CODE> oder in
|
||||
das gleiche Verzeichnis wie der Film selber.</DD>
|
||||
|
||||
</DL>
|
||||
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
|
@ -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ützte Formate</A></H2>
|
||||
|
||||
<P>Es ist wichtig, einen hä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ä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ür <B>Video-Codecs</B> sind: MPEG1, MPEG2, DivX, Indeo5,
|
||||
3ivx.<BR> Beispiele fü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ö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ötigen Felder, die die Video-
|
||||
und Audio-Streams beschreiben). Oder du könntest ein MPEG1-Video in ein
|
||||
.AVI geben. <A HREF="http://ffmpeg.sourceforge.net">ffmpeg</A> und <A
|
||||
HREF="encoding.html">MEncoder</A> kö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ä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ätzlicher Unterstützung für Untertitel oder
|
||||
nicht-MPEG-(AC3)-Audio. Es enthä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ä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ügen kannst
|
||||
und dieses trotzdem vollständig funktionsfähig bleibt.</P>
|
||||
|
||||
<P>Ein wichtiges Feature von MPGs ist, dass sie ein Feld besitzen, das das
|
||||
Breiten-/Höhenverhältnis des Video-Streams angibt. SVCDs haben zum
|
||||
Beispiel Video mit einer Auflö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ährend des Encodierens skaliert werden
|
||||
mü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ächlich für
|
||||
DivX und DivX4 Videos verwendet wird. Es hat einige bekannte Nachteile, und
|
||||
ihm fehlen ein paar wichtige Features (zum Beispiel Streaming). Es
|
||||
unterstützt einen Videostream und 0 bis 99 Audiostreams. Die Dateien
|
||||
können bis zu 2 GB groß sein. Es existiert eine Erweiterung
|
||||
für größere Dateien, genannt <B>OpenDMS</B>. Microsoft
|
||||
tät von der Verwendung stark ab und propergiert ASF/WMV. Als ob das
|
||||
irgendwen kratzen wü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ützt die Wiedergabe solcher Dateien. Eine Spulfunktion ist auch
|
||||
implementiert, jedoch wird diese start von schlecht konvertierten Dateien mit
|
||||
verwirrenden Headers gestört. Leider schreibt der einzige Encodierer, der
|
||||
fähig ist, solche Dateien zu erzeugen (NanDub), solch problematischen
|
||||
Header.</P>
|
||||
|
||||
<P><B>Hinweis:</B> DV-Kameras können Raw-DV-Streams erzeugen, welche von
|
||||
DV-Aufnahmetools in zwei unterschiedliche Typen von AVI-Dateien konvertiert
|
||||
werden. Die AVI-Datei enthält dabei entweder separate Audio- und
|
||||
Video-Streams, die MPlayer wiedergeben kann, oder den
|
||||
unveränderten DV-Stream. An dessen Unterstü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 ü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ühren kann (evtl. erst beim Vor-/Zurü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ützt zwei Arten des timings fü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ützendem Encoder erstellt wurden,
|
||||
fü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ützt wird. Das Dateiformat macht es
|
||||
möglich, VBR-Audio zu verwendenm, aber die meinsten Player erwarten CBR-
|
||||
Audio, weswegen VBR-Audio nicht funktioniert. VBR ist ungewö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öffentlicht und patentiert :). Natürlich sind sie unterschiedlich
|
||||
und besitzten überhaupt keine Gemeinsamkeiten (es ist nur ein weiteres
|
||||
Spiel mit den Gesetzen). MPlayer unterstü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ö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ür
|
||||
MPEG4 ausgewä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öhlich VIVO-Dateiformate. Der
|
||||
grösste Nachteil des Formates ist, dass es keinen Index-Block besitzt,
|
||||
auch keine fixe Paketgröß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ä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äucliches Dateiformat für
|
||||
kurze Animationen. MPlayer demuxt und decodiert FLI-Filme und ist sogar
|
||||
fähig, in ihnen vor- und zurückzuspulen (nü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ü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üzt Keyframes). Hier ist die Liste
|
||||
der unterstü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ö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ötigt dazu
|
||||
installierte <CODE>libogg-</CODE> und <CODE>libvorbis-</CODE>Bibliotheken vor
|
||||
der Kompilierung von MPlayer, um sie wiedergeben zu kö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ötigt.)</P>
|
||||
|
||||
|
||||
<H4><A NAME="pva">2.1.1.14 PVA-Dateien</A></H4>
|
||||
|
||||
<P>PVA ist MPEG-ä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ö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ür Grafiken
|
||||
im Web. Es gibt zwei Versionen der GIF-Spezifikationen, GIF87a und GIF89a.
|
||||
Der größte Unterschied liegt darin, dass GIF89a Animationen
|
||||
unterstützt. MPlayer unterstü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önnen solche
|
||||
GIFs länger angezeigt werden.)</P>
|
||||
|
||||
<P>Momentan unterstützt MPlayer nicht das Spulen in GIF-Dateien. Die
|
||||
einzelnen Bilder in GIF-Dateien haben nicht zwangslä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öß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ö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öst werden, ohne die
|
||||
Unterstützung fü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önnte dir in diesen Fä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ö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ählen gehö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 übergeben werden kö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ü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ür
|
||||
<A HREF="http://www.xmms.org/plugins_input.html">XMMS-Inputplugins</A>.</P>
|
||||
|
||||
<P>Um dieses Feature benutzen zu können, brauchst du XMMS und musst
|
||||
MPlayer mit <CODE>./configure --enable-xmms</CODE> compilieren. Funktioniert
|
||||
das nicht, dann musst du eventuell die Pfade für die XMMS-Plugings und die
|
||||
XMMS-Bibliotheken explizit mit <CODE>--with-xmmsplugindir</CODE> und
|
||||
<CODE>--withxmmslibdir</CODE> angeben.</P>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
|
@ -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ä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ält
|
||||
zur Zeit diese Treiber:</P>
|
||||
|
||||
<DL>
|
||||
<DT>oss</DT>
|
||||
<DD>OSS (ioctl)-Treiber (unterstützt das Durchreichen von AC3)</DD>
|
||||
|
||||
<DT>sdl</DT>
|
||||
<DD>SDL-Treiber (untertstützt Sound-Dä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ützt das Durchreichen von AC3)</DD>
|
||||
|
||||
<DT>sun</DT>
|
||||
<DD>SUN Audiotreiber (<CODE>/dev/audio</CODE>) für BSD und Solaris8</DD>
|
||||
|
||||
<DT>arts</DT>
|
||||
<DD>ARTS-Treiber (hauptsächlich für KDE-Benutzer)</DD>
|
||||
|
||||
<DT>esd</DT>
|
||||
<DD>ESD-Treiber (hauptsächlich für GNOME-Benutzer)</DD>
|
||||
</DL>
|
||||
|
||||
<P>Linux-Soundkartentreiber haben Probleme mit der Kompatibilität.
|
||||
MPlayer benutzt einen in <EM>vernünftig</EM> implementierten Treibern
|
||||
eingebauten Mechanismus, um die Audio-/Video-Synchronisation korrekt
|
||||
beizubehalten. Leider sind einige Treiberautoren nicht sonderlich gründlich
|
||||
bei der Implementation dieses Mechanismusses, da er nicht benö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ü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ö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ö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ögerungen oder irgendetwas anderes ungewöhliches hörst,
|
||||
versuche mal <CODE>-ao sdl</CODE> (HINWEIS: die SDL-Bibliotheken und das
|
||||
dazugehörige Devel-Paket müssen installiert sein). Der SDL-
|
||||
Audiotreiber hilft in vielen Fällen und unterstü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ü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äusche beim Abspielen vom CD-ROM-Laufwerk zu
|
||||
hö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ä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ö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ät, Performance und Featuren überlegen. Ledier werden
|
||||
einige Soundkarten dagegen nur von OSS-Treibern von
|
||||
<A HREF="http://www.opensound.com/">4Front Technologies</A> unterstützt.
|
||||
Sie unterstü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ä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&release_id=59602">via82cxxx_audio</A></TD>
|
||||
<TD>snd-via82xx</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
<TD>4-48 kHz oderr nur 48 kHz, abhängig vom Chipsatz</TD>
|
||||
<TD> </TD>
|
||||
<TD> </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ü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> </TD>
|
||||
<TD> </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> </TD>
|
||||
<TD> </TD>
|
||||
<TD>48</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
</TR>
|
||||
|
||||
<TR>
|
||||
<TD><B>GUS PnP</B></TD>
|
||||
<TD>keine</TD>
|
||||
<TD>OK</TD>
|
||||
<TD>OK</TD>
|
||||
<TD> </TD>
|
||||
<TD>48</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
</TR>
|
||||
|
||||
<TR>
|
||||
<TD><B>Gravis UltraSound ACE</B></TD>
|
||||
<TD>nicht OK</TD>
|
||||
<TD>OK</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
<TD>44</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
</TR>
|
||||
|
||||
<TR>
|
||||
<TD><B>Gravis UltraSound MAX</B></TD>
|
||||
<TD>OK</TD>
|
||||
<TD>OK (?)</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
<TD>48</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
</TR>
|
||||
|
||||
<TR>
|
||||
<TD><B>ESS 688</B></TD>
|
||||
<TD>OK</TD>
|
||||
<TD>OK (?)</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
<TD>48</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
</TR>
|
||||
|
||||
<TR>
|
||||
<TD><B>C-Media-Karten (welche genau?)</B></TD>
|
||||
<TD>nicht OK (zischt) (?)</TD>
|
||||
<TD>OK</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
<TD>?</TD>
|
||||
<TD> </TD>
|
||||
<TD> </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> </TD>
|
||||
<TD> </TD>
|
||||
<TD>?</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
</TR>
|
||||
|
||||
<TR>
|
||||
<TD><B>Karten mit envy24-Chips (wie z.B. Terratec EWS88MT)</B></TD>
|
||||
<TD>?</TD>
|
||||
<TD>?</TD>
|
||||
<TD>OK</TD>
|
||||
<TD> </TD>
|
||||
<TD>?</TD>
|
||||
<TD> </TD>
|
||||
<TD> </TD>
|
||||
</TR>
|
||||
|
||||
<TR>
|
||||
<TD><B>PC-Lautsprecher oder DAC</B></TD>
|
||||
<TD>OK</TD>
|
||||
<TD>none</TD>
|
||||
<TD> </TD>
|
||||
<TD><A HREF="http://www.geocities.com/stssppnn/pcsp.html">OSS-Treiber fü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ät zugreifen können.</P>
|
||||
|
||||
<P>Rü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öst.
|
||||
Audiofilter werden benutzt, um die Parameter der Daten zu ä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ügen, die nicht
|
||||
automatisch eingefügt werden. Diese Filter werden in der Reihenfolge
|
||||
abgearbeitet, wie sie angegeben wurden.</P>
|
||||
|
||||
<P>Beispiele:<BR>
|
||||
<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ä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önnen:</P>
|
||||
|
||||
<P> <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 ü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ügen sind und welche Geschwindigkeits-/Genauigkeitsoptimierungen
|
||||
sie verwenden:
|
||||
<DL>
|
||||
<DT><CODE>0</CODE></DT>
|
||||
<DD>Benutzt automatisches Einfügen und optimiert in Abhängigkeit
|
||||
der CPU-Geschwindigkeit.</DD>
|
||||
<DT><CODE>1</CODE></DT>
|
||||
<DD>Benutzt automatisches Einfügen und optimiert für die
|
||||
höchstmögliche Geschwindigkeit.<BR>
|
||||
<EM>Warnung:</EM> Einige
|
||||
Features der Audiofilter werden kommentarlos deaktiviert, und die
|
||||
Soundqualität könnte niedriger sein als erwartet.</DD>
|
||||
<DT><CODE>2</CODE></DT>
|
||||
<DD>Benutzt automatisches Einfügen der Filter und optimiert für
|
||||
Qualität.</DD>
|
||||
<DT><CODE>3</CODE></DT>
|
||||
<DD>Fü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ügt automatisch Filter so wie bei 0 hinzu, benutzt aber
|
||||
Fließkommaarithmetik, wo dies möglich ist.</DD>
|
||||
<DT><CODE>5</CODE></DT>
|
||||
<DD>Fügt automatisch Filter so wie bei 1 hinzu, benutzt aber
|
||||
Fließkommaarithmetik, wo dies möglich ist.</DD>
|
||||
<DT><CODE>6</CODE></DT>
|
||||
<DD>Fügt automatisch Filter so wie bei 2 hinzu, benutzt aber
|
||||
Fließkommaarithmetik, wo dies möglich ist.</DD>
|
||||
<DT><CODE>7</CODE></DT>
|
||||
<DD>Fügt keine Filter automatisch hinzu, benutzt aber
|
||||
Fließkommaarithmetik, wo dies möglich ist.</DD>
|
||||
</DL>
|
||||
</DD>
|
||||
|
||||
<DT><CODE>list</CODE></DT>
|
||||
<DD>Dies ist ein Synonym fü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ü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äle, die du von deiner
|
||||
Soundkarte ausgegeben haben möchtest. Sie beeinflusst auch die Anzahl
|
||||
der Kanäle, die
|
||||
vom Quellstream decodiert werden. Wenn der Stream weniger als die hiermit
|
||||
geforderte Anzahl Kanäle enthält, so werden automatisch
|
||||
Filter eingefü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ützt.
|
||||
Wenn die Samplefrequenz deiner Soundkarte anders ist als die des aktuellen
|
||||
Quellstreams, so wird der resample-Filter (siehe unten) automatisch
|
||||
eingefü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ü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ützt vollständig Up-/Downsampling mit dem
|
||||
resample-Filter. Dieser Filter kann benutzt werden, wenn du eine Soundkarte
|
||||
hast, die nur eine feste Frequenz unterstützt, oder die nur maximal
|
||||
44.1kHz unterstützt. Dieser Filter wird automatisch aktiviert, wenn er
|
||||
benötigt wird. Er kann aber auch explizit auf der Kommandozeile aktiviert
|
||||
werden. Er kennt drei Optionen:</P>
|
||||
|
||||
<DL>
|
||||
<DT><CODE>srate <8000-192000></CODE></DT>
|
||||
<DD>wird benutzt, um die Ausgabesmaplefrequenz in Hz anzugeben. Der
|
||||
gü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ä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äßig aktiviert.</DD>
|
||||
|
||||
<DT><CODE>type <0-2></CODE><DT>
|
||||
<DD>ist ein optional anzugebender Integer zwischen <CODE>0</CODE> und
|
||||
<CODE>2</CODE>, der den zu benutzenden Resamplealgorithmus auswählt.
|
||||
Hier wählt <CODE>0</CODE> lineare Interpolation und <CODE>1</CODE>
|
||||
mehrphasige Filterbänke mit Ganzahlarithmetik. <CODE>2</CODE>
|
||||
wählt mehrphasige Filterbänke mit Fließkommaarithmetik.
|
||||
Lineare Interpolation ist sehr schnell, liefert dafür aber auch
|
||||
schlechte Qualität, vor allem, wenn sie benutzt wird, um die
|
||||
Samplerate zu erhöhen. Die beste Qualität liefert <CODE>2</CODE>.
|
||||
Dafür benötigt sie aber auch die meiste CPU-Zeit.</DD>
|
||||
</DL>
|
||||
|
||||
<P>Beispiele:<BR>
|
||||
<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 Ändern der Anzahl der Kanäle</A>
|
||||
</H4>
|
||||
|
||||
<P>Der <CODE>channels</CODE>-Filter kann benutzt werden, um Kanäle
|
||||
hinzuzufügen oder zu entfernen. Er kann auch benutzt werden, um
|
||||
Kanäle umzuleiten oder sie zu kopieren. Er wird automatisch aktiviert,
|
||||
falls die Anzahl der Kanäle bei Eingang und Ausgang der Audiofilterschicht
|
||||
unterschiedlich ist, oder wenn ein anderer Filter diesen Filter benötigt.
|
||||
Wenn er nicht gebraucht wird, so entlädt sich dieser Filter automatisch.
|
||||
Die Anzahl der Parameter ist dynamisch:</P>
|
||||
|
||||
<DL>
|
||||
<DT><CODE>nch <1-6></CODE></DT>
|
||||
<DD>ist eine ganze Zahl zwischen <CODE>1</CODE> und <CODE>6</CODE>, die die
|
||||
Anzahl der Ausgabekanäle festlegt. Dieser Parameter wird
|
||||
benötigt. Wenn er weggelassen wird, dann erhält man einen
|
||||
Laufzeitfehler.</DD>
|
||||
|
||||
<DT><CODE>nr <1-6></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äle
|
||||
gefordert sind als Eingangskanäle existieren, so werden leere Kanäle
|
||||
erzeugt (bis auf's Mixen von Mono auf Stereo: hier wird der Monokanal auf beide
|
||||
Kanäle kopiert). Ist die Anzahl dagegen kleiner, so werden die
|
||||
überschüssigen Kanäle entfernt.</P>
|
||||
|
||||
<P>Beispiel 1:<BR>
|
||||
<CODE>mplayer -af channels=4:4:0:1:1:0:2:2:3:3 media.avi </CODE></P>
|
||||
|
||||
<P>Ändert die Anzahl der Kanäle auf 4 und legt vier Routen fest, die
|
||||
die Kanäle 0 und 1 vertauschen und die Kanäle 2 und 3 intakt lassen.
|
||||
Wenn die Quelldatei nur zwei Kanäle hat, so sind die Kanäle 2 und 3
|
||||
leise, aber 0 und 1 werden trotzdem vertauscht.</P>
|
||||
|
||||
<P>Beispiel 2:<BR>
|
||||
<CODE>mplayer -af channels=6:4:0:0:0:1:0:2:0:3 media.avi </CODE></P>
|
||||
|
||||
<P>Ändert die Anzahl der Kanäle auf 6 und gibt 4 Routen an, die Kanal
|
||||
0 auf Kanal 0 und 3 kopieren. Die Kanä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ötigt wird.</P>
|
||||
|
||||
<DL>
|
||||
<DT><CODE>bps <Nummer></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ötigt und führt zu einem Laufzeitfehler,
|
||||
wenn er weggelassen wird.</DD>
|
||||
|
||||
<DT><CODE>f <format></CODE></DT>
|
||||
<DD>ist ein Textstring, der das Sampleformat beschreibt. Der String besteht
|
||||
aus einem Mix der folgenden Schlüsselwö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ötigt und führt zu einem Laufzeitfehler,
|
||||
wenn er weggelassen wird.</DD>
|
||||
</DL>
|
||||
|
||||
<P>Beispiel:<BR>
|
||||
<CODE>mplayer -af format=4:float media.avi</CODE></P>
|
||||
|
||||
<P>setzt das Ausgabeformat auf 4 Bytes pro Sample Fließkommadaten.</P>
|
||||
|
||||
|
||||
<H4><A NAME="af_delay">2.3.2.3.4 Verzögerung</A></H4>
|
||||
|
||||
<P>Der <CODE>delay</CODE>-Filter verzögert den Sound auf dem Weg zum
|
||||
Lautsprecher, damit die verschiedenen Kanäle zur gleichen Zeit bei der
|
||||
Sitzposition ankommen. Dieser Filter ist nur dann nützlich, wenn du mehr
|
||||
als zwei Lautsprecher hast. Dieser Filter erhält eine variable Anzahl
|
||||
Parameter:</P>
|
||||
|
||||
<DL>
|
||||
<DT><CODE>d1:d2:d3...</CODE></DT>
|
||||
<DD>sind Fließkommazahlen, die die Verzögerung in ms für
|
||||
den jeweiligen Kanal angeben. Minimum ist 0ms, das Maximum 1000ms.</DD>
|
||||
</DL>
|
||||
|
||||
<P>Um die benötigte Verzögerung für die verschiedenen
|
||||
Kanä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ür den Subwoofer zu kompensieren, weil
|
||||
man den Unterschied eh nicht hö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ötigte Verzögerung wie folgt:<BR>
|
||||
d[i] = 1000*s[i]/342; i = 1...5 </LI>
|
||||
</OL>
|
||||
|
||||
<P>Beispiel:<BR>
|
||||
<CODE>mplayer -af delay=10.5:10.5:0:0:7:0 media.avi</CODE></P>
|
||||
|
||||
<P>verzögert die Kanäle vorne links und vorne rechts um 10.5ms,
|
||||
die beiden hinteren Kanäle um 0ms und den zentrierten Kanal um 7ms.</P>
|
||||
|
||||
|
||||
<H4><A NAME="af_volume">2.3.2.3.5 Lautstärkekontrolle mit Software</A>
|
||||
</H4>
|
||||
|
||||
<P>Lautstä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ällen ist es
|
||||
besser, beim Mixer deiner Soundkarte den PCM-Regler auf's Maximum zu setzen und
|
||||
diesen Filter wegzulassen. Ändere dann die Lautstärke mit dem
|
||||
Hauptregler des Mixers.
|
||||
Wenn deine Soundkarte einen digitalen PCM-Mixer anstelle eines analogen
|
||||
besitzt und du Verzerrungen hörst, dann benutze statt dessen den
|
||||
MASTER-Mixer.
|
||||
Wenn der Computer an einen externen Verstärker
|
||||
angeschlossen ist (was meistens der Fall ist), dann kann der Rauschpegel
|
||||
minimiert werden, indem der Hauptregler und der Lautstärkeregler des
|
||||
Verstärkers angepasst werden, bis das Hintergrundzischen verschwunden ist.
|
||||
Der Filter selber kennt zwei Parameter:</P>
|
||||
|
||||
<DL>
|
||||
<DT><CODE>v <-200 - +60></CODE></DT>
|
||||
<DD>ist eine Fließkommazahl zwischen <CODE>-200</CODE> und
|
||||
<CODE>+60</CODE> und gibt die Lautstärke in dB an. Der Standardlevel
|
||||
ist 0dB.</DD>
|
||||
|
||||
<DT><CODE>c</CODE></DT>
|
||||
<DD>ist ein Binärwert, der soft clipping an- oder ausschaltet.
|
||||
Soft clipping kann den Sound glä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öglichkeit benutzt werden.</DD>
|
||||
</DL>
|
||||
|
||||
<P>Beispiel:<BR>
|
||||
<CODE>mplayer -af volume=10.1:0 media.avi</CODE></P>
|
||||
|
||||
<P>verstärkt den Sound um 10.1dB und schneidet hart ab, wenn die
|
||||
Lautstärke zu hoch wird.</P>
|
||||
|
||||
<P>Dieser Filter besitzt noch ein zweites Feature: Er misst die maximale
|
||||
Lautstärke und gibt sie aus, wenn MPlayer beendet wird. Dieser Wert
|
||||
kann benutzt werden, um die Verstärkung in MEncoder so zu setzen, dass
|
||||
die Dynamikbandbreite vollstä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ängig vom wiederzugebenden
|
||||
Audiotyp funktioniert. Die Mittenfrequenzen der zehn Bä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ö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ßkommazahlen zwischen <CODE>-12</CODE> und
|
||||
<CODE>+12</CODE>, die die Verstärkung in dB des jeweiligen Bandes
|
||||
angeben.</DD>
|
||||
</DL>
|
||||
|
||||
<P>Beispiel:<BR>
|
||||
<CODE>mplayer -af equalizer=11:11:10:5:0:-12:0:5:12:12 media.avi</CODE></P>
|
||||
|
||||
<P>verstärkt den Sound in den oberen und unteren Frequenzbereichen und
|
||||
lö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äle beliebig zu
|
||||
mischen. Er ist grundlegend nur eine Kombination des Lautstärkefilters und
|
||||
des channels-Filters. Es gibt zwei Haupteinsatzgebiete für diesen
|
||||
Filter:</P>
|
||||
|
||||
<OL>
|
||||
<LI>Heruntermischen vieler Kanäle auf wenige, z.B. Stereo zu Mono.</LI>
|
||||
<LI>Verändern der "Breite" des zentrierten Kanals bei
|
||||
Sourround-Sound-Systemem.</LI>
|
||||
</OL>
|
||||
|
||||
<P>Dieser Filter ist nicht ganz leicht zu bedienen und benötigt viel
|
||||
Ausprobieren, bevor die gewünschten Ergebnisse erzielt werden. Die Anzahl
|
||||
der Parameter hängt von der Anzahl der Ausgabekanäle ab:</P>
|
||||
|
||||
<DL>
|
||||
<DT><CODE>nch <1-6></CODE></DT>
|
||||
<DD>ist eine ganze Zahl zwischen <CODE>1</CODE> und <CODE>6</CODE> und wird
|
||||
benutzt, um die Anzahl
|
||||
der Ausgabekanäle zu setzen. Dieser Parameter wird benötigt.
|
||||
Wenn er weggelassen wird, erhält man einen Laufzeitfehler.</DD>
|
||||
<DT><CODE>l00:l01:l02:..l10:l11:l12:...ln0:ln1:ln2:...</CODE></DT>
|
||||
<DD>sind Fließ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>
|
||||
<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>
|
||||
<CODE>mplayer -af pan=3:1:0:1:0.5:0.5 -channels 3
|
||||
media.avi</CODE></P>
|
||||
|
||||
<P>gibt drei Kanäle aus, lässt dabei Kanäle 0 und 1 intakt und
|
||||
mischt die Quellkanä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ügt dem Audiostream einen Sub-woofer-Kanal
|
||||
hinzu. Die dazu verwendeten Audiodaten sind der Durchschnitt der Kanä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ört. Dieser
|
||||
Filter bekommt zwei Parameter:</P>
|
||||
|
||||
<DL>
|
||||
<DT><CODE>fc <20-300></CODE></DT>
|
||||
<DD>ist eine optionale Fließkommazahl, die die Frequenz in Hz angibt,
|
||||
bei der Tiefpass abschneidet. Gültig sind Werte ziwschen
|
||||
<CODE>20</CODE> und <CODE>300</CODE>. Das beste Ergebnis erhälst du,
|
||||
wenn du die Frequenz so niedrig wie möglich setzt. Das wird das
|
||||
Stereo- und Surround-Sound-Erlebnis verbessern. Der Standardwert für
|
||||
die Frequenzgrenze liegt bei 60Hz.</DD>
|
||||
|
||||
<DT><CODE>ch <0-5></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älen
|
||||
wird auf <CODE>ch</CODE> erhöht, falls dies notwendig sein sollte.</DD>
|
||||
</DL>
|
||||
|
||||
<P>Beispiel:<BR>
|
||||
<CODE>mplayer -af sub=100:4 -channels 5 media.avi</CODE></P>
|
||||
|
||||
<P>fü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ür ein matrix
|
||||
encodiertes Format. Viele Dateien mit Zweikanalaudio enthalten tatsächlich
|
||||
matrix encodierten Surround-Sound. Um diesen Filter zu benutzen, brauchst du
|
||||
eine Soundkarte, die mindestens vier Kanäle unterstützt. Dieser
|
||||
Filter kennt einen Parameter:</P>
|
||||
|
||||
<DL>
|
||||
<DT><CODE>d <0-1000></CODE></DT>
|
||||
<DD>ist eine optionale Fließkommazahl zwischen <CODE>0</CODE> und
|
||||
<CODE>1000</CODE>, die die Verzögerung in ms für den hinteren
|
||||
Lautsprecher angibt. Die Verzögerung soltle wie folgt gewä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 <= d2 ist, und auf 15 + 5*(d1-d2), wenn
|
||||
d1 > d2 ist. Der Standardwert <CODE>d</CODE> ist 20ms.</DD>
|
||||
</DL>
|
||||
|
||||
<P>Beispiel:<BR>
|
||||
<CODE>mplayer -af surround=15 -channels 4 media.avi</CODE></P>
|
||||
|
||||
<P>decodiert Surround-Sound mit einer Verzögerung von 15ms fü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ützung für Audio-Plugins. Audio-
|
||||
Plugins können benutzt werden, um die Einstellungen der Audio-Daten zu
|
||||
ä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ötigt, um festzulegen, in welcher Reihenfolge die Plugins benutzt
|
||||
werden sollen. Beispiel:</P>
|
||||
|
||||
<P> <CODE>mplayer media.avi -aop list=resample,format</CODE></P>
|
||||
|
||||
<P>würde den Ton durch das Resampling-Plugin laufen lassen, gefolgt vom
|
||||
Format-Plugins.</P>
|
||||
|
||||
<P>Die Plugins können auch Schalter haben, welche ihr Verhalten
|
||||
ä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> <CODE>mplayer media.avi -aop
|
||||
list=resample,format:fout=44100:format=0x8</CODE></P>
|
||||
|
||||
<P>würde die Ausgabefrequenz des Resample-Plugins auf 44100Hz and das
|
||||
Ausgabeformat des Format-Plugins auf AFMT_U8 stellen.</P>
|
||||
|
||||
<P>Momentan kö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ützt vollstä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ötigt wird oder nicht erkennt MPlayer <B>automatisch</B>.
|
||||
Dieses Plugin hat einen Schalter, <CODE>fout</CODE>, welcher benutzt wird, um
|
||||
die gewünschte Ausgabefrequenz zu setzen. Der Standard ist 48kHz und wird
|
||||
in <Hz> angegeben.</P>
|
||||
|
||||
<P>Verwendung:<BR> <CODE>mplayer medium.avi -aop
|
||||
list=resample:fout=<erforderliche Frequenz in Hz, z.B. 44100></CODE></P>
|
||||
|
||||
<P>Hinweis: Die Ausgabefrequenz sollte nicht vom Standard-Wert hochskaliert
|
||||
werden. Die Skalierung führt dazu, dass der Audio- und Video-Stream in
|
||||
Zeitlupe wiedergegeben werden, und man erhält zusä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älen enthalten tatsächlich
|
||||
matrix Surround Sound. Um dieses Feature zu benutzen, brauchst du eine
|
||||
Soundkarte mit mindestens vier Kanälen.</P>
|
||||
|
||||
<P>Verwendung:<BR>
|
||||
<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ützt, kann dieses Plugin benutzt werden, um das Format in eines zu
|
||||
ä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ür erfahrene Anwender gedacht. Bedenke, dass dieses
|
||||
Plugin nur das Sampleformat und nicht die Samplefrequenz oder die Anzahl
|
||||
Kanäle ändert.</P>
|
||||
|
||||
<P>Verwendung:<BR>
|
||||
<CODE>mplayer medium.avi -aop
|
||||
list=format:format=<required output format></CODE></P>
|
||||
|
||||
|
||||
<H4><A NAME="delay">2.3.2.4.4 Verzögerung</A></H4>
|
||||
|
||||
<P>Dieses Plugin verzögert den Ton und ist als Beispiel gedacht, wie man
|
||||
neue Plugins schreibt. Es kann für nichts sinnvolles aus der
|
||||
Anwenderperspektive verwendet werden und ist hier nur aus Gründen der
|
||||
Vollständigkeit erwä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ä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ärkeregelung</A></H4>
|
||||
|
||||
<P>Dieses Plugin ist ein Software-Ersatz für die Lautstärkereglung
|
||||
und kann in Maschinen mit kaputtem Mixer-Device verwendet werden. Es kann auch
|
||||
verwendet werden, um die Ausgabelautstärke von MPlayer zu
|
||||
ändern, ohne die Einstellung der PCM-Lautstärke im Mixer zu
|
||||
ändern. Es gibt einen Schalter <CODE>volume</CODE>, welcher verwendet
|
||||
wird, um den anfänglichen Schallpegel festzulegen. Der anfängliche
|
||||
Schallpegel kann auf Werte zwischen 0 und 255 festgelegt werden (normal auf
|
||||
101, was 0db Verstärkung entspricht). Benutze dieses Plugin mit Vorsicht,
|
||||
da es den Signal/Rauschabstand verringern kann. In den meisten Fällen ist
|
||||
es das beste, den Regler für PCM auf das Maximum zu stellen,
|
||||
dieses Plugin nicht zu verwenden und die Lautstärke zu deinen Boxen mit
|
||||
der Master-Lautstärkeregelung zu kontrollieren. Wenn deine Soundkarte
|
||||
einen digitalen PCM-Mixer anstelle eines analogen verwendet und du Verzerrungen
|
||||
hörst, so verwende statt dessen den MASTER-Mixer. Wenn ein externer
|
||||
Verstärker mit dem Computer verbunden ist (was fast immer der Fall ist),
|
||||
kann der Geräuschepegel durch die Anpassung des Master-Stufe und der
|
||||
Lautstärkeknöpfe des Verstärkers minimiert werden, bis das
|
||||
Hintergrundrauschen verschwindet.</P>
|
||||
|
||||
<P>Verwendung:<BR>
|
||||
<CODE>mplayer media.avi -aop
|
||||
list=volume:volume=<0-255></CODE></P>
|
||||
|
||||
<P>Dieses Plugin besitzt auch einen Kompressor oder "soft-clipping"-
|
||||
Fä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öglichkeit in Betracht gezogen werden.</P>
|
||||
|
||||
<P>Verwendung:<BR>
|
||||
<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ö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ührt.</P>
|
||||
|
||||
<P>Verwendung:<BR>
|
||||
<CODE>mplayer media.avi -aop list=extrastereo</CODE><BR>
|
||||
<CODE>mplayer media.avi -aop list=extrastereo:mul=3.45</CODE></P>
|
||||
|
||||
<P>Der Koeffizient (<CODE>mul</CODE>) ist eine Fließkommazahl,
|
||||
welche standardmäßig auf 2.5 gestellt ist. Wenn man den Wert auf
|
||||
0.0 setzt, erhält man einen Mono-Ton (Durchschnitt beider Kanä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ärkenormalisierer</A></H4>
|
||||
|
||||
<P>Dieses Plugin maximiert die Lautstärke, ohne den Ton zu
|
||||
verzerren.</P>
|
||||
|
||||
<P>Verwendung:<BR>
|
||||
<CODE>mplayer media.avi -aop list=volnorm</CODE></P>
|
||||
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
|
@ -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ßen Streitereien und Beschimpfungen
|
||||
auf der <A HREF="http://mplayerhq.hu/pipermail/mplayer-users/">mplayer-users</A>
|
||||
Mailingliste fü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önnen, die auf den
|
||||
GCC 2.95.3 zurückzuführen waren. Beginnend mit RedHat Linux 7.0
|
||||
begann <B>Red Hat</B> damit, eine stark verä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ü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ü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 ü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übergehenden Problemen betroffen,
|
||||
die sich alle lö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ßen fü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&T-
|
||||
Assemblersyntax unterstü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ä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öst eine gereifter GCC 3.x all dieses
|
||||
Problem ein für alle mal. Wenn du wirklich mit dem GCC 2.96 compilieren
|
||||
mö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ötig wär. Lass
|
||||
dieses Thema bitte ruhen.</P>
|
||||
|
||||
<P>Wenn du Probleme mit dem GCC 2.96 hast, so kannst du Pakete fü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ür
|
||||
die Version 3.0.4 benutzen, die Red Hat für Red Hat Linux 7.2 und neuer
|
||||
anbietet. Eine weitere Möglichkeit besteht darin, Pakete fü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ären Pakete fü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ür MPlayer
|
||||
aus. Wenn du darüber hinaus Unterstützung für C++, Java
|
||||
oder andere Features des GCC benötigst, dann ist <CODE>gcc-
|
||||
XXX.tar.gz</CODE> besser fü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ötigt dafür ein
|
||||
spezielles Buildverzeichnis auß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ü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äre) Pakete</A></H2>
|
||||
|
||||
<P>Frü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äre Pakete bauen und
|
||||
verteilen.</P>
|
||||
|
||||
<P>Ein weiteres Hindernis für Binärpakete waren die bei der
|
||||
Compilierung automatisch erkannten Optimierungsmöglichkeiten seitens der
|
||||
CPU-Architektur (MMX, 3DNOW etc.). MPlayer unterstü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äßig deaktiviert, weil sie eine kleine negative
|
||||
Auswirkung auf die Geschwindigkeit mitbringt. Andererseits ist es mit ihr nun
|
||||
möglich, Binä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ällt die Tatsache, dass <A
|
||||
HREF="http://www.nvidia.com">nVidia</A> nur binäre Treiber für
|
||||
XFree86 zur Verfü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ängen: über die allgemein schlechte
|
||||
Qualität der Treiber, über Instabilitäten und über den
|
||||
schlechten Support der Endbenutzer durch nVidia. Einige Beispiele dafü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älle sind wiederkehrende Probleme. nVidia hat letztens Kontakt
|
||||
mit uns aufgenommen und behauptet, dass ihre Treiber keine Fehler enthielten,
|
||||
sondern dass die Instabilitäten von schlechten AGP-Chips verursacht
|
||||
würden, und dass sie keinerlei Fehlerberichte von Nutzern erhalten
|
||||
hä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öffentlichen. Wie dem auch
|
||||
sei - wenn du die binä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önnen, um dir zu helfen.</P>
|
||||
|
||||
|
||||
<H2><A NAME="barr">E.4 Joe Barr</A></H2>
|
||||
|
||||
<P>Joe Barr wurde dadurch berüchtigt, dass er einen mehr als schlechten
|
||||
<A HREF="http://www.linuxworld.com/site-stories/2001/1214.mplayer.html">
|
||||
Bericht über MPlayer</A> verö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ß auch damit, dass die
|
||||
MPlayer-Entwickler unfreundlich und die Dokumentation
|
||||
unvollständig seien. Entscheide selber, wie es damit steht. Er schreib
|
||||
weiter negativ über MPlayer in seinen
|
||||
<A HREF="http://www.linuxworld.com/site-stories/2001/1227.predictions.html">10
|
||||
Vorhersagungen zu Linux für 2002</A>. In einem folgenden
|
||||
<A HREF="http://www.linuxworld.com/site-stories/2002/0125.xine.html">Bericht
|
||||
über xine</A> hat er weiter versucht, Rivalität zu schühren.
|
||||
Ironischerweise zitiert er am Ende dieses Artikels seine Konversation mit
|
||||
Günter Bartsch, dem Author von xine, der die ganze Situation perfekt
|
||||
zusammengefasst hat:</P>
|
||||
|
||||
<BLOCKQUOTE>
|
||||
Er sagte auch noch, dass er von meiner Kolumne über MPlayer
|
||||
"ü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
|
||||
ü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">ü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ützer Arschlö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äßiger Besucher von
|
||||
Will Zachmanns Canopus-Forum bei Compuserve. Er war damals ein
|
||||
OS/2-Bfürworter (ich war damals ebenfalls ein OS/2-Fan).</P>
|
||||
|
||||
<P>Damals hat er ständig überreagiert, Leute beschimpft, und ich
|
||||
vermute, dass es fü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>
|
1704
DOCS/de/video.html
1704
DOCS/de/video.html
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue