zur Startseite

Druckausgabe von https://privat.albicker.org
Iveco Daily 4x4, Hunde und multithematisches Blog

Mediencenter-PC mit VDR und Kodi unter Debian Linux

veröffentlicht am 02.07.2021 - aktualisiert am 24.12.2022 mit 2241 Worten - Lesezeit: 11 Minute(n) in * HARDWARE * MEDIEN * PROGRAMME *

Inhaltsverzeichnis

 

Vor drei Jahren hab ich einen älteren Medien-PC auf Intel-i5-Basis aus dem Verkehr gezogen, die Auswirkungen auf den Stromverbrauch dann hier dargestellt. Nun Stand ein Upgrade meines carPC an, der neue J5040 “rennt ca. 30% schneller” bei meinen Anwendungen (hauptsächlich Bildbearbeitung) als sein Vorgänger (J4205). Was nun mit dem alten Mainboard?

Mediencenter-Upgrade

Warum?

Drei Dinge sind zusammengekommen:

  1. Nach drei Jahren war die SD im alten Raspberry-Mediencenter, die dort als Betriebssystem-Datenträger dient, offenbar defekt. Die Folge war eine Wiederherstellung des Systems - dabei hab ich nebenbei das eine oder andere dazugelernt.
    Raspberry Pi 3 mit HiFiberry
  2. In der letzten Zeit der gelegentlichen Umbrüche in der Medienwelt (viele Macher, z. B. auch viele Tech-Vlogger aus USA, verlassen youtube in Richtung alternativer Verbreitungskanäle) war es nicht immer möglich, direkt in Kodi als einziger Oberfläche diese nachzuvollziehen.
  3. Unabhängig davon wurde gerade eine sparsame Hardware frei durch ein Upgrade meines carPC wie oben erwähnt.

Auf dem carPC als solchem läuft ein normales debian-Desktop-Betriebssystem (derzeit debian 10 (Buster) Cinnamon). So lag es nahe, einen Mediencenter-PC auf der Basis des frei gewordenen mini-ITX-Boards mit dem J4205 und eben debian als Betriebssystem aufzubauen.

Wie?

Der “Neubau” sieht in Bezug auf die Hardware ganz grob so aus:

  1. Mainboard: ASRock ASR J4205-ITX
  2. Mini-ITX-Gehäuse lüfterlos vertikal
  3. TV-Tuner für DVB-S von Sundtek
  4. Bedienung: Drahtlos-Tastatur mit Touchpad Logitech K400+
  5. Bildausgabe per HDMI auf einen älteren Flachbild-Fernseher
  6. Tonausgabe über eine externe USB-Soundkarte an die Stereo-Anlage
  7. Haupt-Datenspeicher: ein externes NAS
HTPC auf Basis mini-ITX

Zum Hardware-Aufbau möchte ich nicht allzu viel schreiben, hier soll es vielmehr um die Inbetriebnahme und die Einrichtung der Software-Komponenten gehen.

Installation und Einrichtung des Betriebssystems

Auswahl des Betriebssystems und des Desktops

Wie schon erwähnt kommt auf meinen Desktop-Rechnern derzeit debian Buster zum Einsatz. Ein Blick ins Software-Repositiory zeigte mir allerdings, daß die dort angebotene Version von Kodi recht alt ist (17.x), sodaß ich mit Problemen rechnete bei meinem Vorhaben, das Profil von Kodi von meinem Raspberry auf den neuen Rechner zu übernehmen. Und weil debian Bullseye (derzeit “testing”) demnächst Buster als stabile Version sowieso ablösen wird, habe ich gleich diese Version installiert, allerdings habe ich mich bei diesem Anwendungsfall für den Gnome-Desktop entschieden wegen der besseren Sichtbarkeit der Elemente bei Bedienung auf mehrere Meter Entfernung vom Sofa aus (hier ist “von Haus aus” Kodi 19 enthalten).

=Bildbeschreibung=

Installation

Typischerweise verwende ich zur Installation eines debian-Betriebssystems zu Hause bei guter Internetverbindung den Netzwerkinstaller - dort: Kleine CDs oder USB-Sticks. Die dort herunterzuladende ISO-Datei kann auf eine CD gebrannt werden oder auf einen USB-Stick geschrieben (diese Methode verwende ich in der Regel, da weniger Müll entsteht …).
Unter Linux ist letzteres eine einfache Aufgabe über die Laufwerkverwaltung - “Laufwerksabbild wiederherstellen”:

debian Installer auf USB-Stick schreiben

Ansonsten (also für andere Systeme) folgt man der Anleitung.

