VDR

Aus wiki.archlinux.de
(Weitergeleitet von VDR (Deutsch))
Wechseln zu: Navigation, Suche

Überarbeitung.png Dieser Artikel oder Artikelabschnitt bedarf einer stilistischen Überarbeitung laut Empfehlungen in Artikelstil.


VDR steht für Video Disk Recorder, eine Open-Source Software, die einen Linux-Rechner in einen digitalen Videorekorder verwandelt. Diese Initialen erklären nicht vollständig, wozu VDR in der Lage ist. VDR implementiert auch die Funktionen eines modernen, digitalen Festplattenrecievers, um entweder Live-Fernsehen oder Aufzeichnungen anzusehen. Mit der großen Anzahl verfügbarer Plugins stehen fast unzählige zusätzliche Erweiterungsmöglichkeiten zur Verfügung, z.B. Video-DVDs und Audio- und Video-Dateien abzuspielen, einen Blick auf die Foto-Sammlung zu werfen, das Email-Konto zu checken...

Mit seiner Flexibilität ist Arch Linux hervorragend geeignet, um VDR an deine ganz persönlichen Bedürfnisse anzupassen. AUR, das Arch Linux-User-Community Repository, bietet PKGBUILDs für VDR und einige der am häufigsten verwendeten Plugins und Addons.

Dieser Artikel ist in drei Teile gegliedert. Im ersten Teil werde ich dir zeigen, wie du VDR auf deinem PC installierst und die ersten Schritte absolvierst. Im zweiten Teil des Artikels geht es darum, wie du VDR durch Hinzufügen neuer Funktionen wie Wiedergabe von DVDs das Steuern von VDR über das Internet erweiterst. Im dritten Teil geht es um fortgeschrittene Funktionen wie das automatische Erkennen und Markieren von Werbeblöcken in deinen Aufnahmen oder wie du VDR über das Internet streamen kannst.

Erste Schritte

In diesem Teil geht es darum, wie du VDR installierst und konfigurierst.


Hardware-Voraussetzungen

VDR arbeitet mit einer Vielzahl von DVB-Karten zusammen. Im VDR-Wiki kannst du sehen, ob deine spezielle Karte unterstützt wird. Es sei nur kurz erwähnt, dass so genannte Budget-Karten, also Karten ohne Hardware-MPEG-Decoder, dank Plugins wie vdr-xine einwandfrei mit VDR zusammenarbeiten.

Installation

Das Programm ist als vdrAUR im AUR verfügbar, und kann von dort zum Beispiel mittels Yaourt installiert werden.

yaourt -S vdr
Bei der Verwendung von Yaourt ist zu beachten, dass Pakete niemals „blind“ installiert werden sollten. Vor dem Installieren mit Yaourt sollten die Kommentare im AUR gelesen, und das PKGBUILD geprüft werden.

Wenn du eine der bekannten Full-Featured DVB-s-Karten (mit Hardware-MPEG-Decoder) von Technotrend (baugleich mit Hauppauge Nexus, Technisat Skystar 1 und Fujitsu-Siemens DVB-s) besitzt, könnte etwas Extraarbeit anfallen, da, zumindest auf meinem Computer, ein falsches Modul die Kontrolle über die Karte übernimmt. Auf meinem Computer erzeugt der Befehl "lspci -k" folgende Ausgabe:

03:02.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
	Subsystem: Technotrend Systemtechnik GmbH Technotrend/Hauppauge DVB card rev2.3
	Kernel driver in use: dvb
	Kernel modules: dvb-ttpci, snd-aw2

Wie du siehst, fühlen sich zwei Module, dvb-ttpci und snd-aw2, für die DVB-Karte verantwortlich, während nur ersteres die Kontrolle übernehmen sollte. Füge einfach das unerwünschte Modul in die Datei /etc/rc.conf ein:

MODULES=(... !snd-aw2 ...) 

Auch andere Karten scheinen von diesem Phänomen betroffen zu sein. Die Lösung ist jedoch immer dieselbe: Blackliste das Modul snd-aw2.

