Kodi (XBMC) unter Ubuntu 14.10 mit Mythtv-PVR

kodi logo

Die Media-Center-Software Kodi (vormals XMBC) ist bei Ubuntu in den Standard-Repositorien enthalten. Allerdings ist die Version nicht sonderlich aktuell. Vor allem aber fehlt das für mich wichtige MythTV-PVR-Addon, weil ich Kodi auch für Live-TV zusammen mit einem MythTV-Backend-Server verwende. Es ist jedoch relativ einfach, Kodi nebst PVR-Addons selbst aus den Quellen zu kompilieren.

XBMC/Kodi ist für mich unter Linux zusammen mit MythTV das perfekte Media Center. Kodi spielt alle Videos klaglos ab, von MPEG und AVI bis zu MKV. Die Bedienung ist auch auf älteren PCs flüssig und das Ganze lässt sich bequem vom Sofa aus per Fernbedienung oder Smartphone-App steuern. Kodi unterstützt jedoch keine TV-Karten oder DVB-USB-Sticks. Wer darüber auch TV-Programme sehen, Aufnahmen steuern und Aufnahmen ansehen will, braucht einen extra TV-Server. Dieser lässt sich dann über ein PVR-Addon einbinden. Das funktioniert beispielsweise mit MediaPortal, DVDViewer und auch mit MythTV.

Wer eine neuere Software benötigt, als in den Standard-Paketquellen geboten wird, hat zwei Möglichkeiten: Entweder man verwendet ein PPA (Personal Package Archive) von Launchpad oder man kompiliert selbst. Für Kodi/XBMC gibt es bei Lauchpad drei PPAs: XBMC PPA, XBMC Unstable und  XBMC Nightly Builds. In den beiden zuletzt genannten PPA-Archiven befinden sich auch DEB-Pakete für Ubuntu 14.10 (Utopic Unicorn).

Es ist mir jedoch nicht gelungen, mit den PPA-Paketen das MythTV-PVR-Addon zum Laufen zu bringen. Es ist natürlich möglich, dass sich das demnächst mit einer neuen Version ändert. Aber grundsätzlich spricht nichts dagegen, sich die Software selbst zu kompilieren, was auch gegen andere Probleme mit Kodi helfen kann. Programmierkenntnisse sind dafür nicht erforderlich, lediglich der souveräne Umgang mit der Kommandozeile ist Voraussetzung.

Kodi EPG

Kodi holt sich das EPG-vom MythTV-Server.

Die Voraussetzungen

Ich gehe davon aus, dass Sie Ubuntu 14.10 oder eine seiner Abkömmlinge wie Xubuntu oder Lubuntu installiert haben und sich die Software auf dem aktuellen Stand befindet („Aktualisierungsverwaltung“). Sollte XBMC oder Kodi bereits installiert sein, de-installieren Sie es über das Paketmanagement (Ubuntu Software-Center oder Synaptic)

Öffnen Sie mit Strg-Alt-T ein Terminal-Fenster. Als erstes fügen Sie temporär die Team-XBMC-PPA Quellen hinzu. Diese benötigen wir nur für die Build-Abhängigkeiten. Dazu führen Sie folgenden Befehl aus:

sudo add-apt-repository -s ppa:team-xbmc/unstable

Geben Sie Ihr root-Paswort ein, drücken Sie die Enter-Taste und bestätigen Sie anschließend noch einmal mit der Enter-Taste, dass Sie die Paketquelle hinzufügen möchten. Der Parameter „-s“ dient dazu, dass auch das Quelltext-Repository in den Paketquellen landet.

Tipp: Sie können die Befehlszeilen einfach aus dem Browser-Fenster kopieren und dann über den Kontextmenüpunkt „Einfügen“ in das Terminal-Fenster einsetzen.

Mit den drei Zeilen

sudo apt-get update
sudo apt-get install git
sudo apt-get build-dep kodi

aktualisieren Sie die Softwareliste und laden alles herunter, was zum Bau von Kodi erforderlich ist.

Danach wechseln Sie in Ihr Home-Verzeichnis (cd ~)  und erstellen hier beispielsweise das Verzeichnis „src“ mit dem Unterverzeichnis „xbmc“. Einfacher geht’s mit dem Befehl mkdir -p ~/src/xbmc. Wechseln Sie mit cd ~/src/xbmc in dieses Verzeichnis und führen Sie darin die folgenden zwei Befehlszeilen aus:

git clone git://github.com/xbmc/xbmc.git kodi
git clone git://github.com/opdenkamp/xbmc-pvr-addons.git xbmc-pvr-addons

Dabei entstehen die beiden Verzeichnisse „kodi“ und „xbmc-pvr-addons“.

Kodi kompilieren und installieren

Wechseln Sie mit cd ~/src/xbmc/kodi in das Verzeichnis mit den Kodi-Quelltexten. Tippen Sie dann folgendes ein:

