4.1. CD-ROM Laufwerke

Abspielen von Standard Video-CDs:

mplayer -vcd tracknummer [-cdrom-device Device]

Beispiele:
mplayer -vcd 1
mplayer -fs -vcd 2 -cdrom-device /dev/hdc

Hinweise:
- Mounte die VCD NICHT und spiele die DAT-Dateien nicht direkt ab! Es funktioniert vielleicht unter Windows, aber wird unter Linux nicht funktionieren. Du musst diese CDs direkt mit der -vcd Option abspielen!
- VCDs haben normalerweise 2 Tracks: ein Daten-Track (enthält das Autostart-Windows Abspielprogramm, Karaoke-Daten usw.) und einen Mode-2-Track (den Film), also versuche zuerst -vcd 2 !
- das Standard-Gerät (Device) ist /dev/cdrom. Wenn dein Gerät ein anderes ist, musst du einen symbolischen Link setzten oder es mit einer Option angeben!

Aus der Linux-Dokumentation:

Einige CDROM-Laufwerke verfügen über die Möglichkeit die Abtastgeschwindigkeit zu verändern. Es gibt mehrere Gründe für das Ändern der Geschwindigkeit eines CDROM-Laufwerks. Schlecht erzeute CDROMs arbeiten bei einer geringeren Abtastrate möglicherweise besser als bei der maximalen. Moderne CDROM-Laufwerke können sehr hohe Abtastraten erreichen (bis zu 50-fach ist normal). Es wurde berichtet, dass diese Laufwerke bei diesen hohen Geschwindkeiten Lesefehler erzeugen; das herabsetzen der Geschwindigkeit kann die Datenverluste verringern. Zu guter letzt erzeugen einige dieser Laufwerke störend laute Geräusche, die eine niedrigere Geschwindigkeit ebenfalls reduzieren kann.

Der empfohlene Weg die Lesegeschwindigkeit zu verringen ist mittels des Programmes 'setcd'. Es ist recht alt, aber es sollte nicht zu schwer im Internet zu finden sein. (UPDATE : das neue hdparm hat eine Option dafür !) Verwendung:

    setcd -x

Du kannst auch folgendes probieren:

    echo current_speed:4 >/proc/ide/[CDROM-Device]/settings

Aber man braucht dazu Root-Privilegien. Ich verwende auch diesen Befehl:

    echo file_readahead:2000000 >/proc/ide/[CDROM-Device]/settings

für 2MB Lesepuffer für die Dateien (nützlich bei zerkratzten CDs). Es ist auch zu empfehlenswert das CD-Rom via 'hdparm' einzustellellen:

    hdparm -d1 -a8 -u1 (CDROM-Device)

um den DMA-Zugriff, Vorauslesen und IRQ-Unmasking zu aktivieren. (Wenn du das nicht verstehst *lies die hdparm manpage*)

Bitte schau dir "/proc/ide/[CDROM-Gerät]/settings" an um das CD-ROM feinein- zustellen.

4.2. DVD Wiedergabe

Ja, richtige DVD-Unterstützung wurde erreicht. Du brauchst nicht mehr manuell VOB Dateien von der Disk abspielen und über die Dateien im video_ts Verzeichnis bescheid wissen, du musst dir nicht gedanken machen, ob es sich um eine verschüsselte DVD handelt oder nicht (in alten Versionen von MPlayer musstest du den '-dvdauth /dev/dvd' Parameter verwenden, wenn es eine verschlüsselte DVD war), und du brauchst nicht mal mehr die DVD mounten um sie spielen zu können :)

WICHTIGER HINWEIS: Bitte erwarte _KEINE_ erweiterten Merkmale von der DVD- Wiedergabe. Dies ist die erste Version mit richtiger DVD-Unterstützung in MPlayer und wir sind beschäftigt damit, Fehler zu suchen und grundlegende DVD-Player Funktionen zu implementieren.

MPlayer verwendet libdvdread, welches eingebaute Unterstützung für IFO-Parsing, lesen von Navi Blöcken und Authentifizierung/Entschlüsselung hat. Libdvdread verwendet libdvdcss für die letztgenannten Funktionen. Also musst du libdvdcss und libdvdread heruntergeladen, kompiliert und installiert haben, BEVOR du den ./configure Script von MPlayer, welcher libdvdread automatisch erkennt, ausführst.

Natürlich müsst libdvdcss und libdvdread nicht neu kompilieren, wenn du MPlayer neu kompilierst (z.B. aufgrund einer neuen CVS-Version), wenn diese 2 Pakete bereits installiert sind.

Verwendung von MPlayer zum DVD-Spielen:

-dvd <title_id>  Aktiviert die DVD-Unterstützung und wählt den Titel aus.
-chapter <chapter_id>  Wählt das DVD-Kapitel (Standard: wiedergabe von Kapitel 1). Beispiel : -chapter 5-10 oder -chapter -9
-dvdangle <angle_id>  Zum aus wählen der Kamera-Perspektive (Standard: 1)
-alang <Ländercode>  Der Ländercode sagt MPlayer welche Sprache bevorzugt werden soll. Gib die Option -v nach den DVD-Optionen an und betrachte die Ausgabe, um eine Liste der verfügbaren Sprachen zu erhalten.
Zum Beispiel :
  -alang hu,en - versucht zuerst den ungarischen Ton zu finden und spielt den englischen Ton, falls es jenen nicht findet.
