2.7. Untertitel und OSD

MPlayer kann Untertitel bei Filmen darstellen. Momentan werden die folgenden Formate unterstützt:

MPlayer kann (außer den ersten drei) die oben gelisteten Zielformate ausgeben (speichern), und zwar mit folgenden Optionen:

MEncoder kann DVD-Untertitel im VOBsub-Format ausgeben.

Die Kommandozeilenoptionen unterscheiden sich leicht von den anderen Formaten:

VOBsub-Untertitel.  VOBsub-Untertitel bestehen aus einer (ein paar Megabyte) großen .SUB Datei, und optional .IDX- und/oder .IFO-Dateien. Wenn du Dateien hast wie beispiel.sub, beispiel.ifo (optional), oder beispiel.idx, musst du MPlayer die Optionen -vobsub beispiel [-vobsubid id] übergeben (vollständige Pfadangabe optional). Die Option -vobsubid verhält sich wie die Option -sid für DVDs, du kannst damit Tracks (Sprachen) wählen. Im Falle, dass -vobsubid nicht angegeben wird, wird MPLayer versuchen, auf die Sprachen zurückzugreifen, die mit der Option -slang angegeben werden, und sonst auf langidx zurückzugreifen, um die Untertitelsprache zu wählen. Wenn dies fehlschlägt, wird es keine Untertitel geben.

Andere Untertitel.  Die anderen Formate bestehen aus einer Textdatei, die Zeit-, Platzierungs- und Textinformationen enthält. Gebrauch: Wenn du eine Datei hast wie beispiel.txt, musst du die Option -sub beispiel.txt (vollständiger Pfad optional) angeben.

Untertitel-Timing und Platzierung angeben:

-subdelay sek
Verzögert Untertitel um sek Sekunden. Kann negativ sein. Dieser Wert wird zum Zeitpositionszähler hinzuaddiert.
-subfps RATE
Gibt die Frame/sek-Rate der Untertiteldatei (Fließkommazahl) an.
-subpos 0-100
Gibt die Position der Untertitel an.

Wenn du bei Benutzung einer MicroDVD-Untertiteldatei eine zunehmende Verzögerung zwischen Film und Untertiteln feststellst, ist vermutlich die Framerate vom Film und der Untertiteldatei unterschiedlich. Beachte bitte, dass das MicroDVD-Untertitelformat absolute Framenummern benutzt, daher sollte die Option -subfps bei diesem Format benutzt werden. Wenn du dieses Problem auf Dauer beheben willst, musst du die Framerate manuell konvertieren. MPlayer kann diese Konvertierung für dich übernehmen:

mplayer -dumpmicrodvdsub -fps untertitel_fps -subfps avi_fps -sub untertitel_dateiname dummy.avi

Für Ausführungen über DVD-Untertitel lies den Abschnitt DVD.

2.7.1. MPlayers eigenes Untertitelformat (MPsub)

MPlayer führt ein eigenes Untertitelformat, genannt MPsub ein, welches von Gabucino entworfen wurde. Im Grunde ist dessen Hauptfeature, dass es dynamisch zeitbasiert funktioniert (obwohl es auch einenFrame-basiertenn Modus hat). Beispiel (von DOCS/tech/mpsub.sub):

FORMAT=TIME
# erste Zahl  : warte solang, bis der vorige Untertitel verschwunden ist
# zweite Zahl : stelle den aktuellen Untertitel soundsolange dar

15 3
Es war einmal...

0 3
in einer weit entfernten Galaxie...

0 3
Naboo wurde angegriffen.

Du siehst, das Hauptziel war, die Bearbeitung/Timing/Zusammenfügen/Schneiden von Untertiteln leicht zu machen. Und angenommen, du bekommst einen SSA-Untertitel, der aber schlecht getimed/verzögert ist hinsichtlich deiner Version eines Films, dann machst du einfach

mplayer dummy.avi -sub quelle.ssa -dumpmpsub

Eine dump.mpsub-Datei wird dann im aktuellen Verzeichnis erstellt, die den Text der Untertitelquelle enthält aber im MPsub-Format ist. Dann kannst du leicht Sekunden vom/zum Untertitel hinzufügen.

Untertitel werden mit einer Technik dargestellt namens 'OSD', On Screen Display. OSD wird benutzt, um die aktuelle Zeit, den Lautstärke- und Spulbalken darzustellen.

2.7.2. OSD und Untertitel installieren