Ein Neustart des Computers sollte dann dafür sorgen, dass die Karte korrekt initialisiert wird. Zwei weitere Dinge, die du noch vor dem Neustart besorgen kannst: wenn du eine der angesprochenen Full-Featured-Karten besitzt (vielleicht auch bei einigen anderen Karten), benötigst du eine Firmware. Für die Full-Featured-Karten von Technotrend ist der Name der Firmware dvb-ttpci-01.fw. Diese muss in den Ordner /lib/firmware kopiert werden. Statt des Neustarts des Computers kannst du auch das Kernel-Modul dvb_ttpci neu laden. Der zweite Schritt, der zumindest eine Neuanmeldung notwendig macht ist, dich selbst der Gruppe "video" hinzuzufügen (gpasswd -a <benutzername> video).

Konfiguration von VDR

Jetzt geht es darum, die Konfigurationsdateien von VDR an deine Bedürfnisse anzupassen. Zunächst solltest du die Datei /etc/rc.vdr editieren, damit VDR mit den Rechten eines Standard-Benutzers läuft:

VDROPTS="-u <benutzername>" 

Stelle auch sicher,dass VDR schreibend auf das Verzeichnis "/video" zugreifen kann:

chown <benutzername> /video -R

Kanalsuchlauf

Stelle sicher, dass die Datei channels.conf in /etc/vdr mit dem/den empfangenen Satelliten übereinstimmt. Linowsat bietet aktuelle Kanallisten für alle Satelliten an. Falls du eine DVB-T oder DVB-C-Karte dein Eigen nennst, ist w_scan dein Freund. Das Paket ist in AUR verfügbar.


Steuerung und Ausgabe

Schließlich wollen wir noch dafür sorgen, dass wir VDR steuern und dessen Ausgabebildschirm (Live-TV und OSD) sehen können.

Full-Featured-Karten haben einen VGA-Anschluss auf der Karte, um ein externes TV-Gerät anzuschließen. Wahlweise kann diese Funktion auch von einer DXR3/Hollywood+ Karte übernommen werden. Allerdings verliert dies zunehmend an Bedeutung, da auf der einen Seite mit dem Aufkommen von Computer-Bildschirmen mit 24 oder mehr Zoll dieser selbst sehr attraktiv zum Fernsehen wird und zum anderen neue TV-Geräte in der Regel DVI-, HDMI- oder DisplayPort-Eingänge aufweisen und so immer häufiger die Grafikkarte zum Ausgabegerät wird.

Deshalb geht es in diesem Tutorial um die Ausgabe auf dem X-Server mit Hilfe der Programme TVtime und Xine Übrigens: um den VGA-Ausgang einer Full-Featured-Karte zu nutzen, brauchst du lediglich den VGA-Ausgang der DVB-Karte mit dem TV-Gerät über ein VGA-Kabel zu verbinden.

Zu Testzwecken ist es sinnvoll, VDR über die Tastatur zu bedienen. Die Steuerung von VDR mittels Fernbedienung wird weiter unten behandelt.

Für Full-Featured-Karten werden hier für Steuerung und Bildanzeige zwei Möglichkeiten gezeigt, für Budget-Karten eine.


TVtime - Nur für Full-Featured-Karten

TVtime kann benutzt werden, um den VDR-Bildschirm anzuzeigen. Installiere die Pakete tvtime und das Wrapper-Skript vdr-tvtime von AUR. Passe für die Steuerung von VDR die erste Spalte der Datei /etc/tvtime/maps.txt deinen Wünschen an:

m	Menu
Enter	Ok
Backspace	Back
F1	Red
F2	Green
F3	Yellow
F4	Blue
+	Channel+
-	Channel-
u	Volume+
d	Volume-
c	Channels
t	Timers
r	Recordings
s	Setup
a	Audio
n	Info
f	TVTIME_f

Jetzt kann VDR gestartet werden (/etc/rc.d/vdr start). Starte anschließend das Skript "vdr-tvtime.pl". TVtime sollte nun den VDR-Bildschirm anzeigen und du solltest in der Lage sein, VDR mit der Tastatur zu steuern.


