Schlagwort-Archive: VDR

Homeserver 38: Server als Videorecorder 3 – Die Benutzung

Das System ist fast fertig! Alle Plugins sind installiert und konfiguriert, die Senderliste wurde erstellt, die Kabel angeschlossen. Nun können wir eigentlich loslegen!

EPG aktualisieren

Der VDR hat im Augenblick kaum EPG-Daten, daher muss erstmalig ein Update angestoßen werden. Ich habe keine Lust darauf zu warten, bis er das selber macht, also lege ich mal Hand an.

Am einfachsten geht das über die Weboberfläche des VDRAdmin. Also gebe ich in die Adresszeile meines Browser folgendes ein:

server01:8001

Ich verwende die VDR Administrationsoberfläche, weil ich hier auch SVDRP-Befehle abschicken kann, ohne auf die Linux-Konsole zu müssen. Nun gebe ich noch Benutzernamen und Passwort ein und bin auf der Seite.

Hier wähle ich den Link „Befehle“ aus. In diesem Bereich kann ich so einiges machen. Mich interessiert das Eingabefeld, in das ich einen SVDRP-Befehl eingeben kann. Im Eingabefeld steht schon der Befehl „help“, den lösche ich und gebe dort „scan“ ein. Anschließend klicke ich auf „Ausführen“.

Ganz unten auf der Seite steht jetzt die Ausgabe „EPG scan triggered“, also EPG scan ausgelöst. Dies kann jetzt eine Weile dauern. Ich sehe leider den Fortschritt nicht, daher gehe ich mal davon aus, dass er so eine Stunde brauchen wird. Ich kann jetzt nichts anderes machen, weil er sonst den Scan abbrechen würde.

Suchtimer einrichten

Ich gucke eigentlich nicht viel fern. Aber es gibt ein paar Sendungen, die ich doch recht regelmäßig gucke. Natürlich will ich diese nicht verpassen. Bei der Dreambox war ich es gewohnt, diese in einen Autotimer einzutragen. Wann immer diese Sendung mit dem entsprechenden Suchkriterium im EPG auftauchte, hat die Dreambox die Sendung selbst eingetragen und aufgenommen.

Dies geht auch mit dem VDR und dem Plugin EPGSearch. Dieses Plugin kann dazu verwendet werden, das EPG sehr komfortabel zu durchsuchen. Diese Suchaufgaben können aber auch gleichzeitig einen Timer für das gefundene Ergebnis setzen. Ein Mal eingerichtet, braucht man sich also nicht mehr kümmern, ob man eine regelmäßig kommende Sendung verpasst.

Einrichten eines Suchtimers

Ich kann den Suchtimer über beide Weboberflächen programmieren. Weil ich aber gerade schon auf der vdradmin-Oberfläche bin, bleibe ich gleich da.

Hier wähle ich den Link „EPG Search“. Mit dem Schalter „Neue Suche“ richte ich eine neue Suche ein.

  • Im Feld „Suche:“ gebe ich den Begriff ein, nach dem gesucht werden soll. Hier ist es zum Beispiel „nano“, weil ich diese Sendung als Autotimer programmieren möchte.
  • Bei „Suchmodus:“ wähle ich „Ausdruck“. Dadurch wird die Sendung „nano“, aber auch die Sendung „nano Spezial“ gefunden.
  • Ich kann auch einstellen, dass auf Groß/Kleinschreibung geachtet wird. Dieses Kontrollkästchen lasse ich leer.
  • Im Bereich „Zu suchen in:“ kann ich die Bereiche auswählen, in denen nach dem Wort gesucht wird. Titel, Untertitel und Beschreibung können ausgewählt werden. In diesem Fall reicht ein Kontrollkästchen bei Titel.
  • Bei „Verwende Kanal:“ kann ich wählen, ob es auf „nein“ steht, wobei er dann alle Kanäle durchsucht, oder z. B. Bereich. Ich wähle Bereich, weil ich einen festen Kanal einstellen möchte. Bei den nächsten 2 Ausklapplisten kann ich den Bereich der Kanäle definieren, in denen gesucht wird. Ich wähle bei beiden Ausklapplisten „3Sat“. Somit sollte auch nur auf 3Sat gesucht werden. Hinzuweisen wäre noch auf die Option „Ohne PayTV“, weil man diese Sender so von der Suche ausschließen kann. Da ich keine PayTV-Sender abonniert habe, schließe ich diese bei den Suchtimern aus, die über alle Kanäle suchen sollen. Sonst muss ich diese Timer manuell löschen.
  • Verwende Uhrzeit schalte ich ein und definiere in den folgenden Feldern einen Zeitraum.
  • Start nach: Ist ein bisschen blöd ausgedrückt, meint aber, dass es nach einer bestimmten Uhrzeit startet. In diesem Falle startet nano ja immer so um 18:30 Uhr, also sage ich, es startet nach 18:00 Uhr.
  • Start vor: Ist auch blöde ausgedrückt, meint aber, dass es definitiv vor einer bestimmten Uhrzeit startet. Ich sage hier 20:00 Uhr. In diesem Falle wird also zwischen 18:00 Uhr und 20:00 Uhr nach nano gesucht.
  • Verwende Dauer: Hier könnte ich eine Dauer festlegen, die die Sendung haben soll. Das lasse ich aus.
  • Verwende Wochentag: Das markiere ich und setze dann einen Haken für die Tage, an denen nano läuft. Also nicht am Wochenende. 🙂
  • Verwende Ausschlusslisten: Das lasse ich auf „Nein“, da ich keine Ausschlusslisten habe.
  • Als Suchtimer verwenden: Hier wähle ich „Ja“ aus der Ausklappliste. In der darunterliegenden Ausklappliste kann ich wählen, was passieren soll, also ob aufgenommen wird, angekündigt wird oder nur umgeschaltet wird. Es steht schon auf „Aufnehmen“, und da belasse ich es auch.
  • Automatisch löschen: Das lasse ich auf „Nein“, ich lösche die Aufnahme selbst, wenn ich sie gesehen habe.
  • Hiernach kommen einige Felder für die Aufnahme. Die lasse ich alle unberührt.
  • VPS verwenden: Dies ist einer der letzten Punkte, den schalte ich ein. Wenn im EPG VPS-Zeiten hinterlegt sind, wird ein Timer basierend auf diesen Daten erstellt. Dies erspart mir die Vorlauf- und Nachlaufzeit und erzeugt auch kleinere Dateien. Sind keine VPS-Daten vorhanden, wird automatisch mit den vorgegebenen Vor- und Nachlaufzeiten ein Timer erstellt.

