Mediaplayer


Aufgaben

Einbindung ins Netzwerk und Bedienung:

Der Mediaplayer läuft auf einem Raspberry Pi. Der Raspberry Pi (Raspi) ist natürlich ein Computer und will auch so behandelt werden. Er sollte unter Raspbian, als auch unter LibreELEC ordnungsgemäss herunter gefahren werden. Einfach die Stromzufuhr abzuschalten ist keine gute Idee. Das mag öfters gut gehen, aber irgendwann wird das Betriebssystem Schaden nehmen, und ihr müsst es neu installieren.


Software und Einrichtung:

Für die Installation von Raspbian und LibreELEC empfehle ich NOOBS LITE. Ihr ladet euch die Zip.Datei herunter, entpackt sie, und kopiert den kompletten Inhalt auf eine FAT 32 formatierte Micro SD Karte. Die SD Karte einfach in den Raspi stecken, den Raspi per LAN Kabel mit dem Router verbinden, Raspi einschalten und schon seid ihr im Installationsmenue. In der Auswahlliste könnt ihr mehrere Betriebsysteme auswählen.

Raspbian Stretch ist ein vollwertiges Linux Betriebssystem. Ihr könnt den Raspi wie einen normalen Computer benutzen. Unter Raspbian findet ihr den WebBrowser Chromium, die Textverarbeitung LibreOffice, ein eEmailprogramm, Spiele, Programmiersprachen und vieles mehr. Natürlich kann man den Raspi nicht mit einem herkömmlichen PC vergleichen. Dazu fehlt es ihm an Leistung. Aber um mit dem TV Gerät mal im Internet zu surfen, sich Youtube Videos anzuschauen, oder Emails abzufragen reicht es alle Mal. Zusätzlich könnt ihr natürlich auch jedes Programm, das ihr nutzen möchtet, unter Raspbian installieren.

VNC Server:

Ich hatte euch im Kapitel WLAN Router ja schon die verschiedenen Netzwerkprotokolle vorgestellt. Jetzt wollen wir auf den Raspi über VNC zugreifen. Der Unterschied zu SSH besteht darin, dass mir mit VNC der Bildschirminhalt eines entfernten Rechners (Server), auf einem meinem lokalen Rechner (Client) angezeigt wird. Zudem kann ich mit Maus und Tastatur genauso arbeiten, als sässe ich direkt vor dem entfernten Rechner. Mit SSH kann ich nur auf das Terminal des Server Rechners vom Client Rechner aus zugreifen. Mir wird aber keine grafische Oberfläche angezeigt.

Zuerst muss man entscheiden, ob man auf einem virtuellen Desktop, oder auf dem aktuellen Desktop des Raspi arbeiten möchte. Was heisst das? Um das zu erklären starten wir den Raspi. Da der Mediaplayer an das TV Gerät angeschlossen ist, sehen wir auf dem TV Bildschirm nun die grafische Oberfläche von Raspbian. Das ist der aktuelle Desktop.
Wofür entscheide ich mich nun? Der grösste Unterschied liegt in der Geschwindigkeit. Wenn auf dem aktuellen Desktop gearbeitet wird, läuft die Übertragung sehr zäh und langsam. Das ist auf Dauer echt nervig. Aus diesem Grund nutze ich einen VNC Server mit virtuellem Desktop. Dieser Server heisst TightVncServer.

Wir öffnen ein Terminal auf dem XServer des Raspi's, oder greifen per SSH auf das Terminal zu.

Installation:

 sudo apt-get update
 sudo apt-get install tightvncserver

Dann richten wir ein Passwort ein:

 vncpasswd

Hier ein Passwort eingeben und nochmal bestätigen. Die Frage nach einem Readonly-Passwort kann man verneinen. Dieses Passwort benötigen wir später für das Client-Programm.

Starten des Servers mit einer Auflösung von 1280x800 Pixel und einer Farbtiefe 16 Bit:

 vncserver :1 -geometry 1280x800 -depth 16

Stoppen des Servers:

 vncserver -kill :1

Der TightVncServer zeigt als Mauszeiger ein x an. Da wir aber einen Pfeil haben wollen öffnen wir folgende Datei:

 nano ~/.vnc/xstartup

Dort ersetzen wir folgende Zeile:

 xsetroot -solid grey

mit:

 xsetroot -solid grey -cursor_name left_ptr

Datei speichern mit <Strg> + <X>. Bestätigen mit <J> und <Return>.


VNC Client:

Als Client Programm auf dem Ubuntu PC nutzen wir Remmina. Dieses Programm ist schon vorinstalliert.

Konfiguration:

Startet das Programm Remmina. Klickt auf Neu. Jetzt öffnet sich ein Fenster und dort tragt ihr folgendes ein:
Der nächste Punkt setzt voraus, dass ihr den SSH Server auf dem Raspi aktiviert habt, wie im Kapitel Konfiguration erläutert. Die VNC Verbindung funktioniert auch ohne SSH Tunnel, ist aber nicht so sicher.