Xine - Full-Featured- und Budget-Karten

Die drei Plugins vdr-xine, vdr-xineliboutput und vdr-softdevice, die alle in AUR verfügbar sind, ermöglichen es, VDR mit Budget-Karten zu benutzen. Sehr gut geeignet für sowohl Full-Featured- als auch Budget-Karten ist vdr-xine, denn es kann automatisch das Primär-Gerät umschalten, wenn Xine (oder andere Frontends von xine-lib, z.B. Oxine) gestartet werden.

Installiere die Pakete vdr-xine, xine-lib-vdr und xine-ui-vdr von AUR. Bearbeite den VDRPLUGINS-Eintrag in /etc/rc.vdr so, dass das Plugin automatisch gestartet wird und starte VDR anschließend neu(/etc/rc.d/vdr restart). Der Schalter "-r" ermöglicht es, VDR aus Xine heraus mit der Tastatur zu steuern (siehe ~/.xine/keymap unten).

VDRPLUGINS="  \"-Pxine -r\" \
           " 

Zu Testzwecken kann es auch hilfreich sein, VDR von der Kommandozeile zu starten

vdr -u <benutzername> -v /video -c /etc/vdr -P'xine -r'

Starte nun Xine und schließe es wieder zum Zweck, dass die Datei ~/.xine/keymap erstellt wird. Bearbeite diese Datei, sodass zumindest die grundlegenden Tasten für die Steuerung von VDR belegt sind, z.B.

# jump to media Menu
Menu {
	key = m
	modifier = none
}

# menu navigate up
EventUp {
	key = Up
	modifier = none
}

# menu navigate down
EventDown {
	key = Down
	modifier = none
}

# menu navigate left
EventLeft {
	key = Left
	modifier = none
}

# menu navigate right
EventRight {
	key = Right
	modifier = none
}

# menu select
EventSelect {
	key = Return
	modifier = none
}

# VDR Red button
VDRButtonRed {
	key = F1
	modifier = none
}

# VDR Green button
VDRButtonGreen {
	key = F2
	modifier = none
}

# VDR Yellow button
VDRButtonYellow {
	key = F3
	modifier = none
}

# VDR Blue button
VDRButtonBlue {
	key = F4
	modifier = none
}

# VDR Command back
VDRBack {
	key = BackSpace
	modifier = none
}

# menu select
Alias {
	entry = EventSelect
	key = KP_Enter
	modifier = none
}

Du erhältst eine Fehlermeldung, wenn du eine Taste doppelt belegst. Stelle deshalb sicher, etwa die Taste für "SpeedFaster" von "Up" auf "VOID" abzuändern. Es ist möglich, zwei Tasten denselben Befehl zuzuweisen, dies funktioniert mit dem Schlüsselwort "Alias". Mehr dazu auf der Xine-Website.

Du kannst jetzt Xine mit folgendem Befehl starten:

xine "vdr:/tmp/vdr-xine/stream#demux:mpeg_pes" 

Durch Hinzufügen der Option "-D" (deinterlace) kann die Bildqualität verbessert werden.

VDR erweitern

Plugins

Wie bereits in der Einleitung erwähnt, sind Plugins eine Möglichkeit, neue Funktionen zu VDR hinzuzufügen. Einige der am häufigsten verwendeten Plugins sind in AUR verfügbar, ich stelle einige kurz vor:

  • vdr-avards, für das automatische Anpassen des Signals bei FF-Karten (16:9, 4:3)
  • vdr-dvd, um DVDs abzuspielen
  • vdr-dvdswitch, um DVD-Abbilder von der Festplatte abzuspielen
  • vdr-live, um VDR über ein Web-Interface zu steuern
  • vdr-mplayer, ein Mplayer/MP3 Plugin für VDR
  • vdr-osdteletext, ermöglicht die Anzeige von Teletext im OSD von VDR
  • vdr-skinenigmang, alternatives Skin
  • vdr-yacoto, VDR-Aufnahmen können in verschiedene Formate konvertiert werden, etwa DVD oder iPod/iPhone