Du benötigst das MPlayer-Schriftenpaket, um das OSD/SUB-Feature nutzen zu können. Es gibt mehrere Möglichkeiten, dies zu erreichen:

  • Benutze das Tool zur Font-Erstellung in TOOLS/subfont-c. Das ist ein vollständiges Tool, um von TTF/Type1/usw.-Font zu mplayer-font-pkg zu konvertierten (lies TOOLS/subfont-c/README für Details).

  • Benutze das Font-erzeugende GIMP-Plugin in TOOLS/subfont-GIMP (Anmerkung: Du brauchst auch das HSI RAW-Plugin, siehe http://realtime.ssu.ac.kr/~lethean/index.php?pagename=MplayerKoreanFonts).

  • die Benutzung eines TrueType-Fonts (TTF), nach Maßstäben der freetype-Bibliothek. Version 2.0.9 oder höher ist unbedingt notwendig! Dann hast du zwei Möglichkeiten:

    • benutze die Option -font /pfad/zu/beispiel_font.ttf, um eine TrueType-Font-Datei bei jeder Gelegenheit anzugeben

    • erstelle einen Symlink:

      ln -s /pfad/zu/beispiel_font.ttf ~/.mplayer/subfont.ttf

    Wenn MPlayer mit fontconfig-Unterstützung compiliert wurde, werden die oben genannten Methoden nicht funktionieren, statt dessen erwartet die Option -font einen fontconfig-Fontnamen, und der Standard ist die Schriftart Sans-serif. Um eine Liste der fontconfig bekannten Dateien zu erhalten, benutze fc-list. Beispiel: -font 'Bitstream Vera Sans'

  • Lade Schriftartenpakete von der MPlayer-Seite herunter, die fertig sind für die Benutzung. Beachte: Momentan sind die verfügbaren Schriftarten begrenzt auf ISO 8859-1/2-Unterstützung, es gibt jedoch andere, von Benutzern erstellte Schriftarten (inklusive Koreanisch, Russisch, ISO 8859-8 usw.) im FTP-Verzeichnis contrib/font.

    Du solltest eine passende font.desc-Datei haben, die Schriftpositionen eines Unicode-Fonts auf die aktuelle Codepage des Untertiteltexts abbildet. Eine andere Möglichkeit ist, die Untertitel in UTF-8 codiert zu haben und die Option -utf8 zu verwenden oder die Untertiteldatei einfach <video_name>.utf zu nennen und sie in dasselbe Verzeichnis wie das Video zu legen. Recodierung von unterschiedlichen Codepages nach UTF-8 kann mit den Programmen konwert oder iconv gemacht werden.

    Tabelle 2.1. Ein paar URLs

    URLKommentar
    ftp://ftp.mplayerhq.hu/MPlayer/releases/fonts/ ISO-Fonts
    ftp://ftp.mplayerhq.hu/MPlayer/contrib/fonts/ verschiedene Fonts von Benutzern
    http://realtime.ssu.ac.kr/~lethean/index.php?pagename=MplayerKoreanFonts Koreanische Fonts und RAW-Plugin

Solltest du nicht-TTF-Schriften gewählt haben, UNZIPpe die heruntergeladene Datei nach ~/.mplayer oder $PREFIX/share/mplayer. Benenne dann eins der entpackten Verzeichnisse um, oder erstelle einen Symlink mit dem Namen font, zum Beispiel:

ln -s ~/.mplayer/arial-24 ~/.mplayer/font

Du müsstest jetzt eine Zeitanzeige in der oberen linken Ecke des Films sehen (schalte sie mit der Taste o aus).

(Untertitel sind immer aktiviert, lies bitte die Manpage, wenn du wissen möchtest, wie man sie deaktiviert)

Das OSD hat 4 Zustände (wechsle mit o):

  1. Lautstärkeleiste + Positionsanzeige (Standard)
  2. Lautstärkeleiste + Positionsanzeige + Zeitangabe + prozentuale Dateiposition
  3. Lautstärkeleiste + Positionsanzeige + Zeitangabe + prozentuale Dateiposition + Gesamtzeit des Mediums
  4. nur Untertitel

Du kannst das Standardverhalten ändern, indem du die Variable osdlevel in der Konfigurationsdatei setzt oder die Kommandozeilenoption -osdlevel verwendest.

2.7.3. OSD-Menü

MPlayer hat eine komplett benutzerdefinierbare OSD-Menü-Schnittstelle.

Anmerkung

Das Einstellungen-Menü ist momentan NICHT IMPLEMENTIERT!

Installation

  1. compiliere MPlayer mit Übergabe von --enable-menu an ./configure
  2. stelle sicher, dass du ein OSD-Font installiert hast
  3. kopiere etc/menu.conf in dein .mplayer-Verzeichnis
  4. kopiere etc/input.conf in dein .mplayer-Verzeichnis oder in das systemweite MPlayer-Konfigurationsverzeichnis (Standard: /usr/local/etc/mplayer)
  5. überprüfe und editiere input.conf, um Menüsteuerungstasten zu aktivieren (das ist dort beschrieben).
  6. starte MPlayer mit folgendem Beispiel:

    $ mplayer -menu datei.avi

  7. drücke irgendeine Menütaste, die du definiert hast