Ganz unten klicke ich noch auf den Schalter „Speichern. Hiermit ist der Suchtimer erstellt. Nun bin ich in der Liste der eingestellten Suchtimer. Hinter jedem Suchtimer gibt es eine Reihe von Schaltern. Ich aktiviere den Schalter „Find“, damit er die Suche auslöst. So sehe ich, ob meine Einstellungen die Sendungen finden, die ich aufgenommen haben will. Um das Update der Timer muss ich mich nicht kümmern. Ich habe über das VDR-OSD die Einstellung gewählt, dass die Suchtimer alle 60 Minuten aktualisiert werden.

Nun gebe ich über diese Funktion alle Suchtimer ein, die ich aufgenommen haben möchte.

Plugin für Kodi installieren

Für die Dreambox habe ich das Plugin in Kodi bereits installiert. Hierüber kann ich aufgenommene Sendungen gucken oder auch das Live-TV. Timer und EPG sind etwas blöd dargestellt, weswegen ich dieses eigentlich immer über die dreaMote-App auf dem iPhone erledigt habe. Die Dreambox bleibt auch noch eine Weile in Betrieb. Sie nimmt zwar nichts mehr auf, alle Autotimer sind bereits im VDR hinterlegt, jedoch sind hier noch Sendungen drauf. Leider kann ich diese nicht einfach auf den Server kopieren um sie mit dem VDR zu gucken. Der nimmt die Aufnahmen der Dreambox nicht an. Macht aber nichts, sind ja nicht so viele.

Auch für den VDR gibt es ein Plugin. Ich habe ja das Plugin VNSIServer für VDR installiert. Und unter Kodi gibt es einen VDR VNSIClient. Dieser ist denkbar einfach zu installieren.

Ich gehe also in die Einstellungen von Kodi, suche hier die Sektion „Addons“ und wähle „Aus Repository installieren“. Ab hier kann es Unterschiede geben. Hat man Kodi unter Windows oder Ubuntu, könnte das Addon bereits mit installiert worden sein. Ich habe hier LibreELEC. Hier muss ich das Addon aus dem LibreELEC Repository nachinstallieren. Dieses Repository wähle ich nun an und gehe in die Sektion „PVR Clients“.

In dieser Rubrik gibt es die unterschiedlichsten Clients für die unterschiedlichsten TV-Systeme und Anwendungen. Relativ weit unten findet sich der VDR VNSIClient. Hier gehe ich hin und drücke auf der Fernbedienung OK. In diesem Fenster wähle ich „Installieren“. Es dauert nun eine Weile, bis das Addon heruntergeladen wurde.

Nun muss das Addon noch konfiguriert werden, was auch denkbar einfach ist. Ich stehe wieder in der Liste der Addons, wobei mir neben dem Namen des Addons nun auch gesagt wird, dass es aktiviert ist. Ich drücke hier noch mal OK und wähle aus den Optionen nun „Konfigurieren“ aus.

Viele Optionen gibt es hier ja nicht, aber die interessieren mich alle nicht. Die einzige Angabe, die ich hier ändere, ist die IP-Adresse zu meinem Server. Hier ist 127.0.0.1 vorgegeben. Das ist ja nur die Localhost-Adresse, was auch richtig wäre, würde VDR auf dem gleichen Gerät laufen. Hier drücke ich also OK und gebe die IP-Adresse des Servers ein. Anschließend wähle ich mit den Pfeiltasten die Schaltfläche OK und bestätige diese. Somit sind die Konfigurationen gemacht und das Plugin ist bereit. Kodi muss nun noch neu gestartet werden.

Anschließend ist alles genau so zu bedienen, wie es mit dem Dreambox-Plugin auch ging. Die Möglichkeiten sind hier zu umfangreich, um diese einzeln aufzuzählen. Ich kann meine Timer sehen, ich kann meine Aufnahmen sehen, wobei die Liste hier noch leer ist und ich kann die TV- und Radio-Kanäle ansteuern. Auch die Umschaltzeiten beim Live-TV sind erfreulich kurz, sogar Timeshift geht. 🙂

Falls nach der Aktivierung des Plugins und des Kodi Neustarts die Menüpunkte TV und Radio nicht zu sehen sind, muss man evtl. noch eine Datei auf dem VDR-Server editieren. Denn auch hier, das Plugin beschränkt den Netzwerkzugang, damit nicht jeder an dem Plugin Timer löschen oder Aufnahmen löschen kann. also öffnet man auf dem Server folgende Datei:

sudo nano /etc/vdr/plugins/vnsiserver/allowed_hosts.conf

Diese Datei sieht genau so aus wie die svdrphosts.conf, und genau den gleichen Effekt hat sie auch. Hier stehen natürlich wieder die obligatorischen Beispiele, die natürlich auch erst mal so in Ruhe gelassen werden. Ganz unten fügt ihr dann noch den Adressbereich für euer lokales Netz hinzu. Bei mir ist es, weil ich alles an einer Fritz!Box hängen habe, folgender Eintrag:

192.168.178.0/24

Nun muss Kodi erneut gestartet werden, damit sich das Plugin in Kodi mit dem Server verbinden kann. Jetzt findet ihr im Hauptmenü auch die Einträge TV und Radio.

Fazit

Ja, die Einrichtung des VDR war umfangreich. Und zunächst wirkte es alles auf mich auch etwas zu viel. Wenn man sich aber mal kurz zurücklehnt und eine Aufgabe nach der anderen erledigt, ohne ins Schwitzen zu kommen, weil man noch nicht dort ist, wo man gerne wäre, ist es halb so schlimm. Und die Konfigurationsdateien habe ich alle gesichert, so dass ich diese wiederherstellen kann, sollte es mal nötig sein.

An die Suchtimer muss ich mich noch gewöhnen, weil ich erst noch nach und nach herausfinden muss, wie die Optionen die Suche beeinflussen. Und auch die Einstellungen hierfür über den Webbrowser zu machen, ist zwar erst mal ungewohnt, geht aber mittlerweile gut. Ich verwende übrigens überwiegend VDRADMIN-AM, weil dieser sich erstaunlich gut bedienen lässt. Auch Timerkonflikte sind schnell ausgemacht und leicht korrigiert. Ich finde diese Oberfläche weit zugänglicher, als es die integrierte Live-Oberfläche ist.