Plugins einrichten

Plugin verfügbar in AUR

Ich zeige nun, wie Plugins, die in AUR verfügbar sind, installiert werden. Ich habe mich bei dieser Beispielinstallation für das Plugin LIVE entschieden. Mit LIVE kannst du VDR über das LAN und sogar das Internet steuern. LIVE benötigt zwei weitere Plugins, epgsearch und streamdev (Pakete vdr-epgsearch und vdr-streamdev, ebenso in AUR verfügbar). Mit ersterem kannst du beispielsweise Autotimers festlegen, z.B. kannst du VDR automatisch alle Episoden von Friends oder alle Filme mit Al Pacino aufzeichnen lassen. Das Plugin streamdev ermöglicht es, Live-TV auf anderen Computern im LAN anzuzeigen. Du kannst auf das LIVE-Interface im Browser unter Port 8008 zugreifen, z.B. http://localhost:8008. Weitere Informationen findest du auf den Webseiten von LIVE oder in der Dokumentation im Ordner /usr/share/doc/vdr-live/.

Da LIVE in AUR verfügbar ist, kannst du es mit dem Befehl "yaourt -S vdr-live" installieren. Damit das Plugin zusammen mit VDR gestartet wird, musst du die Datei /etc/rc.vdr editieren:

VDRPLUGINS=" 	\"-Plive\" \
             	\"-Pepgsearch\" \
             	\"-Pstreamdev-server\" \
		\"-Pdvdswitch -i /video/dvd\" \
           "

LIVE wird ohne Optionen gestartet, im Gegensatz zum Plugin dvdswitch, das hier mit der Option "-i" gestartet wird. Das Plugin dvdswitch kann DVD-Images von der Festplatte abspielen, die Option "-i" teilt dem Plugin mit, wo auf den Festplatte sich die DVD-Images befinden.

Plugin nicht in AUR

Wenn ein Plugin noch nicht in AUR verfügbar ist, bist du eingeladen, entsprechend der Vorgaben eine PKGBUILD-Datei zu erstellen und diese in AUR zur Verfügung zu stellen, damit auch andere davon profitieren können.

VDR fernbedienen

Nachdem VDR nun läuft kann der Wunsch aufkommen, das Programm nicht nur über die Tastatur, sondern bequem vom Sofa aus mittels Fernbedienung zu steuern. Zum einen gibt es dafür LIRC, das mit jeder DVB-Karte funktioniert (LIRC arbeitet unabhängig von der Karte) und auf der anderen Seite das Plugin vdr-remote, das allerdings nur dann funktioniert, wenn deine DVB-Karte einen integrierten IR-Empfänger hat. Beide Möglichkeiten werden hier beschrieben.


LIRC

Für die Installation von LIRC verweise ich auf das englische ArchLinux Wiki. Um die LIRC-Fernbedienung unter VDR benutzen zu können, musst du die Datei /etc/vdr/remote.conf anpassen. Die Zeichenkette nach "LIRC.", z.B. "Up", muss mit der Benennung der entsprechenden Taste der Fernbedienung in der Datei /etc/lircd.conf übereinstimmen. In der zweiten Spalte steht der entsprechende VDR-Befehl:

LIRC.Up         	Up
LIRC.Down       	Down
LIRC.Menu       	Menu
LIRC.Ok			Ok
LIRC.Back       	Back
LIRC.Left       	Left
LIRC.Right      	Right
LIRC.Red        	Red
LIRC.Green      	Green
LIRC.Yellow     	Yellow
LIRC.Blue       	Blue
LIRC.0          	0
LIRC.1          	1
LIRC.2          	2
LIRC.3          	3
LIRC.4          	4
LIRC.5          	5
LIRC.6          	6
LIRC.7          	7
LIRC.8          	8
LIRC.9          	9
LIRC.Power      	Power
LIRC.Volume+   		Volume+
LIRC.Volume-   	 	Volume-
LIRC.Mute       	Mute
LIRC.Audio      	Audio
LIRC.Recordings 	Recordings
LIRC.Info       	Info

