# HG changeset patch # User diego # Date 1145347400 0 # Node ID d4b79bf291c1c5bafa1d998532f7cbe716b2d518 # Parent f6d9baeec8322b5a2256784992793c0920e67e3c A new German translation of the XML documentation is in the works. diff -r f6d9baeec832 -r d4b79bf291c1 DOCS/de/bugreports.html --- a/DOCS/de/bugreports.html Tue Apr 18 08:02:39 2006 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,307 +0,0 @@ - - - -
-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 alle -hier verlangten Informationen zur Verfügung stellen und den Anweisungen -dieses Dokumentes folgen musst, damit wir dir helfen können.
- -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 dieses kurze Dokument -lesen, um zu erfahren, wie der Code in MPlayer integriert werden kann. -Die Leute auf der -mplayer-dev-eng -Mailingliste können ansonsten bei Fragen helfen.
- -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 aktuellen CVS-Version -auch noch vorliegen. CVS-Anweisungen können am unteren Ende -dieser Seite oder im -README gefunden werden. Wenn dies nicht hilft, sollte in der -Liste der bekannten Fehler 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.
- -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).
- -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.
- -Ein exzellenter und gut geschriebener Führer, wie Fragen in -öffentlichen Foren gestellt werden sollen, ist How To Ask -Questions The Smart Way von Eric S. Raymond. Es gibt auch einen zweiten -Führer namens -How to Report -Bugs Effectively von -Simon Tatham. 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.
- -Tritt der mplayer-users Mailingliste bei:
- http://mplayerhq.hu/mailman/listinfo/mplayer-users
-und sende deinen Fehlerbericht an:
- mplayer-users@mplayerhq.hu
Die Sprache der Liste ist Englisch. Es wird gebeten, den Netiquette-Richtlinien zu folgen -und keine HTML-Mails 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 dieses gute Dokument. 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.
- -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
-FTP-Server hochlädst
-und sie vorher komprimierst (bitte mit gzip
oder
-bzip2
). 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.
uname -a
ls -l /lib/libc[.-]*
X -version
gcc -v
- ld -v
as --version
xdpyinfo | grep "depth of root"
cat /proc/cpuinfo
lspci -vv
- mitschicken (auf Linux-Systemen).configure
Wenn du Fehlermeldungen beim Aufruf von ./configure
bekommst
-oder einige Sachen nicht automatisch richtig erkannt werden, so lies
-configure.log
. 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).
config.h
config.mak
Gui/config.mak
libvo/config.mak
libao2/config.mak
Bitte füge die Ausgabe von MPlayer in Ausführlichkeits-Stufe 1 -bei, aber denk daran die Ausgabe nicht zu kürzen, 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:
- - mplayer -v [Optionen] [Dateiname]
-> mplayer.log 2>&1
Wenn das Problem nur bei einer oder einigen wenigen Dateien auftritt, dann -lade die Datei bitte auf - -ftp://mplayerhq.hu/MPlayer/incoming/
hoch. - -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:
- - dd if=deinedatei of=kleinedatei bs=1024k
-count=5
Das kopiert die ersten 5 MB von 'deinedatei' in die Datei
-'kleinedatei'. Nun versuche es nochmals mit dieser kleinen
-Datei. Wenn der Fehler immer noch auftritt, dann reicht es, die kleine Datei
-hochzuladen.
Sende NIE 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
-exakte URL aus.
Du musst MPlayer aus gdb
heraus aufrufen und uns
-die vollständige Ausgabe schicken. Wenn du einen core dump hast, dann
-kannst du auch aus der core
-Datei nützliche Informationen
-extrahieren. So geht's:
./configure --enable-debug=3
- make
gdb ./mplayer
run -v [options-to-mplayer]
-filename
bt
- disass $pc-32 $pc+32
- info all-registers
Bitte erzeuge die folgende Befehlsdatei (Command File):
- -disass $pc-32 $pc+32
- info all-registers
Dann führe einfach den folgenden Befehl auf der Konsole aus:
- - gdb mplayer --core=core -batch
---command=command_file > mplayer.bug
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.
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.
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...
Auszug aus der Linux-Dokumentation:
- -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:
- -Die Lesegeschwindigkeit eines IDE-CD-Laufwerkes kann mit hdparm
-oder einem Programm namens setcd
verringert werden. Das geht
-so:
hdparm -E <Geschwindigkeit>
-<CD-ROM-Device>
setcd -x <Geschwindigkeit>
-<CD-ROM-Device>
Du kannst auch folgendes probieren:
- - echo current_speed:4 >
-/proc/ide/[CDROM-Device]/settings
Aber dafür brauchst du Root-Privilegien. Der folgende Befehl -könnte ebenfalls helfen:
- - echo file_readahead:2000000 >
-/proc/ide/[CDROM-Device]/settings
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:
- - hdparm -d1 -a8 -u1 <CDROM-Device>
-
Dies aktiviert den DMA-Zugriff, Vorauslesen und IRQ-Unmasking
-(genauere Details dazu findest du in der hdparm
-Manpage)
Bitte schau dir "/proc/ide/[CDROM-Device]/settings
" an, um
-das CD-ROM feineinzustellen.
SCSI-Laufwerke kennen keine einheitliche Schnittstelle zum Setzen dieser -Werte (oder kennst du eine? Dann sag sie uns!) Es gibt ein Tool, das mit Plextor-SCSI-Laufwerken funktioniert.
- -FreeBSD:
- - Speed: cdcontrol [-f device] speed [speed]
-
DMA: sysctl hw.ata.atapi_dma=1
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:
- -mplayer dvd://<track> [-dvd-device <Gerät>]
Beispiel: mplayer dvd://1 -dvd-device /dev/hdc
Das Standard-DVD-Gerät ist /dev/dvd
. 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 -dvd-device
an.
-
MPlayer benutzt libdvdread
und libdvdcss
-für die DVD Entschlüsselung und Wiedergabe. Diese beiden Bibliotheken
-sind im libmpdvdkit2/
-Unterverzeichnis enthalten und müssen
-nicht separat installiert werden. Wir haben uns dazu entschlossen, da wir einen
-Fehler in der libdvdread
beheben mussten und einen Patch
-hinzufügt haben, welcher Caching-Support für gecrackte
-CSS-Keys für libdvdcss
ermöglicht. Dies führt
-zu einer Geschwindigkeitssteigerung, da MPlayer nicht vor jeder
-Wiedergabe die Verschlüsselung erneut knacken muss.
MPlayer kann jedoch auch die systemweiten libdvdread
-
-und libdvdcss
-Bibliotheken verwenden. Diese Lösung wird
-jedoch aus oben den oben genannten Gründen nicht empfohlen.
-Ausßerdem kann es zu Fehlern, Inkompatibilitäten zwischen den
-Bibliotheken und niedriger Geschwindigkeit führen.
An einer Unterstützung für DVD-Navigation via dvdnav
-wird gearbeitet. Sie ist jedoch noch nicht vollendet und wird momentan nicht
-gewartet. Wer weiß - vielleicht lässt sie sich sogar
-compilieren.
Nützlich, wenn du verschlüsselte VOBs von der Festplatte abspielen
-willst. Kompiliere und installiere libcss 0.0.1 (nicht neuer). Wenn
-MPlayer sie nicht findet, dann benutze die Option -csslib
-/pfad/zu/libcss.so
. 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.
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.
- -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 -Sektornummern 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.
- -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:
- -libcss
so
- sgemacht).libdvdread
- 0.9.x und libmpdvdkit2
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.Manchmal hat ein Benutzer keinen Zugriff auf das Device (z.B.
-/dev/dvd
). Deswegen haben die Autoren der libdvdread
-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.
libdvdread
akzeptiert sogar Mountpoints anstelle von
-Devicenamen. Dabei schaut sie in /proc/mounts
nach, um den
-tatsächlichen Devicenamen für den Sektorzugriff herauszufinden.
-Entwickelt wurde diees Verfahren für Solaris, da Solaris Devicenamen
-dynamisch vergibt.
Der Standardname für das DVD-Device ist /dev/dvd
. Sollte
-das bei dir anders sein, so erstelle einen symbolischen Link auf das richtige
-Device, oder gib es beim Starten mit der Option -dvd-device
-separat an.
-
-
Die Authentifizierung und Entschlüsselung der neuen
-DVD-Unterstützung wird durch eine gepatchte libdvdcss
-ermöglicht (siehe oben). Die Zugriffsmethoden können über die
-Umgebungsvariable DVDCSS_METHOD
gewählt werden. Gäultige
-Werte sind key
, disk
und title
.
Wird nichts angegeben, so versucht libdvdcss die folgenden Methoden -(Standardwerte: key, title-Request):
- -~/.mplayer/DVDKeys
-Verzeichnis
- gespeichert werden (das ist schnell ;).ioctl()
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.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 -Firmwareseite -gefunden werden. Solltest du dort keine Firmware für dein Laufwerk finden, -so kannst du mit dem - -region set tool den Gebietscode deines DVD-Laufwerks ändern (klappt -nur unter Linux). Warnung: Du kannst nur fünf mal den Gebietscode -ädnern.
- - -Abspielen von Standard Video-CDs:
- -mplayer vcd://<Tracknummer> [-cdrom-device
-<Gerät>]
Beispiele:
-mplayer vcd://2 -cdrom-device /dev/hdc
Das Standard-CD-Rom-Laufwerk ist /dev/cdrom
. Falls das bei dir
-nicht der Fall ist, erstelle einen symbolischen Link oder gib das richtige
-Gerät mit -cdrom-device
auf der Kommandozeile an.
Anmerkung: 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 -hilf uns, generische Unterstützung -für VCD auf SCSI-Laufwerken zu implementieren.
- -Bis dahin kannst du mit -readvcd -Daten von der VCD extrahieren und diese mit MPlayer abspielen.
- -Eine VCD besteht aus einem oder mehreren Spuren:
- -vcd://2
ausprobieren.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 (vcdfs/isofs-2.4.X.o
),
-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 nicht mit dem Standard-ISO9660-Treiber funktionieren! Benutze dabei
--vcd
. Alternativen für's Kopieren einer VCD sind der neue cdfs-Kerneltreiber (der
-nicht Teil des offiziellen Kernels ist), der CD-Sessions als Abbilder
-anzeigt, und cdrdao, ein
-Anwendung zum Bit-für-Bit-Grabben/Kopieren von CDs.
Siehe -Codec-Status-Seite -für die komplette, täglich generierte Liste. Eine Vielzahl von -Codecs kann von unserer Homepage runtergeladen werden. Du findest sie auf der -Codec-Seite.
- -Die wichtigsten Video-Codecs:
- -Wenn du einen Win32-Codec hast, der noch nicht aufgelistet und -unterstützt ist, dann lies Win32 -Codec-Importierungs-HOWTO und hilf uns, die Unterstützung -hinzuzufügen.
- - -Diese Sektion enthält Informationen über den DivX4- und -Divx5-Codec vom Project Mayo. 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.
- -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 abgeraten. 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.
- -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.
- -DivX4Linux arbeitet in zwei verschiedenen Modi:
- --vc odivx
-vc divx4
Der -vc odivx
-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 -vc divx4
-Modus. Für den RGB-Modus ist die
-Geschwindigkeit gleich und hängt am ehesten von deiner momentanen
-Farbtiefe ab.
Hinweis: Wenn der -vo-Treiber "direct rendering" unterstützt,
-ist -vc divx4
wahrscheinlich die schnellere oder sogar die
-schnellste Lösung.
Die binäre DivX4/5-Bilbiothek kann von
-avifile oder
-divx.com heruntergeladen werden.
-heruntergeladen werden. Entpacke ihn, starte ./install.sh
als
-root, und vergiss nicht, /usr/local/lib
deiner
-/etc/ld.so.conf
hinzuzufügen und ldconfig
-aufzurufen.
Besorge dir die CVS-Version der ALTEN OpenDivX-Kernbibliothek wie folgt:
- -cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot
- login
cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co
- divxcore
- 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 --
- 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 --
MPlayer findet DivX4/DivX5 automatisch, sofern es richtig installiert
-wurde. Compiliere also einfach wie sonst auch. Wenn configure
-die Bibliothek nicht findet, dann hast du DivX4/5 einfach nicht richtig
-installiert.
Das FFmpeg-Projekt enthält -ein Open-Source-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!
- -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.
- -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 nicht mit MPlayer -zusammen läuft. Um dies zu erreichen gibst du folgendes ein:
- -cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg
- login
cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg
- co ffmpeg
libavcodec
-Verzeichnis von den FFmpeg-Sourcen muss in's
- Hauptverzeichnis des MPlayer CVS-Baums verschoben/kopiert werden.
- Es sollte etwa so aussehen:
- main/libavcodec
Hinweis: Die MPlayer-Sourcen im CVS enthalten ein -libavcodec-Unterverzeichnis. Es enthält jedoch nicht den Quellcode -von libavcodec! Du musst - wie oben beschrieben - dir die CVS-Version von -FFmpeg besorgen.
- -Mit FFmpeg und meiner Matrox G400 kann ich sogar DivX-Filme in hoher -Auflösung auf meinem K6/2 500 ohne Framedrops betrachten.
- - -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.
- -MPlayer kann XAnims Codecs für das Decodieren verwenden. Um -diese zu aktivieren, solltest folgenden Anweisungen folgen:
- ---with-xanimlibdir
-Option, um configure zu
- sagen, wo es die XAnim-Codecs finden kann. Normalerweise werden diese in
- /usr/local/lib/xanim/mods
, /usr/lib/xanim/mods/
- und /usr/lib/xanim
gesucht. Weiterhin kannst du auch die
- Umgebungsvariable XANIM_MOD_DIR auf den Verzeichnisnamen
- der XAnim-Codecs setzen.vid_cvid.xa
, vid_h263.xa
,
- vid_iv50.xa
.XAnim ist die Videocodec-Familie xanim
. Du kannst also die
--vfm xanim
-Option verwenden, um MPlayer zu sagen, dass er
-sie, wenn möglich, verwenden soll.
Die getesteten Codecs beinhalten: Indeo 3.2, 4.1, 5.0, -CVID, 3ivX, h263.
- - -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 -vc
-ffh263
-Option aufrufen. Für v2.0-Dateien musst du die Win32-DLLs
-mit der Option -vc vivo
benutzen. Wenn du keine expliziten Angaben
-zum Codec auf der Kommandozeile machst, so wählt MPlayer automatisch den
-besten aus.
MPEG1 und MPEG2 werden von der eingebauten Multiplatform-Bibliothek -libmpeg2 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.
- - -Dies ist dein sehr alter und sehr schlechter Codec von Microsoft. In der
-Vergangenheit wurde es mit dem msvidc32.dll
Win32-Codec decodiert,
-aber nun haben wir einen Open-Source-Codec (von Mike Melanson) eingebaut.
MPlayer verwendet normalerweise seinen eigenen, Open-Source -multiplatformfähigen Cinepak-Decoder, der von Dr. Tim Ferguson geschrieben wurde. -Er unterstützt YUV-Ausgabe, was Hardwarescaling ermöglicht, wenn dies -vom Videoausgabetreiber unterstützt wird.
- - -MPlayer unterstützt die Dekodierung aller Versionen von -RealVideo:
- - 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 configure
-Script von
-MPlayer sollte die RealPlayer-Bibliotheken an der normalen Stelle der
-Vollinstallation finden. Falls nicht, kannst du configure
-über die Option --with-reallibdir
mitteilen, wo sie zu
-suchen/finden sind.
Hinweis: Momentan funktionieren die RealPlayer-Bibliotheken nur -mit Linux, FreeBSD, NetBSD und Cygwin auf der x86 oder der Alpha-Plattform. -
- - -XviD 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.
- -XviD ist momentan nur als CVS erhältlich. Hier sind die -Download- und Installations-Anweisungen:
- -cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login
cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co
- xvidcore
cd xvidcore/build/generic
Makefile.linux
deinen Bedürfnissen
- entsprechendmake -f Makefile.linux
encore2.h
und decore.h
vom
- Divx4linux-Paket und kopiere diese nach /usr/local/include/
.
- --with-xvidcore=/pfad/zu/libcore.a
.Sorenson 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:
- --vc svq1
respektive -vc ffsvq1
- benutzen. Manche Dateien funktionieren eventuell nur mit einem der beiden
- Decoder. Probier als bei problematischen Dateien beide Decoder aus.
- Der Decoder wurde von den
- xine-Autoren geschrieben.Anmerkung: Momentan wird nur die 32bit-Intel-Architektur -unterstützt.
- -$ ./configure --enable-qtx-codecs
/usr/lib/codecs
ist.Die wichtigsten Audiocodecs als erstes:
- -Dieser ist der standardmäße Dekoder für Dateien mit -AC3-Audio.
- -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.
- -Verwende die -channels
-Option um die Anzahl der
-Ausgabekanäle zu wählen. Verwende -channels 2
für
-Downmix auf Stereo. Für Downmix auf 4 Kanäle (links vorne, rechts
-vorne, links Surround und rechts Surround) verwende -channels 4
.
-In diesem Fall werden alle Center-Känale gleichmäßig den
-Frontkanälen beigemischt. -channels 6
gibt alle
-AC3-Kanäle wie Aufgezeichnet in der Reihenfolge links, rechts,
-links Surround, rechts Surround, Center und LFE aus.
Die Standardanzahl der Ausgabekanäle ist 2.
- -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).
- - -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 -ac hwac3
. 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.
libmad 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.
- -Um die Unterstützung zu aktivieren, verwende configure mit der Option
---enable-mad
.
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 -g.723-Audio und VIVO/2.0-Dateien Vivo-Siren-Audio. Beide werden -unterstützt.
- - -MPlayer unterstützt die Dekodierung fast aller -RealAudio-Versionen:
- -Wie die RealPlayer Libraries installiert werden können, wird in der -RealVideo-Sektion behandelt.
- - -QDesign-Audio (fourcc: QDMC, QDM2) findest du in -MOV/QT-Dateien. Beide Versionen dieses Codecs können mit den -QuickTime-Bibliotheken decodiert werden. Schau in der Sorenson-Video-Codec-Sektion für -Installationsanweisungen nach.
- -Qualcomm-Audiostreams (FourCC: Qclp) finden sich in MOV/QT-Dateien. -Sie können mit den Quicktime-Bibliotheken decidiert werden. -Installationsanweisungen findest du in der Sektion über den -Sorenson Videocodec.
- - -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:
- - UNKNOWN video codec: HFYU (0x55594648)
-
...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 System.ini
diese
-Information in solch einer Zeile:
VIDC.HFYU=huffyuv.dll
Also braucht man die Datei huffyuv.dll. Hinweis: die Audio-Codecs werden -durch das MSACM-Prefix angegeben:
- - msacm.l3acm=L3codeca.acm
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:
- - ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/
Anmerkung: 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".
- - -DirectShow ist die neuere Video-Programmierschnittstelle, welche noch -schlimmer als ihr Vorgänger ist. Den Namen der DLL herauszufinden ist bei -DirectShow schwieriger, weil...
- -system.ini
nicht mehr die benötigten Informationen
- enthält (stattdessen stehen diese in der Registry), und weilNeue Methode: mittels Microsoft GraphEdit (schnell)
- -graphedit.exe
.DirectShow Filters
auf.DisplayName
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.Filename
.
-Anmerkdung: Wenn es keinen Eintrag namens Filename
gibt
-und der DisplayName
-Eintrag etwas in der Art
-device:dmo
enthält, so handelt es sich um einen DMO-Codec.
Alte Methode: Atme tief durch und beginne mit dem Durchsuchen der -Registry...
- -regedit
Strg-f
, deaktiviere die ersten beiden
- Auswahlfelder und aktiviere das Dritte. Nun gib den fourcc des Codecs ein
- (z.B.: TM20).C:\WINDOWS\SYSTEM\TM20DEC.AX
).Hinweis: Wenn die Suche fehlschlägt, versuche alle Auswahlfelder -zu aktivieren. Du wirst möglicherweise falsche Ergebnisse finden, aber -vielleicht hast du auch Glück...
- -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:
- - ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/
-
[ Deutsch ] - [ Englisch ] - [ Ungarisch ] - [ Französisch ] - [ Polnisch ] - [ Italienisch ] - [ Chinesisch ]
- -Wenn du die Installation zum ersten Mal durchführst: Pass auf, dass du -alles von hier bis zum Ende der Installationsanleitung durchliest, und folge -den entsprechenden Links. Wenn du immer noch Fragen hast, kehre zum -Inhaltsverzeichnis zurück und suche nach dem Begriff, lies die FAQ oder versuche, mit Hilfe von grep die Dateien zu -durchsuchen.
- -Die Hauptregel dieser Dokumentation: Wenn es nicht dokumentiert ist, -existiert es nicht. Wenn nichts von einer Möglichkeit der -Audioencodierung von TV-Karten steht, kann man dies auch nicht tun. -Wenn du gut kombinieren kannst, dann ist das hier wirklich gut für dich. -Viel Glück. Du wirst es brauchen :) Ein weiterer guter Ratschlag ist -folgendes Zitat von Chris Phillips, der auf der -mplayer-users -Mail-Liste folgendes schrieb:
- -- Vor einiger Zeit habe ich gesagt, dass es einen Unterschied zwischen einem - Neuling und einem Idioten gibt. Egal, wieviel du von einer Sache wirklich - weißt (sei es Linux, Autos, Frauen :D), du solltest IMMER dazu - fähig sein, einen Schritt zurück zu machen und objektiv die Lage - zu betrachten. Andernfalls bist du meiner bescheidenen Meinung nach einfach - nur dumm. Eine Frau, mit der ich zusammen wohne, nahm einmal an, dass der - Staubsauger defekt war, nur weil er nichts mehr aufgesaugt hat. Sie hat - nie daran gedacht, den Staubbeutel zu wechseln, weil sie das nie vorher - gemacht hatte. Und das ist einfach nur doof und kein Fall von 'ich weiß - nicht, was ich tun soll'. Mit etwas nicht vertraut zu sein ist absolut - keine Entschuldigung für a) Faulheit und b) Unwissenheit. Es gibt so - viele Menschen, die das Wort "Fehler" sehen und dann einfach aufhören - zu denken. Tatsächlich scheinen nur wenige auch die Wörter - hinter dem Punkt zu lesen. -- -
MPlayer ist ein Video-Player für LINUX (er läuft auch auf -vielen anderen Unix-Systemen und nicht-x86-CPUs, siehe Sektion 6). Er spielt die meisten MPEG, VOB, AVI, OGG/OGM, -VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, NuppelVideo, yuv4mpeg, FILM, RoQ und -PVA-Dateien ab. Dabei kommen viele eingebaute Codecs, Xanim-, RealPlayer und -Win32-DLL-Codecs zum Einsatz. Du kannst dir VideoCDs, SVCDs, -DVDs, 3ivx-, RealMedia- und auch DivX-Filme sehen -(und dafür wird nicht einmal die avifile-Bibliotek benötigt). Ein -weiteres großes Feature von MPlayer ist die große Bandbreite -unterstützter Ausgabetreiber. MPlayer funktioniert mit X11, Xv, -DGA, OpenGL, SVGAlib, fbdev, AAlib und DirectFB. Du kannst aber auch GGI und -SDL (und dadurch alle deren Treiber) und einige grafikkartenspezifische -Low-Level-Treiber verwenden - z.B. für Matrox, 3Dfx und Radeon, Mach64 -oder Permedia3. Die meinsten von ihnen unterstützen Software- oder -Hardware-Skalierung, sodass du deine Videos im Vollbild genießen kannst. -MPlayer unterstützt auch die Wiedergabe mit einigen -Hardware-MPEG-Decoder-Karten wie der DVB -und der DXR3/Hollywood+! Und was meinst du -zu den schönen, großen, antialiasten und schattierten Untertiteln -(10 unterstützte Typen) mit europäischen (ISO 8859-1,2, -Ungarisch, Englisch, Tschechisch, usw.), kyrillischen und koreanischen -Schriften? Und das onscreen display (OSD)?
- -Der Player spielt felsenfest beschädigte MPEG-Dateien (nützlich
-für einige VCDs) und schlechte AVI-Dateien, welche auch mit dem bekannten
-Windows Media Player nicht mehr abspielbar sind. Auch AVI-Dateien ohne Index
-sind abspielbar, und du kannst den Index entweder temporär mit der
--idx
-Option oder permanent mit MEncoder wiederherstellen.
-Beides ermöglicht wieder die Suchfunktion! Du siehst also, Stabilität
-und Qualität sind die wichtigsten Dinge für mich, aber die
-Geschwindigkeit ist genauso beeindruckend.
MEncoder (der Filme encodierende Partner von MPlayer) ist ein -einfacher Filmencodierer, der dazu bestimmt ist, von MPlayer abspielbare -Filme (AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET/PVA) in andere -von MPlayer abspielbare Formate umzuwandeln (siehe unten). Er kann -verschiedene Codecs zum Encodieren benutzen (DivX4 (mit 1 oder 2 -Durchgängen), libavcodec, PCM/MP3/VBR MP3-Audio). -Er verfügt weiterhin über ein mächtiges Pluginsystem für -die Manipulation des Videos.
- --mc 0
deaktiviert werden)-ofps
-Option (kann z.B. dazu
- benutzt werden, 29.95fps-VOBs in 24fps-AVIs umzuwandeln)MPlayer und MEncoder können unter den Bedingungen der -GNU General Public License Version 2 vertrieben werden.
- - -Es begann vor einem Jahr... Ich (A'rpi) hatte eine eine Menge von Playern -unter Linux ausprobiert (mtv, xmps, dvdview, livid/oms, videolan, xine, xanim, -avifile, xmmp), aber sie hatten alle ihre Probleme. Meist mit speziellen -Dateien oder mit der Audio-Video-Synchronisation. Die meisten waren -unfähig, alle drei - MPEG1, MPEG2 und AVI (DivX) - abzuspielen. Einige -Player hatten auch Probleme mit der Bildqualität und der Geschwindkeit. So -beschloss ich, einen Player zu schreiben/zu modifizieren...
- -In diesem Kapitel versuche ich, dich auf dem Weg der Konfiguration und -Compilierung von MPlayer zu begleiten. Es ist nicht einfach, aber auch -nicht unnötig schwer. Wenn dir ein unterschiedliches Verhalten als hier -beschrieben auffällt, versuche bitte diese Dokumentation zu durchsuchen, -und du wirst eine Antwort erhalten. Wenn du Links siehst, folge ihnen bitte und -lies, was sie enthalten. Es wird einige Zeit benötigen, aber es zahlt sich -aus.
- -Du brauchst ein ziemlich aktuelles System. Unter Linux sind 2.4.x-Kernel -empfohlen.
- -libvorbis
benötigt. Es sollten, falls
- vorhanden, deb/rpm-Pakete werden oder diese
- Sourcen kompiliert werden (dies ist eine täglich erneuerter
- tarball des Vorbis CVS).Es gibt allgemein gesprochen zwei Arten von Grafikkarten. Die eine Art -(die neueren Karten) besitzen Hardware-Skalierung und YUV-Beschleunigung, -die anderen nicht.
- -YUV-Karten können das Bild anzeigen und auf jede beliebige -Größe skalieren, die noch in ihren Speicher passt. Dabei kommt es zu -sehr sehr geringer CPU-Beslastung (Zoomen erhöht sie nicht!), -weswegen Abspielen im Vollbild gut aussieht und sehr schnell ist.
- -Vollbild kann durch Zoomen durch eine Softwareskalierung (benutze die
-Option -zoom
oder -vf scale
) erreicht werden. Aber
-sei gewarnt: Es ist langsam! Eventuell reicht es auch schon aus, in
-einen kleineren Videomodus zu wechseln, z.B. zu 352x288. Wenn keine
-YUV-Beschleunigung zur Verfügung steht, ist diese letztgenannte Methode zu
-empfehlen. Bei MPlayer wird dieses mit der -vm
-Option
-angeschaltet und funktioniert mit folgenden Karten:
Einige Karten:
- -clgenfb
-Kerneltreiber aktiviert werden, obwohl er bei
- mir nur im 8bpp-Modus funktioniert hat und somit für
- Videowiedergabe unbenutzbar ist. Ich musste vor der Compilierung
- den Sourcen des clgenfb
die ID des 7548-Chips
- hinzufügen.-bpp 8
, ist aber ziemlich langsam.Nun kompiliere MPlayer:
- -- ./configure - make - make install -- -
Ab diesem Zeitpunkt ist MPlayer zur Benutzung bereit. Das Verzeichnis
-$PREFIX/etc/mplayer
enthält die Datei
-codecs.conf
, welche benutzt wird, um dem Programm alle Codecs und
-deren unterstütze Features mitzuteilen. Diese Datei sollte zusammen mit
-dem Hauptprogramm immer aktuell gehalten werden!
Du solltest
-außerdem überprüfen, ob eine codecs.conf
deinem
-Home-Verzeichnis (~/.mplayer/codecs.conf
) von einer alten
-MPlayer-Version vorhanden ist. Diese solltest du unbedingt
-löschen!
Debian-Benutzer können ein .deb
-Paket für sich
-compilieren, was sehr einfach ist. Du musst bloß fakeroot
-debian/rules binary
in MPlayer's Sourceverzeichnis
-ausführen. Genauere Anleitungen können in der Debian-Sektion gefunden werden.
Schau dir immer die Ausgabe von ./configure
und die
-configure.log
-Datei an. Beide enthalten Infos darüber, welche
-Features eincompiliert werden, und welche nicht. Du kannst dir auch die
-Dateien config.h
und config.mak
ansehen.
-Wenn einige Bibliotheken installiert sind, diese aber nicht von
-./configure
erkannt werden, dann solltest du überprüfen,
-ob auch die dazugehärigen Header-Dateien installiert sind (welche sich
-meist in -dev-Paketen befinden), und ob die Versionsnummern
-übereinstimmen. Das configure.log
sagt dir normalerweise, was
-fehlt.
Auch wenn sie nicht zwingend erforderlich sind, solltest du doch Schriften -installieren, um das OSD und Untertitel benutzen zu können. Die empfohlene -Methode ist, eine TrueType-Schrift zu installieren und MPlayer anzuweisen, -diese zu benutzen. Wie das funktioniert, kannst du in der Sektion über Untertitel und das OSDnachlesen.
- - -Das GUI basiert auf GTK 1.2.x (nicht das ganze GUI benutzt GTK, sondern nur
-die Dialoge). Die Skins sind als PNG-Grafiken gespeichern, so dass du also auch
-gtk und die libpng (und deren devel-Pakete) installieren musst. Du kannst das
-GUI durch den Parameter --enable-gui
bei ./configure
-anschalten. Um MPlayer im GUI-Modus zu betreiben, kannst du entweder
gui=yes
in deine Config-File eintragen oderln -s $PREFIX/bin/mplayer $PREFIX/bin/gmplayer
- ausführen und gmplayer
aufrufen.Im Moment kannst du die -gui
-Kommandozeilenoption nicht
-verwenden.
Da MPlayer keine Skins enthält, musst du dir welche
-herunterladen, wenn du das GUI verwenden willst. Schau dazu auf die Download-Seite. Diese
-sollten in das normale, systemweite Verzeichnis
-($PREFIX/share/mplayer/skins/
) oder nach
-$HOME/.mplayer/skins/
extrahiert werden. MPlayer sucht
-standardmäßig nach einem Verzeichnis namens default
,
-aber du kannst mit der Option -skin (neuer Skin)
oder dem Eintrag
-skin=(neuer Skin)
in der Konfigurationsdatei den Skin
-*/skins/(neuer Skin)
auswählen.
MPlayer kann Untertitel zu Filmen darstellen. Momentan werden folgende -Formate unterstützt:
- -MPlayer kann die oben aufgeführten Formate (bis auf die ersten drei) in -die folgenden Formate konvertieren, wenn du die jeweils dahinter angegebene -Option benutzt:
- --dumpmpsub
-dumpsrtsub
-dumpmicrodvdsub
-dumpjacosub
-dumpsami
Die Kommandozeilenoptionen unterscheidet sich leicht für die -unterschiedlichen Formate:
- -VobSub-Untertitel bestehen aus einer mehreren MB großen .SUB-Datei und
-optionalen .IDX- und/oder .IFO-Dateien.
-
-Benutzung: wenn du Dateien wie beispiel.sub
,
-beispiel.ifo
(optional) und beispiel.idx
hast, dann
-musst du die Optionen -vobsub beispiel [-vobsubid <id>]
-angeben (optional mit Pfadangabe natürlich). Die
--vobsubid
-Option funktioniert wie -sid
bei DVDs. Du
-kannst mit ihr zwischen Untertitel-Sprache wählen. Falls keine
--vobsubid
angegeben wird, versucht MPlayer, die mit
--slang
angegebene Sprache zu benutzen und zur Not die durch
-langidx
in der .IDX-Datei angegebene Sprache wählen. Wenn das
-ebenfalls fehlschlägt, werden keine Untertitel angezeigt.
beispiel.txt
hat, übergibt man einfach die
-Option -sub beispiel.txt
(natürlich optional mit
-Pfadname).
-
--subdelay <sec>
-subfps <rate>
-subpos <0 - 100>
Wenn du feststellst, dass bei Verwendung einer MicroDVD-Untertiteldatei die
-Verzögerung im Laufe der Zeit immer größer wird, dann liegt das
-wahrscheinlich daran, dass die Bildraten für den Film und die Untertitel
-unterschiedlich sind.
-
-Es sei gesagt, dass das MicroDVD-Format absolute Bildnummern verwendet, um
-anzugeben, wann Text anzuzeigen ist. Deswegen funktioniert die
--subfps
-Option mit diesem Format nicht. Da MPlayer
-natürlich nicht in der Lage ist, die richtige Bildrate zu erraten, musst
-du die Bildrate manuell konvertieren. Auf dem MPlayer-FTP-Server liegt
-im contrib
-Verzeichnis ein kleines Perl-Skript, das diese
-Konvertierung für dich vornehmen kann.
MPlayer wird versuchen, die Untertiteldatei zu erraten, wenn er einen Film -abspielt. Wenn, wie das meistens der Fall ist, der Film und die Untertiteldatei -den gleichen Namen haben und am gleichen Ort liegen, dann musst du nicht die -Untertiteloption benutzen. Spiel einfach den Film ab, und MPlayer wird -automatisch die Untertitel finden.
- -Für DVD Untertitel lies die DVD-Sektion.
- -MPlayer hat ein neues Untertitelformat eingeführt, das -MPsub genannt wird. Es wurde von Gabucino entwickelt. Das -Haupt-Feature ist, dass es dynamische Zeitabhängigkeiten benutzt -(obwohl es auch einen Frame-basierende Modus besitzt). Ein Beispiel (aus mpsub.sub):
- -
-# erste Nummer : warte so lange nach dem Verschwinden des vorherigen
-Untertitels
-# zweite Nummer : zeige den momentanen Untertitel für so viele
-Sekunden
-
-15 3
-A long time ago...
-
-0 3
-in a galaxy far, far away...
-
-0 3
-Naboo was under attack.
-
Wie man erkennen kann, ist das Hauptziel, das Bearbeiten/Timing/
-Zusammenfügen/Schneiden von Untertiteln einfach zu machen. Und wenn
-du mal angenommen einen SSA-Untertitel bekommst und er zeitlich schlecht
-zu deinem Video abgestimmt ist, kannst du einfach mplayer dummy.avi
--sub quelle.ssa -dumpmpsub
ausführen. Es wird eine
-dump.mpsub
-Datei im aktuellen Verzeichnis erzeugt, die den
-Quell-Untertitel-Text enthält, jedoch im MPsub-Format. Dann kannst
-du dem Untertitel einfach Sekunden hinzufügen usw.
Untertitel werden mit einer Technik - genannt 'OSD', On Screen -Display - angezeigt. OSD wird verwendet, um die aktuelle Zeit, die -Lautstärken- und Such-Leisten etc. anzuzeigen.
- -Du brauchst ein MPlayer-Schriftenpaket, um das OSD oder Untertitel -anzeigen zu können. Es gibt mehrere Möglichkeiten, eines zu -bekommen:
- --utf8
verwendet oder die Datei
- in <video_name>.utf umgebennt und im gleichen Verzeichnis liegen hat.
- Die Umwandlung zwischen verschiedenen Zeichnsätzen und UTF8 kann
- mit den Programmen konwert (unter Debian) oder iconv (unter RedHat)
- vorgenommen werden.--enable-freetype
mitgeben. Danach
- hast du zwei Möglichkeiten:
- -font
- /pfad/zu/arial.ttf
eine TrueType-Schrift an.ln -s /pfad/zu/arial.ttf
- ~/.mplayer/subfont.ttf
Wenn du eine Nicht-TrueType-Schrift benutzt, dann entpacke die Dateien nach
-den Download nach ~/.mplayer
oder
-$PREFIX/share/mplayer
. Danach benennst du eine davon um oder
-erstellst einen symbolischen Links zu font
(wie z.B.: ln -s
-~/.mplayer/arial-24 ~/.mplayer/font
). Nun solltest du die Zeit in
-oberen linken Ecke des Films sehen (kann man mit der Taste "o" ausschalten).
-
Das OSD hat 4 Anzeigearten, zwischen denen du mit 'o' umschalten kannst:
- -(Untertitel werden immer angezeigt. Wie du sie deaktivierst, findest -du in der man-Page.)
- -Du kannst das Standard-Verhalten mit der osdlevel=
-Variable
-in der Konfigurationsdatei oder der Kommandozeilenoption
--osdlevel
ändern.
MPlayer besitzt nun ein komplett vom Benutzer definierbares -OSD-Menü.
- -ANMERKUNG: das Optionsmenü ist momentan NICHT IMPLEMENTIERT!
- -./configure
die Option
- --enable-menu
mit.etc/menu.conf
in dein
- ~/.mplayer
-Verzeichnis.etc/input.conf
in dein
- ~/.mplayer
-Verzeichnis oder in MPlayers
- systemweites Konfigurationsverzeichnis (standardmäßig
- /usr/local/etc/mplayer
).input.conf
und
- passe ihn nach deinen Wünschen an, um die Navigationstasten des
- Menüs zu aktivieren. Wie das geht, steht unten.$ mplayer -menu file.avi
Es gibt drei Methoden der Zeitmessung in MPlayer.
- -usleep()
, um Audio und Video synchron
- zu halten, und erreicht dabei eine Genauigkeit bis zu +/- 10ms. Manchmal
- muss die Synchronisation aber einfach feiner eingestellt werden
- können./proc
-Dateisystem anpassen. Du kannst folgenden Befehl
- verwenden, um die RTC für alle normalen Benutzer zu aktivieren:
- echo 1024 > /proc/sys/dev/rtc/max-user-freq
drivers/char/rtc.c
des Kernelquelltextes
- verändern und den Kernel neu compilieren. Dazu musst du folgenden
- Abschnitt finden:
-
-- * We don't really want Joe User enabling more - * than 64Hz of interrupts on a multi-user machine. - */ - if ((rtc_freq > 64) && (!capable(CAP_SYS_RESOURCE))) -- - Hier änderst du die 64 in 1024. Du solltest dabei aber wirklich - wissen, was du tust.
-nortc
- deaktivieren. In einigen Hardwarekombinationen (bestätigt durch die
- Verwendung eines nicht-DMA-DVD-Laufwerkes auf einem ALi1541-Board)
- verursacht der RTC-Timer eine rucklige Wiedergabe. Du solltest in solchen
- Fällen die folgende Methode verwenden.-softsleep
- aktiviert. Er besitzt dieselbe Effizienz wie die RTC, braucht jedoch kein
- RTC. Er braucht jedoch auch mehr CPU-Leistung.Dieser Teil der Docs zeigt, wie man mit einem V4L-kompatiblen Gerät -(z.B. einer TV-Karte) fernsehen oder Sendungen aufnehmen kann. In -der man-page findest du eine Beschreibung aller TV-Optionen sowie die Belegung -der Tastatur für's Fernsehen.
- -./configure
erkennt automatisch die Kernel-Header von v4l und
- ob die /dev/video*
-Einträge existieren. Wenn sie
- existieren, wird die TV-Unterstützung eingebaut (siehe Ausgabe von
- configure
).channels
. Ein Beispiel:-tv on:channels=26-MTV1,23-TV2
-vf pp=DEINT_TYPE
anschalten.
- Normalerweise funktioniert pp=lb
sehr gut, aber das hängt
- auch vom persönlichen Geschmack ab. Schau in der man-page nach. Dort
- findest du eine Beschreibung der einzelnen Deinterlacing-Algorithmen.
- Probier sie einfach aus.crop
-Filters so anpassen, dass all der Müll an den
- Rändern weggeschnitten wird. Vergiss aber wiederum nicht, die
- Bildabmessungen sinnvoll zu wählen.outfmt
nicht, es sei denn, du weißt
- wirklich, was du da tust, oder wenn deine Karte/dein Treiber wirklich das
- Standardausgabeformat nicht beherrscht (YV12-Farbraum). In älteren
- Versionen von MPlayer/MEncoder musste das outfmt
- immer mit angegeben werden, aber heute nicht mehr, und die Standardwerte
- passen eh in den meisten Fällen. Wenn du z.B. nach mit DivX aufnehmen
- willst, dafür die libavcodec benutzt und outfmt=RGB24
- angibst, um die Bildqualität zu verbessern, so wird das aufgenommene
- Bild eh später wieder in den YV12-Farbraum zurückkonvertiert. Das
- einzige, was du somit erreichst, ist die Verschwendung von CPU-Zeit.outfmt=i420
), dann musst du auch die Option -vc
- rawi420
angeben, weil es ansonsten einen Konflikt mit der FourCC
- des Intel Indeo-Videocodecs gibt.linux/Documentation/sound/btaudio
, die in den Kernelquellen
- zu finden ist. Sie enthält Informationen darüber, wie du diesen
- Treiber benutzt.Dummy-Ausgabe mittels AAlib ;)
- mplayer -tv
- on:driver=dummy:width=640:height=480 -vo aa
-
- Standard-V4L-Gerät als Quelle
- mplayer -tv
- on:driver=v4l:width=640:height=480 -vo xv
-
-
- Hier ein sinnvolleres und umfassenderes Beispiel. MEncoder wird
- mit voller PAL-Größe aufnehmen, das Bild an den Rändern
- beschneiden und mit einem linear-blend-Algorithmus ein Deinterlacing
- vornehmen. Audio wird mit einer Bitrate von 64kbps mit dem LAME-Codec in
- MP3 comprimiert. Diese Einstellungen sind dazu geeignet, um Filme
- aufzunehmen.
-
- mencoder -tv
- on:driver=v4l:width=768:height=576 \
- -ovc lavc -lavcopts
- vcodec=mpeg4:vbitrate=900 \
-oac
- mp3lame -lameopts cbr:br=64 \
- -vf
- crop=720:544:24:18,pp=lb -o output.avi
-
-
-
In diesem Beispiel wird das Bild noch auf 384x288 verkleinert und mit
- einer Bitrate von nur 350kbps im Qualitätsmodus comprimiert. Die
- vqmax
-Option lockert die Beschränkungen der Quantizer und
- erlaubt es dem Codec erst, wirklich so eine niedrige Bitrate zu erreichen,
- was natürlich auf Kosten der Bildqualität geschieht. Dieses
- Beispiel kann verwendet werden, um z.B. lange TV-Serien aufzuzeichnen,
- wobei es auf die Qualität nicht so sehr wie auf den Platzbedarf ankommt.
-
-
-
- mencoder -tv on:driver=v4l:width=768:height=576 \
- -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
- -oac mp3lame -lameopts cbr:br=48 \
- -vf crop=720:540:24:18,pp=tn/lb,scale=384:288 -sws 1 -o output.avi
-
-
- Du könntest auch in der -tv
-Option eine kleinere
- Bildgröße angeben und dafür auf die Softwareskalierung
- verzichten. Aber der oben gewählte Ansatz gibt MEncoder die
- maximal zur verfügung stehende Information zur Verarbeitung und ist
- ein bischen resistenter gegen Bildrauschen. Dazu kommt, dass der bt8x8-Chip
- wegen einer Hardwarebeschränkung nur in der Horizontale zwischen
- Pixeln interpolieren kann.
Die Edit Decision Lists (EDL) erlauben es, bestimmte Stellen bei der -Wiedergabe automatisch zu überspringen oder stummzuschalten. Dabei werden -EDL-Konfigurationsdateien ausgewertet.
- -Das ist dann ganz nützlich, wenn du einen Film in einer -"familienfreundlichen" -Version sehen möchtest. Du kannst damit Gewalt, Obszönitäten -oder Jar-Jar Binks rausschneiden, ganz so, wie du's willst. Davon abgesehen -kannst du z.B. auch automatisch Werbung überspringen.
- -Das EDL-Dateiformat ist ziemlich simpel gestrickt. Wenn das EDL erst einmal -einen gewissen Reifegrad erreicht hat, wird wahrscheinlich ein auf XML -basierendes Dateiformat eingeführt (aber die Kompatibilität zu alten -EDL-Formaten trotzdem gewahrt) werden.
- -Die maximale Anzahl von EDL-Einträgen beträgt momentan 1000.
-Falls du mehr davon brauchst, dann ändern einfach
-#define MAX_EDL_ENTRIES
in der Datei edl.h
.
Gib mit der Option -edl <Dateiname>
die EDL-Datei an,
-die du auf dein Video angewandt haben möchtest.
Das aktuelle EDL-Dateiformat sieht so aus:
- -[Start in Sekunden] [Ende in Sekunden] [Aktion]
-
-Die Sekundenangaben sind Fließkommazahlen, und die Aktion ist entweder
-0
(überspringen) oder 1
(stummschalten).
-Beispiel:
-5.3 7.1 0 -15 16.7 1 -420 422 0 -- -
Hier wird von Sekunde 5.3 bis Sekunde 7.1 ausgelassen. Von Sekunde 15 bis -Sekunde 16.7 wird stummgeschaltet, bei 16.7 wieder lautgestellt, und von -Sekunde 420 bis Sekunde 422 wird das Video übersprungen. Diese -Aktionen werden ausgeführt, sobald der Abspieltimer die angegebenen -Werte erreicht.
- -Wenn du eine EDL-Datei erstellen möchtest, dann benutze
--edlout <filename>
. Während der Wiedergabe kannst du
-i
drücken. Es wird dann ein Eintrag erstellt, der an dieser
-Stelle 2 Sekunden überspringt. Du kannst dann mit einem Editor deiner
-Wahl die generierte EDL-Datei verfeinern.
MPlayer benützt einen komplexen Abspielbaum. Er besteht aus
-globalen Optionen am Anfang (z.B. mplayer -vfm 5
) und Optionen
-nach dem Dateinamen, welche nur für die jeweilige Datei/URL/etc gelten
-(z.B. mplayer -vfm 5 movie1.avi movie2.avi -vfm 4
).
Mit { und
-} können Dateinamen/URL-Grupen gebildet werden. Dies ist mit der Option
--loop
nützlich: mplayer { 1.avi -loop 2 2.avi } -loop
-3
spielt die Dateien in dieser Reihenfolge: 1 1 2 1 1 2 1 1 2
Datei | mplayer [Optionen] [Pfad/]Dateiname | ||
Datei | mplayer [standard Optionen] [Pfad/]Dateiname [Optionen für datei1] datei2 datei3 [Optionen für datei3] | ||
VCD | mplayer [Optionen] vcd://Tracknr [-cdrom-device /dev/cdrom] | ||
DVD | mplayer [Optionen] dvd://Titelnr [-dvd-device /dev/dvd] | ||
Netz | mplayer [Optionen] http://site.com/datei.asf (playlist kann auch benutzt werden) |
Die neusten Versionen von MPlayer akkzeptieren auch VCD- und
-DVD-Tracks im URL-Format, so wie z.B. auch Xine: mplayer dvd://1
-oder mplayer vcd://1
- mplayer -vo x11 /mnt/Filme/Contact/contact2.mpg - mplayer vcd://2 - mplayer -afm 3 /mnt/DVDtrailers/alien4.vob - mplayer dvd://1 - mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi -- - -
MPlayer besitzt eine vollständig konfigurierbare, durch Befehle -angesteuerte Steuerungsschicht (control layer), der es erlaubt, MPlayer -mit Tastatur, Maus, Joystick oder Fernbedienung (unter Verwendung von LIRC) zu -steuern. Schau in die man-page. Dort steht eine vollständige Liste -aller Tastaturkommandos.
- - - MPlayer ermöglicht es, dass du jede Taste/jeden Button mit
-einem MPlayer-Befehl verbindest. Dieses wird in einer simplen
-Konfigurationsdatei festgelegt. Die Syntax besteht einfach aus einem
-Tastennamen gefolgt vom auszuführenden Befehl. Die
-Standardkonfigurationsdatei ist $HOME/.mplayer/input.conf
, aber
-diese Position kann auch mit der Option -input
geändert
-werden. Pfadangaben beziehen sich hier relativ zu $HOME/.mplayer
).
-
Beispiel:
- --## -## MPlayer input control file -## - -RIGHT seek +10 -LEFT seek -10 -- audio_delay 0.100 -+ audio_delay -0.100 -q quit -> pt_step 1 -< pt_step -1 -ENTER pt_step 1 1 -- -
Mit folgendem Befehl erhälst du eine vollständige Liste:
-mplayer -input keylist
Mit folgendem Befehl erhälst du eine vollständige Liste:
-mplayer -input cmdlist
Sucht bis zu einer gewissen Stelle im Film.
- Type 0 ist eine relative Suche von +/- Wert Sekunden.
- Type 1 sucht bis Wert % im Film.
Korrigiert die Audioverzögerung um Wert Sekunden
Beendet MPlayer
Wechselt zwischen Pause und Weiterspielen
Weiß das jemand?
Springt zum nächsten/vorherigen Eintrag im playtree. Das Vorzeichen
- von Wert bestimmt die Richtung.
Wenn kein neuer Eintrag mehr vorhanden
- ist, geschieht gar nichts, es sei denn, force ist nicht 0.
Wie pt_step, springt jedoch zum nächsten/vorherigen Eintrag in der - übergeordneten Liste. Dies ist nützlich, um eine innere Schleife - im playtree zu unterbrechen.
Wenn mehr als eine Quelle vorhanden ist, wählt dies die - nächste/vorherige (nur unterstützt für asx - Wiedergabelisten).
Korrigiert die Untertitel-Verzögerung um +/- Wert Sekunden oder - setzt sie auf Wert Sekunden, wenn abs nicht null ist.
Wechselt den OSD-Modus oder setzt in auf level, wenn level > - 0.
Erhöht/erniedrigt die Lautstärke
Setzt/korrigiert die Video-Parameter. Die Wertreichweite reicht von -100 - bis 100.
Wechselt den Framedrop-Modus.
Korrigiert die Untertitel-Position.
Ändert die Sprache der VobSub-Untertitel.
Wechselt den Vollbildschirm-Modus.
Wählt nächsten/vorherigen Tv-Kanal.
Ändert TV-Norm.
Ändert Kanalliste.
GUI-Aktionen
Linux Infrared Remote Control - verwende einen einfach zu bauenden, -selbstgebauten IR-Empfänger, (fast) jede beliebige Fernbedienung -und steuere deinen Linux-Rechner damit. Mehr dazu auf www.lirc.org.
- -Wenn du das lirc-Paket installiert hast, erkennt es configure
-automatisch. Wenn alles gut geht, gibt MPlayer während des Starts
-eine Nachricht wie etwa "Setting up lirc support..." aus. Wenn ein Fehler
-auftritt, wird dies auch gemeldet. Wenn gar nichts gesagt wird, ist auch keine
-LIRC-Unterstützung eincompiliert. Das ist alles :-)
Der Anwendungsname für MPlayer ist - oh, ein Wunder -
-mplayer
. Du kannst jeden beliebigen MPlayer-Befehl benutzen
-und sogar mehrere nacheinander ausführen lassen, indem du sie durch \n
-voneinander trennst. Vergiss nicht, die repeat
-Option in der
-.lircrc zu benutzen, wenn es Sinn macht (beim Suchen, bei der Lautstärke
-etc.). Hier ist ein Auszug aus meiner .lircrc:
-begin - button = VOLUME_PLUS - prog = mplayer - config = volume 1 - repeat = 1 -end - -begin - button = VOLUME_MINUS - prog = mplayer - config = volume -1 - repeat = 1 -end - -begin - button = CD_PLAY - prog = mplayer - config = pause -end - -begin - button = CD_STOP - prog = mplayer - config = seek 0 1\npause -end -- -
Wenn du die Standard-Position der LIRC-Konfigurationsdatei (~/.lircrc) nicht
-magst, verwende die Option -lircconf <Dateiname>
, um eine
-andere Datei anzugeben.
Der Slave-Modus erlaubt es dir, ein einfaches Frontend für
-MPlayer zu erstellen. Wenn er mit der Option -slave
-aktiviert wurde, dann liest MPlayer durch neue Zeilen unterbrochene
-Befehle (\n) von der Standardeingabe.
MPlayer kann Videos über Netzwerke unter Verwendung des HTTP- -MMS- oder RTSP/RTP-Protokolls abspielen.
- -Abspielen geht einfach durch das Hinzufügung der URL zu der -Kommandozeile. MPlayer berücksichtigt auch die -http_proxy-Umgebungsvariable und benutzt einen Proxy, falls vorhanden. Der -Proxygebrauch kann auch erzwungen werden:
- -mplayer
-http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/stream.asf
-
MPlayer kann auch von stdin lesen (nicht von benannte Pipes). -Dies ist ein Beispiel für die Verwendung, um von FTP abzuspielen:
- - wget ftp://micorsops.com/etwas.avi -O - | mplayer
--
Hinweis: Bei der Wiedergabe übers Netzwerk empfiehlt sich, den Cache zu -aktivieren:
- - wget ftp://micorsops.com/etwas.avi -O - | mplayer -cache
-8192 -
Die hauptsächliche Entwicklungsplattform ist Linux auf x86, obwohl -MPlayer auch auf anderen Linuxportierungen läuft.
- -Um selber ein Debianpaket zu erstellen, starte den folgenden Befehl im -Source-Verzeichnis:
- -- fakeroot debian/rules binary -- -
Und nun einfach root werden und:
- -- dpkg -i ../mplayer_0.90-1_i386.deb als root. -- -
Christian Marillat hat seit einiger Zeit unoffizielle Debianpakete von -MPlayer, MEncoder und den Schriften erstellt. Du kannst sie (per apt-get) -von seiner Homepage herunterladen. -Diese Pakete sind definitiv inoffiziell, da Christian bereits damals -diese Pakete erstellt und verteilt hat, als MPlayer noch nicht komplett unter -der GPL stand und -Binärpakete -nicht erlaubt waren. Christian ignorierte unsere Bitte, das zu unterlassen, -was einiges an bösem Blut zwischen ihm und den MPlayer-Entwicklern -hinterließ. Inzwischen sind Binärpakete kein Problem mehr. Trotzdem -supporten wir diese Pakete nicht!
- -Dominik Mierzejewski erstellt und wartet die offiziellen RedHat RPM-Pakete -für MPlayer. Diese können von seiner -Homepage -heruntergeladen werden. Bitte lies die Anweisungen auf seiner Seite, und -schreib ihm wegen Problemen und nicht uns.
- -Inzwischen gibt es auch andere RPM-Versionen (SuSE liefert MPlayer mit ihrer -offiziellen Distribution aus, Mandrake-Pakete gibt es von -P.L.F) von MPlayer, aber keine dieser -Versionen wird offiziell unterstützt.
- -MPlayer läuft auf Linux-PDAs mit einer ARM-CPU, z.B. dem Sharp Zaurus
-oder dem Compaq Ipaq. Am einfachsten ist es, sich MPlayer von
-Openzaurus runterzuladen.
-Wenn du MPlayer selber compilieren möchtest, dann schau dir dir
-Verzeichnisse für
-
-mplayer und
-
-libavcodec bei der OpenZaurus-Distribution an. Sie enthalten immer
-die aktuellen Makefiles und Patches, die benutzt werden können,
-um die CVS-Version von MPlayer mit libavcodec zu compilieren.
-Wenn du das GUI brauchst, dann kannst du xmms-embedded
-benutzen.
MPlayer läuft auf FreeBSD, OpenBSD, NetBSDO, BSD/OS und Darwin. -Es sind ports/pkgsrc/fink/etc-Versionen verfügbar, die sich wahrscheinlich -leichter als die normalen Quelltexte installieren lassen.
- -Um das Paket zu compilieren, brauchst du GNU make (gmake, -/usr/ports/devel/gmake), das originale BSD make wird nicht funktionieren. -Außerdem ist eine relativ neue Version der binutils nötig.
- -Wenn MPlayer meldet "CD-ROM Device '/dev/cdrom' not found!" musst du
-einen symbolischen Link setzen: ln -s /dev/(dein CD-ROM Device)
-/dev/cdrom
Wenn du die Win32-DLLs mit MPlayer benuzen willst, dann musst du
-deinen Kernel mit "option USER_LDT
" neu compilieren (es sei denn,
-bei dir läuft FreeBSD-CURRENT, in dem der Kernel bereits damit
-compiliert wurde).
Falls deine CPU SSE unterstützt, musst du den Kernel mit
-"options CPU_ENABLE_SSE
" übersetzen, um diese nutzen zu
-können (FreeBSD-STABLE oder ein Kernel-Patch werden dafür
-benötigt).
Aufgrund der Beschränkungen in verschiedenen Versionen von gas
-(Relokation vs. MMX), musst du den Kernel in zwei Schritten neu compilieren.
-Stell zuerst sicher, dass das nicht mitgelierferte "as" über deinen
-$PATH
erreichbar ist. Danach rufe gmake -k
auf und
-stell sicher, dass die mitgelieferte Version benutzt wird. Schließlich
-wird mit gmake
der Kernel übersetzt.
MPlayer sollte auf Solaris 2.6 oder neuer funktionieren.
- -Bei UltraSPARCs kann MPlayer die Vorteile der
-VIS-Erweiterungen (vergleichbar mit MMX) verwenden, zur Zeit jedoch erst
-in libmpeg2
, libvo
und libavcodec
,
-jedoch nicht in mp3lib
. Du kannst eine VOB-Datei auf einer 400MHz
-CPU ansehen. Du musst dazu mLib installiert
-haben.
Um dieses Paket zu compilieren, brauchst du GNU Make (gmake, -/opt/sfw/gmake). Das originale Solaris Make wird nicht funktionieren. Dies ist -ein typischer Fehler, den du bekommen wirst, wenn du Solaris' Make anstatt von -GNU Make verwendest:
- -- % /usr/ccs/bin/make - make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen -- -
Unter Solaris SPARC brauchst du den GNU C/C++ Compiler. Es spielt keine -Rolle, ob der GNU C/C++-Compiler mit oder ohne GNU Assembler konfiguriert -ist.
- -Unter Solaris x86 brauchst du den GNU C/C++-Compiler, welcher konfiguriert
-sein muss, den GNU Assembler zu verwenden! Der MPlayer-Code erzeugt auf
-x86 Plattformen eine Binary mit Verwendungen von MMX-, SSE- und 3DNOW-Befehlen.
-Dies kann mit dem Sun Assembler /usr/ccs/bin/as
nicht assembliert
-werden.
Das configure
Skript versucht herauszufinden, welches
-Assemblerprogramm von deinem "gcc" Befehl ausgeführt wird (für den
-Fall, dass es fehlschlägt, verwende die Option
-"--as=/woimmer/du/es/installiert/hast/gnu-as" und sage damit dem Skript,
-wo es den GNU "as" auf deinem System finden kann).
Fehlermeldungen von configure
auf einem Solaris x86 System bei
-Verwendung von GCC ohne GNU Assembler:
- % configure - ... - Checking assembler (/usr/ccs/bin/as) ... , failed - Please upgrade(downgrade) binutils to 2.10.1... -- -
(Lösung: Installiere und verwende einen gcc, der mit "--with-as=gas" -konfiguriert ist)
- -Ein typischer Fehler beim Kompilieren mit einem GNU C Compiler, der nicht den -GNU as verwendet:
- -- % gmake - ... - gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math - -fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c - Assembler: mplayer.c - "(stdin)", line 3567 : Illegal mnemonic - "(stdin)", line 3567 : Syntax error - ... more "Illegal mnemonic" and "Syntax error" errors ... -- -
Aufgrund von Fehlern in Solaris 8 x86 ist es nicht möglich, DVDs -mit einer Speicherkapazität von mehr als 4GB zu verwenden:
- -Bei Solaris mit einer UltraSPARC CPU kannst du zusätzliche -Geschwindigkeit gewinnen, indem du die VIS-Befehle für rechenintensive -Operationen verwendest. VIS-Beschleunigungen können von MPlayer -durch das Aufrufen von Funktionen in Suns mediaLib verwendet -werden.
- -VIS-Beschleunigungen von mediaLib werden für MPEG2 Video-Decodierung -und für Farbraumkonvertierung im Videoausgabetreiber verwendet.
- - -Du hast zwei Möglichkeiten. Die eine besteht darin, das GNU
-install-Programm zu installieren und ./configure
mitzuteilen, wo
-es liegt (sofern du es nicht in deinen $PATH
installiert
-hast):
- ./configure --install-path=PATH -- -
Die zweite Möglichkeit besteht darin, das bei IRIX 6.5 mitgelieferte -"install" zu benutzen. Dazu musst du aber das Makefile ein wenig von Hand -anpassen. Ändere die folgenden beiden Zeilen
- -- $(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1 - - $(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf -- -
in:
- -- $(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/ - - $(INSTALL) -m 644 codecs.conf $(CONFDIR)/ -- -
Führ danach noch die beiden Befehle aus dem -MPlayer-Quellcodeverzeichnis heraus auf:
- -- cp DOCS/mplayer.1 . ; cp etc/codecs.conf . -- -
Nun mache ganz normal mit dem Compilierungs- und Installationsprozess -weiter.
- - -Funktioniert. Du musst SDL für QNX herunterladen, installieren und dann
-MPlayer mit den Optionen -vo sdl:photon
und -ao
-sdl:nto
starten. Es sollte schnell sein.
Die -vo x11
-Ausgabe ist sogar noch langsamer als unter Linux,
-da QNX nur eine sehr langsame X-Emulation hat. Benutze SDL.
Die Portierung auf Cygwin, eine Unix-Tool-Umgebung unter Windows, steckt
-noch in ihren Kinderschuhen. Momentan werden die folgenden Punkte nicht
-unterstützt: Win32-DLLs oder OpenGL. Von SDL ist bekannt, dass sie
-Audio- und Videoverzerrung hervorruft oder sogar das System zum Absturz bringt.
-Patches sind natürlich jederzeit
-willkommen. Die besten Resultate erhälst du mit der windowseigenen
-DirectX-Videoausgabe (-vo directx
) und dem windowseigenenen
-waveout-Audiotreiber (-ao win32
). Du solltest auf jeden Fall einen
-Blick auf die
-mplayer-cygwin Mailingliste werfen, um Hilfe zu bekommen und die neuesten
-Informationen zu finden.
Du wirst die Datei etc/cygwin_inttypes.h
aus den
-MPlayer-Quellen nach /usr/include/inttypes.h
kopieren
-und erst danach MPlayer compilieren müssen, da der Compiler sich
-sonst über eine fehlende intypes.h
beschwert..
Wenn du Unterstützung für DirectX-Videoausgabe (-vo
-directx
) haben willst, dann installier die DirectX 7 Header Files
-und compiliere MPlayer erneut. Du solltest mit -vo directx -ao
-win32
die besten Ergebnisse erzielen. Falls das Bild gestört ist,
-so versuche es ohne die Hardwarebeschleunigung erneut: -vo
-directx:noaccel
.
Anweisungen, wie du SDL unter Cygwin zum Laufen bringst, findest du auf -der libsdl-Seite.
- -Du kannst VCDs einfach abspielen, indem du die .DAT
-Datei
-oder die .MPG
-Datei abspielst, die Windows auf einer VCD
-anzeigt. So funktioniert es (pass bei Bedarf den Laufwerksbuchstaben an):
mplayer d:/mpegav/avseq01.dat
mplayer /cydrive/d/MPEG2/AVSEQ01.MPG
DVDs funktionieren ebenfalls. Setze dafür einfach dsa DVD-Gerät -korrekt:
- -mplayer dvd://<Titel> -dvd-device '\\.\d:'
Die QuickTime-DLLs sollen angeblich ebenfalls funktionieren. Compiliere
-MPlayer mit --enable-qtx-codecs
und kopiere die Codecs an den
-Standardort für Windows-DLLs, C:\WINNT\system32
oder
-C:\Windows\system
, abängig von deiner Windowsversion.
Es stehen einige öffentliche Mailinglisten für MPlayer zur -Verfügung. Wenn nichts anderes angegeben wird, dann ist die auf der Liste -zu verwendende Sprache Englisch. Bitte schreibe nicht in anderen -Sprachen, und schick niemals HTML-Mails! Es gibt eine -Größenbeschränkung auf 80k. Wenn du etwas größeres -hast, dann lade es irgendwo hoch und gib in der Mail nur die URL an. Klick auf -die Links, um dich bei den Listen anzumelden. Auf diesen Mailinglisten gelten -die gleichen Regeln bezüglich Schreibstil und Antworten wie im Usenet. -Bitte befolge diese Regeln, da es das Leben für diejenigen, die deine -Mails lesen, deutlich vereinfacht. Wenn du diese Regeln nicht kennst, dann lies -bitte die HOWTO über's Schreiben -von Mails (Englisch) durch. Wenn du gerade keine Zeit hast, dann lies -alternativ die - -Quoting-HOWTO (Englisch).
- -./configure
-Änderungen diskuttiert. Du kannst auch deine
- Patches hier herschicken. Sende keine Fehlerberichte,
- Anwenderfragen, Featurewünsche oder Beschwerden hierher! Diese Liste
- sollte wenig verwendet werden.
- Hinweis: Du kannst das durchsuchbare Mailinglisten-Archiv an -folgender Stelle finden: -http://www.mplayerhq.hu/cgi-bin/htsearch
- - -Spezielle System-/CPU-spezifische Fehler/Probleme:
- -./configure --disable-sse
./configure --disable-sse
usw.-ac ffmpeg
)Verschiedene A-V Sync- und andere Audio-Probleme
- -Allgemein Audio-Verzögerung und ruckartiger Sound (kommt bei allen -oder einigen Dateien vor):
- --ao oss
-
. Manchmal hilft auch -ao sdl
.
- Wenn die Datei mit -nosound
ohne Probleme wiedergegeben wird,
- dann liegt
- höchstwahrscheinlich ein Soundkartentreiber-Problem vor.mplayer -abs
-aop
) getestet werden-vo null
. Wenn es gut funktioniert, hast du
- eine langsame VGA-Karte oder einen langsamen Treiber.-framedrop
Audio (verschiebt sich / verliert die Synchronisation / bricht nach einer -gewissen Zeit ab) bei einer oder nur einigen wenigen Dateien:
- --ni
oder -nobps
(für nicht-interlaced
- oder defekte Dateien)-mc 0
(erforderlich bei Dateien mit schlechtem
- Interleave und VBR-Audio)-delay
Option oder +/- Tasten beim Abspielen-fps 27
bei 30fps-Filmen)
- oder verwende das Resampler-Plugin.-framedrop
Überhaupt kein Ton:
- -Überhaupt kein Bild (nur ein graues/grünes Fenster):
- --vc
oder -vfm
- Optionen zu wählen.-vc odivx
) abzuspielen - installiere Divx4Linux und
- compiliere MPlayer neu.Videoausgabe-Probleme:
- -Erster Hinweis: Die Optionen -fs, -vm und -zoom
sind nur
-Empfehlungen, sie werden (noch) nicht von allen Treiber unterstützt. Also
-ist dies kein Fehler (Bug), wenn es nicht funktioniert. Nur einige Treiber
-unterstützten Scaling/Zooming, erwarte das nicht von x11 oder dga.
Zucken des OSD/Untertiteln:
- --double
-OptionGrünes Bild bei der Verwendung von mga_vid (-vo mga /
--vo xmga
):
mga_vid
hat die Grösse des RAMs falsch erkannt. Lade
- das Modul neu mit der Option mga_ram_size
.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 -Encodierungstipps (englisch), die -von mehreren Emails auf der -mplayer-users -zusammengetragen wurden. Durchsuche auch das -Archiv. Dort findest -du eine Unmenge an Diskussionen über alle möglichen Themen rund um -die Encodierung mit MEncoder.
- -2-pass-Encodierung: Der Name kommt in der Tat daher, dass -diese Methode die Datei zweimal encodiert. Das erste Encodieren (1. -
Pass [=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.
- -Dieses Beispiel zeigt dir, wie du mit 2 Passes eine DVD in ein MPEG4-AVI
-("DivX") encodierst. Nur 2 Befehle sind erforderlich:
-
- rm frameno.avi
- Lösche diese Datei,
- welche von einer früheren 3-Pass-Encodierung kommen kann (Sie führt zu
- einem Konflikt mit der momentanen Encodierung).
-
- mencoder dvd://2 -lavcopts
-vcodec=mpeg4:vpass=1 -oac copy -o film.avi
-
- mencoder dvd://2 -lavcopts
-vcodec=mpeg4:vpass=2 -oac copy -o film.avi
3-Pass-Encodierung: 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:
- -CODE>rm frameno.avi
mencoder <file/DVD> -ovc frameno -oac mp3lame -lameopts
- vbr=3 -o frameno.avi
Hierbei wird ein AVI erstellt, das nur die gewählte
- Audiospur enthält. Vergiss nicht, die -lameopts
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.
mencoder <file/DVD> -oac copy
- -ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=<bitrate>
-
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.
mencoder <file/DVD> -oac copy
- -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=<bitrate>
-
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!
rm frameno.avi
- Lösche diese Datei,
- welche von einer früheren 3-Pass-Encodierung kommen kann (Sie führt
- zu einem Konflikt mit der momentanen Encodierung). mencoder dvd://2 -ovc frameno
- -o frameno.avi -oac mp3lame -lameopts vbr=3
-
- mencoder dvd://2 -ovc lavc
- -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o movie.avi
-
- mencoder dvd://2 -ovc lavc
- -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o movie.avi
-
-
-MEncoder kann MPEG-Dateien (MPEG-PS) erstellen. Das ist wahrscheinlich -nur in Kombination mit dem mpeg1video-Codec der libavcodec sinnvoll, -da alle Player (bis auf MPlayer) MPEG1-Video und MPEG1 Layer 2 (MP2)-Audio -in MPEG-Dateien erwarten.
- -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.
- -Das Ausgabeformat von MEncoder kann mit -of mpeg
auf MPEG
-geändert werden.
Beispiel:
- mencoder -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video
- -oac copy <weitere Optionen> media.avi -o ausgabe.mpg
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. Das ist -allgemein schlecht. Wenn du das vermeiden willst, dann lies den Abschnitt -über das Beibehalten des -Höhen-/Breitenverhältnisses.
- -Der Skalierungsprozess erfolgt durch den 'scale-Videofilter:
--vf scale=breite:hoehe
. Die Qualität kann durch die Option
--sws
angegeben werden. Wenn nichts angegeben ist, verwendet
-MEncoder 0: schnelle bilienare Filterung ('fast bilinear').
mencoder beispiel-svcd.mpg -ovc lavc -lavcopts
- vcodec=mpeg4 -vf scale=640:480 -sws 2 -oac copy -o ausgabe.avi
-
-MEncoder kann Input-Streams auf zwei Arten bearbeiten: -encodieren oder kopieren (copy). Diese Sektion erklärt die -Stream-Kopie.
- --ovc copy
): Es können nette
- Sachen gemacht werden :)-oac copy
): geht genauso.-audiofile <dateiname>
.
-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 -ni
für diese
-nicht mehr gebraucht wird.
Befehl: mencoder -idx eingabe.avi -ovc copy -oac copy -o
-ausgabe.avi
Ein Nebeneffekt des oben erwähnten Reparierens ist, dass MEncoder -damit auch zwei oder mehrere aneinandergehängte AVI-Dateien reparieren -kann:
- -Kommando: cat 1.avi 2.avi | mencoder -noidx -ovc copy -oac copy -o
-ausgabe.avi -
Anmerkung: Hier wird angenommen, dass 1.avi
und
-2.avi
den gleichen Codec verwenden, die gleiche Auflöung und
-Streamrate besitzen etc., und wenigstens 1.avi darf nicht defekt sein.
-Eventuell musst du, wie oben beschrieben, die
-Quelldateien erst reparieren.
libavcodec 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:
- -Die erste Spalte enthält den Codec-Namen, den du nach dem
-vcodec
-Stichwort übergibst, wie z.B.:
--lavcopts vcodec=msmpeg4
Ein Beispiel mit MJPEG-Compression:
- mencoder dvd://2 -o titel2.avi -ovc lavc -lavcopts
-vcodec=mjpeg -oac copy
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.
- -So läuft dieser Prozess ab:
- -libjpeg
(wenn PNGs decodiert werden, wird die libpng
- benutzt).Die Erklärung der -mf
-Option kann in der Manpage gefunden
-werden.
Erstellung einer DivX4-Datei aus allen JPEG-Dateien im aktuellen
-Verzeichnis:
-
- mencoder -mf on:w=800:h=600:fps=25 -ovc divx4
- -o ausgabe.avi \*.jpg
Erstellung einer DivX4-Datei aus einigen JPEG-Dateien im aktuellen
-Verzeichnis:
-
- mencoder -mf on:w=800:h=600:fps=25
- -ovc divx4 -o ausgabe.avi frame001.jpg,frame002.jpg
Erstellung einer Motion JPEG-Datei (MJPEG) aus allen JPEG-Dateien im
-aktuellen Verzeichnis:
-
- mencoder -mf on:w=800:h=600:fps=25 -ovc copy
- -o output.avi \*.jpg
Erstellung einer unkomprimierten Datei aus allen PNG-Dateien im
-momentanen Verzeichnis:
-
- mencoder -mf on:w=800:h=600:fps=25:type=png -ovc rawrgb
- -o output.avi \*.png
Anmerkung: Die Breite muss ein Vielfaches von 4 betragen, was eine -Beschränkung des RGB-AVI-Formates ist.
- -Erstellung einer Motion PNG-Datei (MPNG) aus allen PNG-Dateien im
-momentanen Verzeichnis:
-
- mencoder -mf on:w=800:h=600:fps=25:type=png -ovc copy
- -o output.avi \*.png
Erstellung einer Motion TGA-Datei (MTGA) aus allen TGA-Dateien im
-aktuellen Verzeichnis:
-
- mencoder -mf on:w=800:h=600:fps=25:type=tga -ovc copy
- -o output.avi \*.tga
MEncoder kann Untertitel von einer DVD extrahieren und sie als Datei
-im Vobsub-Format speichern. Dieses besteht aus einem Dateipaar
-(.sub
und .idx
) und wird gewähnlich in ein
-einziges .rar
Archiv verpackt. MPlayer kann diese mit den
-Optionen -vobsub
und -vobsubid
wiedergeben.
Du gibst mit -vobsubout
den Basisnamen der Ausgabedatei (ohne
-.idx
- oder .sub
-Endung) und mit
--vobsuboutindex
den Index des Untertitels der Ausgabedatei
-an.
Wenn die Eingabe nicht von einer DVD stammt, solltest du mit der Option
--ifo
die Datei angeben, die zur Erstellung der resultierenden
-.idx
-Datei benötigt wird.
Wenn die Eingabe nicht von einer DVD stammt und keine
-.ifo
-Datei vorhanden ist, benötigst du die
--vobsuboutid
-Option, um MPlayer zu sagen, welche Sprach-ID
-für die .idx
Datei verwendet werden soll.
Jeder Aufruf fügt neue Untertitel dazu, falls die .idx
-
-und .sub
-Dateien bereits existieren. Sie sollten im Bedarfsfall
-also vor dem Starten gelöscht werden.
Kopieren zweier Untertitel von einer DVD mit 3-Pass-Encodierung
-
- rm untertitel.idx untertitel.sub
-
- mencoder dvd://1 -vobsubout untertitel -vobsuboutindex 0 -sid
-2 -o frameno.avi -ovc frameno -oac mp3lame -lameopts vbr=3
-
- mencoder dvd://1 -oac copy -ovc divx4 -divx4opts
-pass=1
-
- mencoder dvd://1 -oac copy -ovc divx4 -divx4opts pass=2
- -vobsubout untertitel -vobsuboutindex 1 -sid 5
Kopieren eines französischen Untertitels von einer MPEG-Datei
-
- rm untertitel.idx untertitel.sub
-
- mencoder film.mpg -ifo film.ifo -vobsubout untertitel
--vobsuboutindex 0 -vobsuboutid fr -sid 1
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 nicht speichern -kann. Die Skalierung beim Encodieren ist ein zeitraubender und -qualitätsmindernder Prozess. Es sollte doch eine bessere Möglichkeit -geben!?
- -Ganz genau - die gibt es.
- -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 keinen Videoplayer, der -dieses Feature unterstützt. Bis auf MPlayer natürlich.
- -Dieses Feature kann nur in Verbindung mit dem mpeg4
-Codec der
-libavcodec 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.
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 cropdetect
- und
-crop-Filter benutzt.
$ 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
- 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. -
Your gcc does not support even i386 for '-march' and '-mcpu'.
-
configure.log
für Details.--disable-gcc-checking
- an configure
. Bedenke aber, dass du auf dich alleine gestellt
- bist. Sende keine Meldungen oder Bugs, und frag in der Mailingliste
- nicht um Hilfe. Wir werden sie nicht zur Verfügung stellen,
- noch Unterstützung bei Problemen anbieten.- 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 -
-Aber wir hatten idegs. Und unser Idegcounter hatte wieder und wieder - Overflows.
- -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.
- -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.
- -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.
- -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.
- -Schlussfolgerung: wir können nicht gut sein. Die Hälfte der - Leute sagt, dass wir böse sind.
- -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.
-
etc/inttypes.h
in das MPlayer-Verzeichnis
- (cp etc/inttypes.h
) und versuche es erneut ..../configure
- erkennt SSE nicht .../usr/X11
und /usr/include/X11
existieren (dies
- kann ein Problem auf Mandrake-Systemen sein). Diese können mit diesen
- Befehlen erzeugt werden: $ ln -sf
- /usr/X11R6 /usr/X11
$ ln -sf
- /usr/X11R6/include/X11 /usr/include/X11
BACKGROUND = y
aus./usr/local/lib
befindet! Die Fehlermeldung lautet:
- - error while loading shared libraries: lib*.so.0: cannot load - shared object file: No such file or directory -
/usr/local/lib
deiner
- /etc/ld.so.conf
Datei hinzu und starte
- ldconfig
.- Warning: loading mga_vid.o will taint the kernel: no license -
o
oder verwende die
- -osdlevel
-Option.-xy
oder -fs
-Option funktioniert
- nicht mit dem X11-Treiber (-vo x11
)-zoom
-Option aktivieren (sehr langsam). Du solltest
- besser die XF86VidMode-Unterstützung verwenden. Du musst
- dazu die -vm
-Option und die -fs
-Option verwenden.
- Stelle sicher, dass du die richtigen modelines in deiner XF86Config-Datei
- hast, und versuche, den DGA-Treiber und SDLs DGA-Treiber für dich zum Laufen zu
- bringen. Er ist um einiges schneller. Wenn SDL-DGA auch funktioniert,
- verwende das, es ist NOCHMALS schneller.A: 2.1 V: 2.2 A-V: -0.167 ct: 0.042 57/57 41% 0% 2.6%
- 0 4 49%
-quiet
-Option, und lies die
- Manpage.-vo null
und dann mit -vo
...
- abzuspielen. Die Differenz ist die die Videoausgabegeschwindigkeit./usr/lib/codecs/
..."mplayer
anstatt
- mplayer_lirc
verwendest? Eine lange Zeit lang hieß das
- Executable mplayer_lirc
, sogar im 0.60 Release, wurde jedoch
- neulich wieder zu mplayer
geändert.config.h
nach dem Ablaufen von ./configure und
- ändere #undef FAST_OSD
in #define FAST_OSD
.
- Compiliere MPlayer danach neu.-double
-Option. Versuche auch
- -vf expand
.-icelayer
-Option zu verwenden und ein Bericht an die
- mplayer-users
- zu senden.mplayer <Optionen> <Dateiname> <
- /dev/null &
- Detected audio codec: [divx] afm:4 (DivX audio (WMA)) - Requested audio codec family [divx] (afm=4) not available (enable it at - compile time!) -
-bps
- und -nobps
-Optionen.
- Lies dies, falls es zu keiner Verbesserung
- führt, und lade die Datei auf den FTP-Server hoch.ldd /usr/local/bin/mplayer
-Ausgabe. Wenn
- sielibc.so.6 => /lib/libc.so.6
- (0x4???????)
libc.so.6 => /lib/libc.so.6
- (0x00??????)
-afm 1
Option verwenden, um die l3codeca.acm
- auszuschalten.-nosound
-Parameter verwende ist alles OK, aber ich höre
- halt keinen Ton../configure --enable-runtime-cpudetection
). Verwende
- MPlayer auf keiner anderen CPU als auf der, auf der MPlayer
- kompiliert wurde ohne dieses Feature zu aktivieren.~/.mplayer/
. Upgrade sie von etc/
,vc=
Option oder eine
- ähnliche in deiner Config-Datei.-ao arts
)
- aktiviert werden. Falls dies fehlschlägt oder der Treiber nicht
- einkompiliert wurde, kann SDL (-ao sdl
) verwendet werden.
- Dabei muss jedoch sichergestellt werden, dass SDL mit Arts umgehen kann.
- Eine weitere Möglichkeit besteht darin, MPlayer mit artsdsp zu
- starten.-vc odivx
einen grauen
- und mit -vc divx4
einen grünen Bildschirm wiedergibt.- DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer! -
-ni
Option.-ao oss
. Siehe in der
- Soundkarten-Sektion.-nobps
Option und/oder -mc 0
.codecs.conf
, oder
- verwende die -vc ffmjpeg
-Option (kompiliere dazu
- libavcodec!).Linux RTC init: ioctl (rtc_pie_on): Permission denied
Detected video codec: [null] drv:0 (NULL codec (no decoding))
-
codecs.conf
.-nortc
.- 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... -
-ao arts
-Option, um MPlayer arts verwenden zu
- lassen../configure
erkennt den DGA-Treiber automatisch.
- Wenn -vo help
DGA nichts anzeigt, gibt es ein Problem mit der
- X-Installation. Versuche ./configure --enable-dga
und lies
- die Dokumentation.
- Alternativ kannst du auch versuchen, den SDL-DGA Treiber mit der
- Option -vo sdl:dga zu verwenden.
-vo help
zeigt den DGA-Treiber, aber es beschwert
- sich über die Zugriffsrechte! Helft mir!su -
) und
- es erneut versuchen.
- Eine andere Lösung ist, MPlayer auf SUID root zu stellen,
- aber das ist nicht empfehlenswert!chown root /usr/local/bin/mplayer
chmod 755 /usr/local/bin/mplayer
chmod +s /usr/local/bin/mplayer
- Warnung: Sicherheitsrisiko-
- Dies ist ein grösseres Sicherheitsrisiko! Tu das nie - auf einem Server oder einem Computer, den du nicht vollständig - kontrollierst. Die User bekommen durch einen SUID root MPlayer - Root-Privilegien! Du bist also gewarnt worden. -
- X Error of failed request: BadAccess (attempt to access private
- resource denied)
- Major opcode of failed request: 147 (MIT-SHM)
- Minor opcode of failed request: 1 (X_ShmAttach)
- Serial number of failed request: 26
- Current serial number in output stream:27
-
-vo gl
)-Ausgabe funktioniert nicht
- (aufhängen/schwarzes Fenster/X11-Fehler/ ...).glTexSubImage
). 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.
- x11
- aber kein xv
als Ausgabe!x11
Ausgabe. Nun versuch
- -vo x11 -fs -zoom
. Siehst du irgendwelche Unterschiede?
- Nein?! OK, hier die Erleuchtung: SDLs x11
-Ausgabe verwendet
- xv
, falls vorhanden. Du musst dir keine Sorgen dazu
- machen ... Hinweis: Du kannst Xv via SDL mit den Optionen
- -forcexv und -noxv
erzwingen/deaktivieren.
- mplayer: ifo_read.c:1143: ifoRead_C_ADT_internal: Assertion
- nfo_length /
- sizeof(cell_adr_t) >= c_adt->nr_of_vobs' failed.
-
/dev
).-chapter
-Option.-cache
-Option (siehe Manpage).
- Versuche auch, den DMA-Modus für das DVD-Laufwerk mit
- hdparm
zu aktivieren (lies die
- DVD-Sektion der Dokumentation).mencvcd
-Script im
- TOOLS
-Unterverzeichnis. Damit können DVDs oder andere
- Filme ins VCD- oder SVCD-Format konvertiert oder sogar direkt auf eine
- CD gebrannt werden.cat file1 file2 > file3
mencoder -ovc copy -oac copy -o out.avi
- -forceidx file3.avi
-sid
Option korrekt verwenden!-chapter
-Option korrekt, z.B. so:
- -chapter 5-7
movie.avi.conf
, wenn dein Film movie.avi
- heißt, und leg diese Datei nach ~/.mplayer
oder in
- das gleiche Verzeichnis wie der Film selber.Es ist wichtig, einen häufigen Fehler zu berichtigen. Wenn Leute eine -Datei mit .AVI-Erweiterung sehen denken sie sofort, dass es keine MPEG- -Datei ist. Das ist nicht wahr. Zumindest nicht vollständig. Im Gegensatz -zur verbreiteten Ansicht kann solche eine Datei MPEG1-Video -enthalten.
- -Ein Codec ist nicht dasselbe wie ein Dateiformat.
-Beispiele für Video-Codecs sind: MPEG1, MPEG2, DivX, Indeo5,
-3ivx.
Beispiele für Dateiformate sind: MPG, AVI, ASF.
Theoretisch kannst du ein OpenDivX-Video und MP3-Audio in einer -.MPG-Datei vereinigen. Die meisten Player könnten es jedoch nicht -abspielen, da sie MPEG1-Video und MP2-Audio erwarten (im Gegensatz zu -AVI besitzt MPG nicht die nötigen Felder, die die Video- -und Audio-Streams beschreiben). Oder du könntest ein MPEG1-Video in ein -.AVI geben. ffmpeg und MEncoder können solche Dateien erzeugen.
- -MPEG-Dateien kommen in unterschiedlichen Erscheinungen:
- --vcd
-Option zum Abspielen verwenden.Serien von Frames bilden unabhängige Gruppen in MPEG-Dateien. Das
-bedeutet, dass du eine MPEG-Datei mit einem Standard-Dateitool (wie
-dd
oder cut
) schneiden und zusammenfügen kannst
-und dieses trotzdem vollständig funktionsfähig bleibt.
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 -aspect
bei der Wiedergabe verwendet
-werden muss.
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 OpenDMS. Microsoft -tät von der Verwendung stark ab und propergiert ASF/WMV. Als ob das -irgendwen kratzen würde.
- -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.
- -Hinweis: 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.
- -Es gibt 2 Arten von AVI-Dateien:
- --ni
-Option) abgespielt
- werden.MPlayer unterstützt zwei Arten des timings für AVI-Dateien:
- -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 MEncoder.
- -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.
- - -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 -dumpvideo
-und -dumpaudio
kannst du sie sogar extrahieren.).
Hinweis: Die meisten QuickTime-Dateien benutzen Sorenson- -Video und QDesign-Audio. Lies dazu die Sorenson-Codec-Sektion.
- - -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!
- -Der Videocodec von VIVO/1.0-Datei ist Standard-h.263. Der Videocodec -der VIVO/2.0 Dateien ist veränderter, nichtstandard-h.263. Bei -Audio ist es dasselbe, es ist g.723 (Standard) oder Vivo -Siren.
- -In den VIVO-Videocodec- und VIVO-Audiocodec-Sektionen findest du -Installationsanweisungen.
- - -FLI 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 -loop
-Option aktiviert hat). FLI-Dateien haben
-keine Keyframes, was zu verunstalteten Bildern kurz nach dem Spulen
-führt.
Ja, MPlayer kann RealMedia (.rm) Dateien lesen (demuxen). Spulen
-(seeking) funktioniert, jedoch muss die -forceidx
-Option
-verwendet werden (das Format unterstüzt Keyframes). Hier ist die Liste
-der unterstützten RealVideo- und RealAudio-Codecs.
NuppelVideo 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! encodiert). Spulen (seeking) -funktioniert.
- - -yuv4mpeg / yuv4mpeg2 ist ein -Dateiformat, das von den mjpegtools- -Programmen 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.
- - -Dieses Format wird auf alten Sega Saturn CD-Rom-Spielen verwendet.
- - -RoQ-Dateien sind Multimedia-Dateien, welche in gewissen ID-Spielen wie -Quake III und Return to castle Wolfenstein benutzt werden.
- - -Dies ist ein neues Dateiformat von Xiphophorus. Es kann beliebige Video- und
-Audio-Codecs enthalten, sowohl CBR als auch VBR. Man benötigt dazu
-installierte libogg-
und libvorbis-
Bibliotheken vor
-der Kompilierung von MPlayer, um sie wiedergeben zu können.
SDP ist ein -IETF-Standardformat, das Video- und/oder Audio-RTP-Streams beschreibt. (Dazu -werden die LIVE.COM Streaming -Media-Bibliotheken benötigt.)
- - -PVA ist MPEG-ähnliches Format, das von verschiedenen Windowsprogrammen -benutzt wird, die bei DVB-TV-Karten mitgeliefert werden (z.B. MultiDec, -WinTV).
- -Die PVA-Spezifikationen können an der folgenden Adresse -heruntergeladen werden: http://www.technotr -end.de/download/av_format_v1.pdf
- - -Das GIF-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 -loop
und -fixed-vo
können solche
-GIFs länger angezeigt werden.)
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.
- -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.
- -Wenn bei deiner Distribution die libungif nicht dabei ist, dann lade sie -von der -libungif-Homepage herunter. Detaillierte technische Informationen findest -du in den -GIF89a-Spezifikationen.
- - -MPlayer ist ein Movie-(Film-) und kein Media-Player. -Er kann auch einige Audioformate wiedergeben (diese sind in der unteren -Sektion beschrieben). Dies wird jedoch nicht empfohlen, und du solltest besser -xmms verwenden.
- - -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 -demuxer
, welche
-in der Manpage beschrieben wird, könnte dir in diesen Fällen
-helfen.
Benötigt richtig installierte libogg
und
-libvorbis
.
MPlayer kann die Bibliotheken von cdparanoia benutzen, -um CDDA-Dateien wiederzugeben. Alle Kommandozeilenparameter von cdparanoia -aufzuzählen gehört nicht zu den Aufgaben dieser Dokumentation.
- -Schau in der Manpage bei der Option -cdda
nach, wie mit ihr
-Parameter an cdparanoia übergeben werden können.
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 -XMMS-Inputplugins.
- -Um dieses Feature benutzen zu können, brauchst du XMMS und musst
-MPlayer mit ./configure --enable-xmms
compilieren. Funktioniert
-das nicht, dann musst du eventuell die Pfade für die XMMS-Plugings und die
-XMMS-Bibliotheken explizit mit --with-xmmsplugindir
und
---withxmmslibdir
angeben.
MPlayers Audio-Interface wird libao2 genannt. Es enthält -zur Zeit diese Treiber:
- -/dev/audio
) für BSD und Solaris8Linux-Soundkartentreiber haben Probleme mit der Kompatibilität. -MPlayer benutzt einen in vernünftig 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.
- -Andere Medienplayer wie z.B. -aviplay oder xine 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.
- -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).
- -Wenn du einen solchen nicht gut implementierten Audiotreiber verwendest,
-dann probier die Option -autosync
aus, die deine Probleme
-lösen sollte. Schau in der man-Page nach; dort findest du mehr
-Informationen dazu.
Einige Anmerkungen:
- --ao
- oss
(dies ist die Standardeinstellung). Wenn du kleine Fehler,
- Verzögerungen oder irgendetwas anderes ungewöhliches hörst,
- versuche mal -ao sdl
(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).-ao
- alsa5
verwenden, weil ALSA 0.5 einen fehlerhaften OSS-
- Emulationscode hat. MPlayer wird mit etwa so einer Meldung
- abstürzen:DEMUXER: Too many (945 in 8390980 bytes)
- video packets in the buffer!
-ao
- sun
benutzen, da ansonsten weder Video noch Audio funktionierne.hdparm -u1 /dev/cdrom
(man hdparm
). Das ist auch
- generell von Vorteil, wie du in der
- CD-ROM-Sektion nachleesn kannst.Unter Linux wird ein 2.4.x Kernel sehr empfohlen. Kernel 2.2 wird nicht -getestet.
- -Linux-Soundtreiber werden hauptsächlich von der freien Version von -OSS bereitgestellt. Diese Treiber werden inzwischen von denen des -ALSA-Projektes 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 -4Front Technologies unterstützt. -Sie unterstützen ebenfalls einige Nicht-Linux-Systeme.
- -SOUNDKARTE | -TREIBER | -Max kHz | -Max Anz. Kanäle | -Max Anz. gleichzeitiger Zugriffe[1] | -|||
---|---|---|---|---|---|---|---|
OSS/Free | -ALSA | -OSS/Pro | -andere | -||||
VIA onboard (686/A/B, 8233, 8235) | -via82cxxx_audio | -snd-via82xx | -- | - | 4-48 kHz oderr nur 48 kHz, abhängig vom Chipsatz | -- | - |
Aureal Vortex 2 | -keine | -keine | -OK | -Linux Aureal-Treiber - buffer size increased to 32k |
- 48 | -4.1 | -5+ | -
SB Live! | -Analog OK, SP/DIF funktioniert nicht | -beide OK | -beide OK | -Creatives OSS-Treiber (mit SP/DIF-Unterstützung) | -192 | -4.0/5.1 | -32 | -
SB 128 PCI (es1371) | -OK | -? | -- | - | 48 | -stereo | -2 | -
SB AWE 64 | -max 44kHz | -48kHz klingt schlecht | -- | - | 48 | -- | - |
GUS PnP | -keine | -OK | -OK | -- | 48 | -- | - |
Gravis UltraSound ACE | -nicht OK | -OK | -- | - | 44 | -- | - |
Gravis UltraSound MAX | -OK | -OK (?) | -- | - | 48 | -- | - |
ESS 688 | -OK | -OK (?) | -- | - | 48 | -- | - |
C-Media-Karten (welche genau?) | -nicht OK (zischt) (?) | -OK | -- | - | ? | -- | - |
Yamaha-Karten (*ymf*) | -nicht OK (?) (vielleicht mit -ao sdl ) |
- nur mit der OSS-Emulation von ALSA 0.5 OK UND
- -ao sdl (!) (?) |
- - | - | ? | -- | - |
Karten mit envy24-Chips (wie z.B. Terratec EWS88MT) | -? | -? | -OK | -- | ? | -- | - |
PC-Lautsprecher oder DAC | -OK | -none | -- | OSS-Treiber für den PC-Lautsprecher | -Der Treiber emuliert 44.1, vielleicht auch mehr. | -mono | -1 | -
[1]: Die Anzahl der Anwendungen, die zur -gleichen Zeit auf das Gerät zugreifen können.
- -Rückmeldungen zu diesem Dokument sind willkommen. Bitte sag uns, wie -MPlayer und deine Soundkarte(n) zusammen funktionieren.
- -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 -af
-filter1,filter2,...
wird benutzt, um Filter einzufügen, die nicht
-automatisch eingefügt werden. Diese Filter werden in der Reihenfolge
-abgearbeitet, wie sie angegeben wurden.
Beispiele:
- mplayer -af resample,pan movie.avi
Schickt die Audiodaten durch das Resample-Filter und danach durch den -Pan-Filter. Die Liste darf keine Leerzeichen enthalten, sonst klappt's nicht. -
- -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:
- - mplayer -af resample=11025,pan=1:0.5:0.5 -channels 1
- -srate 11025 media.avi
Das setzt die Ausgabefrequenz des Resampleplugins auf 11025Hz und -downmixt das Audio auf einen Kanal mit dem Pan-Filter.
- -Die allgemeine Kontrolle der Filterschicht geschieht über
--af-adv
. Diese Option kennt zwei Parameter:
force
0
1
2
3
4
5
6
7
list
-af
.Die Filterschicht wird auch von den folgenden allgemeinen Optionen -beeinflusst:
- --v
-channels
-srate
-format
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:
- -srate <8000-192000>
sloppy
srate
) abweicht. Diese Option
- kann benutzt werden, wenn das Playback nur sehr langsam startet.
- Diese Option ist standardmäßig aktiviert.type <0-2>
0
und
- 2
, der den zu benutzenden Resamplealgorithmus auswählt.
- Hier wählt 0
lineare Interpolation und 1
- mehrphasige Filterbänke mit Ganzahlarithmetik. 2
- 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 2
.
- Dafür benötigt sie aber auch die meiste CPU-Zeit.Beispiele:
- mplayer -af resample=44100:0:0
Dies setzt die Ausgabefrequenz des Resample-Filters auf exakt 44100Hz -mit linearer Interpolation.
- - -Der channels
-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:
nch <1-6>
1
und 6
, die die
- Anzahl der Ausgabekanäle festlegt. Dieser Parameter wird
- benötigt. Wenn er weggelassen wird, dann erhält man einen
- Laufzeitfehler.nr <1-6>
1
und 6
, die die
- Anzahl der Umleitungen
- festlegt. Dieser Parameter ist optional. Wenn er weggelassen wird, dann
- werden keine Umleitungen vorgenommen.von1:nach1:von2:nach2:von3:nach3...
0
und 5
, die
- festlegen, wohin jeder Kanal umgeleitet werden soll.Wenn nur nch
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.
Beispiel 1:
- mplayer -af channels=4:4:0:1:1:0:2:2:3:3 media.avi
Ä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.
- -Beispiel 2:
- mplayer -af channels=6:4:0:0:0:1:0:2:0:3 media.avi
Ä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.
- - -Der format
-Filter konvertiert zwischen verschiedenen
-Sampleformaten. Er wird automatisch aktiviert, wenn er von der Soundkarte
-oder einem anderen Filter benötigt wird.
bps <Nummer>
1
, 2
oder 4
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.f <format>
alaw
, mulaw
oder
- imaadpcm
, float
oder int
,
- unsigned
oder signed
, le
oder
- be
(little oder big endian).
- Dieser Parameter wird benötigt und führt zu einem Laufzeitfehler,
- wenn er weggelassen wird.Beispiel:
- mplayer -af format=4:float media.avi
setzt das Ausgabeformat auf 4 Bytes pro Sample Fließkommadaten.
- - -Der delay
-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:
d1:d2:d3...
Um die benötigte Verzögerung für die verschiedenen -Kanäle zu berechnen, tu folgendes:
- -Beispiel:
- mplayer -af delay=10.5:10.5:0:0:7:0 media.avi
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.
- - -Lautstärkeregelung in Software wird mit dem volume
-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:
v <-200 - +60>
-200
und
- +60
und gibt die Lautstärke in dB an. Der Standardlevel
- ist 0dB.c
Beispiel:
- mplayer -af volume=10.1:0 media.avi
verstärkt den Sound um 10.1dB und schneidet hart ab, wenn die -Lautstärke zu hoch wird.
- -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.
- - -Der equalizer
-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:
Band Nr. | Mittenfrequenz |
0 | 31.25 Hz |
1 | 62.50 Hz |
2 | 125.0 Hz |
3 | 250.0 Hz |
4 | 500.0 Hz |
5 | 1.000 kHz |
6 | 2.000 kHz |
7 | 4.000 kHz |
8 | 8.000 kHz |
9 | 16.00 kHz |
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.
- -Dieser Filter bekommt zehn Parameter:
- -g1:g2:g3...g10
-12
und
- +12
, die die Verstärkung in dB des jeweiligen Bandes
- angeben.Beispiel:
- mplayer -af equalizer=11:11:10:5:0:-12:0:5:12:12 media.avi
verstärkt den Sound in den oberen und unteren Frequenzbereichen und -löscht ihn um 1kHz beinahe komplett aus.
- - -Der pan
-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:
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:
- -nch <1-6>
1
und 6
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.l00:l01:l02:..l10:l11:l12:...ln0:ln1:ln2:...
0
und
- 1
. l[i][j]
- gibt an, wieviel vom Einganskanal j
in den Ausgabekanal
- i
zu mischen ist.Beispiel 1:
- mplayer -af pan=1:0.5:0.5 -channels 1 media.avi
mischt stereo auf mono.
- - -Beispiel 2:
- mplayer -af pan=3:1:0:1:0.5:0.5 -channels 3
- media.avi
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). - - -
Der sub
-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:
fc <20-300>
20
und 300
. 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.ch <0-5>
0
und 5
,
- die angibt, auf welchem Kanal der Sub-woofer-Kanal auszugeben ist.
- Der Standardkanal ist 5
. Die gesamte Anzahl an Kanälen
- wird auf ch
erhöht, falls dies notwendig sein sollte.Beispiel:
- mplayer -af sub=100:4 -channels 5 media.avi
fügt einen Sub-woofer-Kanal mit Grenzfrequenz von 100Hz hinzu und gibt -ihn auf Kanal 4 aus.
- - -Matrix encodierter Surround-Sound kann mit dem surround
-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:
d <0-1000>
0
und
- 1000
, 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 d
auf
- 15ms gesetzt werden, wenn d1 <= d2 ist, und auf 15 + 5*(d1-d2), wenn
- d1 > d2 ist. Der Standardwert d
ist 20ms.Beispiel:
- mplayer -af surround=15 -channels 4 media.avi
decodiert Surround-Sound mit einer Verzögerung von 15ms für die -hinteren Lautsprecher.
- - -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 -aop
aktiviert, welche
-list=plugin1,plugin2,...
als Argument hat. Das list
-wird benötigt, um festzulegen, in welcher Reihenfolge die Plugins benutzt
-werden sollen. Beispiel:
mplayer media.avi -aop list=resample,format
würde den Ton durch das Resampling-Plugin laufen lassen, gefolgt vom -Format-Plugins.
- -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:
- - mplayer media.avi -aop
-list=resample,format:fout=44100:format=0x8
würde die Ausgabefrequenz des Resample-Plugins auf 44100Hz and das -Ausgabeformat des Format-Plugins auf AFMT_U8 stellen.
- -Momentan können Audio-Plugins nicht im MEncoder verwendet -werden.
- - -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 automatisch.
-Dieses Plugin hat einen Schalter, fout
, welcher benutzt wird, um
-die gewünschte Ausgabefrequenz zu setzen. Der Standard ist 48kHz und wird
-in <Hz> angegeben.
Verwendung:
mplayer medium.avi -aop
-list=resample:fout=<erforderliche Frequenz in Hz, z.B. 44100>
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.
- - -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.
- -Verwendung:
- mplayer medium.avi -aop list=surround
Wenn deine Soundkarte keinen signed 16bit int
Datentyp
-unterstützt, kann dieses Plugin benutzt werden, um das Format in eines zu
-ändern, das deine Soundkarte versteht. Es hat nur einen Schalter
-format
, welcher auf eine Nummer gestellt werden kann, die man der
-Datei libao2/afmt.h
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.
Verwendung:
- mplayer medium.avi -aop
-list=format:format=<required output format>
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.
- -Wenn du eine Datei mit einer konstanten A/V-Sync-Differenz hast, dann benutze
-einfach die Tasten +
und -
, um das Timing während
-des Abspielens anzupassen. Wenn das OSD aktiviert ist, dann werden die aktuellen
-Werte angezeigt, was die Anpassung erleichtert.
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 volume
, 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.
Verwendung:
- mplayer media.avi -aop
-list=volume:volume=<0-255>
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.
- -Verwendung:
- mplayer media.avi -aop
-list=volume:softclip
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.
- -Verwendung:
- mplayer media.avi -aop list=extrastereo
- mplayer media.avi -aop list=extrastereo:mul=3.45
Der Koeffizient (mul
) 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.
Dieses Plugin maximiert die Lautstärke, ohne den Ton zu -verzerren.
- -Verwendung:
- mplayer media.avi -aop list=volnorm
Es gibt zwei Themen, die immer zu großen Streitereien und Beschimpfungen -auf der mplayer-users -Mailingliste führen. Das erste Thema dreht sich um den...
- - -Zum Hintergrund: Die Serie 2.95 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 Red Hat damit, eine stark veränderte CVS-Version des GCC -mitzuliefern. Diese Version nannten sie 2.96. 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 Mandrake folgte bald darauf Red Hats Beispiel -und lieferte ab Linux-Mandrake 8.0 ebenfalls den GCC 2.96 aus.
- -Die Aussagen zu dem Thema: Das GCC-Team hat jegliche Verbindung zu -der Version 2.96 bestritten und dazu eine offizielle Stellungnahme abgegeben. Viele Entwickler auf der -ganzen Welt trafen auf Probleme mit dem GCC 2.96 und empfahlen deswegen -andere Compilerversionen. Beispiele dafür sind MySQL, avifile und Wine. Andere interessante Links sind der - -Linux kernel news flash über den Kernel 2.4.17 und das -Voy-Forum. -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.
- -Du kannst dir auch die andere Seite der Geschichte auf dieser Seite 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 -kommentarlos 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.
- -Die Gegenwart: 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 --disable-gcc-checking
-bei configure
. Denk aber daran, dass du dann auf dich allein
-gestellt bist. Schick keine Fehlerberichte! 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.
Wenn du Probleme mit dem GCC 2.96 hast, so kannst du Pakete für die -Version 2.96-85 auf Red Hats FTP- -Server 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 -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:
- -gcc-core-XXX.tar.gz
von einem der GCC-Mirrorseiten herunter,
- wobei XXX
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 gcc-
- XXX.tar.gz
besser für dich geeignet.tar -xvzf gcc-core-XXX.tar.gz
mkdir gcc-build
configure
-Script liegt natürlich im
- Quelltextverzeichnis:cd gcc-build
- ../gcc-XXX/configure
make bootstrap
make install
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 divx_vbr.c
, 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.
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 configure
mit der Option --enable-runtime-
-cpudetection
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.
Uns misfällt die Tatsache, dass nVidia nur binäre Treiber für -XFree86 zur Verfügung stellt, die oft genug auch noch einige Fehler -enthalten. Auf mplayer-users 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 nVidia-Linux-Forum 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.
- - -Joe Barr wurde dadurch berüchtigt, dass er einen mehr als schlechten - -Bericht über MPlayer veröffentlichte. Er war der Meinung, -MPlayer sei schwierig zu installieren, aber andererseits mag er auch - -keine Dokumentation lesen. 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 -10 -Vorhersagungen zu Linux für 2002. In einem folgenden -Bericht -über xine 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:
- -- 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." -- -
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:
- -Marc Rassbach hat etwas über -den Kerl zu sagen:
- -- 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. -- -
Ein Zitat von Robert Munro von der mplayer-users -Mailingliste:
- --- - - diff -r f6d9baeec832 -r d4b79bf291c1 DOCS/de/video.html --- a/DOCS/de/video.html Tue Apr 18 08:02:39 2006 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1704 +0,0 @@ - - - - -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).
- -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.
-
Du solltest UNBEDINGT sicherstellen, dass die MTRR-Register richtig belegt -sind, denn sie können eine großen Geschwindigkeits-Schub -bringen.
- -Mache ein cat /proc/mtrr
:
--($:~)-- cat /proc/mtrr
-reg00: base=0xe4000000 (3648MB), size= 16MB: write-combining, count=9
-reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1
Diese Anzeige ist richtig. Sie zeigt meine Matrox G400 mit 16MB Speicher. -Ich habe die Einstellung von XFree 4.x.x, was die MTRR-Register automatisch -einstellt.
- -Wenn nichts funktioniert, musst du sie manuell setzen. Als erstes musst du -die Basisadresse finden. Dazu gibt es drei Möglichkeiten:
- -(--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000,
- 0xd4000000
- (--) SVGA: Linear framebuffer at 0xD8000000
lspci -v
):
- 01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown
- device 0525
- Memory at d8000000 (32-bit, prefetchable)
dmesg
):
- mga_mem_base = d8000000
So, nun gilt es, die Speichergröße zu finden. Dies ist sehr -einfach, konvertier einfach die Video-RAM-Größe nach Hexdezimal, -oder verwende diese Tabelle:
- -1 MB | 0x100000 | ||
2 MB | 0x200000 | ||
4 MB | 0x400000 | ||
8 MB | 0x800000 | ||
16 MB | 0x1000000 | ||
32 MB | 0x2000000 |
Du weißt die Base-Adresse und die Speichergröße? Lass uns -die MTRR Register einstellen! Für die Matrox Karte von oben -(base=0xd8000000) mit 32MB RAM (size=0x2000000) führst du einfach das -Folgende aus:
- - echo "base=0xd8000000 size=0x2000000
-type=write-combining" >| /proc/mtrr
Nicht alle CPUs unterstützen MTRRs. Zum Beispiel ältere K6-2s
-[die bei ca. 266MHz, stepping 0] unterstützen kein MTRR, aber stepping
-12 CPUs tun es (cat /proc/cpuinfo
gibt Aufschluss).
Mit XFree86 4.0.2 oder neureren Versionen kannst du die Hardware-YUV-Unterstützung
-deiner Grafikkarte mit Hilfe der XVideo-Erweiterungen benutzen. Das ist die
-Technik, die -vo xv
benutzt. Dieser Treiber unterstützt
-darüber hinaus die Anpassung von Helligkeit/Kontrast/Sättigung etc
-(es sei denn, du benutzt den alten und langsamen DirectShow DivX-Codec,
-welcher diese Anpassungen unabhängig vom Videoausgabetreiber unterstützt).
-Schau in der Manpage nach.
Um Xv zum Laufen zu bringen, musst du auf die folgenden Punkte achten:
- - (II) Loading extension XVideo
Anmerkung: Diese Meldung besagt nur, dass die XFree86-Erweiterung - geladen wird. Bei einer guten Installation sollte das immer der Fall - sein. Das heißt allerdings noch nicht, dass die - XVideo-Unterstützung der Grafikkarte auch geladen wurde!
-xvinfo
vergewsissern, das Teil der
- XFree86-Distribution ist. Es sollte einen längeren Text ausgeben,
- der ungefähr so aussieht:
- - X-Video Extension version 2.2 - screen #0 - Adaptor #0: "Savage Streams Engine" - number of ports: 1 - port base: 43 - operations supported: PutImage - supported visuals: - depth 16, visualID 0x22 - depth 16, visualID 0x23 - number of attributes: 5 - (...) - Number of image formats: 7 - id: 0x32595559 (YUY2) - guid: 59555932-0000-0010-8000-00aa00389b71 - bits per pixel: 16 - number of planes: 1 - type: YUV (packed) - id: 0x32315659 (YV12) - guid: 59563132-0000-0010-8000-00aa00389b71 - bits per pixel: 12 - number of planes: 3 - type: YUV (planar) - (...etc...) --
Damit MPlayer Xv benutzen kann, müssen die Pixelformate - "YUY2 packed" und "YV12 planar" unterstützt werden.
-configure
gibt eine
- entsprechende Meldung aus.Ältere 3dfx-Treiber hatten bekanntermaßen Probleme mit der
-XVideo-Beschleuningung, die entweder YUY2 oder YV12 nicht unterstützte.
-Stell sicher, dass du XFree86 Version 4.2.0 oder neuer verwendest, da diese
-Versionen mit YV12 und YUY2 keine Probleme haben. Vorherige Versionen, auch
-4.1.0, sind bei Verwendung von YV12 abgestürzt. Wenn du
-merkwürdige Effekte bei der Verwendung von -vo xv
-bemerktst, dann probier aus, ob mit SDL, das ebenfalls XVideo benutzen kann,
-diese Effekte verschwinden. In der SDL-Sektion stehen
-Details darüber.
Alternativ kannst du auch den NEUEN tdfxfb-Treiber mit -vo
-tdfxfb
verwenden! Lies dazu die tdfxfb-
-Sektion.
S3 Savage3D-Karten sollten problemlos funktionieren, aber bei Savage4- -Chips solltest du XFree86 4.0.3 oder neuer verwenden. Probier bei Problemen -den 16bpp-Farbmodus aus. Und der S3 Virge... Es gibt für ihn zwar Xv- -Unterstützung, aber die Karte selber ist so langsam, dass du sie besser -verkaufst.
- -Anmerkung: Momentan ist nicht ganz klar, welche Savage-Modelle -keine Unterstützung für YV12 in Hardware haben, sodass bei ihnen -der Treiber diese Konvertierung sehr langsam vornimmt. Wenn du deine Karte -deswegen verdächtigst, dann besorg dir einen neueren Treiber, oder -frag auf der MPlayer-Users-Mailingliste freundlich nach einem Treiber, der -MMX/3DNow unterstützt.
- - -nVidia ist für Linux keine optimale Wahl (auch wenn das laut nVidia -nicht stimmt). Du wirst -die binären Closed-Source-Treiber benutzen müssen, die auf nVidias -Webseite verfügbar sind. Die Standard-XFree86-Treiber bieten aufgrund -der nicht öffentlichen Quellen und auch nicht öffentlich -erhältlichen Spezifikationen der nVidia-Chips keine XVideo- -Unterstützung für diese Karten.
- -Soweit ich weiß enthalten die neuesten in XFree86 enthaltenen -Treiber XVideo-Unterstützung für GeForce2- und GeForce3-Modelle. -
- -Riva128-Karten bieten nicht einmal mit den binären nVidia-Treibern -XVideo-Unterstützung (beklag dich bei nVidia).
- - -n * (fps des Films) Hz
.Diese Chips befinden sich in vielen Laptops. Leider unterstützt der -in X 4.2.0 enthaltene Treiber nicht Xv, aber wir haben einen veränderten -Treiber mit Xv-Unterstützung für dich. - -Lade ihn hier herunter. Dieser Treiber wird von Stefan Seyfried zur -Verfügung gestellt.
- -Um die Wiedergabe von Video in DVD-Auflösung zu ermöglichen,
-ändere deine XF86Config
wie folgt:
Section "Device"
- [...]
- Driver "neomagic"
- Option "OverlayMem" "829440"
- [...]
- EndSection
Wenn du Xv mit einer Trident-Grafikkarte benutzen willst, dann installier -XFree86 4.2.0, sofern Xv nicht schon mit 4.1.0 funktioniert. Version 4.2.0 -enthält Unterstützung für Xv im Vollbild für -Cyberblade XP-Karten.
- - -Wenn du Xv mit Kyro-Karten (wie z.B. der Hercules Prophet 4000XT) verwenden -möchstest, dann solltest du die Treiber von der -PowerVR-Seite benutzen.
- - -Dieser Abschnitt versucht, in wenigen Worten zu beschreiben, was DGA -generell ist, und was der DGA-Videotreiber in MPlayer erreichen kann, -und was nicht.
- - -DGA ist die Abkürzung für Direct Graphics Access (direkter -Zugriff auf die Grafikhardware) und gibt Programmen die Möglichkeit, -unter Umgehung des X-Servers direkt den Framebuffer der Grafikkarte -zu verändern. Technisch gesehen wird das dadurch realisiert, dass -der Framebuffer in den virtuellen Adressraum des jeweiligen Prozesses -abgebildet wird. Das wird vom Kernel aber nur dann zugelassen, wenn der -Prozess Superuserprivilegien besitzt. Dazu musst du dich entweder als -root anmelden oder das SUID-bit des MPlayer-Binaries setzen (was -nicht empfohlen wird).
- -Von DGA gibt es zwei Versionen: DGA1 kommt mit XFree 3.x.x, und DGA2 -wurde mit XFree 4.0.1 eingeführt.
- -DGA1 bietet nur den oben beschriebenen Zugriff auf den Framebuffer. Die -Umschaltung des Videomodus klappt nur mit der XVidMode-Erweiterung.
- -DGA2 beinhaltet die Features der XVidMode-Erweiterung und erlaubt -außerdem, die Farbtiefe zu ändern. Damit kannst du also auf 32bit -Farbtiefe umschalten, auch wenn der X-Server gerade mit 15bit Farbtiefe -läuft.
- -DGA hat aber auch ein paar Nachteile. Die Funktionsweise scheint ein wenig -von der Grafikkarte und dem Grafikkartentreiber im X-Server abhängig zu -sein. Es fuktioniert also nicht auf jedem System...
- - -Stell als erstes sicher, dass X die DGA-Erweiterung lädt. Schau -in /var/log/XFree86.0.log nach:
- - (II) Loading extension XFree86-DGA
Wie du siehst ist XFree86 4.0.x oder neuer SEHR ZU EMPFEHLEN!
-MPlayers DGA-Treiber wird von ./configure
automatisch
-erkannt. Alternativ kannst du seine Compilierung mit --enable-
-dga
erzwingen.
Falls der Treiber nicht zu einer kleineren Auflösung wechseln
-konnte, dann experimentier mit den Optionen -vm
(nur bei
-X 3.3.x), -fs, -bpp, -zoom
, um einen Videomodus zu finden,
-in den der Film reinpasst. Momentan gibt es keinen Konverter :(
Werde root. DGA bruacht root-Privilegien, um direkt in den Grafikspeicher -zu schreiben. Wenn du MPlayer als normaler Benutzer starten -möchtest, dann installiere MPlayer mit dem SUID-Bit:
- -
- chown root /usr/local/bin/mplayer
- chmod 750 /usr/local/bin/mplayer
- chmod +s /usr/local/bin/mplayer
Jetzt funktioniert es auch als normaler Benutzer.
- -- Warnung: Sicherheitsrisiko!- -
- Dieses ist ein großes Sicherheitsloch. Tu das niemals - auf einem Server oder auf einem Computer, auf den auch andere Leute Zugriff - haben, da sie durch einen SUID-root-MPlayer root-Privilegien erlangen - können. -
Benutze jetzt die Option -vo dga
, und ab geht's (hoffe ich
-zumindest :))! Du solltest auch ausprobieren, ob bei dir die Option
--vo sdl:dga
funktioniert. Sie ist viel schneller.
Der DGA-Treiber ermöglicht es, die Auflösung zu ändern.
-Damit entfällt die Notwendigkeit der langsamen Softwareskalierung und
-bietet gleichzeitig ein Vollbild. Idealerweise würde DGA in die gleiche
-Auflösung schalten, die das Video (natürlich unter Beachtung des
-Höhen-/Breitenverhältnisses) hat, aber der X-Server lässt nur
-Auflösungen zu, die vorher in der /etc/X11/XF86Config
bzw.
-/etc/X11/XF86Config-4
definiert wurden. Diese werden durch
-sogenannte Modelines festgelegt und hängen von den Fähigkeiten
-deiner Grafikhardware ab. Der X-Server liest diese Konfigurationsdatei beim
-Start ein und deaktiviert alle Modelines, die sich nicht mit deiner Hardware
-vertragen. Du kannst die "überlebenden" Modelines anhand der X11-
-Logdatei herausfinden (normalerweise
-/var/log/XFree86.0.log
).
Diese Einträge funktionieren mit einem Riva128-Chip und dem
-nv.o
-X-Server-Treibermodul.
- Section "Modes" - Identifier "Modes[0]" - Modeline "800x600" 40 800 840 968 1056 600 601 605 628 - Modeline "712x600" 35.0 712 740 850 900 400 410 412 425 - Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 - Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan - Modeline "352x288" 25.10 352 368 416 432 288 296 290 310 - Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan - Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan - EndSection -- - -
DGA wird bei MPlayer an zwei Stellen benutzt: beim SDL-Treiber mit
--vo sdl:dga
oder beim DGA-Treiber selber (-vo dga
).
-Das oben gesagte gilt für beide Treiber. In den folgenden Abschnitten
-erkläre ich, wie der DGA-Treiber von MPlayer selber arbeitet.
Der DGA-Treiber wird durch die Option -vo dga
aktiviert. Sein
-Standardverhalten sieht vor, dass er in die Auflösung schaltet, die der
-Videoauflösung am nächsten kommt. Der Treiber ignoriert absichtlich
-die Optionen -vm
(Videomodusumschaltung aktivieren) und -
-fs
(Vollbildmodus erzwingen) - er versucht immer, so viel des Bildes
-wie möglich durch eine Änderung der Auflösung zu bedecken.
-Dadurch wird nicht ein einziger weitere CPU-Takt für die Skalierung des
-Bildes verwendet. Wenn du mit dem Modus nicht zufrieden bist, den der Treiber
-gewählt hat, dann kannst du ihn zwingen, denjenigen Modus zu
-wählen, der am besten zu dem mit den Optionen -x
und
--y
angegebenen Werten passt. Die Option -v
-veranlasst den DGA-Treiber, neben einigen anderen Dingen auch alle von deiner
-XF86-Konfiguration unterstützen Videomodi aufzulisten. Wenn DGA2
-verwendet wird, dann kannst du mit der -bpp
-Option die
-Verwendung einer bestimmten Farbtiefe erzwingen. Gültige Werte sind 15,
-16, 24 und 32. Es hängt dann von deiner Hardware ab, ob der Modus nativ
-unterstützt wird, oder ob eine (möglicherweise langsame)
-Konvertierung stattfindet.
Wenn du Glück hast und dir genug unbenutzter Grafikspeicher zur -Verfügung steht, um ein komplettes Bild aufzunehmen, dann wird der DGA- -Treiber Doppelpufferung verwenden, was zu regelmäßigerer -Wiedergabe führt. Der DGA-Treiber wird dir mitteilen, ob Doppelpufferung -angeschaltet ist oder nicht.
- -Doppelpufferung bedeutet, dass das nächste Bild deines Videos bereits -an einer anderen Stelle im Grafikspeicher aufgebaut wird, während das -aktuelle Bild angezeigt wird. Wenn das nächste Bild fertig ist, so wird -dem Grafikchip nur noch mitgeteilt, wo er das neue Bild im Speicher finden -kann. Somit holt sich der Chip seine Daten einfach von dort. In der -Zwischenzeit wird der andere, jetzt unbenutze Puffer wieder mit neuen -Videodaten gefüllt.
- -Doppelpufferung kann mit der Option -double
aktiviert und mit
--nodouble
deaktiviert werden. Momentan ist die Doppelpufferung
-standardmäßig deaktiviert. Wenn der DGA-Treiber verwendet wird,
-dann funktioniert das Onscreen-Display (ODS) nur dann, wenn auch die
-Doppelpufferung aktiviert ist. Andererseits kann die Doppelpufferung auch
-einen großen Einbruch bei der Geschwindigkeit hervorrufen, was sehr von
-der DGA-Implementierung der Treiber für deine Hardware abhängt (auf
-meinem K6-II+ 525 benötigt Doppelpufferung weitere 20% CPU-Zeit!).
Generell gesehen sollte der Zugriff auf den DGA-Framebuffer genauso
-schnell sein wie der X11-Treiber, wobei man zusätzlich noch ein Vollbild
-erhält. Die prozentualen Geschwindigkeitswerte, die MPlayer
-ausgibt, müssen mit Vorsicht genossen werden, da sie z.B. beim X11-
-Treiber nicht die Zeit beinhalten, die der X-Server tatsächlich zum
-Anzeigen des Bildes benötigt. Klemm ein Terminal an deinen seriellen
-Port und starte top
, wenn du wissen willst, wie's wirklich mit
-der Geschwindigkeit aussieht.
Allgemein betrachtet hängt die Geschwindigkeitsverbesserung von DGA -gegenüber dem "normalen" X11-Treiber sehr von deiner Grafikkarte und -davon ab, wie gut das X-Servermodul optimiert ist.
- -Wenn du ein langsames System hast, dann benutz besser eine Farbtiefe von -15 oder 16bit, da sie nur die halbe Bandbreite des 32bit-Farbmodus -benötigen.
- -Einge gute Idee ist auch die Verwendung von 24bit Farbtiefe selbst dann, -wenn deine Grafikkarte nativ nur 32bit unterstützt, da bei 24bit 25% -weniger Daten über den Bus transferiert werden müssen.
- -Ich habe schon gesehen, wie einige AVI-Dateien auf einem Pentium MMX 266 -wiedergegeben werden konnten. AMD K6-2-CPUs werden ab ca. 400 MHz oder -höher funktionieren.
- - -Die Entwickler von XFree sagen selber, dass DGA ein ganz schönes -Monstrum ist. Sie raten eher davon ab, es zu benutzen, da seine Implementation -bei bestimmten Treibern nicht immer ganz fehlerfrei war.
- -SDL (Simple Directmedia Layer, Simpele Schicht für den direkten
-Zugriff auf Mediageräte) bietet grundsätzlich eine einheitliche
-Schnittstelle zu Audio- und Videogeräten. Programme, die die SDL
-benutzen, kennen nur die SDL und brauchen kein Wissen darüber, welche
-Video- oder Audiotreiber die SDL tatsächlich benutzt. So kann z.B. eine
-Doom-Portierung mit der SDL die Svgalib, aalib, X11, fbdev und andere Treiber
-benutzen. Dazu musst du z.B. nur den Videotreiber angeben, indem du die
-Umgebungsvariable SDL_VIDEODRIVER
setzt. So lautet zumindest die
-Theorie.
Bei MPlayer benutzten wir damals die Softwareskalierroutinen der -X11-Treiber von SDL bei Grafikkarten, die keine Unterstützung für -XVideo hatten, bis wir unsere eigenen schrieben, die schneller und -hübscher waren. Wir benutzten damals ausßerdem SDLs aalib-Ausgabe. -Auch davon haben wir selber eine komfortablere Version geschrieben. SDLs DGA- -Code war besser als unserer - zumindest bis vor kurzem. Verstehst du, worauf -ich hinauswill? :)
- -SDL ist auch bei einigen fehlerbehafteten Treibern/Karten nützlich, -wenn das Video ruckelig abgespielt wird (und es nicht an einem langsamen -System liegt), oder wenn der Ton hinterherhinkt.
- -Die SDL-Videoausgabe unterstützt die Anzeige von Untertiteln -unterhalb des Films auf den schwarzen Balken (sofern diese vorhanden -sind).
- -Es gibt einige Komanndozeilenparameter bezüglich SDL:
--vo sdl:name
-ao sdl:name
-noxv
-forcexv
SDL-Tasten: | |||
F | - | Umschalten zwischen Vollbild/Fenstermodus | |
C | - | Wechselt zwischen den vorhandenen Vollbildmodi | |
W/S | - | gleiche Funktionen wie * und / (Mixersteuerung) |
-vo aa
!).
- Das ist ein Fehler in SDL, den ich nicht beheben kann (mit SDL 1.2.1
- getestet).Du must zuerst die svgalib und die dazugehörigen Devel-Pakete
-installieren, bevor du MPlayer compilierst, da es die Svgalib sonst
-nicht automatisch findet und den Treiber dazu nicht compiliert (das kann aber
-trotzdem erzwungen werden). Vergiss auch nicht, in
-/etc/vga/libvga.config
richtige Werte für deine Grafikkarte
-& deinen Monitor anzugeben.
Verwende nicht die -fs
-Option, da sie die Benutzung des
-Softwareskalierers erzwingt, und das ganze dann langsam wird. Wenn du diese
-Option wirklich brauchst, dann verwende auch -sws 4
, welche zwar
-schlechte Qualität produziert, dafür aber auch ein wenig schneller
-ist.
SVGAlib beinhaltet die EGAlib, und MPlayer kann damit jeden Film in -16 Farben bei den folgenden Modi anzeigen:
- -Der bpp-Wert (Bits pro Pixel) muss von Hand auf vier gesetzt werden:
- -bpp 4
-Die Auflösung des Films muss wahrscheinlich verkleinert werden, damit
-er in den EGA-Modus reinpasst:
- -vf scale=640:350
or
- -vf scale=320:200
-Dafür brauchen wir eine schnelle, aber schlechte Qualität
-produzierende Skalierroutine:
- -sws 4
-Eventuell muss die automatische Anpassung des
-Höhen-/Breitenverältnisses ausgeschaltet werden:
- -noaspect
ANMERKUNG: Die besten Ergebnisse bei EGA-Bildschirmen erhält
-man meiner Erfahrung nach, wenn man die Helligkeit ein wenig verringert:
--vf eq=-20:0
. Ich musste auch die Audiosamplerate erniedrigen,
-weil bei 44KHz der Sound nicht richtig funktionierte: -srate 22050
.
-
Du kannst das OSD und Untertitel mit dem expand
-Filter
-aktivieren. Die man-Page enthält die exakten Parameter.
./configure
erkennt automatisch, ob es den Framebuffertreiber
-(fbdev) compilieren soll oder nicht. Lies die Framebufferdokumentation in den
-Kernelquellen (Documentation/fb/*
); dort stehen mehr
-Informationen.
Falls deine Karte den VBE 2.0-Standard nicht unterstützt (wie z.B. -ältere ISA-/PCI-Karten wie die S3 Trio64) oder nur VBE 1.2 und -älter unterstützt: Tja, dann kannst du immer noch VESAfb benutzen, -benötigst aber den SciTech Display Doctor (ehemals UniVBE), der vor dem -Booten von Linux geladen werden muss. Benutze dazu eine DOS-Bootdiskette oder -was auch immer. Vergiss nicht, deine Kopie von UniVBE zu registrieren ;).
- -Die fbdev-Ausgabe kenn neben den üblichen Parametern noch einige -andere:
- --fb
/dev/fb0
)-fbmode
/etc/fb.modes
- stehen)-fbmodeconfig
/etc/fb.modes
)-monitor-hfreq
-monitor-vfreq
-monitor-dotclock
example.conf
- anWenn du in einen speziellen Modus wechseln willst, dann benutze
- - mplayer -vm -fbmode (Modusname)
-Dateiname
/etc/fb.modes
auswählen. Kann auch zusammen mit
- -x
und -y
benutzt werden. Die Option -
- flip
wird nur dann unterstützt, wenn das Pixelformat des
- Films mit dem Pixelformat des Videomodus übereinstimmt. Pass auf den
- bpp-Wert auf. fbdev wird den aktuell eingestellten benutzen, wenn du
- nicht mit -bpp
einen bestimmten angibst.-fs
wird nicht unterstützt. Du kannst keine
- Modi mit 8bpp oder weniger benutzen.echo -e '\033[?25l'
- oderr setterm -cursor off
) und den Bildschirmschoner
- (setterm -blank 0
) deaktivieren wollen. Um den Cursor wieder
- zu aktivieren: echo -e '\033[?25h'
oder setterm -
- cursor on
. Anmerkung: fbdev kann den Videomodus in Verbindung mit dem VESA- -Framebuffer nicht ändern. Frag auch nicht danach - das ist keine -Einschränkung seitens MPlayer.
- -Dieser Abschnitt beschäftigt sich mit der Unterstützung für -den BES (Back-End Scaler, Hardwareskalierungseinheit) bei Karten mit dem -Matrox-G200/G400/G450/G550-Chip durch das mga_vid-Kernelmodul. Es wird von -A'rpi aktiv entwickelt und bietet Unterstützung für Hardware- -VSYNC und Dreifachpufferung. Dieser Treiber funktioniert sowohl unter der -Framebufferconsole als auch unter X.
- -ANMERKUNG: Das Modul ist nur für Linux-Systeme verfügbar! -Auf nicht-Linux-Systemen solltest du statt dessen VIDIX -benutzen!
- -Installation:
-cd drivers
- make
/dev/mga_vid
:
- mknod /dev/mga_vid c 178 0
und lade das Kernelmodul:
-insmod mga_vid.o
dmesg
. Wenn die Angabe nicht stimmt, dann gib nach
- rmmod mga_vid
mithilfe der Option mga_ram_size
- die Größe explizit an:
- insmod mga_vid.o mga_ram_size=16
/etc/modules.conf
ein:
- alias char-major-178 mga_vid
Jetzt kopiere mga_vid.o
in das entsprechende Verzeichnis
- unterhalt von /lib/modules/<Kernelversion>/irgendwo
.
-
Jetzt gib ein:
-depmod -a
configure
wird automatisch /dev/mga_vid
finden
- und den 'mga'-Treiber erstellen. Die entsprechende Option für
- MPlayer lautet -vo mga
, wenn du mit dem matroxfb
- auf der Console arbeitest, oder -vo xmga
, wenn du unter
- XFree 3.x.x oder XFree 4.x.x arbeitest.Der mga_vid-Treiber kooperiert mit Xv.
- -Das /dev/mga_vid
-Gerät kann z.B. mit cat
-/dev/mga_vid
ausgelesen werden, um ein paar Informationen über
-den aktuellen Zustand zu erhalten. Die Helligkeit kann zusätzlich mit
-z.B. echo "brightness=120" > /dev/mga_vid
angepasst
-werden.
Dieser Treiber benutzt den tdfx-Framebuffertreiber des Kernels, um Filme
-mit YUV-Beschleunigung abzuspielen. Deswegen benötigst du einen Kernel
-mit tdfxfb-Unterstütztung. Danach musst du MPlayer compilieren
-und configure
mit der Option --enable-tdfxfb
-aufrufen.
MPlayer unterstützt die Ausgabe von Filmen via OpenGL. Wenn -aber deine Plattform/dein Treibe Xv unterstützt (was bei PCs mit Linux -praktisch immer der Fall ist), dann benutze besser Xv, da die OpenGL- -Geschwindigkeit deutlich geringer als die von Xv ist. Wenn du dagegen eine -X11-Implementation hast, die Xv nicht unterstützt, so mag OpenGL eine -brauchbare Alternative sein.
- -Leider unterstützden nicht alle Treiber die erforderlichen Features. -Die Utah-GLX-Treiber (für XFree86 3.3.6) unterstützen sie für -alle Karten. Auf http://utah- -glx.sourceforge.net findest du Details zur Installation.
- -XFree86(DRI) 4.0.3 oder neuer unterstützt OpenGL mit Matrox- und -Radeon-Karten, 4.2.0 und neuer unterstützen zustätzlich Rage128. -Auf http://dri.sourceforge.net -findest du Details zur Installation.
- - -AAlib ist eine Bilbiothek, mit der Grafiken im Textmodus angezeigt
-werden, wobei ein mächtiger Textmodusrenderer benutzt wird. Es gibt SEHR
-viele Programme, die das bereits unterstützen, wie z.B. Doom, Quake etc.
-MPlayer enthält einen sehr gut brauchbaren Treiber für
-AAlib. Wenn ./configure
feststellt, dass die AAlib installiert
-ist, dann wird anschließend der AAlib-Treiber gebaut.
Du kannst diese Tasten im AA-Fenster benutzen, - um die Render-Optionen zu beeinflussen: | |||
1 | - | Kontrast verringern | |
2 | - | Kontrast erhöhen | |
3 | - | Helligkeit verringern | |
4 | - | Helligkeit erhöhen | |
5 | - | Schnelles Rendern an-/ausschalten | |
6 | - | Wahl des Farbverteilungsmodus (keiner, Fehlerverteilung, - Floyd Steinberg) | |
7 | - | Bild invertieren | |
a | - | schaltet zwischen den MPlayer- und den AA-Tastenbelegungen um - |
Die folgenden Kommandozeilenparamter stehen zur VerfügungT:
--aaosdcolor=V
-aasubcolor=V
V kann folgende Werte annehmen: (0/normal, 1/dark ( = dunkel), - 2/bold ( = fett), 3/bold font ( = fette Schrift), 4/reverse ( = negative - Farben), 5/special)
Die AAlib selber bietet ebenfalls eine große Anzahl von Optionen. -Hier sind die wichtigsten:
- --aadriver
-aaextended
-aaeight
-aahelp
ANMERKUNG: Das Rendern ist sehr CPU-intensiv, vor allem, wenn AA unter X
-benutzt wird. AAlib braucht auf einer Nicht-Framebuffer-Console am wenigstens
-CPU-Zeit. Benutze SVGATextMode
, um einen möglichst
-großen Textmodus zu wählen, und genieß den Film! (Hercules-
-Karten als zweitem Ausgebegerät rocken :)) (Kann irgendjemand
-fbdev/hgafb beibringen, Konvertierung/Farbverteilung vorzunehmen? Wär
-nett :))
Wenn dein Computer nicht schnell genug ist, um alle Bilder anzuzeigen,
-dann benutz -framedrop
.
Wenn du auf einem Terminal abspielst, dann erzielst du mit dem Linux-
-Treiber (-aadriver linux
) bessere Ergebnisse als mit dem curses-
-Treiber. Allerdings benötigst du dafür auch Schreibrechte auf
-/dev/vcsa<terminal>
. Das wird nicht automatisch von aalib
-festgestellt, aber vo_aa versucht, den besten Modus herauszufinden. Lies http://aa-
-project.sourceforge.net/tune/ für weitere Tuningtipps.
Dieser Treiber ist vom Design her ein generischer Treiber für
-alle Grafikkarten, deren Bios VESA VBE 2.0+ unterstützt. Ein weiterer
-Vorteil dieses Treibers liegt darin, dass er versucht, den TV-Ausgang anzuschalten.
-
VESA BIOS EXTENSION (VBE) Version 3.0 Date: September 16, 1998 (Seite 70)
-hat folgendes zu sagen:
- Design für zwei Controller- -
- - VBE 3.0 unterstützt zwei Controller dadurch, dass angenommen wird, - dass beide Controller vom gleichen OEM (Hardwarehersteller) stammen und - unter Kontrolle desselben BIOS auf derselben Grafikkarte sitzen. Somit ist - es möglich, die Tatsache, dass zwei Controller vorhanden sind, vor der - Anwendung zu verbergen. Das verhindert zwar, dass beide Controller - unabhängig voneinander gesteuert werden, erlaubt andererseits aber, - dass Anwendungen weiterhin problemlos funktionieren, die vor Erscheinen der - VBE-3.0-Spezifikation geschrieben wurden. Die VBE-Funktion 00h (Auskunft - über die Controller, Return Controller Information) gibt - dementsprechend die kombinierten Informationen über beide Controller - zurück, was auch eine kobinierte Liste der vorhandenen Grafikmodi - einschließt. Sobald eine Anwendung einen Grafikmodus wählt, wird - der entsprechende Controller aktiviert. Alle weiteren VBE-Funtkionen werden - dann auf diesem Controller ausgeführt. -
Somit hast du also eine Chance, den TV-Ausgang mit diesem Treiber zum
-Laufen zu bringen.
-(Ich vermute, dass der TV-Ausgang normalerweise auf einer separaten
-Grafikkarte oder zumindest ein separater Ausgang ist.)
monitor-hfreq
, monitor-vfreq
,
- monitor-dotclock
angegeben werden (Kommandozeile,
- Konfigurationsdatei), dann bekommst du die höchstmögliche
- Bildwiederholrate (mit den generischen Timingformeln). Um dieses Feature
- zu aktivieren, müssen alle Monitoroptionen angegeben
- werden.Benutz diesen Treiber nicht mit GCC 2.96! Das wird nicht -funktionieren!
- - --vo vesa:opts
-double
aktivieren. Anmerkung: Du
- kannst diese Parameter auch weglassen, um die automatische
- Erkennung des DGA-Modus zu ermöglichen.Vermeide diesen Treiber, wenn's geht. Er benutzt X11 (mit den Shared-
-Memory-Erweiterungen) ohne jegliche Hardwarebeschleunigung. Unterstützt
-MMX-/3DNow/SSE-beschleunigte Softwareskalierung mit den Optionen -fs -
-zoom
, aber die ist trotzdem langsam. Die meisten Karten bieten
-Unterstützung für Hardwareskalierung. Benutze also -vo
-xv
in den meisten fällen bzw. -vo xmga
bei Matrox-
-Karten.
Ein Problem liegt darin, dass die meisten Grafikkartentreiber -Hardwarebeschleunigung nicht beim zweiten Ausgang/beim TV-Ausgang -unterstützen. In diesen Fällen siehst du nur ein grünes/blaues -Fenster anstelle des Films. Hier ist der X11-Treiber ganz praktisch, aber du -brauchst trotzdem eine schnelle CPU für die Softwareskalierung. Benutze -nicht den SDL-Ausgabetreiber und SDLs Skalierer, da dieser eine schlechtere -Qualität bietet!
- -Softwareskalierung ist sehr langsam. Versuch also besser, vorher in einen
-anderen Videomodus zu schalten. Das ist sehr einfach. Such die
-Modelines in der DGA-Sektion und füge sie
-in deine XF86Config
ein.
-vm
.
- MPlayer wird dann die Auflösung in diejenige ändern,
- in die dein Film am besten hineinpasst. Wenn das nicht funktioniert:Wenn du die soeben eingefügten Modi nicht wiederfindest, dann schau -dir die Ausgabe von XFree86 an. Einige Treiber können nicht die -niedrigen Pixelclock-Werte benutzen, die für niedrige Auflösungen -vonnöten sind.
- - -VIDIX ist die Abkürzung für VIDeo Interface for
-*niX (Video-Schnittstelle für *n*x).
VIDIX wurde entworfen,
-um eine Schnittstelle für schnelle Userspacetreiber für
-Grafikkarten zur Verfügung zu stellen, so wie es mga_vid für
-Matroxkarten tut. VIDIX ist ebenfalls sehr portabel.
Diese Schnittstelle wurde als Versuch entworfen, den vorhandenen -Schnittstellen für Videobeschleunigung (mga_vid, rage128_vid, -radeon_vid, pm3_vid) ein einheitliches Dach zu geben. Sie stellt einen -einheitlichen Highlevel-Zugang zu BES- und OV-Chips zur Verfügung -(BackEnd Scaler und Video Overlays). Sie stellt keine Lowlevel-Funktionen -für z.B. Grafikserver zur Verfügung. (Ich möchte nicht mit dem -X11-Leuten in Sachen Grafikmodusumschaltung konkurieren.) Das Ziel dieser -Schnittstelle liegt also einfach darin, die höchstmögliche -Geschwindigkeit bei der Videowiedergabe zu erreichen.
- - --vo vidix
XF86Config
. Du solltest da die installierte Menge
- Grafikspeicher minus 4MB eintragen. Wenn du über weniger als 8MB
- Grafikspeicher verfügst, dann solltest du stattdessen die Option
- "XaaNoPixmapCache" in der "screen"-Sektion verwenden.-vo vesa:vidix
(nur unter Linux) und
- -vo fbdev:vidix
Es ist in der Tat nicht wichtig, welcher Videoausgabetreiber mit -VIDIX verwendet wird.
- - -Ich hoffe, dass jeder von MPlayers Videoausgabetreibern das
-:vidix
-Untergerät erkennt.
Wenn VIDIX als Untergerät (-vo vesa:vidix
)
-benutzt wird, dann wird die Konfiguration des Videomodus vom
-Videoausgabegerät erledigt (kurz vo_server). Deswegen kannst du
-die gleichen Kommandozeilenparameter wie für vo_server verwenden.
-Zusätzlich ist die Option -double
global verfügbar.
-(Ich empfehle diese Option zumindest bei VIDIX und ATI-Karten.)
-vo
-xvidix
erkennt momentan die folgenden Optionen: -fs -zoom -x -y
--double
.
Du kannst den VIDIX-Treiber auch direkt als drittes Teilargument auf der
-Kommandozeile angeben:
-
- mplayer -vo xvidix:mga_vid.so -fs -zoom -double
- file.avi
-oder
- mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp
- 32 file.avi
-
-Das ist allerdings gefährlich, und du solltest das lieber nicht tun.
-Hierbei wird die Verwendung des angegebenen Treibers erzwungen, und das
-Resultat ist unklar (dein Computer könnte sogar abstürzen).
-Du solltest das wirklich NUR DANN tun, wenn du absolut sicher bist, dass es
-funktioniert und MPlayer es nicht eh schon automatisch auswählt.
-Berichte den Entwicklern von deinen Erfahrungen. Die korrekte Art, VIDIX zu
-benutzen, ist ohne das dritte Teilargument, sodass MPlayer automatishc
-den richtigen Treiber aussucht.
VIDIX ist eine sehr junge Technologie. Es ist deshalb gut möglich,
-dass sie auf deinem System nicht funktioniert. In diesem
-Fall liegt deine einzige Möglichkeit darin, VIDIX auf dein System zu
-portieren (hauptsächlich die libdha
). Aber es gibt immer
-noch die Hoffnung, dass es auf den Systemen funktioniert, auf denen auch X11
-funktioniert.
Da VIDIX direkten Zugriff auf die Hardware benötigt, musst du MPlayer -entweder als root starten oder der Programmdatei das SUID-Bit setzen -(WARNUNG: Das ist ein Sicherheitsrisiko!). Alternativ kannst du auch -spezielle Kernelmodule benutzen:
- -svgalib_helper
-Verzeichnis
- (das im svgalib-1.9.17/kernel/
-Verzeichnis gefunden werden
- kann, wenn du die Sourcen von der svgalib-Seite heruntergeladen hast) und
- lade es mit insmod.svgalib_helper
-Verzeichnis nach
- mplayer/main/libdha/svgalib_helper
.libdha/Makefile
befindet.Momentan werden die meisten ATI-Karten unterstützt, von der Mach64 -bis hin zur neuesten Radeon.
- -Es gibt zwei compilierte Binaries: radeon_vid
für Radeons
-und rage128_vid
für Rage128-Karten. Du kannst entweder eine
-der beiden erzwingen oder das VIDIX-System automatisch alle verfügbaren
-Treiber ausprobieren lassen.
Matrox G200,G400,G450 und G550 funktionieren.
- -Der Treiber unterstützt Videoequalizer und sollte fast genauso schnell -wie der Matrox-Framebuffer sein.
- - -Es gibt einen Treiber für den Trident Cyberblade/i1-Chipsatz, der auf -VIA Epia-Mainboards eingesetzt wird.
- -Der Treiber wurde von Alastair M. Robinson geschrieben und weiterentwickelt, -welcher auch die neuesten Treiberversionen auf seiner -Homepage zum -Download anbietet. Dieer Treiber wird bei MPlayer immer sehr schnell nach -Updates implementiert, sodass die CVS-Version von MPlayer immer auf dem -aktuellen Stand sein sollte.
- - -Auch wenn es einen Treiber für 3DLabs GLINT R3-Chips und Permedia3-Chips -gibt, so hat noch niemand diese getestet. Feedback wird deswegen gern gesehen. -
- - -"DirectFB ist eine Grafikbibliothek, deren Zielplattform eingebettete -Systeme sind. Sie bietet maximale Hardwarebeschleunigung bei minimalem -Ressourcenverbrauch und minimalem Overhead." - Zitat von http://www.directfb.org.
- -Ich lasse die DirectFB-Features in dieser Sektion weg.
- -Obwohl MPlayer nicht als "Videoprovider" bei DirectFB -unterstützt wird, bietet dieser Treiber Videowiedergabe mittels -DirectFB. Die Wiedergabe ist - natürlich - hardwarebeschleunigt. Bei -meiner Matrox G400 war der DirectFB genauso schnell wie XVideo.
- -Versuche, immer die neueste Version von DirectFB zu verwenden. Du kannst
-DirectFB-Optionen mit der -dfbopts
-Option auf der Kommandozeile
-angeben. Layer-Auswahl erfolgt durch Angabe als Teilargument, z.B. mit
--vo directfb:2
(Layer -1 ist der Standardwert: automatische
-Layerauswahl).
Bitte lies die DirectFB-Sektion für generelle -Informationen über DiretcFB.
- -Dieser Videoausgabetreiber wird auf einer Matrox G400 den CRTC2 (des -zweiten Ausgangs) aktivieren und damit das Video unabhängig vom -primären Ausgang anzeigen.
- -Anweisungen, um das zum Laufen zu bringen, stehen in der Techniksektion oder direkt auf der Homepage von -Ville Syrjala's.
- -Anmerkung: Uns ist es nicht gelungen, das zum Laufen zu bringen, aber -anderen schon. Wie auch immer, eine Portierung des CRTC2-Codes für -mga_vid ist bereits in Arbeit.
- - -MPlayer unterstützt Karten mit dem Siemens-DVB-Chipsatz von -Herstellern wie Siemens, Technotrend, Galaxis oder Hauppauge. Die neuesten -DVB-Treiber gibt's auf der Linux TV- -Seite. Wenn du in Transcodierung in Software machen willst, dann brauchst -du eine CPU mit mindestens 1GHz.
- -configure
sollte automatisch deine DVB-Karte erkennen. Wenn
-es das nicht tut, dann erzwinge DVB-Unterstützung mit
- ./configure --enable-dvb -- -
Wenn die ost-Headerdateien nicht an ihrem normalen Platz liegen, dann gib -explizit den Pfad zu ihnen an:
- -- ./configure --with-extraincdir=<DVB-Quellenverzeichnis>/ost/include -- -
Dann compiliere und installiere wie sonst auch.
- - -Hardwaredecodierung (Abspielen von Standard-MPEG1/2-Dateien) geschieht mit -diesem Kommando:
- -- mplayer -ao mpegpes -vo mpegpes file.mpg|vob -- -
Softwaredecodierung oder die Transcodierung verschiedener Formate nach -MPEG1 klappt so:
- -- mplayer -ao mpegpes -vo mpegpes -vf lavc deinedatei.ext - mplayer -ao mpegpes -vo mpegpes -vf expand,fame deinedatei.ext -- -
Beachte, dass DVB-Karten nur bestimmte Bildhöhen unterstützen:
-288 und 576 für PAL und 240 und 480 für NTSC. Du musst das
-Bild vorher skalieren, wenn die Höhe nicht einer der oben erwähnten
-entspricht: -vf scale=width:height
. DVB-Karten
-unterstützen eine Vielzahl von horizontalen Auflösungen wie z.B.
-720, 704, 640, 512, 480, 352 etc. Sie skalieren horizontal selber in
-Hardware, sodass du meistens nicht in horizontaler Richtung skalieren musst.
-Bei einem 512x384-DivX kannst du folgendes probieren:
- mplayer -ao mpegpes -vo mpegpes -vf scale=512:576,lavc -- -
Wenn du einen Widescreen-Film hast und du ihn nicht auf die volle
-Höhe skalieren möchtest, dann kannst du den
-expand=w:h
-Filter benutzen, um schwarze Balken
-hinzuzufügen. Um ein 640x384-DivX anzuschauen:
- mplayer -ao mpegpes -vo mpegpes -vf expand=640:576,fame file.avi -- -
Wenn deine CPU für 720x576-DivX zu langsam ist, dann skalier -herunter:
- -- mplayer -ao mpegpes -vo mpegpes -vf scale=352:576,lavc file.avi -- -
Wenn sich die Geschwindigkeit nicht verbessert, dann skalier auch in -vertikaler Richtung:
- -- mplayer -ao mpegpes -vo mpegpes -vf scale=352:288,lavc file.avi -- -
Für ein OSD und Untertitel kannst du das OSD-Feature des expand-
-Filters benutzen. Anstelle von expand=w:h
oder
-expand=w:h:x:y
benutzt du dafür
-expand=w:h:x:y:1
(der fünfte Parameter :1
-schaltet die OSD-Anzeige an). Eventuell willst du das Bild ein wenig nach
-oben schieben, um unten mehr Platz für die Untertitel zu haben.
-Vielleicht willst du auch die Untertitel hochschieben, wenn sie ansonsten
-außerhalb des Sichtbereiches des Fernsehers liegen. Das kannst du mit
--subpos <0-100>
erreichen, wobei -subpos 80
-meistens eine gute Wahl darstellt.
Um Filme mit weniger/mehr als 25 Bildern pro Sekunde auf einem PAL-
-Fernseher abzuspielen, oder wenn du eine langsame CPU hast, verwende die
-Option -framedrop
.
Um das Höhen-/Breitenverhältnis des DivX beizubehalten und -trotzdem die optimalen Skalierungsparameter zu verweden (Hardwareskalierung -in horizontaler Richtung und Softwareskalierung in vertikaler Richtung unter -Beibehaltung des richtigen Höhen-/Breitenverhältnisses), benutze -den neuen dvbscale-Filter:
- --für 4:3 TV: -vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1,lavc -für 16:9 TV: -vf dvbscale=1024,scale=-1:0,expand=-1:576:-1:-1:1,lavc -- - -
Wenn du Fragen hast oder an der Diskussion über zukünfitge -Features teilnehen willst, dann melde dich an unserer MPlayer-DVB -Mailingliste an. Denk bitte daran, dass dort Englisch gesprochen wird.
- -Für die Zukunft kannst du mit der Möglichkeit, das OSD und die -Untertitel mit den eingebauten Funktionen der DVB-Karten anzuzeigen, mit -flüssigerer Wiedergabe von Filmen mit weniger/mehr als 25 Bildern pro -Sekunde und mit Echtzeittranscodierung zwischen MPEG2 und MPEG4 (partielle -Decompression) rechnen.
- - -TODO: Bitte schreib hier jemand ein paar Informationen rein.
- - -MPlayer unterstützt die hardwarebeschleunigte Wiedergabe mit -den Karten Creative DXR3 und Sigma Designs Hollywood Plus. Beide Karten -basieren auf dem em8300-MPEG-Decoderchip von Sigma Designs.
- -Als erstes brauchst du korrekt installierte DXR3/H+-Treiber, Version
-0.12.0 oder neuer. Diese Treiber und weitere Installationsanweisungen findest
-du auf der Seite DXR3 & Hollywood
-Plus for Linux. configure
sollte die Karte automatisch
-finden. Die Compilierung sollte auch problemlos funktionieren.
-vo dxr3:prebuf:sync:norm=x:<device>
overlay
aktiviert das Overlay anstelle des TV-Ausgangs.
- Dafür brauchst du ein korrekt konfiguriertes Overlaysetup. Am
- einfachsten konfigurierst du das Overlay mit dem Tool
- autocal
. Danach starte MPlayer mit dxr3-Ausgabe und
- ohne Overlay anzuschalten. Starte dxr3view
. Mit dxr3view
- kannst du die Overlayeinstellungen verändern und siehst die
- Auswirkungen sofort. Eventuell wird dieses Feature irgendwann vom
- MPlayer-GUI unterstützt. Wenn du das Overlay richtig
- eingestellt hast, dann brauchst du dxr3view nicht mehr laufen zu
- lassen.prebuf
schaltet Prebuffering ein. Das ist ein Feature des
- em8300-Chips, das es ihm ermöglicht, mehr als nur ein Bild
- gleichzeitig zu speichern. Das bedeutet, dass MPlayer in diesem
- Modus versucht, den Puffer ständig mit Daten gefüllt zu halten.
- Wenn du einen langsamen Rechner hast, dann wird MPlayer
- wahrscheinlich die meiste Zeit über knapp oder genau 100% der CPU-
- Zeit belegen. Das ist vor allem dann der Fall, wenn du echte MPEG-Streams
- (z.B. DVDs, SVCDs etc) abspielst, da MPlayer nicht nach MPEG
- encodieren muss und den Puffer sehr schnell wird füllen
- können.-framedrop
-Option zu verwenden, um die A/V-
- Sync zu erhalten.sync
aktiviert die neue sync-Methode. Dieses Feature ist
- momentan noch experimentell. Bei dieser Methode beobachtet MPlayer
- ständig die interne Uhr des em8300-Chips. Weicht diese von
- MPlayers Uhr ab, so wird die des em8300-Chips zurückgesetzt,
- sodass dieser alle Frames verwirft, die hinterherhängen.norm=x
setzt den TV-Standard der DXR3-Karte, ohne dafür
- externe Programme wie em8300setup
zu benötigen.
- Gültige Werte sind 5 = NTSC, 4 = PAL-60, 3 = PAL. Spezielle Standards
- sind 2 (automatische Erkennung mit PAL/PAL-60) und 1 (automatische
- Erkennung für PAL/NTSC), da sie den Standard in Abhängigkeit
- der FPS des Films setzen. norm = 0 (Standard) ändert
- den momentan eingestellten TV-Standard nicht.<device>
= Gerätenummer wählt die zu
- verwendene em8300-Karte, falls du mehrere davon hast.:prebuf:sync
scheint sehr gut zu funktionieren, wenn du DivX
- abspielst. Es gab Berichte von Leuten, die Probleme mit prebuf
- bei der Wiedergabe von MPEG1/2-Dateien hatten. Du
- solltest es also zuerst ohne Optionen probieren. Wenn du Sync-Probleme
- hast, dann probier :sync
aus.-ao oss:/dev/em8300_ma-X
X
die Gerätenummer ist
- (0 bei nur einer Karte).-aop list=resample:fout=xxxxx
-ac hwac3
).-vf lavc/fame
-vf
- lavc/fame
.-vf lavc=<quality>:25
verwenden, besonders dann, wenn
- du auch Prebuffering verwendest. Warum aber 25 und nicht 29.97? Tja, die
- Sache ist, dass das Bild bei 29.97 unruhig wird. Wir wissen leider nicht,
- warum das so ist. Wenn du Werte zwischen 25 und 27 benutzt, dann wird das
- Bild stabil. Momentan können wir das nur als gegeben hinnehmen.-vf expand=-1:-1:-1:-1:1,lavc
-ac hwac3
-ao oss
-Option nach. Sie muss angegeben werden, um den
- DXR3-Ausgang anstelle der Soundkarte anzugeben. Dieser Treiber ist ein Anzeigetreiber (-vo zr
), der
-verschiedeene MJPEG-Aufnahme-/-Wiedergabekarten unterstützt. Getestet
-wurde er mit DC10+ und Buz, und er sollte auch mit der LML33 und der
-Original-DC10 funktionieren. Dieser Treiber encodiert jedes Bild nach JPEG
-und schickt es dann an die Karte. Für die Encodierung wird
-libavcodec benutzt und dementsprechend auch benötigt. Mit dem
-speziellen cinemara-Modus kannst du Filme auch tatsächlich im
-Breitbildformat anschauen, wenn du zwei Beamer und zwei MJPEG-Karten hast.
-Abhängig von der Qualität und Auflösung braucht dieser Treiber
-eine Menge CPU-Power. Benutz also besser die -framedrop
-Option,
-wenn deine Maschine zu langsam ist. Anmerkung: Mein AMD K6-2 350MHz ist
-durchaus in der Lage, Filme in VCD-Größe mit -
-framedrop
wiederzugeben.
Dieser Treiber benutzt den Kerneltreiber, den du unter http://mjpeg.sourceforge.net
-herunterladen kannst. Dieser muss also vorher schon funktionieren.
-configure
erkennt automatisch vorhandene MJPEG-Karten. Wenn
-nicht, dann erzwinge zr mit
- ./configure --enable-zr -- -
Die Ausgabe kann mit diversen Optionen gesteuert werden. Eine -vollständige Liste findest du in der Manpage. Eine kurze Auflistung gibt -dir auch
- -- mplayer -zrhelp -- -
Sachen wie das OSD und Skalierung werden nicht von diesem Treiber
-erledigt, aber sie können natürlich durch Filter realisiert werden.
-Beispiel: Angenommen, du hast einen Film mit einer Auflösung von
-512x272
, und du möchtest ihn im Vollbild auf deiner DC10+
-anschauen. Du hast dann drei Möglichkeiten: den Film auf eine Breite von
-768
, 384
oder 192
zu skalieren. Aus
-Geschwindigkeits- und Qualitätsgründen würde ich empfehlen,
-den Film auf 384x204
mit dem bilinearen Algorithmus zu
-skalieren. Die Kommandozeile sieht dazu wie folgt aus:
- mplayer -vo zr -sws 0 -vf scale=384:204 movie.avi -- -
Das Beschneiden des Bildes kann mit dem crop
-Filter geschehen
-oder vom Treiber selber vorgenommen werden. Angenommen, der Film ist zu breit
-für die Anzeige deiner Buz, und du möchtest -zrcrop
-benutzen, um den Film schmaler zu machen. Dann benutzt du folgendes
-Kommando:
- mplayer -vo zr -zrcrop 720x320+80+0 benhur.avi -- -
Mit dem crop
-Filter sieht es so aus:
- mplayer -vo zr -vf crop=720:320:80:0 benhur.avi -- -
Mehrfache Verwendung von -zrcrop
aktiviert den
-cinerama-Modus. Das heißt, du kannst das Bild über mehrere
-Fernseher oder Beamer verteilen, um eine größere
-Anzeigefläche zu erreichen. Angenommen, du hast zwei Beamer. Der linke
-hängt an deiner Buz an /dev/video1
, und der rechte
-hängt an deiner DC10+ an /dev/video0
. Der Film hat eine
-Auflösung von 704x288
. Nehmen wir weiter an, dass du den
-rechten Beamer schwarz/weiß betreiben möchtest, und dass du auf
-dem linken Beamer Bilder mit der Qualitätsstufe 10
haben
-möchtest. Dann benutzt du dafür das folgende Kommando:
- mplayer -vo zr -zrdev /dev/video0 -zrcrop 352x288+352+0 -zrxdoff 0 -zrbw \ - -zrcrop 352x288+0+0 -zrdev /dev/video1 -zrquality 10 movie.avi -- -
Wie du siehst gelten die Optionen vor dem zweiten -zrcrop
nur
-für die DC10+ und die Optionen nach dem zweiten -zrcrop
nur
-für die Buz. Die maximale Anzahl an MJPEG-Karten, die am
-cinerama-Modus teilnehmen, liegt bei vier, sodass du dir eine
-2x2
-Videowand basteln kannst.
Zuletzt ein wirklich wichtiger Hinweis: Starte oder beende auf keinen Fall -XawTV während der Wiedergabe, da das deinen Computer zum Absturz bringen -wird. Du kannst aber problemlos ZUERST XawTV, DANN MPlayer -starten, warten, bis MPlayer fertig ist und ZULETZT XawTV -beenden.
- -Dieser Trieber kann Video mit dem Blinkenlights UDP-Protokoll wiedergeben. -Wenn du nicht weißt, was -Blinkenlights ist, dann brauchst du diesen Treiber auch nicht.
- - -Unter Linux hast du zwei Möglichkeiten, den TV-Ausgang deiner -G400 anzuschalten:
- -WICHTIG: Anweisungen für die Matrox G450/G550 und deren -TV-Ausgänge findest du in der nächsten Sektion!
- --vo x11 -fs -zoom
, aber das wird LANGSAM sein
- und den Macrovision-Kopierschutz aktiviert haben. (Du kannst
- Macrovision mit diesem Perlscript
- umgehen.)TVout/matroxset
und gib make
.
- ein. Installiere matroxset
in ein Verzeichnis, das
- in deinem PATH liegt.fbset
nicht installiert hast, dann gehe nach
- TVout/fbset
und gib make
ein. Installiere
- fbset
in ein Verzeichnis, das in deinem PATH liegt.TVout/
in den
- MPlayer-Quellen und führe dort ./modules
als
- root aus. Deine Textmodusconsole wird danach in den Framebuffermodus
- umschalten, aus dem es keinen Weg zurück gibt!./matroxtv
.
- Es ird dir ein simples Menü präsentieren. Drücke
- 2 gefolgt von ENTER. Jetzt solltest du auf dem Fernseher
- das gleiche Bild wie auf dem Monitor sehen. Wenn das TV-Bild (PAL ist
- die Standardeinstellung) merkwürdige Streifen enthält, dann
- war das Script nicht in der Lage, die Auflösung richtig zu
- setzen (standardmäßig 640x512). Probier andere im Menü
- angebotene Auflösungen aus und/oder experimentier mit fbset.So. Die nächste Aufgabe ist es, den Cursor auf tty1 (oder - woauchimmer) verschwinden zu lassen, und den Bildschirmschoner - auszuschalten. Führ folgende Kommandos aus:
- -echo -e '\033[?25l'
oder setterm -cursor off
- setterm -blank 0
Wahrscheinlich möchtest du das in ein Script packen und dabei
- gleich den Bildschirm löschen. Um den Cursor wieder
- anzuschalten:
- echo -e '\033[?25h'
oder setterm -cursor on
Yeah, cool! Starte die Wiedergabe mit mplayer -vo mga -fs -
- screenw 640 -screenh 512 <Dateiname>
-
- (Wenn du X benutzt, dann wechsel jetzt auf den matroxfb mit z.B. CTRL-
- ALT-F1!)
-
- Ändere die 640x512, wenn du eine andere Auflösung
- verwendest.
-
- Genieß die ultra-schnelle und featurereiche Wiedergabe
- mit dem Matrox-TV-Ausgang (sogar noch besser als Xv)!
Niemand übernimmt Verantwortung für irgendetwas oder jegliche -Schäden, die durch diese Dokumentation entstehen.
- -Kabel für die G400: Der vierte Pin des CRTC2-Steckers liefert -das Composite Video-Signal. Erde liegt am sechsten, siebten und achten Pin. -(Informationen von Balázs Rácz)
- -Kabel für die G450: Der erste Pin des CRTC2-Steckers liefert -das Composite Video-Signal. Erde liegt am fünften, sechsten, siebten und -fünfzehnten (5, 6, 7, 15) Pin. (Information von Balázs Kerekes)
- -Unterstützung für den TV-Ausgang dieser Karten wurde erst -kürzlich implementiert und ist noch nicht in den Standardkerneln -enthalten. Momentan kann das mga_vid-Modul nicht benutzt werden, wenn -ich recht informiert bin, da der G450/G550-Treiber nur in einer Konfiguration -arbeitet: Der erste CRTC-Chip (mit den vielen Features) am ersten Display -(meistens der Monitor), und der zweite CRTC (kein BES - -Erläuterungen zum BES gibt's in der G400-Sektion oben) am Fernseher. -Somit kannst du momentan nur den fbdev-Treiber benutzen.
- -Der erste CRTC kann momentan nicht an den zweiten Ausgang umgeleitet -werden. Der Author des matroxfb-Kernelmoduls, Petr Vandrovec, wird auch das -irgendwann unterstützen, indem die Ausgabe des ersten CRTC auf beiden -Ausgängen angezeigt wird, wie es momentan auch für die G400 -empfohlen wird (siehe oben).
- -Der dafür benötigte Kernelpatch und eine detaillierte Anleitung -kann auf -http://www.bglug.ca/matrox_tvout/ gefunden werden.
- -Momentan möchte ATI keinen einzigen ihrer TV-Ausgabe-Chips unter -Linux unterstützen, da sie die Macrovision-Technologie lizensiert -haben.
- - -Benutze bei anderen Karten einfach den VESA-Treiber -ohne VIDIX. Dafür brauchst du aber eine schnelle CPU.
- -Nur eines musst du tun - das TV-Kabel vor dem Booten eingeteckt -haben, da das BIOS sich nur einmal während der POST-Prozedur -initialisiert.
- - -Lies diese -URL.
- - -Zuerst MUSST du die Closed-Soure-Treiber von http://nvidia.com herunterladen. Ich werde -Installation und Konfiguration nicht im Detail beschreiben, da diese -außerhalb der Aufgabe dieses Dokuments liegt.
- -Nachdem du sichergegangen bist, dass XFree86, XVideo und die 3D-
-Beschleunigung funktionieren, ändere die XF86Config
, und
-passe das folgende Beispiel deiner Karte an:
-Section "Device" - Identifier "GeForce" - VendorName "ASUS" - BoardName "nVidia GeForce2/MX 400" - Driver "nvidia" - #Option "NvAGP" "1" - Option "NoLogo" - Option "CursorShadow" "on" - - Option "TwinView" - Option "TwinViewOrientation" "Clone" - Option "MetaModes" "1024x768,640x480" - Option "ConnectedMonitor" "CRT, TV" - Option "TVStandard" "PAL-B" - Option "TVOutFormat" "Composite" - -EndSection -- -
Natürlich ist der wichtige Teil die TwinView-Optionen.
- - -