Jetzt hat der VDR genau die Funktionalität, die ich bei der Dreambox bisher auch genutzt habe. Nur eine App für das iPhone habe ich noch nicht gefunden. Es gibt wohl eine, aber die ist nur zum Streamen gedacht. Das kann ich aber viel komfortabler über Kodi. Timer und Suchtimer bearbeite ich dann lieber über die recht aufgeräumte Weboberfläche. Die ist um vieles bedienbarer, als es die Oberfläche der Dreambox je war. Daher habe ich bei der Dreambox auch lieber die dreaMote-App genutzt.

Nun muss ich also nur noch die Sendungen auf der Dreambox weggucken, dann kann das Ding meinethalben den Geist aufgeben… 🙂

Homeserver 37: Server als Videorecorder 2 – Die Grundeinstellungen

Nun ist das Grundgerüst installiert, aber in diesem Zustand ist das alles noch nicht viel wert. Das Aufnahmeverzeichnis muss noch konfiguriert werden, Kanäle müssen noch gesucht und sortiert werden und einiges weitere.

Das Antennenkabel habe ich zwar schon von Kabeldose bis zum Server gezogen, aber noch nicht angeschlossen. Schließlich muss die Dreambox noch Aufnahmen tätigen. Aber bis es soweit ist, ist auch noch viel zu tun.

Aber bevor ich an der Konfiguration Änderungen vornehme, muss VDR erst mal gestoppt werden, falls es bereits läuft.

sudo service vdr stop

Nun kann ich mich um die Konfiguration kümmern.

Aufnahmeverzeichnis festlegen

Auf meinem Server ist ordentlich Platz, also gibt es damit schon mal keine Probleme. Ich verbinde mich also per SSH mit meinem Server und gebe dort folgende Befehle ein:

sudo mkdir /raid1/daten/Videos/TV

Damit ist zwar das Verzeichnis auf dem RAID angelegt, aber es gehört Root. Also muss die Eigentümerschaft und die Gruppe dieses Verzeichnisses geändert werden.

VDR startet unter seinem eigenen Benutzer. Man könnte das sicher auch ändern, aber diese Verrenkungen mit den damit einhergehenden Fehlersuchen erspare ich mir. Also muss dieses Verzeichnis dem Benutzer „vdr“ gehören, damit Aufnahmen hier auch geschrieben werden können.

sudo chown vdr:vdr /raid1/daten/Videos/TV

Das Verzeichnis ist jetzt zwar angelegt, aber irgendwer muss dem VDR noch Bescheid sagen! Sonst würde er in seinem Standardverzeichnis, /var/lib/video, aufnehmen. Das wäre blöd, weil das Verzeichnis auf der System-SSD liegt, und da reicht der Platz für so was nicht… 🙂

Hierzu editiere ich die Datei /etc/vdr/conf.d/00-vdr.conf. Hier werden alle Standardwerte festgelegt, unter denen VDR startet, wenn man keine Befehlszeilenparameter angibt. Und da ich VDR eigentlich immer mit seinen Standardwerten starten lasse, ist diese Datei die richtige.

sudo nano /etc/vdr/conf.d/00-vdr.conf

Ich lasse alles so stehen, wie es da steht. Das ist schon alles ganz OK. Nur die eine Zeile ändere ich. Standardmäßig steht da:

--video=/var/lib/video

Das ändere ich zu:

--video=/raid1/daten/Videos/TV

So, zumindest weiß VDR jetzt schon mal, wo die Aufnahmen hingehören!

Netzzugriffe konfigurieren

Man kann den Netzzugriff für SVDRP beschränken. Das ist, und ich habe das sicher nicht völlig verstanden, eine Schnittstelle für diverse Plugins, um auch über das Netz kommunizieren zu können. Wie auch immer, es ist sicher sinnvoll, hier eine Beschränkung einzubauen.

sudo nano /etc/vdr/svdrphosts.conf

In dieser Datei stehen einige Beispiele, wie so ein Eintrag aussehen könnte. Diese sind alle auskommentiert, außer natürlich der für den localhost, und der sollte auch bleiben. Will man einen Zugriff erlauben, der nur aus dem eigenen Netz kommt, trägt man am besten folgende Zeile am Ende ein:

192.168.0.0/24

Somit würde VDR und die SVDRP-Dienste nur noch Zugriffe aus dem eigenen Netz erlauben. Dieser Wert sollte an die eigenen Gegebenheiten angepasst werden. Hat man z. B. eine Fritz!Box als Router, müsste der Wert also so aussehen:

192.168.178.0/24

Mittels der SVDRP-Schnittstelle kann man vieles per Kommandozeile erledigen. Als Beispiel:

svdrpsend scan

Dieser Befehl startet einen EPG-Scan über alle Kanäle. Weitere Möglichkeiten kann man auf der SVDRP-Seite des VDR-Wikis nachlesen.

EPG Aktualisierung

Der obige Befehl startet ja eine EPG-Aktualisierung. Dies ist aber in der Regel nicht nötig. VDR kann so eingestellt werden, dass es bei einer bestimmten Inaktivität selbst nach den Daten sucht. Ein Plugin, wie das EPGRefresh-Plugin für die Dreambox, ist also nicht nötig. Standardmäßig aktualisiert VDR die EPG-Daten, wenn der Tuner für 5 Stunden inaktiv war. Man kann diese Zeit einstellen, dazu aber später.

Zugriff auf den VDR per Telnet

Ja, Telnet, ich weiß, böse böse! 🙂 In diesem Falle sollte es aber verschmerzt werden. 🙂

Ich möchte, wie ich im vorigen Beitrag schon schrieb, an die OSD-Einstellungen des VDR ran. Ich könnte auch alles über die Konfigurationsdatei /etc/vdr/setup.conf einstellen, aber dazu müsste ich genau wissen, was welcher Eintrag tut. Aber zum Glück gibt es die Möglichkeit, über TCP und einer Telnet-Verbindung, das OSD zu nutzen. Wie gut das mit Screen Readern geht, weiß ich noch nicht, sehen wir ja gleich… 🙂