SSH anklicken.
Zuerst müsst ihr den VNC Server auf dem Raspi starten. Nun könnt ihr die Verbindung mit Remmina starten. Klickt mit der Maus auf Verbinden. Es wird noch euer Raspi Passwort abgefragt, klickt auf OK und schon seht ihr die Raspbian Oberfläche auf eurem PC. Zum Beenden in der oberen Zeile auf das Steckersysmbol klicken.


LibreELEC Kodi ist ein hervorragendes Mediencenter, das wirklich sehr flüssig läuft. Flüssig soll in diesem Zusammenhang heissen, es läuft völlig ruckelfrei. Hier könnt ihr IPTV schauen, beispielsweise über einen Zattoo Account. Ihr müsst dazu nur das Zattoo Addon installieren. Ihr könnt Internetradio hören, oder auf euren Medienserver zugreifen, Youtube Videos anschauen, auf Mediatheken zugreifen. Die Möglichkeiten sind nahezu unbegrenzt. Setzt euch intensiv mit Kodi auseinander, und ihr werdet entdecken, welche Möglichkeiten dort angeboten werden. Ihr könnt Kodi natürlich auch mit der Android App Kore hervorragend vom Handy aus steuern.


Video Codecs

Da wir den Raspi als Mediaplayer betreiben wollen, sollten wir uns noch die passenden Codecs besorgen. Die Codecs dienen zum Dekodieren der Datenströme. Ohne Codecs erfolgt die Dekodierung softwaremässig, lastet aber, z.B. bei HD Videos, den Prozessor ziemlich aus. Da diese Codecs nicht viel kosten, zeige ich euch, wie man sie bekommt. Die Codecs gelten immer nur für einen Raspberry Pi. Deshalb benötigt man die Seriennummer des Raspi's. Im Terminal eingeben:

 cat /proc/cpuinfo

Die Seriennummer steht ganz unten unter Serial:

Wir benötigen nun den MPEG-2 und den VC-1 license-key.

Diese Lizenschlüssel kann man im Raspberry Pi Store kaufen. Bei der Bestellung gebt ihr die Seriennummer eures Raspi's ein. Ihr erhaltet ihr dann eine eMail mit folgendem Inhalt:

decode_MPG2=0x12345678
decode_WVC1=0x12345678

Diesen Freischaltcode müsst ihr jetzt sowohl unter Raspbian, als auch unter LibreELEC in die entsprechenden
Config-Dateien eintragen.


Raspbian (Terminal):

 sudo nano /boot/config.txt

Ihr geht jetzt ans Ende dieser Datei, und fügt dort den Code genauso ein (natürlich mit eurem Code):

 decode_MPG2=0x12345678
 decode_WVC1=0x12345678

Datei speichern. Danach Raspbian neu starten:

 sudo shutdown -r now

Ob die Codecs aktiviert sind, überprüft ihr mit folgenden Befehlen:

 vcgencmd codec_enabled MPG2
 vcgencmd codec_enabled WVC1


LibreELEC (SSH):

Zuerst aktiviert ihr in LibreELEC den SSH Server.

Dazu geht ihr auf: Einstellungen => LibreELEC => Dienste => SSH aktivieren

Öffnet nun auf eurem Ubuntu PC ein Terminal:

 ssh root@libreelec

Das Passwort ist: libreelec.

 mount -o remount,rw /flash
 nano /flash/config.txt

In dieser Datei gehen wir nach unten zu Licence Keys. Dort stehen schon die Einträge für die Codecs. Tragt auch hier eure Freischaltcodes ein:

 decode_MPG2=0x12345678
 decode_WVC1=0x12345678

Entfernt die Raute # vor den Einträgen zum Aktivieren der Einträge. Datei speichern und neu starten mit:

 reboot

Erneut per SSH anmelden und überprüfen, ob die Lizenzen aktiviert wurden:

 vcgencmd codec_enabled MPG2
 vcgencmd codec_enabled WVC1


Handy als Fernbedienung

Da wir ja alles mit dem Handy steuern wollen, nutze ich das Android Handy als Fernbedienung für die anderen Mediengeräte. Zuerst müsst ihr heraus finden, ob in eurem Handy eine Infrarotschnittstelle vorhanden ist. Wenn das der Fall ist, könnt ihr Soundbar, DVD-Player und andere Geräte mit dem Handy steuern. Ich mache das mit der Android App Galaxy Universalfernbedienung. Diese App enthält so ziemlich alle Infrarotcodes und die Oberfläche lässt sich frei programmieren. Ihr könnt euch die Oberflächen so zusammenstellen, wie ihr es braucht, und zusätzlich andere Apps mit einbinden. Das sieht dann so aus:


Fernbedienung


Fernbedienung


Fernbedienung




Hier geht es zurück zum Inhalt.