./bootstrap
./configure --prefix=/usr/local
make -j2
sudo make install

Damit kompilieren Sie Kodi und installieren die Dateien unter /usr/local. Das ist das bevorzugte Verzeichnis für Dateien, die nicht über das Paketmanagement installiert wurden. Der make-Parameter „-j2“ steht für die Anzahl der Threads, die der Compiler verwenden soll. Bei Prozessoren mit mehreren Kernen können Sie auf -j6 oder -j8 verwenden. Dann geht das Kompilieren schneller.

Danach erstellen Sie die PVR-Addons mit:

cd ~/src/xbmc/xbmc-pvr-addons
./bootstrap
./configure --prefix=/usr/local
sudo make install

Das war’s schon. Sie können das Programm jetzt aus dem Terminal-Fenster über den Befehl kodi starten oder über das Dash nach kodi suchen. Bei Lubuntu oder ähnlichen Distributionen sollte die Verknüpfung „Kodi Media Center“ im Startmenü auftauchen.

Kodi kompilieren

So sollte es am Ende im Terminal-Fenster aussehen, wenn die Kompilierung erfolgreich war.

Kodi MythTV-Addon konfigurieren

Nach dem Start von Kodi finden Sie die PVR-Addons unter „System → Einstellungen → Addons → Deaktivierte Addons“. Wählen Sie hier „MythTV PVR Client“ aus und gehen Sie auf „Konfigurieren“. Hinter „MythTV Backend Hostname oder IP“ geben Sie die IP-Nummer des MythTV-Servers ein. Anders als bei den Vorgängerversionen müssen Benutzername und Passwort für die Datenbankverbindung nicht konfiguriert werden. Die Kommunikation erfolgt direkt über die MythTV-API und die URL http://<IP-Adresse>:6544.

MythTV-PVR-Client konfigurieren

MythTV-PVR-Client in Kodi konfigurieren. Es genügt die IP-Adresse des MythTV-Backend-Servers.

Probieren Sie aus, was http://<IP-Adresse>:6544/Myth/GetConnectionInfo im Browser ausgibt. Hier sollte eine Seite mit den Verbindungsinformationen zur Datenbank auftauchen. Gibt es stattdessen eine Fehlermeldung „errorCode>501</errorCode>“, dann hilft der Hinweis „<errorDescription>No Security Pin assigned. Run mythtv-setup to set one.</errorDescription>“ auch gleich weiter. Starten Sie auf dem MythTV-Server-PC mythtv-setup, gehen Sie auf „Allgemeines“ und tragen Sie hinter „Sicherheits-PIN (notwendig)“ den Wert 0000 ein. Damit erlauben Sie den Zugriff ohne PIN. Bleibt das Feld leer oder steht hier etwas anders als „0000“, schlägt die Verbindung fehl. Das Kodi-MythTV-Addon sollte nach dieser Änderung eine Verbindung ohne Fehler aufbauen können.

MythTV Sicherheits PIN

Für den Fernzugriff auf den MythTV-Server ist eine PIN nötig. „0000“ erlaubt den Fernzugriff ohne PIN-Eingabe.

Myth-TV-Server

Auf den MythTV-Server – oder genauer das MythTV-Backend – will ich in diesem Artikel nicht weiter eingehen. Die Installation unter Ubuntu ist relativ unkompliziert. Am einfachsten ist es, MythtTV in eine bestehende Ubuntu-Installation über Mythbuntu einzubinden. Dabei wird das Mythbuntu Control Centre installiert, über das Sie die gewünschte MythTV-Version per Klick auf „Repositories“ auswählen können. Ich verwende zurzeit die Version 0.27. Eine Dokumentation zu MythTV finden Sie bei Mythbuntu oder direkt im MythTV-Wiki.

MythTV besteht aus einem Frontend, das Sie direkt als Media Center Oberfläche auf einem PC einsetzen und das auf die Dienste des Backends zugreift. Das Backend liefert die TV-Streams aus. Es können mehrere PCs gleichzeitig auf das Backend zugreifen. Live-TV ist für so viele Teilnehmer möglich, wie TV-Karten im Server-PC stecken. Der Genuss von TV-Aufnahmen oder die Programmierung über das EPG sind für beliebig viele Client-PCs möglich.

MythTV-Frontend

So sieht das MythTV-Frontend aus.

Wenn schon eine Media Center Oberfläche dabei ist, warum dann nicht gleich nur MythTV ohne Kodi? Der Grund dafür ist, dass es Kodi für PCs, Android-Geräte und den Raspberry Pi gibt und ich eine einheitliche Oberfläche auf allen Geräten bevorzuge. MythTV läuft dagegen nur auf x86-PCs. Der Nachteil: Nicht alle MythTV-Funktionen sind auch über Kodi verfügbar, beispielsweise der Videoschnitt, also das Herausschneiden von Werbung. Wer das benötigt, kann sich aber das Mythtv-Fontend zusätzlich installieren.