Ich hatte ja bereits diverse Plugins installiert, um dieses zu ermöglichen. Nun müssen diese konfiguriert werden. Um genau zu sein, muss das Remote-Plugin konfiguriert werden. Die Konfigurationsdatei hierfür muss editiert werden:

sudo nano /etc/vdr/conf.d/50-remote.conf

Hier gibt es die Sektion [remote], in der bereits eine Zeile zu finden ist:

[remote]
-i autodetect

Die Zeile -i autodetect muss gelöscht werden.

folgendes muss nun in die Datei eingefügt werden:

-p tcp:3333

Das sorgt dafür, dass auf dem Port 3333 auf die Tastatur und die Bedienung des VDR gelauscht wird. Diese Datei nun speichern und zur nächsten Datei übergehen.

Nun müssen die Tastendrücke angegeben werden, auf die der VDR reagieren soll. Hierzu muss die Datei remote.conf editiert werden.

sudo nano /etc/vdr/remote.conf

In diese Datei muss folgender Inhalt kopiert werden:

remote-tcp:3333.Up         0000000000415B1B
remote-tcp:3333.Down       0000000000425B1B
remote-tcp:3333.Menu       000000000000006D
remote-tcp:3333.Ok         0000000000000A0D
remote-tcp:3333.Back       000000000000007F
remote-tcp:3333.Left       0000000000445B1B
remote-tcp:3333.Right      0000000000435B1B
remote-tcp:3333.Red        0000000000000072
remote-tcp:3333.Green      0000000000000067
remote-tcp:3333.Yellow     0000000000000079
remote-tcp:3333.Blue       0000000000000062
remote-tcp:3333.0          0000000000000030
remote-tcp:3333.1          0000000000000031
remote-tcp:3333.2          0000000000000032
remote-tcp:3333.3          0000000000000033
remote-tcp:3333.4          0000000000000034
remote-tcp:3333.5          0000000000000035
remote-tcp:3333.6          0000000000000036
remote-tcp:3333.7          0000000000000037
remote-tcp:3333.8          0000000000000038
remote-tcp:3333.9          0000000000000039
remote-tcp:3333.Info       0000000000000069
remote-tcp:3333.Play       0000000000000070
remote-tcp:3333.Pause      0000000000000020
remote-tcp:3333.Stop       000000007E345B1B
remote-tcp:3333.Record     00000000415B5B1B
remote-tcp:3333.FastFwd    00000000425B5B1B
remote-tcp:3333.FastRew    00000000435B5B1B
remote-tcp:3333.Next       00000000445B5B1B
remote-tcp:3333.Prev       00000000455B5B1B
remote-tcp:3333.Power      000000000000001B
remote-tcp:3333.Channel+   000000007E355B1B
remote-tcp:3333.Channel-   000000007E365B1B
remote-tcp:3333.PrevChannel 000000007E315B1
remote-tcp:3333.Volume+    000000000000002B
remote-tcp:3333.Volume-    0000000000000023
remote-tcp:3333.Audio      0000000000000061
remote-tcp:3333.Schedule   0000000000000073
remote-tcp:3333.Channels   0000000000000063
remote-tcp:3333.Timers     0000000000000074
remote-tcp:3333.Recordings 0000000000000075
remote-tcp:3333.Setup      0000000000000065

Somit sind alle Keycodes, also alle Tastenzuordnungen, im VDR eingetragen. Nun heißt es, mit PUTTY eine Telnet-Verbindung aufzubauen. vorher muss VDR aber wieder gestartet werden:

sudo service vdr start

PUTTY starten

Um nicht den Windows-eigenen Telnet-Client nutzen zu müssen, greife ich auf PUTTY zurück. Früher habe ich ihn auch für SSH benutzt, bin aber schon länger davon abgekommen. Jedenfalls kann man es auch sehr gut für Telnet und andere Protokolle nutzen. Ich habe es in einem Verzeichnis liegen, wo auch noch andere Tools liegen, daher habe ich in der Systemvariable „PATH“ einen Eintrag zu diesem Verzeichnis gelegt.

Ich gehe mit der Windowstaste+R in den Ausführen-Dialog und gebe dort einfach putty ein. Nun öffnet sich der Verbindungsassistent von PUTTY, in dem wir noch ein paar Einstellungen machen müssen.

  • Host name (or IP adress): Hier gebe ich die IP des Servers ein.
  • Port: Hier gebe ich den VDR-Port ein, also 3333.
  • Protokoll: Hier ist SSH voreingestellt, ich wähle Telnet aus.