Die Installation erfolgt auf einer relativ kleinen älteren SATA-Festplatte, die ich hier “recycled” habe (ich brauche im Rechner selbst keine große Festplatte, wie erwähnt befindet sich der Haupt-Datenspeicher auf einem NAS).

Festplatten-Partitionierung

Und ja, eine 50GB-Partition (Partition 2) reicht üppig für eine Linux-Installation.

Dann läßt man eben den Installer laufen und beantwortet die dort gestellten Fragen, dabei vergebe ich in meinen debian-Systemen grundsätzlich für den Systemadministrator root und den normalen Benutzer getrennte Passwörter.

debian Vergabe von root-Passwort

Ansonsten möchte ich hier nicht näher auf den Installationsprozess eingehen, Beschreibungen dazu gibt es andernorts genügend.

Einrichtung

Für die Verwendung als Mediencenter sollte man nach der Installation die eine oder andere Einstellung ändern:

Mediencenter mit VDR und Kodi

Viele Dinge kann man sicherlich auch per GUI einrichten. Ich verwende trotzdem gerne das Terminal, weil es schneller geht und ich die nötigen Befehle einfach notieren kann, sollte ich mal den Bedarf haben, dieses - oder auch ein weiteres - System neu einzurichten (oder die Schritte in einer Beschreibung wie dieser weiterzugeben).

