Neuen Kommentar schreiben

XBMC im Netzwerk

Mit XBMC und VDR bietet sich die Möglichkeit einen zentralen Server zu unterhalten und im ganzen Haus auf Live-TV und die Video-Datenbank zuzugreifen. Dieser Server kann mehrere DVB-S Karten beinhalten und die Videos für alle Clients im Haus hosten, er hält die zentrale Datenbank und kann natürlich auch selbst als XBMC-Client dienen

Für alle weitern Clients bieten sich mini-PCs wie die Zotac ZBOX HD-ND22 an. Diese sind relativ günstig, haben einen geringen Stromverbrauch und können dank dem NVIDIA-ION Chipsatz auch HD-Videos wiedergeben. (Anmerkung: Selbst bin ich nicht im Besitz einer Box mit ION-Chipsatz, spiele aber mit dem Gedanken mir eine zuzulegen)

Vorteile der zentralen Datenbank

  • Zugriffe auf die Datenbank sind wesentlich schneller
  • Videos werden zentral als gesehen markiert
  • Möglichkeit den Film in einem Raum zu stoppen und in einem anderen Raum an der selben Position zu starten.
  • Zentraler VDR bedient alle Clients mit Live-TV
  • Alle Videos auf allen Clients, unabhängig von deren Speicherkapazität

MySQL-Server installieren & Datenbank erstellen

  1. $ sudo apt-get update && sudo apt-get upgrade
  2. $ apt-get install mysql-server
  3. $ mysql -u root -p

DATABASE_NAME, DATABASE_USER, DATABASE_PASSWORD sowie die IP für das lokale Netz (192.168.0.%) müssen natürlich angepasst werden.

  1. CREATE DATABASE DATABASE_NAME
  2. GRANT ALL ON DATABASE_NAME.* TO 'DATABASE_USER'@'192.168.0.%' IDENTIFIED BY 'DATABASE_PASSWORD';
  3. FLUSH PRIVILEGES;
  4. exit;

Standardmäßig ist der MySQL-Server nur auf dem lokalen Computer erreichbar, um dies zu ändern, muss bind-address in /etc/mysql/my.cnf angepasst werden. Damit der MySQL-Server im lokalen Netz erreichbar ist, bindet man diesen an die lokale IP-Adresse des Computers, z.B. 192.168.0.1 . Will man, dass der Server auch über das Internet erreichbar ist kann man bind-adress auch auskommentieren.

  1. $ sudo vi /etc/mysql/my.cnf
  1. bind-address = 192.168.0.1
  1. $ sudo /etc/init.d/mysql restart

XBMC mit dem MySQL-Server verbinden

In diesem Schritt wird für den User, unter dem XBMC läuft eine Datei advancedsettings.xml angelegt, in der die Datenbank-Einstellungen eingetragen werden. Damit der Order ~/.xbmc vorhanden ist, muss XBMC vorher schon einmal gestartet worden sein.

  1. $ ~/.xbmc/userdata/advancedsettings.xml
  1. <advancedsettings>
  2. ...
  3.   <videodatabase>
  4.     <type>mysql</type>
  5.     <host>DATABASE_HOST</host>
  6.     <name>DATABASE_NAME</name>
  7.     <user>DATABASE_USER</user>
  8.     <pass>DATABASE_PASSWORD</pass>
  9.   </videodatabase>
  10. ...
  11. </advancedsettings>

Anmerkung: Die Datei ~/.xbmc/userdata/advancedsettings.xml muss anschließend natürlich auch auf jedem Client eingepflegt werden, da dieser auf die selbe Datenbank zugreifen soll.

Netzwerk-Shares am Server einrichten

Mit NFS kann man relativ einfach Ordner freigeben. Die Variante wie hier beschrieben sollte jedoch mit bedacht eingesetzt werden, da die einzige Bedingung zum Zugriff auf die freigegeben Ordner eine IP im lokalen Netz ist.

  1. $ sudo apt-get install nfs-kernel-server
  2. $ sudo vi /etc/exports

Folgend werden die Verzeichnisse /var/lib/video.0[0-2] freigegeben, welche die VDR-Aufnahmen, sowie in den Unterordner Filme bzw. Serien auch die Videos für die XBMC-Datenbank enthalten. Weiters wird das Verzeichnis mit den Thumbnails freigegeben, damit alle Clients Zugriff auf die Thumbnails haben.
Die Konfiguration muss natürlich auf die eigenen Bedürfnisse angepasst werden.

  1. /var/lib/video.00 192.168.0.0/255.255.255.0(rw,async,no_subtree_check)
  2. /var/lib/video.01 192.168.0/255.255.255.0(rw,async,no_subtree_check)
  3. /var/lib/video.02 192.168.0.0/255.255.255.0(rw,async,no_subtree_check)
  4. /home/tv/.xbmc/userdata/Thumbnails/ 192.168.0.0/255.255.255.0(rw,async,no_subtree_check)

Netzwerk-Shares am Client einrichten

  1. $ sudo apt-get install nfs-common
  2. $ sudo vi /etc/fstab

Nun werden die vom Server freigegeben Ordner am Client gemountet. Der Pfad sollte hierbei (ausgenommen der Thumbnails-Ordner) gleich sein, wie beim Server, da dieser ja absolut in der Datenbank steht.

  1. 192.168.0.1:/var/lib/video.00      /var/lib/video.00       nfs     rw      0       0
  2. 192.168.0.1:/var/lib/video.01      /var/lib/video.01       nfs     rw      0       0
  3. 192.168.0.1:/var/lib/video.02      /var/lib/video.02       nfs     rw      0       0
  4. 192.168.0.1:/home/tv/.xbmc/userdata/Thumbnails     /home/tv/.xbmc/userdata/Thumbnails nfs     rw      0       0

Quellenangabe

Links