Anschließend drücke ich einige Male Tab, um in die Strukturansicht an der Seite zu kommen, wo derzeit „Sessions“ ausgewählt ist. Ich muss nämlich noch das Tastaturverhalten einstellen. Also gehe ich mit den Pfeiltasten runter bis „Terminal“, darunter zum Eintrag „Keyboard“, mit Tab weiter, bis man „ESC[N~“ hört. Hier wählt man „Linux“ aus.

Ich gehe, weil ich diese Verbindung sicher noch öfter brauche, in der Seitenleiste wieder zurück zu „Session“. Hier kann ich die Settings speichern, die ich sinnvollerweise „VDR Telnet“ nenne und dann auf den Schalter „Safe“ gehe und Enter drücke.

Wenn ich nun mit „Open“ die Verbindung öffne, habe ich ein leeres PUTTY-Fenster. Eigentlich müssten die Tasten ja jetzt funktionieren. Das lässt sich am einfachsten mit der Taste „m“ testen, welche das OSD öffnen sollte.

Und tatsächlich, das OSD öffnet sich! Es ist mit der Braillezeile sogar lesbar, nur der Menübalken wird nicht mitverfolgt. Das ist schade, aber nicht zu ändern. Heißt es also, mit den Pfeiltasten mitzählen. 🙁 Ich drücke also wieder „m“, um aus dem OSD rauszukommen.

Nun drücke ich die Taste „e“, um ins Setup zu gelangen.

Die einzelnen Punkte sind nummeriert, also könnte ich ja versuchen, durch Drücken der entsprechenden Zifferntaste zum Ziel zu gelangen.

Ich will jetzt auch nicht jede einzelne Einstellung beschreiben. Viele davon sind selbsterklärend und durchaus gut im Benutzerhandbuch des VDR-Wikis dokumentiert. Vieles ist ja auch Geschmackssache.

Einige Zeit später…

Ich habe jetzt die Grundkonfiguration von VDR gemacht. Wenn man mit der Taste „e“ das Setup-Menü öffnet, hat man die einzelnen Punkte, wie „OSD“, „EPG“ usw. Diese wählt man mit den Pfeiltasten hoch und runter aus und drückt Enter. Die Einstellungen, die sich dort präsentieren, wählt man mit Pfeil hoch und runter aus und ändert die Werte mit Pfeil links und rechts. Mit Enter bestätigt man alles und ist wieder im Setup-Hauptmenü.

Es funktioniert, ist aber anstrengend. Der Menübalken wird von der Braillezeile nicht verfolgt. Man muss die Braillezeile manuell nachführen. Dann allerdings geht es recht gut.

Viele Einstellungen habe ich auch nicht geändert, die meisten beziehen sich eh darauf, TV direkt auch mit dem VDR zu gucken. Ich habe nur ein paar Einstellungen im EPG-Bereich geändert, zum Beispiel, dass er nicht nach 5, sondern schon nach 3 Stunden ein EPG-Update machen soll. Und bei den Timer-Aufnahmen habe ich die Vorlauf- und die Nachlaufzeit geändert. Viel mehr habe ich auch nicht gemacht, nur hier und da ein paar Einstellungen, die, wie ich schon sagte, eher Geschmackssache sind.

Wenn man fertig ist, kann man das PUTTY-Fenster einfach schließen. Da es keine Möglichkeit gibt, die Telnet-Verbindung über einen Befehl zu schließen, ist das auch kein Problem.

Web-Interface

Ich habe ja 2 Web-Schnittstellen installiert. Beide haben so ihre Vor- und Nachteile, weswegen ich auch beide behalten werde. Beide Schnittstellen sind mit dem Firefox und Jaws gut zu bedienen, daher gehe ich jetzt nicht auf jeden Aspekt ein. Ich will nur kurz die Einrichtung und Nutzung erklären.

VDR-Live

Dies ist eine recht einfach gehaltene Weboberfläche, mit der man das aktuelle Programm, die Timer, die Aufnahmen und Senderlisten sehen kann. Aufnahmen oder das TV-Programm kann man hierüber auch streamen.

Um die Oberfläche aufzurufen, gibt man folgendes in die Adresszeile des Browsers ein, wobei man die IP-Adresse des Servers nehmen kann, aber auch den Servernamen.

server01:8008

Nun wird man nach einem Benutzernamen und Passwort gefragt. Standardmäßig ist der Benutzername „admin“ und das Passwort ist „live“. Anschließend ist man auf einer recht einfachen Weboberfläche.

Nun sollte man den Link „Setup“ aufrufen und die Oberfläche nach den eigenen Wünschen anpassen. Dabei würde ich auch den Benutzernamen und das Passwort ändern. Die restlichen Einstellungen sind Geschmackssache und selbsterklärend.

vdradmin-am

Diese Oberfläche unterscheidet sich in ihren Funktionen nicht sehr von der Live-Oberfläche, für meinen Geschmack ist sie aber schöner zu bedienen. Allerdings ist dies kein Plugin vom VDR, sondern scheint etwas externes zu sein. Dies ist z. B. eine der Tools, die über das SVDRP-Protokoll mit dem VDR kommuniziert. Diese Oberfläche muss also per Hand gestartet werden.

Um die Grundkonfiguration dieses Plugins durchzuführen, ruft man es also folgendermaßen auf:

vdradmind -c

Nun werden einige Fragen gestellt, wie Aufnahmeverzeichnis, Port, Benutzername, Passwort usw. Am Ende ist die Grundkonfiguration gemacht und der Service läuft.

Damit vdradmin-am auch immer beim Start des Servers mitgestartet wird, habe ich es in die Datei rc.local eingetragen.

sudo nano /etc/rc.local

Hier trägt man die Zeile mit dem Befehl „vdradmind“ direkt über der Zeile „exit“ ein.

Die Oberfläche hierzu ist ähnlich aufzurufen, wie die Live-Oberfläche. Gebt also in die Adresszeile des Browsers folgendes ein:

server01:8001

Alternativ könnt ihr an Stelle von „server01“ auch die IP-Adresse eingeben:

192.168.178.12:8001

Hier gebt ihr natürlich die IP-Adresse ein, die euer Server tatsächlich hat.

Nun gibt man noch die im Konfigurationsdialog erstellten Benutzernamen und Passwort ein, dann ist man schon auf der Oberfläche. Auch hier, erst mal in den Link „Configuration“ gehen und Anpassungen machen. Diese Oberfläche ist z. B. auch auf Deutsch umstellbar.

Welche nutzen?

Ich bin mir noch nicht wirklich sicher, welche der beiden Oberflächen ich nutzen will. Beide gefallen mir, aber die Zeit wird zeigen, welche mir dann doch besser gefällt. Die andere bleibt trotzdem, man weiß ja nie, und so viel Platz nehmen die jetzt auch nicht weg… 🙂

Sendersuchlauf

OK, kommen wir also zu einem der wichtigsten Teile, dem Sendersuchlauf. Denn noch hat der VDR nur die Standardsender, die bei der Installation dabei waren, und wie aktuell die sind, weiß ich nicht. Also werde ich eine neue channels.conf erstellen und die Sender darin nach meinen Wünschen sortieren.

Als erstes muss wieder der VDR gestoppt werden:

sudo service vdr stop

Nun werde ich das Antennenkabel mit der Dose verbinden und danach den Suchlauf starten. Und so sieht der Aufruf für den Suchlauf aus:

w_scan -f c -c DE -o 21>kanal.txt
  • -f c: Dieser bestimmt das Frontend, also die Art des Scans. Das „c“ steht hierbei für Cable, hier könnte auch ein „t“ für terrestrisch oder auch ein „s“ für Satellit stehen. Ich habe hier aber nur einen Kabelanschluss. Wie der Aufruf für Sat-Empfang sein muss, müsst ihr evtl. in den Manpages zu w_scan nachlesen.
  • -c DE: Dies legt das Land fest. Hier natürlich Deutschland, wonach Frequenzen, Symbolraten und dergleichen festgelegt sind.
  • -o 21: Ausgabe der channels.conf im Format für VDR 2.1. Ich habe zwar VDR 2.2.0 installiert, aber offenbar gibt es keinen Unterschied. Gibt man den Parameter -o 21 nicht an, wird eine channels.conf im Format für VDR 2.0 erzeugt.
  • >kanal.txt: Dies sorgt dafür, dass das Ergebnis in die Datei kanal.txt im Home-Verzeichnis geschrieben wird. Irgendwie gelingt es mir nicht, direkt in die channels.conf zu schreiben, daher schreibe ich das Ergebnis erst hier rein und kopiere es dann per Hand in die channels.conf.

Dieser Vorgang kann nun eine ganze Weile dauern, also erst mal einen Kaffee machen… 🙂

Fertig, der Scan hat ungefähr 22 Minuten gedauert. Die Daten sind jetzt in der kanal.txt. Aber das Programm hat die Kanäle so reingeschrieben, wie es sie gefunden hat, also total durcheinander. Da sind auch Fernsehkanäle mit Radiokanälen vermischt. Das werde ich nicht komplett sortiert bekommen, das ist zu viel! Was ich aber tun werde ist, die paar Fernsehsender, die ich immer wieder gucke, an den Anfang der Datei zu stellen.

Sortierung

Die Sortierung der Sender ist denkbar einfach, wenn auch umständlich. Vor allem, weil die Datei 512 Zeilen hat. Jede Zeile ist ein Sender. Hier mal ein Beispiel:

Das Erste;ARD:314000:M256:C:6900:101=2:102=deu@3,103=deu@3;106:104;105:0:28106:41985:1101:0

Tja, die einzelnen Parameter könnt ihr im Artikel zur channels.conf im VDR-Wiki nachschlagen.

Wichtig zu wissen ist ja erst mal nur, dass jede Zeile also ein eigener Sender ist. Ich muss jetzt die Datei also nur durchgehen und die Sender ganz an den Anfang der Datei packen, die ich immer wieder sehen will. Die anderen können meinethalben unsortiert bleiben…

In die channels.conf kopieren

Zum Sortieren habe ich den Editor Notepad++ benutzt. Dies ist auch wichtig, weil dieser zum einen Zeilennummern hat, damit man die Stelle wiederfindet, wo man was ausgeschnitten hat, aber auch wegen des Zeilenumbruches. Linux-Dateien haben einen anderen Zeilenumbruch als Windows-Dateien. Die kanal.txt hat Linux-Zeilenwechsel, diese müssen in Windows konvertiert werden. Drückt man also die Alt-Taste, navigiert zum Menü „Bearbeiten“ und sucht dort den Menüpunkt „Format Zeilenende“, so findet sich dort als oberstes die Option, die Zeilenende-Zeichen in Windows zu konvertieren. Das muss man auch, sonst gibt es beim Einfügen in die channels.conf ein heilloses Durcheinander. Damit hatte ich gerade schon etwas Spaß! 🙁

Hat man die Zeilenende-Zeichen konvertiert, kann man mit Strg+A alles auswählen und mit Strg+C kopieren. Nun verbindet man sich per SSH mit seinem Server und öffnet die channels.conf:

sudo nano /etc/vdr/channels.conf

Hier sind viele alte Einträge drin, die ist so alt, da gab es Premiere noch … 🙂 Wie auch immer, drückt die Umschalttaste und Bild nach unten, bis ihr alles markiert habt. Drückt dann Strg+K zum ausschneiden.

Das Einfügen ist jetzt so eine Sache. Das hängt davon ab, mit welchem SSH-Client ihr arbeitet. Ich habe hier ein Notebook mit Windows 10, und der hat einen SSH-Client integriert. Hier geht das, indem man Alt+Leertaste drückt, das Menü „Bearbeiten“ auswählt und hier „Einfügen“. Die Tastenkombination Strg+V funktioniert nicht.

Nun hat es eine ganze Zeit gedauert, bis alles eingefügt war, aber eine oberflächliche Kontrolle zeigt, dass alles gut aussieht. Also kann man mit Strg+X Nano verlassen und die Datei speichern.

Und jetzt kann man auch den VDR wieder starten.

sudo service vdr start

Als nächstes

Im nächsten Teil werde ich einen EPG-Scan anstoßen, die EPG-Suche anschauen, EPG-Suchtimer einrichten und das Plugin für Kodi installieren.

Homeserver 36: Server als Videorecorder verwenden 1 – Installation

Bisher verwende ich eine Dreambox DM8000 als TV-Receiver und Aufnahmegerät. Mit einigen Plugins erweitert und mit einer iPhone-App steuerbar ist es für mich die perfekte TV-Zentrale. Jedoch kommt sie so langsam in die Jahre und fängt an, Ausfallerscheinungen zu zeigen. Zeit also, sich um Ersatz zu kümmern. Was liegt da näher, als den Homeserver als Aufnahmegerät zu verwenden?

Mit dem Wegfall der Dreambox habe ich auch einen Stromfresser weniger, wodurch sich auch noch bares Geld sparen lässt. Der Server läuft sowieso ständig, also kann der auch die TV-Zentrale werden.

Vorüberlegungen

Was muss also getan werden? Nun, der Server braucht erst mal eine TV-Karte. Dann braucht es ein Kabel, welches von meiner Kabel-Dose zum Server gelegt wird. Last, but not least, braucht es auf dem Server Software, die die Aufgaben erfüllt.

Zwar habe ich mit den umfangreichen Plugins der Dreambox das Teil um viele Funktionen erweitert, jedoch nutze ich davon nicht wirklich alle. Ein bisschen oversized, das Gerät. Überlegen wir also mal, was mein Server an Aufgaben wirklich übernehmen muss:

  • Aufzeichnung von 2 Sendungen parallel sollte gehen. Also muss ein Dualtuner her, oder 2 TV-Karten.
  • Eine Autotimer-Funktion, wie es sie in der Dreambox gibt, brauche ich ebenfalls.
  • Bedienbarkeit über eine Weboberfläche wäre auch nett.
  • Von meinem Mediacenter Kodi sollte ich auf Aufnahmen und Live-TV zugreifen können.

Meine Dreambox läuft noch eine Weile, noch ist sie nicht ganz hinüber. So kann ich also ohne Panik und in Ruhe den Server einrichten. Und oberflächlich recherchiert scheint alles zu gehen, was ich haben will. Vielleicht gehen noch das eine oder andere Extra, aber meine Grundanforderungen scheinen sich umsetzen zu lassen.

Hardware

Fangen wir also mit dem Einfachsten an, der Hardware. Ich benötige eine TV-Karte, die auch von Linux unterstützt wird. Dies ist nicht schwer, bedarf aber gewisser Vorsicht. Ist die Karte zu neu, sind deren Treiber noch nicht im Linux-Kernel enthalten. Dann kann die Einbindung der Karte zu einem Abenteuer werden.

Ich benutze zur Zeit Debian 9 (Stretch), und der läuft mit dem Kernel 4.9. Also sollte es eine TV-Karte sein, die vorzugsweise schon Treiber in diesem Kernel hat. Weiter sollte es eine TV-Karte mit 2 Tunern sein. Klingt erst mal schwer, war es dann aber nicht.

Ich habe mich für eine DVBSky T982 V2 entschieden. Diese hat zum Zeitpunkt des Kaufs 94,90 € gekostet. Diese hat einen Dualtuner, ist für DVB-C, also Kabel, und auch für DVB-T/T2 ausgelegt und hat bereits seit Kernel 3.19 Treiber enthalten.

Die Installation ist denkbar einfach. Zunächst muss man von der Herstellerseite die Firmware für diese Karte herunterladen. Linux hat zwar bereits die Treiber, benötigt aber die Firmware, damit sie korrekt funktionieren kann. Der Vorteil ist, die Firmware ist denkbar einfach zu installieren.

Zunächst geht man also auf die Support-Seite von DVBSky und lädt sich dort die Firmware herunter. Das ist eine sehr kleine ZIP-Datei, die bereits alle Firmware-Dateien des Herstellers beinhaltet. Man muss also nicht umständlich nach der Firmware eines bestimmten Gerätes oder einer bestimmten Karte suchen.

Diese ZIP-Datei habe ich nun ausgepackt und auf mein Home-Verzeichnis auf dem Server kopiert. Da ich mein Home-Verzeichnis auf meinem Laptop als Laufwerk eingebunden habe, geht das mit Windows-Bordmitteln hervorragend.

Nun habe ich in meinem Home-Verzeichnis also einen Ordner, in dem einige Dateien mit der Endung FW liegen, eine Readme-Datei, die mir sagt, was ich damit machen muss und ein kleines Shellscript. Abgekürzt, alle Dateien mit der Endung FW sind Firmware-Dateien. Diese müssen in /lib/firmware kopiert werden. Man könnte dies nun per Hand tun, braucht man aber zum Glück nicht, denn dafür ist das kleine Shellscript da. Dieses kopiert alle Firmware-Dateien dort hin, wo sie hingehören.

Man verbindet sich also per SSH mit seinem Server und gibt dort folgende Befehle ein:

cd firmware
sudo ./copy-firmware.sh

Alles in allem sind die Firmware-Dateien keine 100 Kilobyte groß, also macht es auch nichts, wenn alle kopiert werden. Und dieses Shellscript copy-firmware.sh tut dies! Das vorangestellte „sudo“ ist nötig, da man sonst keine Schreibrechte auf /lib/firmware hat.

Fertig, die Software für die Karte ist damit installiert. Nun braucht man nur noch den Server abschalten, die Karte einbauen und den Server wieder hochfahren.

Einbau

Bei der DVBSky T982 V2 handelt es sich um eine Low Profile Karte. Das heißt, sie ist sehr niedrig und für schmale Gehäuse gedacht. Daher würde sie so, wie sie aus dem Karton kommt, nicht in das Gehäuse passen. Die Rückblende der Karte muss ausgetauscht werden. Die passende Rückblende für normalgroße PC-Gehäuse liegt der Verpackung bei. Man muss also erst mal die 2 kleinen Schräubchen lösen und die neue Blende anbringen und festschrauben. Dies bedarf einiger Fingerfertigkeit, weil die Schräubchen echt klein sind. Man kann aber, wenn man keine rohe Gewalt anwendet, dabei nichts kaputt machen.

Nun habe ich die Karte in einen der freien PCIe-Slots eingesetzt und festgeschraubt. Auf der Rückseite des Servers habe ich jetzt 2 Eingänge für Antennenkabel, ob nun DVB-C oder DVB-T/T2. Die Tuner können beides.

Prüfen

Es gibt sicher eine Menge Wege zu prüfen, ob die Karte vernünftig eingebaut wurde. Ich lasse mir einfach anzeigen, ob der Kernel einen Device-Eintrag generiert hat. Würde die Karte nicht funktionieren, würde das nicht gehen. Zumindest mal oberflächlich reicht es.

Hierfür zeige ich einfach das Verzeichnis an, welches zum Gerät führt:

ls -l /dev/dvb

Bevor die Karte eingebaut war, gab es dieses Verzeichnis nicht. Da löste dieser Befehl eine Fehlermeldung aus. Nun aber sehe ich folgendes:

total 0
drwxr-xr-x 2 root root 120 Oct 23 17:06 adapter0
drwxr-xr-x 2 root root 120 Oct 23 17:06 adapter1

Wie man hier sehr schön sehen kann, hat jeder der beiden Tuner seinen eigenen Gerätepfad. Somit tauchen die beiden Tuner als separate Geräte auf.

Weiteres

In der Verpackung der TV-Karte war noch ein IR-Sensor und eine Fernbedienung. Würde man diese Karte also in einen Mediacenter-PC einbauen, könnte man diesen hierüber steuern. Ein Anschluss für den Sensor gibt es hinten an der TV-Karte. Dies brauche ich aber nicht, ich erwähne es nur der Vollständigkeit halber.

Kabel verlegen und anschließen

Nun ziehe ich ein Antennenkabel von der Kabeldose im Wohnzimmer bis zum Server. Hierfür habe ich mir dieses 20 Meter Antennenkabel von CSL gekauft. Das reicht aber nicht, ihr braucht noch ein T-Stück und 2 weitere kurze Antennenkabel, damit ihr auch beide Tuner anschließen könnt. Diese habe ich bereits, weil ich diese ja auch schon für die Dreambox benötige. Falls ihr also so ein T-Stück noch sucht, könnte ich euch diesen Hama Antennenverteiler empfehlen. Damit könnt ihr beide Eingänge der TV-Karte anschließen, so dass ihr auch 2 Sendungen gleichzeitig aufzeichnen könnt.

Das war erst mal der Hardware-Teil, der war, zumindest für mich, ja noch einfach zu bewältigen. Nun kommt völliges Neuland, die Software. Ich bin ja seit Jahren Dreambox-verwöhnt, mal sehen, was nun passiert!

Software

Damit der Server auch als Recorder funktionieren und TV zu meinem Kodi Mediacenter streamen kann, braucht es Software und jede Menge Plugins. Ich werde hierfür VDR (Video Disk Recorder) nutzen. Diesen gibt es schon sehr lange für Linux. Abgesehen davon gibt es viel Dokumentation und Hilfe im VDR-Wiki und im entsprechenden Forum VDR-Portal.

Ich werde zunächst nur die benötigte Software installieren. Um die Konfiguration und Erweiterbarkeit kümmere ich mich so nach und nach.

VDR installieren

Nun, wie man Pakete installiert, habe ich in den vorangegangenen Teilen ja schon ausführlich erwähnt. Also installiere ich VDR wie folgt:

sudo apt-get install vdr

Je nach bisher installierten Paketen werden noch ein paar zusätzliche Pakete installiert.

Während der Installation werden noch ein paar Fragen gestellt. Als erstes geht ein Fenster auf, welches darüber informiert, dass VDR standardmäßig die Aufnahmen in /var/lib/video speichert. Man könne das später ändern. Die Frage lautet also, ob man das Verzeichnis, wie es vorgeschlagen wird, erstellen möchte. Hier wähle ich „Yes“ aus. Das kann ich später alles noch ändern.

Als nächstes wird nach der Art der TV-Karte gefragt. Da ich DVB-C nutze, wähle ich „Cable“ aus dem Menü aus.

Anschließend läuft die Installation der Pakete durch und VDR ist erst mal installiert.

Nun braucht es noch einige Plugins, damit gewisse Funktionalitäten vorhanden sind. Zum Beispiel braucht es eine Weboberfläche, Kodi-Unterstützung und so einiges weitere.

Kodi-Unterstützung

Damit ich auf das Live-TV und die Aufnahmen auch vom Mediacenter Kodi aus zugreifen kann, braucht es ein Plugin für Kodi und eines für den VDR. Um Kodi und seine Konfiguration kümmere ich mich später, nun muss erst mal das Plugin für VDR installiert werden.

sudo apt-get install vdr-plugin-vnsiserver

In Kodi muss später noch der VDR-VNSI-Client installiert werden.

Weboberfläche

Um VDR mittels eines Webbrowsers nutzen und steuern zu können, muss das Plugin VDR-Live installiert werden.

sudo apt-get install vdr-plugin-live

Wie man hierauf nun zugreift und es nutzt sehen wir uns später an.

EPG-Suche

Das Plugin EPG-Search erweitert die Suchmöglichkeiten innerhalb des EPG und kann Aufnahmen basierend auf Suchkriterien erstellen. Das wäre z. B. so eine Autotimer-Option.

sudo apt-get install vdr-plugin-epgsearch

Web-Administrationstool für VDR

Ich muss zugeben, so ganz genau weiß ich nicht, was dieses Plugin zusätzlich tut. Ich habe mir ja noch nicht angesehen, was sich über die Live-Oberfläche machen lässt. Von der Beschreibung gehe ich aber aus, dass sich hier viel weitreichendere Einstellungen des VDR vornehmen lassen. Daher installiere ich das mal. Sollte es sich als falsch erweisen, kann ich es ja immer noch deinstallieren.

sudo apt-get install vdradmin-am

Streamen

Damit man auch mittels Webbrowser TV-Programme streamen kann, falls man das mal möchte, muss der Streamdev-Server installiert werden.

sudo apt-get install vdr-plugin-streamdev-server

Nun kann man z. B. mit dem Firefox das aktuelle TV-Programm streamen.

Nachtrag

Es ist mir bisher nicht gelungen, mit der Weboberfläche das aktuelle Programm mit dem VLC zu streamen. Vielleicht fehlt noch was, aber darum kümmere ich mich in der nächsten Zeit mal. Einen Hinweis, wie ich es gelöst habe, wird es dann im Blog geben.

OSD fernsteuern

Der VDR ist eigentlich eine Anwendung, die lokal betrieben wird. Also werden auch alle Einstellungen auf einem OSD, also über ein Menü am eigentlichen Bildschirm getätigt. Nun läuft VDR hier aber auf einem Server und ein Bildschirm ist nicht angeschlossen. Wie kommt man nun also an die Einstellungen ran? Nun, dafür gibt es einen Weg, den ich in diesem Blogbeitrag gefunden habe. Der Weg ist recht umfangreich, und ob er überhaupt für mich mit Screen Reader und Braillezeile funktioniert, muss sich noch herausstellen. Ihr müsst den langen Beitrag jetzt nicht lesen, wir gehen das nach und nach durch. Ich installiere aber erst mal die benötigten Pakete.

sudo apt-get install vdr-plugin-remote vdr-plugin-svdrposd vdr-plugin-svdrpservice

Kanalsuche

VDR selbst sucht eigentlich nicht nach Kanälen. Jedenfalls ergibt sich das aus den Texten, die ich im VDR-Wiki und in den Foren so lese. VDR greift auf die channels.conf zu, die aber erstellt werden muss. Zwar hat VDR bei der Installation schon eine channels.conf installiert, aber wie aktuell diese ist, lässt sich nicht sagen. Also braucht es ein Tool, um die Sender zu scannen und die channels.conf zu erzeugen.

sudo apt-get install w-scan

Hiermit können die Sender gesucht und die channels.conf erzeugt werden.

Als nächstes…

Im nächsten Teil werde ich VDR konfigurieren. Ein anderes Aufnahmeverzeichnis muss erstellt werden, die Grundeinstellungen vom VDR müssen gemacht werden, meine bisherigen Autotimer von der Dreambox müssen irgendwie in den VDR und so weiter und so fort.

Auch, wenn es erst mal kompliziert klingt, scheint es doch ganz problemlos zu laufen. Ich bin von den Fertiglösungen, wie der Dreambox, verwöhnt, daher ist es erst mal ungewohnt, alles einzeln per Hand zu tun. Und manchmal weiß ich auch nicht, wo ich jetzt anfangen oder weitermachen soll.

Ich werde zu diversen Dingen erst mal noch die Manpages lesen, damit ich weiß, wo sich was wie einstellen lässt. Dann sehen wir weiter. Ich denke aber, als erstes dürfte ein Sendersuchlauf auf dem Programm stehen.