Füge die Option "--lirc" in /etc/rc.vdr ein:

VDROPTS="... --lirc"

Remote-Plugin

Dieses Plugin funktioniert nur mit Karten mit eingebautem IR-Empfänger, wie auf den Full-Featured-Karten von Technotrend. Das Plugin ist in AUR verfügbar, zur Konfiguration verweise ich dich auf das VDR Wiki.

Fortgeschrittene Funktionen

Dieser Teil ist für fortgeschrittene Benutzer von VDR gedacht.


Noad - Keine Werbung

Noad ist dank ausgefeilter Methoden in der Lage, automatisch Werbeblöcke zu erkennen und entsprechend Schnittmarken zu setzen. Das Paket "noad" ist in AUR verfügbar. Und lass es mich gleich vorwegnehmen, noad macht einen hervorragenden Job. Auch wenn ich vor dem Starten des Schnittvorgangs immer die von noad automatisch gesetzten Markierungen kontrolliere, muss ich diese innerhalb einer Sendung nur in den seltensten Fällen korrigieren. Manchmal müssen jedoch Schnittmarken im Aufnahme-Puffer, also vor und nach der Sendung, entfernt werden.

Durch Hinzufügen des folgenden Schalters in den VDROPTS-Abschnitt der Datei /etc/rc.vdr wird noad automatisch ausgeführt, nachdem eine Aufnahme abgeschlossen wurde:

-r'/usr/bin/noad nice -b -O -C -a -j --statisticfile=/video/noadstat'

Die zweite Möglichkeit ist, die Werbeblockerkennung manuell aus dem Menü Befehle der jeweilen Aufnahme heraus zu starten. Bearbeite dazu die Datei /etc/vdr/reccmds.conf und füge folgende Zeile ein:

starte noad: /usr/bin/noad nice --background -O -C -a -j --statisticfile=/video/noadstat

Als dritte Möglichkeit kannst du noad manuell von der Kommandozeile starten. Wie dies funktioniert und für eine Erklärung aller Befehlszeilenoptionen kannst du die Homepage des Tools oder die Dokumentation in /usr/share/doc/noad/ konsultieren.

EPG-Informationen hinzufügen

xmltv2vdr

Einige Sender wie BBC oder ITV senden lediglich EPG-Informationen für die laufende und die nächste Sendung. Im Vergleich zu den Standards, die von anderen Rundfunkanstalten wie ARD (Deutschland) oder ORF (Österreich) gesetzt werden, ist dies ziemlich magere Kost. Glücklicherweise kann XMLTV in die Bresche springen. XMLTV ist in der Lage, EPG-Informationen für eine, manchmal auch mehrere Wochen im Voraus aus dem Internet zusammenzusuchen. Du kannst dieser Anleitung zur Installation und Konfiguration von XMLTV folgen.

Die von XMLTV erzeugte XML-Datei muss noch konvertiert werden, damit die Daten von VDR genutzt werden können. Zu diesem Zweck gibt es das Skript xmltv2vdr, es ist in AUR verfügbar. Installiere es und folge den Anleitungen in der Datei README, zu finden in /usr/share/doc/xmltv2vdr/.

Die Beispiel-Datei channels.conf wird bei der Installation in /etc/xmltv2vdr abgelegt:

BBC 1 London;BSkyB:10773:h:S28.2E:22000:5000:5001=eng,5002=NAR:5003:1:6301:2:2045:0:london.bbc1.bbc.co.uk
BBC 2 England;BSkyB:10773:h:S28.2E:22000:5100:5101=eng,5102=NAR:5103:1:6302:2:2045:0:london.bbc2.bbc.co.uk
BBC THREE;BSkyB:10773:hC56:S28.2E:22000:5200:5201=eng,5202=NAR:5203:0:6319:2:2045:0:bbcthree.bbc.co.uk
BBC FOUR;BSkyB:10773:hC56:S28.2E:22000:5300:5301=eng,5302=NAR:5303:0:6316:2:2045:0:bbcfour.bbc.co.uk
BBC NEWS;BSkyB:11954:hC23:S28.2E:27500:5000:5001=eng:5003:0:6704:2:2013:0:news-24.bbc.co.uk
CBBC Channel;BSkyB:10773:h:S28.2E:22000:5200:5201=eng,5202=NAR:5203:0:6317:2:2045:0:cbbc.bbc.co.uk
CBeebies;BSkyB:10773:h:S28.2E:22000:5300:5301=eng,5302=NAR:5303:0:6318:2:2045:0:cbeebies.bbc.co.uk
ITV1 London;BSkyB:10759:vC56:S28.2E:22000:2305:2312=eng,2314=NAR:2315:0:10060:2:2044:0:carlton.com
ITV2;BSkyB:10759:vC56:S28.2E:22000:2352:2354=eng,2356=NAR:2358:0:10070:2:2044:0:itv2.itv.co.uk
ITV3;BSkyB:10906:vC56:S28.2E:22000:2362:2356=eng,2357=NAR:2359:0:10260:2:2054:0:itv3.itv.co.uk
ITV4;BSkyB:10759:vC56:S28.2E:22000:2359:2360=eng,2361=NAR:2362:0:10072:2:2044:0:itv4.itv.co.uk
Film4;BSkyB:10714:hC56:S28.2E:22000:2346:2347=eng,2348=NAR:2349:0:9220:2:2041:0:filmfour.channel4.com
More4;BSkyB:10729:vC56:S28.2E:22000:2361:2362=eng,2363=NAR:2364:0:8340:2:2042:0:more4.channel4.com
E4;BSkyB:10729:vC56:S28.2E:22000:2315+2306:2317=eng,2319=NAR:2321:0:8305:2:2042:0:e4.channel4.com 

Du kannst einen Cronjob anlegen, um die Aktualisierung der EPG-Daten zu automatisieren:

00 00 * * * tv_grab_uk_rt --config-file ~/.xmltv/tv_grab_uk_rt.conf --quiet > /tmp/uk.xml
05 00 * * * xmltv2vdr.pl -x /tmp/uk.xml -c /etc/xmltv2vdr/channels.conf

vdraepg

vdraepg ist ein Ruby-Skript, welches EPG-Daten von einem Kanal zum anderen transferiert, d.h., die Daten werden nicht wie von XMLTV aus dem Internet heruntergeladen, sondern sind bereits in VDR verfügbar.

Dies kann in einigen Fällen sinnvoll sein, wenn du beispielsweise einen Kanal über DVB-T empfängst, dieser aber über nicht so ausführliche EPG-Informationen verfügt wie derselbe Kanal auf DVB-S (welcher beispielsweise verschlüsselt sein könnte). Das Skript kann auch verwendet werden, um die Zeit-Information der Sendungen zu ändern. Auf diese Weise kann das Skript EPG-Daten von z.B. ITV2 zu ITV2+1 transferieren, indem die Zeitinformationen um eine Stunde korrigiert werden.

Du kannst das Paket vdraepg von AUR installieren. Lies die Datei /usr/share/doc/vdraepg/README für Instruktionen, wie vdraepg angepasst werden kann.

Eine Beispiel-Konfiguration wird während der Installation in /etc/vdraepg/vdraepg.conf abgelegt:

#source-channel, target-channel, time-adjustment
S28.2E-2-2044-10070, S28.2E-2-2041-10172, 60 #itv2, itv2+1
S28.2E-2-2054-10260, S28.2E-2-2054-10261, 60 #itv3, itv3+1
S28.2E-2-2042-8335, S28.2E-2-2042-8330, 60 #film4, film4+1
S19.2E-1-1101-28106, T-0-562-1, 0 #ARD, DVBS --> DVB-T

Auch hier kann es sinnvoll sein, vdraepg als Cronjob zu starten:

10 00 * * * vdraepg.rb


Integration von VDR in das Multimedia-Center Oxine

