Gentoo VdrMplayer

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Grundlagen

Das Mplayer-plugin dient der der Wiedergabe von Media-Dateien fast jeder Art, egal ob Video oder Audio. Damit ist es beispielsweise möglich, Filme im DivX-Format (MPEG4) abzuspielen, ohne dabei den VDR zu verlassen. Die jeweiligen Video/Audio-Formate werden dabei über die DVB-Karte geleitet. Das bietet sich für einen Multimedia-PC fürs Wohnzimmer natürlich an, da man ein Gerät hat, was alles wiedergeben kann... also ein Multitalent. Aber auch Nachteile entstehen dabei: Der integrierte MPEG-Dekoder der Karte kann nur Video im MPEG2/1-Format dekodieren. Das macht es notwendig, die Daten eines MPEG4-Videos on_the_fly während des Abspielens per Software in eine MPEG2-Stream zu wandeln und an die DVB-Karte zu schicken. Dieser kann dann über den TV-Ausgang der Karte wiedergegeben werden. Genau das bewerkstelligt das Mplayer-Plugin mithilfe des Programms MPlayer. Das Plugin ist sozusagen ein Tunnel zwischen MPlayer und dem VDR. Die Wandlung der Video-Daten von MPEG4 oder ähnlichen Formaten wird also in Echtzeit vorgenommen, was einen entsprechend schnellen Rechner voraussetzt. Erfahrungsgemäß sollten aber Prozessoren >= 1GHz ausreichen.

Installation

Zur Installation des Mplayer muß an dieser Stelle gesagt werden, daß das MPlayer-ebuild eine Unmenge an Abhängigkeiten (dependencies) mit sich bringt. Deswegen werden wir hier zwei Varianten der Installation behandeln: Systeme mit XFree und welche ohne XFree. Das ist von System zu System unterschiedlich und es muß eventuell viel mit den USE-Flags experimentiert werden. Was aber unbedingt in /etc/make.conf in den USE-Flags stehen sollte, ist dvb. Als erstes beschreiben wir mal den Weg für Rechner mit installiertem Xfree.

System mit XFree

Dort ist eigentlich nicht viel zu beachten. Die Installation erfolgt wie die anderen Plugins auch. Der MPlayer steht als Abhängigkeit mit im ebuild des vdrplugin-mplayer und wird auch gleich mit installiert. Das sieht dann etwa so aus:

vdr root # ACCEPT_KEYWORDS="~x86" emerge -p vdr-mplayer

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild  N   ] media-libs/libsdl-1.2.5-r2
[ebuild  N   ] media-libs/libungif-4.1.0.1b
[ebuild  N   ] sys-libs/lib-compat-1.2
[ebuild  N   ] media-libs/divx4linux-20030428-r1
[ebuild  N   ] media-libs/libsndfile-1.0.5
[ebuild  N   ] media-libs/faad2-1.1
[ebuild  N   ] media-libs/libdv-0.99-r1
[ebuild  N   ] media-libs/libmikmod-3.1.10-r1
[ebuild  N   ] media-sound/xmms-1.2.7-r25
[ebuild  N   ] media-libs/win32codecs-0.90.1-r2
[ebuild  N   ] media-libs/xvid-0.9.2-r1
[ebuild  N   ] media-video/mplayer-0.90-r5
[ebuild  N   ] media-video/vdrplugin-mplayer-0.8.1

Die Ausgabe kann wie gesagt variieren, je nach USE-Flags in /etc/make.conf und schon installierter Programme/Libs. Man sieht aber, das MPlayer mit installiert wird und als letztes das Plugin. Auch hier darf natürlich mit "USE" experimentiert werden, um die Menge der zu installierenden Programme zu "drücken". Empfohlen sei das dem erfahrenem Benutzer. Wer nicht weiß was er tut, sollte lieber die Abhängigkeiten so hin nehmen und installieren wie angegeben. Dazu folgt mehr in nächsten Rubrik.

System ohne XFree

Ohne XFree muss man ein bisschen mit den USE-Variablen experimentieren.

#USE="dvb -qt -kde -arts -x -gnome" emerge -p vdrplugin-mplayer

Mit einer solchen USE-Variable verhindert man, dass der mplayer mit arts und X11-Support gebaut wird. Besonders das -arts ist wichtig, es zöge die komplette kde-base lib hoch und den XFree dazu - und das wollen wir ja nicht.

Mit einer USE-Variablen, die nur "dvb" enthält, hat man beim Installieren ohne X also keinen Spaß - ein Anpassen ist dringend erforderlich!

Hier sind meine ?UseFlags für Mlayper ohne X11

#USE="dvb lirc -qt -kde -gnome -X -arts -opengl -gtk -gtk2 -xmms -xv"

Gruss Christian {christian at visual-page dot de}

Konfiguration

Desweiteren werden auch die zur Funktion benötigten Dateien zur Quellenauswahl mit temporären Einträgen mittels der Installation erzeugt. Logischerweise sollten man die Einträge dann seinem System anpassen.

/etc/vdr/plugins/mplayersources.conf

Diese Datei hat zunächst Einträge in der Form Mountpoint;Beschreibung;Num. Um diese mit sinvollen Angaben zu füllen, sollten die Mountpoints natürlich wie in /etc/fstab angegeben werden. Das sieht dann in etwa so aus:

/video;Festplatte;0
/mnt/cdrom;CDRom;1

Beim Einsatz von autofs ist darauf zu achten als letzten Eintrag eine 0 zu verwenden, damit das Mounten des Laufwerkes nur für autofs zur Verfügung steht und nicht über die mount.sh gesteuert werden kann. Wer kein autofs einsetzen möchte und die Laufwerke über das OSD mounten/umounten will, sollte dieses Skript erstellen:

zcat /usr/share/doc/vdrplugin-mplayer-0.8.1/mount.sh.example.gz > /usr/bin/mount.sh
chmod +x /usr/bin/mount.sh

Die zentrale Konfigurationsdatei für das Plugin befindet sich wie die anderen auch unter /etc/conf.d/. Dabei handelt es sich um die vdr.mplayer. Die Einstellungen hierfür sind folgende:

* #MPLAYER="/usr/bin/mplayer.sh"
  Hier wird angegeben, wo sich mplayer.sh befindet. Dieses Skript wird aufgerufen, wenn Media-Dateien über über
  das MPlayer-Plugin abgespielt werden.

* #MOUNT="/usr/bin/mount.sh"
  Hier wird angegeben, wo sich mount.sh befindet. Dieses Skript dient zum Mounten/Unmounten von Mountpoints über das OSD

Die Angaben dieser Datei müssen auskommentiert werden und mit gültigen Pfaden gefüllt werden, da sie zum Betrieb des Plugins notwendig sind. Die Default-Werte hier sind OK wenn man sich an die Angaben in der Dokumentation hält.

Falls wider Erwarten "Montieren fehlgeschlagen" im OSD erscheint, sollte man mal schauen, ob das Programm "eject" installiert ist

#emerge eject

Um das Plugin zu laden, muss man /etc/conf.d/vdr editieren:

PLUGINS="mplayer"

An dieser Stelle möchte ich noch auf ein Addon verweisen, welches die Funktionen der mplayer.sh um einiges aufwertet und deshalb auch installiert werden sollte. Die Installationsbeschreibung findet man unter MplayerSh.