Donnerstag, 14. Februar 2019

iTV Internetfernsehen mit dem Raspberry Pi

iTV basiert auf dem iRadio und hat praktisch den gleichen strukturellen Aufbau

download:

iTV_07022019.zip

Benutzt wird hier wie beim iRadio der Video Lan Client (vlc), diesmal in der grafischen Version.

Es gibt wieder einen gpiod-Daemon der für die Programmumschaltung verantwortlich ist. Bei diesem Release sind angepasste Versionen des Tastensteuerungs- und Drehencoderdaemons dabei. Nach der Installation von iTV ist die Tastensteuerung aktiv, genau wie beim iRadio. Durch Eingabe von:

sudo ./install_Drehencoder.sh

wird auf den Drehencoder umschaltet.

sudo ./install_Tastensteuerung.sh 

aktiviert wieder die Tastensteuerung.

Wie installiert man iTV?

Im Prinzip wie das iRadio. Man entpackt das Archiv im Homeverzeichnis des Standardnutzers "pi", das iTV kommt also in /home/pi/iTV zuliegen. Danach ruft man mit Root-Rechten das Installerscript install.sh auf.

sudo ./install.sh

Ist das Script fertig muss man den Rechner durch

sudo reboot

neu starten. Ab diesen Moment startet der Rechner nicht mehr mit einem Login, sondern direkt mit der Fernsehwiedergabe über den HDMI-Port ! Remote-Zugriff über SSH sollte also aktiv sein.






Warum ist diese Bild zentriert und so klein? Nun VLC passt die Videoausgabe direkt einem PAL-Signal an. Der HDMI-Monitor hat jedoch eine viel größere Wiedergabefläche als ein PAL-Fernseher!

Eigentlich soll iTV ja zusammen mit dem Pi in einem alten Fernseher eingebaut werden und der hat in der Regel kein HDMI-Controller. Wir brauchen also ein analoges Videosignal mit dem wir den alten Fernseher speisen.






Zu sehen ist ein aktueller Pi 3A+, der sein Videosignal mit über den Klinkenstecker ausgibt. Andere Raspberrys haben entweder direkt eine Chinch-Buchse oder Lötpunkte an denen das analoge Videosignal abgegriffen werden kann.
Damit der Raspberry in Zukunft so ein Signal ausgibt, loggt man sich über SSH in den Kleinrechner ein und startet im iTV-Ordner das Script:

sudo ./aktiviere_AnalogVideo.sh

Nach einem erneuten Neustart ist HDMI dauerhaft deaktiviert und der analoge Videoausgang aktiv! Siehe nachfolgende Bilder:







Will man HDMI wieder aktiv schalten, dann das Script:

sudo ./aktiviere_HDMI.sh 

starten. Im Prinzip also alles so einfach wie beim iRadio.

Wie bekommt man denn eigene Sender in iTV. Nun dazu gibt es wie beim iRadio die Senderliste (playlist.m3u). Anstelle von Radiosendern, wird hier pro Zeile eine URL zu einem TV-Sender angegeben. Eine Beispielliste ist im iTV bereits enthalten und nach der Installation mit den Sendern Arte HD, ZDF neo HD, Sky Sport News HD und 3sat HD aktiv. Die HD Sender werden im Analogsignal automatisch runterskaliert, so kann ein alter Rembrandt auch in "HD" sehen.

Nochmal: Pro Zeile eine URL! Wie beim iRadio unterstützen wir keine META-Daten des m3u-Formats in der Playlist!
Ebenso wie beim iRadio lassen sich die Senderliste und auch die WLAN-Zugangsdaten mit einem FAT32-formatierten USB-Stick beim Bootprozess automatisch einspielen und aktualisieren, siehe:

iRadio Teil2 Installation

Da wir VLC als Abspielsoftware gewählt haben, ist es natürlich möglich zwischen den Fernsehsendern auch Internetradiostationen anzugeben. Somit kann der alte Fernseher dann automatisch auch Internetradio wiedergeben. Die Umschaltzeiten zwischen den Stationen ist technologiebedingt etwas länger als beim Digitalfernsehen über DVB-S2,C2,T2. Auch die eigene Internetanbindung ist ein Faktor, der bestimmt wie schnell ein Videostream gepuffert werden kann.

Zum aktuellen Ressourcenverbrauch: Alle Mehrkern-Raspberrys, diese haben keine Probleme mit der Wiedergabe von HD-Stationen. Einkern-Raspberrys wie der Zero schaffen es gerade so HD zu empfangen und auf PAL zu skalieren. Macht eigentlich keinen Sinn, aber hier wird es in der Zukunft noch ein paar Optimierungen geben. Streams die HD oder ULTRA HD in h.265 codiert haben, sind mit Raspberrys nicht abspielbar und lassen den armen Kerl sprichwörtlich verrecken. Für solche Sender nimmt man dann keinen Raspberry sondern einen Odroid.

Welche Videotreiber wählt man am Besten? Nun im Gegensatz zur Skalensimulation des iRadio, hat man die beste Performance mit dem Legacy-Treiber! Absolut flüssige Videoerzeugung auf Mehrkern-Raspberrys. Der Full-KMS/Open GL Treiber für den VC4 hingegen lässt VLC mit einem schwarzen Wiedergabefenster zurück? Aber der Treiber wird ja permanent weiterentwickelt, so daß sich das im nächsten Raspbian schon wieder ändern kann.


Im Prinzip läuft iTV/iRadio auf allen Linuxsystemen für die es VLC und GCC gibt.
Die Einrichtung von iTV/iRadio wird aber erleichtert, wenn das Linux standardmäßig über das APT Paketmanagementsystem verfügt, da die Installationsskripte dafür vorgesehen sind. In der Regel sind das also Ubuntu und Derivate. Für die Verwendung auf einem Raspberry empfehle ich Raspbian, welches man unter https://www.raspberrypi.org/downloads/raspbian/ kostenlos beziehen kann. Ebenfalls sollte das Betriebssystem schon den Standardnutzer "pi" angelegt haben. Benutzt man Linuxdistributionen, die den Nutzer nicht haben, legt man Ihn einfach an. Kann man iTV/iRadio auch unter einem anderen Nutzer installieren und betreiben? Ja, aber da müssen an einigen Stellen Veränderungen im Paket gemacht werden (Pfadänderungen). Das einfachste ist also, sofern kein Nutzer "pi" vorhanden ist, diesen anzulegen.
Bei Raspbian ist "pi" aber vorhanden!

Benötigt iTV/iRadio ein System mit X11? : iRadio nicht unbedingt wenn man die Skalensimulation nicht benötigt. iTV benötigt zur Zeit ein funktionierendes X11. Unerfahrene Linuxnutzer nehmen also am Besten ein Raspbian "mit Desktopsoftware". Aber dann bitte auch einen neueren Raspberry! Erfahrene Nutzer können auch ein Minimalsystem benutzen und installieren X11 vor(!) der iTV- Installation händisch.

Keine Kommentare:

Kommentar veröffentlichen