VDR, eine hervorragende, manche sagen sogar die beste, Software für den Empfang und das Aufzeichnen von DVB, hat jedoch Mängel im Vergleich mit ausgewachsenen MMC (Multimedia Center) wie MythTV. Nichtsdestotrotz, im Vergleich zu VDR haben diese MMC Defizite, wenn es um DVB geht. Aus diesem Grund ist es naheliegend, die Stärken von VDR und die einer MMC zu ergänzen. Die gute Nachricht ist: dies ist möglich. Mit Oxine gibt es ein MMC, das in der Lage ist, VDR nahtlos in seine Oberfläche zu integrieren.

Das "Extra"-Repository enthält das Paket oxine, leider ermöglicht es dessen Konfiguration nicht, VDR zu integrieren. Deshalb ist in AUR das Paket oxine-vdr verfügbar, welches diese Beschränkung aufhebt. Dies vorausgeschickt, solltest du VDR in Oxine auf einfache Weise integrieren können. Dazu einfach in Oxine "Settings", "Edit Settings", "Television" den Punkt "type of television" zu "video disk recorder" ändern.

Eine Abhängigkeit von oxine-vdr ist das VDR-Plugin vdr-xine, dieses muss mit der Option "-r" gestartet werden:

VDRPLUGINS=" 	\"-Pxine -r\" \           
           "

VDR streamen

LAN

Stelle dir vor, dein VDR-Rechner steht im Arbeitszimmer, Wohnzimmer, oder auch in deinem Keller du siehst dir Live-TV und Aufnahmen dieses VDR auf dem Liegestuhl in deinem Garten an. Nun, das muss kein Wunsch bleiben!

Dasselbe Plugin, dass wir bereits mit Budget-Karten verwendet haben und das auch die Integration von VDR in Oxine ermöglicht, verwenden wir nun, um das VDR-Frontend auf einem beliebigen Computer im LAN oder WLAN anzuzeigen: vdr-xine. Dazu muss das Plugin installiert (AUR) und mit dem Parameter "-p" gestartet werden:

VDRPLUGINS=" 	\"-Pxine -r -p\" \
           "

Installiere auf dem Zielrechner die Pakete xine-lib-vdr und xine-ui-vdr, beide verfügbar in AUR.

Passe die Datei ~/.xine/keymap wie oben an, um VDR mit der Tastatur zu steuern.

Jetzt kannst du deine Lieblings-Filme an einem beliebigen Ort (mit Zugriff aufs Netzwerk ;-) im und um dein Haus ansehen:

xine "netvdr://<ip of VDR server>#demux:mpeg_pes" -D

Internet

Theoretisch kann das Konzept des Streamens von VDR über das LAN oder WLAN mit dem Plugin vdr-xine auch auf das Internet übertragen werden. Das Problem ist jedoch, dass die Anforderungen in Bezug auf die benötigte Bandbreite nur in den seltensten Fällen erfüllt sein werden, da die Sendeanstalten mit einer Bitrate von drei oder auch mehr Mbit/s ausstrahlen und deshalb eine Verbindung zum Internet mit der entsprechenden Upload-Geschwindigkeit benötigt wird. Otto Normalverbraucher setzt daher auf hochoptimierte Codecs wie H.264 AVC und das ist auch genau das, worum es in diesem Teil des Tutorials geht.

VLC ist nicht nur ein bekannter Multimediaplayer, sondern auch sehr gut zum Kodieren und Streamen von Video und Audio geeignet. Deshalb verwenden wir VLC nun, um Audio- und Videostream abzugreifen, zu kodieren und so das VDR-Frontend über das Internet an einen Zielrechner durchzureichen. VLC muss sowohl auf dem Server als auch auf dem Client installiert sein.


Server

Passe "vb = 250" (Video-Bitrate) und "ab = 48" (Audio-Bitrate) auf die Upload-Geschwindigkeit deines Internetanschlusses an. Die beiden Werte in den Beispielen etwa passen zu einer Upstreamgeschwindigeit von 384 Kbit/sec.