Die größte Herausforderung bei MythTV ist, eine DVB-Karte zu finden, die auch unter Linux funktioniert. Ich verwende die schon mehrere Jahre alten PCI-Karten Technisat CableStar HD2 (DVB-C). Neu zu kaufen, gibt es die wahrscheinlich nicht mehr. Informationen zu DVB-Hardware unter Linux finden Sie im Linuxtv-Wiki.

Wem MythTV zu kompliziert ist oder wenn das Projekt an fehlender Hardware scheitert, kann auch zu einem Windows-TV-Server greifen. Hier kommt das kostenlose MediaPortal infrage oder der mit 15 Euro sehr preiswerte DVBViewer Pro, der auch eine Server-Software mitbringt. Die dazu  passenden Kodi-Addons haben Sie bereits kompiliert.

Dateifreigabe über NFS

Mein MythTV-Server dient nicht nur für Live-TV, sondern auch als Netzwerkspeicher für  Videos und Musikdateien. Die Dateien sind über NFS freigegeben (Network File System). Das sollte gegenüber SBM/CIFS (Windows-Freigaben) einen Leistungsvorteil bringen. In Kodi lassen sich neue Bibliotheken beispielsweise über „Videos → Dateien → Videos hinzufügen…“ und dann „Durchsuchen“ von unterschiedlichen Quellen einbinden, unter anderem auch NFS. Das funktioniert eigentlich ganz gut. In meinem Fall bleiben allerdings die Verzeichnisse leer, die als Symlinks eingebunden sind. Der Hintergrund für die Symlinks ist, das sich mehrere Festplatten im PC befinden, die aber in einem gemeinsamen Verzeichnis auftauchen sollen.

Im Kodi-Wiki gibt es einen Beitrag zu NFS, und auch im Ubuntuusers-Wiki. Beide haben mir nicht wirklich weitergeholfen, aber immerhin auf die richtige Spur gebracht. Die Lösung besteht darin, zunächst einmal die Verzeichnisse nicht als Symlink, sondern als Bind-Mount einzubinden. Dazu ein Beispiel: Eine Festplatte ist unter /mnt/data0 eingebunden, die andere unter /mnt/data1. Das Verzeichnis /mnt/data1/Serien soll auch unter /mnt/data0/public/video/Serien erscheinen. Dazu dient folgender Eintrag in der /etc/fstab:

/mnt/data1/Serien /mnt/data0/public/video/Serien bind bind 0

Das Verzeichnis /mnt/data0/public/video/Serien muss existieren, Benutzer und Gruppe root gehören und die Rechtemaske muss 755 sein. Die Datei /etc/export sieht bei mir so aus:

/mnt/data0/public 192.168.0.0/24(rw,async,no_subtree_check,insecure,crossmnt)

Dann mir service nfs-kernel-server restart den NFS-Server neu starten. Für mein privates Netzwerk genügt das, wer in öffentlich zugänglichen Netzwerken mehr Sicherheit will, kann auch die IP-Adresse eines Client-PCs eintragen oder nur bestimmten Benutzern den Zugriff erlauben (siehe: Kodi-Wiki).

Kodi NFS

Freigaben in Kodi als Datenquelle einbinden.

Bei Kodi taucht das Verzeichnis „Serien“ aber dennoch nicht auf. Das es so funktioniert zeigt aber folgender Eintrag in der Datei /etc/fstab auf dem Kodi-Client  im Netzwerk:

192.168.0.12:/mnt/data0/public /mnt/p5ql nfs rw 0 0

Die IP-Adresse ist die IP des MythTV/NFS-Servers, „/mnt/p5ql“ ein bereits vorhandenes Verzeichnis, in das der NFS-Share eingehängt werden soll. Hier tauchen dann auch die per Bind eingebundenen Verzeichnisse auf. In Kodi kann man dann eine neue Bibliothek hinzufügen, indem man auf auf „Videos → Dateien → Videos hinzufügen…“ und dann „Durchsuchen“ geht, diesmal aber „Root Dateisystem“ und das per NFS bereits gemountete Verzeichnis auswählt.

2 Kommentare

  • Hallo there,
    followed you guide on my Mythbuntu 14.10, and I got kodi up running very fine and also Mythtv pvr-addon, so very much thanks for you guide!

    I did have to use „sudo“ in front of everything but else it went smooth 🙂
    KBN

    • Compilation in your home directory should always work with standard user rights. Sometimes it’s dangerous to use make as root. Only make install should require admin rights installing in /usr/local.
      But maybe it’s different on some machines.

Schreibe einen Kommentar

Mit Absenden des Kommentars akzeptieren Sie die Datschutzerklärung.
Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.