-slang <Ländercode>  Aktiviert die DVD-Untertitel. Der Ländercode sagt MPlayer, welche Sprache bevorzugt werden soll. Gib die Option -v nach den DVD-Optionen an und betrachte die Ausgabe, um eine Liste der verf|gbaren Sprachen zu erhalten.
Zum Beispiel :
  -slang hu,en - versucht zuerst die ungarischen Untertitel abzubilden und zeigt die englischen Untertitel, dalls es jene nicht findet.
-sid <subtitel_id>  Aktiviert die DVD-Untertitel Ausgabe für einen bestimmten Kanal durch die gegebenen subtitel_id (Die Werte können von 0-31 gehen). Nützlich um z.B. schlecht erstellte DVDs abzuspielen, wo eine Länderangabe den falschen Kanal wählt.
-csslib <pfad/dateiname> (alte DVD Option) Diese Option wird benützt um übliche Lage libcss.so zu überschreiben.
-dvdauth <DVD Gerät (Device)>  (alte DVD Option) Aktiviert die DVD Authentifizierung des angegebenen Devices.
-dvdkey <CSS key> (alte DVD Option) Wenn keine DVD dekodiert wird, gibt diese Option den CSS key an, welcher benötigt wird, um die DVD zu knacken. (Der CSS key wird bei der Authentifizierung mit der DVD angezeigt).

Standard-Gerät ist /dev/dvd, du kannst das in config.h (compile time Option) ändern, oder du kannst es mit Hilfe der -dvd-device Option angeben:

    mplayer -dvd 1 -dvd-device /dev/dvd

    mplayer -dvd 1 -slang de -dvd-device /dev/dvd

    mplayer -dvd 1 -slang de -dvd-device /dev/dvd -chapter 20-25

    mplayer -dvd 2 -alang en -chapter 5 -dvdangle 2

    mplayer -dvdauth /dev/dvd /mnt/cd/video_ts/vts_03_1.vob

    mplayer -dvdkey C005D4A16D vts_03_1.vob

4.3. DVD Wiedergabe FAQ

Q: Beim Abspielen der DVD erscheint folgender Fehler:
mplayer: ifo_read.c:1143: ifoRead_C_ADT_internal: Assertion nfo_length / sizeof(cell_adr_t) >= c_adt->nr_of_vobs' failed.
A: Dies ist ein bekannter libdvdread 0.9.1 Bug, er sollte in 0.9.2 gefixt sein.
 
Q: Kann ich libdvdread und libdvdcss z.B. auf meinem süssen Sparc/Solaris kompilieren?
A: Wer weiss ... Bitte teste es und sag uns bescheid. Aber es wird gesagt, dass es funktionieren sollte. Bitte lese auch die Documentation von libdvdread und seiner homepage. Wir sind nicht die Autoren von libdvdread.
 
Q: Was ist mit den Untertiteln? Kann MPlayer sie anzeigen?
A: Ja! Siehe oben im DVD-Kapitel.
 
Q: Wie kann ich den Reginal-Code meine DVD-Laufwerks einstellen ? I habe kein Windows!
A: Verwende das 'regionset'-Tool: http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz
 
Q: Also MPlayer kann DVDs abspielen? Dann musst du DeCSS verwerden! Du bist verhaftet unter dem XYZ#$ Paragraphen von dem--
A: Weiche von mir Arschloch, es ist kein DeCSS-Code im MPlayer. MPlayer verwendet libdvdread durch linken und libdvdread verwendet libdvdcss durch dynamisches laden.
 
Q: Muss ich (setuid) root/setuid sein, dass fibmap_mplayer DVDs spielen kann?
A: No, musst du nicht. Das ist Vergangenheit :) Natürlich brauchst du aber die Zugriffsrechte für das DVD-Laufwerk (in /dev).
 
Q: Wie kann ich ... (füge hier erwartetes Features eines DVD Player ein)?
A: Die aktuelle Implementation ist die Erste mit einer richtiger DVD-Player Funkionalität. Als erstes möchten wir aber bestehende Bugs lösen und grund- legende Funtionen einbauen, bevor wir zu den neuen Features gehen.
 
Q: Wo kann ich die libdvdread und libcss Pakete bekommen?
A: Von der Seite von Ogle: http://www.dtek.chalmers.se/groups/dvd.
 
Q: Ist es möglich nur ausgewählte Kapitell abzuspielen ?
A: Ja, siehe in der -chapter Option.
 
Q: Meine DVD-Wiedergabe ist träge !
A: Benutze die -cache Option (lies die Manpage!). Falls es immer noch nicht geht, überprüfe den Anfang dieser Dokumentation für geeignete libdvdread+libdvdcss Kombinationen. Versuche auch den DMA-Modus für das DVD-Laufwerk zu aktivieren.