Full-Featured-Karten

Führe auf dem Rechner, auf dem VDR läuft, folgenden Befehl aus (du kannst diesen auch in die Datei /etc/vdr/commands.conf übernehmen und dann beispielsweise über LIVE starten):

/usr/bin/cvlc -d v4l:// :v4l-vdev="/dev/video0" :v4l-adev="/dev/dsp" :v4l-norm=3 :v4l-frequency=-1 --sout #transcode{vcodec=h264,vb=250,scale=0.5,acodec=mp4a,ab=48,channels=1}:duplicate{dst=std{access=http,mux=ts,dst=0.0.0.0:1234}}'
Full-Featured und Budget-Karten

Es wird das Plugin vdr-xineliboutput benötigt, in AUR verfügbar. Der Befehl lautet wie folgt:

cvlc http://localhost:37890 :http-caching=3000 :sout="#transcode{vcodec=h264,vb=200,scale=0.5,acodec=mp4a,ab=48,channels=1}:duplicate{dst=std{access=http,mux=ts,dst=0.0.0.0:1234}}"
Client

Öffne den Netzwerkstream auf dem entfernten Rechner mit folgendem Befehl. Wenn der Computer, auf dem VDR läuft, sich hinter einem Router befindet, muss der Port 1234 weitergeleitet werden.

vlc http://<dyndns-adresse>:1234

Auch wenn die Videoqualität sichtbar etwas leidet, kannst du doch ohne wirkliche Einschränkung dein VDR mit den heimischen Sendern und Aufzeichnungen in (fast) alle Ecken der Erde holen.

Du kannst VDR entweder mit LIVE oder über das SVDRP Protokoll mit entsprechender Software wie "VDR Remote Control" (unsicher, da der SVDRP-Port auf dem VDR-Rechner geöffnet werden muss) fernsteuern. Du kannst sogar ein iPhone oder einen iPod Touch mit dem Programm ZapperPro, erhältlich im Apple Store, benutzen, um VDR fernzusteuern, du benötigst dazu allerdings Zugang zum Internet über WLAN. Sei vorsichtig im Hinblick auf die Sicherheit bezgl. des Öffnens des SVDRP-Ports.

DVDs rippen

Es gibt mehrere Möglichkeiten, DVDs mit Hilfe von VDR zu rippen. Hier zeige ich dir eine ebenso einfache wie effiziente Methode. Die benötigten Pakete sind screen und dvdbackup. Dvdbackup liest automatich den Titel der DVD ein und benennt das Ziel-Verzeichnis entsprechend. Damit das Rippen der DVDs im OSD-Menü von VDR gestartet werden kann, musst du folgende Zeile in /etc/vdr/commands.conf einfügen:

DVD rippen : screen -dm sh -c "/usr/bin/dvdbackup -M -i/dev/dvd -o/video/dvd"

Passe eventuell die Optionen "-i" (DVD-Laufwerk) und "-o" (Zielverzeichnis) an. Die Option "-M" sichert die gesamte DVD inklusive des Menüs. Du kannst dies unter Verwendung anderer Optionen (siehe dvdbackup -h) ändern.

Das Rippen einer DVD kann nun aus dem VDR Befehle-Menü gestartet werden. Wenn du die DVD-Images mit VDR abspielen möchtest, kannst du das Plugin dvdswitch verwenden.

Fazit

Ich erinnere mich, wie ich zu Beginn das Einrichten von VDR in Arch Linux aufgrund der nicht erkannten Full-Featured-Karte (wegen des fälschlicherweise geladenen Moduls snd-sw2) beinahe aufgegeben hätte. Vielleicht kann dieses Tutorial dem einen oder anderen von euch helfen, ebenfalls über den Punkt des reinen Probierens hinaus ein funktionierendes VDR unter Arch Linux aufzusetzen.

Dieses Tutorial ist nicht vollständig und wird es wohl auch nie sein. Ich hoffe jedoch, dass es mit eurer Hilfe laufend umfangreicher und nützlicher wird.

Weblinks