Viele der nachfolgend gezeigten Befehle werden als root (erkennbar am Prompt in der Form ~#) ausgeführt. Anmeldung dazu aus dem User-Terminal:

~$ su -l
Passwort: 
root@{rechnername}:~# 

Sundtek DVB-S Tuner

Ich verwende hier einen Sundtek SkyTV Ultimate 6 2016 (DVB-S/S2):

Sundtek DVB-S Tuner
Sundtek DVB-S Tuner

Sundtek garantiert die Funktion seiner Tuner unter Linux. Nach dem Anschluss kann man erstmal prüfen, ob der Stick “vorhanden” ist:

~$ lsusb
...
Bus 001 Device 005: ID 2659:1502 Sundtek 
...

Als nächstes wird der Treiber installiert - am einfachsten direkt aus dem Internet:

~# cd /tmp
~# wget http://sundtek.de/media/sundtek_netinst.sh
~# sh sundtek_netinst.sh

Als Benutzer kann man sich dann anzeigen lassen, ob das funktioniert hat:

~$ /opt/bin/mediaclient -e
**** List of Media Hardware Devices ****
device 0: [SkyTV Ultimate 6 2016/Q1]  DVB-S/S2, ANALOG-TV, REMOTE-CONTROL, OSS-AUDIO
  [INFO]:
     STATUS: STANDBY
  [BUS]:
     ID: 1-1.3
  [SERIAL]:
     ID: U1802161xxxxx
  [DVB-S/S2]:
     FESTATUS: STANDBY
     LNBVOLTAGE: DISABLED
     LNBSUPPLY: ACADAPTER
     LNBSTATUS: OK
     FRONTEND: /dev/dvb/adapter0/frontend0
     DVR: /dev/dvb/adapter0/dvr0
     DMX: /dev/dvb/adapter0/demux0
  [ANALOG-TV]:
     VIDEO0: /dev/video0
     VBI0: /dev/vbi0
  [REMOTECONTROL]:
     INPUT0: /dev/mediainput0
  [OSS]:
     OSS0: /dev/dsp0

VDR - der Video Disk Recorder

VDR ( Video Disk Recorder) ist eine Open-Source-PVR-Backend-Anwendung für Linux, mit der jeder Computer als DVR (Digitaler Videorekorder) fungieren kann, um Live-TV und Radio zu streamen und Fernsehprogramme über die Festplatte des Computers aufzuzeichnen. Der Computer muss mit einem digitalen TV-Tuner-Adapter (oder einer TV-Tuner-Karte) ausgestattet sein.

Installation

Im debian-Repository finden sich die folgenden Pakete, die nun installiert werden müssen:

~# apt-get install -y w-scan
~# apt-get install -y vdr
~# apt-get install -y vdr-plugin-vnsiserver

Die Einrichtung

erfolgt in mehreren Schritten:

Erster Funktionstest von VDR

Aus dem debian-Repository wird das VDR-Plugin Live installiert:

~# apt-get install -y vdr-plugin-live	

Nun kann man im Browser auf dem Mediencenter selbst unter der Adresse http://localhost:8008 mit dem Benutzernamen admin und dem Standardpasswort live auf den VDR-Server zugreifen.

Wenn man mittels

~# nano /etc/vdr/plugins/vnsiserver/allowed_hosts.conf

sicherstellt, daß eine Zeile mit dem Adressraum des lokalen Netzes in dieser Datei enthalten ist, in unserem Beispiel:

192.168.123.0/24        # any host on the local net

dann geht das von einem anderen PC im Netzwerk ebenso, hier im Beispiel mit der o. g. IP-Adresse des Mediencenter-Rechners 192.168.123.123:

Kodi - Quelloffener Media-Player

Kodi, früher bekannt als XBMC, ist ein preisgekrönter freier und Open-Source-Software-Medienplayer und Unterhaltungszentrale für alle digitalen Medien. Kodi ist für Linux, Mac OS X (Leopard, Tiger und Apple TV) und Microsoft Windows sowie für die Original-Xbox-Spielkonsole verfügbar. Kodi eignet sich als perfekte Oberfläche für einen HTPC, unterstützt eine fast endlosen Reihe von Fernbedienungen und läßt sich umfangreich konfigurieren.

Installation von Kodi aus den debian Paketquellen

debian Bullseye stellt zum Zeitpunkt der Erstellung dieses Artikels die Version 19.1 zur Verfügung. Benötigt werden die Pakete

~# apt-get install -y kodi
~# apt-get install -y kodi-pvr-vdr-vnsi

und deren Abhängigkeiten. Will man auch auf die Addons aus den Kodi-Quellen zugreifen, benötigt man noch

~# apt-get install -y kodi-repository-kodi

Einrichtung von Kodi

Beim Start meldet sich Kodi mit dieser Abfrage:

Kodi VDR VNSI Client Aktivierung

Diese ist mit Ja zu beantworten - damit kann Kodi dann über VDR auf den Satellitentuner zugreifen und Fernseh- und Radio-Stationen anzeigen und wiedergeben …

Kodi PVR Systeminfos

… und das sieht im Ergebnis so aus:

Kodi TV EPG

Einige Optimierungen

Ständig wechselnde Soundkarte

Das hier verwendete J4205-Board hat analogen Sound, kann Sound via HDMI ausgeben und außerdem hat das Board einen optischen Ausgang: 1 x Optical SPDIF Out Port. Letzteren verwende ich hier zur Übertragung mittels einer optischen Leitung (Toslink) zum angeschlossenen Verstärker - kein Brumm, keine Einstreuungen, eigentlich nur gutes Audio.

Aber: Um das Bild zum Fernseher zu bringen, hängt dieser am HDMI-Kabel. Rechner und Audioverstärker laufen in der Regel durch, der Fernseher nur, wenn ich Bilder sehen will.
Jedes Mal, wenn ich den Fernseher einschalte, wechselt der Sound-Ausgang vom Eintrag Internes Audio Digital Stereo (IEC958) auf Digital Stereo (HDMI) und der Fernseher quäkt los. Also muß ich nach jedem Einschalten des Fernsehers in pavucontrol (Pulseaudio-Lautstärkeregler) ins Dropdown gehen und das Ausgabegerät zurückstellen, um erträgliches Audio zu haben.

Ich konnte nun nirgends in irgendeiner GUI eine Option finden, mit der ich diesen automatischen Wechsel auf “neue” Audio-Devices deaktivieren könnte.

Die Lösung:
In der Datei /etc/pulse/default.pa gibt es diese Zeile:

load-module module-switch-on-port-available

Diese wird durch ein vorangestelltes # auskommentiert (root-Rechte erforderlich).

Alternativ kann auf Benutzer-Ebene die Änderung aktiviert werden, indem die Datei vorher nach ~/.config/pulse kopiert und dort die Anpassung vorgenommen wird.

Überarbeitung der Senderliste

Wie oben beschrieben, nutze ich eine “handgemachte” reduzierte und sortierte Senderliste. Eine Kopie (channels-vdr.conf) lege ich im Home-Verzeichnis ab. Dort kann ich - ohne Probleme mit den Berechtigungen - von Hand munter drin rumeditieren. Wenn ich einen Stand habe, den ich dann verwenden möchte, dann kopiere ich den mit den folgenden Befehlen im root-Terminal an den Bestimmungsort:

~# systemctl stop vdr
~# cp /home/{benutzername}/channels-vdr.conf /var/lib/vdr/channels.conf
~# chown vdr:vdr /var/lib/vdr/channels.conf
~# systemctl start vdr

Also: VDR stoppen - Datei kopieren und dabei umbenennen - Berechtigungen auf vdr ändern - VDR wieder starten
… und fertig.

Fernzugriff auf das Mediacenter

Um Radio zu hören oder das Abspielen der Musiksammlung zu starten braucht nicht unbedingt immer der angeschlossene Fernseher zu laufen. Hierfür würde ein kurzer Fernzugriff vom Büro-Rechner reichen.

In Debian 11 mit dem Gnome-Desktop wird in den Einstellungen der entsprechende Eintrag

=Bildbeschreibung=

erst sichtbar, wenn das Paket gnome-remote-desktop nachinstalliert ist. Dann kann die Bildschirmfreigabe aktiviert werden:

=Bildbeschreibung=

Von einem anderen Rechner kann dann z. B. per Vinagre (“Betrachter für entfernte Bildschirme”) über das VNC-Protokoll eine Verbindung hergestellt werden.

Verlegen des Video-Verzeichnisses

Standardmäßig speichert VDR alle Aufnahmen im Verzeichnis /var/lib/video. Dieses Verzeichnis liegt bei mir in der Betriebssystem-Partition - sowas gefällt mir gar nicht, denn ich möchte keine Instabilitäten des Betriebssystems provozieren, bloß weil das Aufnahmeverzeichnis voll läuft.

Ausweg: In der Partition, in der die /home-Verzeichnisse liegen, lege ich ein Verzeichnis vdr an, das dem Benutzer vdr gehört.

~# mkdir /home/vdr
~# cd /home/vdr

und in diesem Verzeichnis wird ein Unterverzeichnis video erstellt:

root@{rechnername}:/home/vdr# mkdir video
root@{rechnername}:/home/vdr# chown vdr:{benutzername} /home/vdr/video

Die Gruppenzugehörigkeit des Video-Verzeichnisses habe ich für den Benutzer des Rechners festgelegt, um im Dateimanager sehen zu können, was sich da tut.

Die für VDR relevanten Verzeichnisse sind in /etc/vdr/conf.d/00-vdr.conf festgelegt.
Diese Datei wird editiert, z. B. mit

~# nano /etc/vdr/conf.d/00-vdr.conf

und die Zeile

--video=/ver/lib/video

durch den Eintrag

--video=/home/vdr/video

ersetzt.

Weitere Software - der Sinn des Ganzen

Bis hierher könnte man die Frage stellen: Warum nicht gleich ein fertiges System wie z. B. OSMC auf einen geeigneten Rechner aufspielen - und gut ist.

Schon die Tatsache, einen vollwertigen Internetbrowser zur Verfügung zu haben auf dem Medienrechner, rechtfertigt in meinen Augen den Einsatz eines vollwertigen Betriebssystem als Basis für einen Medien-PC anstelle einer Schmalspur-Lösung à la OSMC etc.

Aber: es gibt auch weitere Software, die sinnvollerweise auf so einem Rechner laufen könnte (weil er - im Gegensatz zum Schreibtisch-PC - auf langfristigen Betrieb ausgerichtet ist):

MediathekView

Das Programm MediathekView durchsucht die Online-Mediatheken verschiedener Sender (ARD, ZDF, Arte, 3Sat, SWR, BR, MDR, NDR, WDR, HR, RBB, ORF, SRF) und listet die gefundenen Sendungen auf. Die Liste kann mit verschiedenen Filtern nach Beiträgen durchsucht werden. Wie bei einem Podcatcher können die Sendungen auch heruntergeladen werden.

Jajuk

Jajuk ist ein Java-Musik-Organizer für alle Plattformen. Das Hauptziel dieses Projekts ist es, eine voll funktionsfähige Anwendung für fortgeschrittene Benutzer mit großen oder verstreuten Musiksammlungen bereitzustellen.

Ein für mich interessantes Feature ist die Konfiguration von sog. DJ’s, dabei kann man eine Mischung von unterschiedlichen Musikrichtungen nach persönlichen Vorlieben angeben, aus der das Programm dann Playlists zusammenstellt.

MkvToolNix

MKVToolNix ist ein Satz von Werkzeugen zum Erstellen, Ändern und Inspizieren von Matroska-Dateien unter Linux, anderen Unices und Windows.

Ich nutze das Programm, um Video-Transportströme aus VDR oder früher TVheadend zu demultiplexen - dabei bleiben alle Video-, Ton- und Datenspuren wie Untertitel im resultierenden MKV-File enthalten.

TV Browser

ist eine digitale Programmzeitschrift, kostenlos, werbefrei, plattformunabhängig und anpassbar. Das Open Source-Projekt ist in Java programmiert und braucht deshalb eine Java-Laufzeitumgebung auf dem Rechner.

Wenn’s nicht funzt …

Ab und an startet bei mir - bevorzugt nach einem (Neu)start des Rechners - der VDR-Dienst nicht. Dabei wiederum scheint das Problem zu sein, daß er keinen funktionierenden Tuner findet.

Hier hilft regelmäßig:

~# /opt/bin/mediaclient --start
~# systemctl start vdr

also den Treiber neu starten und dann VDR nochmal starten.

 


weitere Artikel