Mit LibreELEC ein einfaches Kiosksystem aufbauen

Aus LinuxUser 12/2023

Mit LibreELEC ein einfaches Kiosksystem aufbauen

© Maria Savenko / 123RF.com

Dauerschleife

Jeder kennt die großen Displays, auf denen in Dauerschleife Werbung läuft. Ein solches Kiosksystem bauen Sie auf einfache Weise mit einem RasPi und LibreELEC auf.

Für ein Museum sollte eine Lösung entstehen, die Videos in Dauerschleife auf einem kleinen Display abspielt. Anders ausgedrückt: Es galt, ein einfaches Kiosksystem einzurichten. Nach einer kurzen Recherche im Internet war klar, dass sich dafür ein Raspberry Pi mit LibreELEC [1] eignet, dem schlanken Betriebssystem für das Open-Source-Entertainment-Center Kodi [2]. Kodi zeichnet sich durch eine schicke Benutzeroberfläche und viele Erweiterungsmöglichkeiten aus.

Auf der Homepage von LibreELEC finden sich Installationsabbilder [3] für alle möglichen Raspberry-Pi-Modelle. Die verschiedenen Images schreibt der Raspberry Pi Imager problemlos auf eine SD-Karte (Abbildung 1). Bei der Wahl der SD-Karte gilt es zu bedenken, dass LibreELEC selbst nicht viel Platz benötigt, die Videos aber in unserem Anwendungsfall mit auf der Karte liegen. Daher kommt hier eine SD-Karte mit 32 GByte Speicherkapazität zum Einsatz. Derzeit sind Raspberrys wieder zu normalen Preisen erhältlich, und ein RasPi 4 mit 4 GByte RAM reicht für dieses Projekt vollkommen aus.

Abbildung 1: Das LibreELEC Image schreiben Sie per Raspberry Pi Imager auf eine SD-Karte.

Abbildung 1: Das LibreELEC Image schreiben Sie per Raspberry Pi Imager auf eine SD-Karte.

Nachdem das Image vollständig auf die Karte geschrieben ist, booten Sie den Raspberry Pi damit. Dabei startet das Basis-Setup von LibreELEC automatisch. Achten Sie hier darauf, den SSH-Dienst zu aktivieren. Das ermöglicht es, später Änderungen am System über eine Remote-Konsole vorzunehmen. Als Sprache wählen Sie Deutsch, ansonsten belassen Sie fürs Erste alle Einstellungen auf den Vorgaben. Sobald das Basis-Setup abgeschlossen ist, sehen Sie den Hauptbildschirm von Kodi (Abbildung 2).

Abbildung 2: Nach dem Basis-Setup erscheint der Hauptbildschirm von Kodi.

Abbildung 2: Nach dem Basis-Setup erscheint der Hauptbildschirm von Kodi.

Ab jetzt verbinden Sie sich bei Bedarf per SSH mit der Konsole des Systems. Als User verwendet LibreELEC root mit dem etwas unüblich benannten Home-Verzeichnis /storage. In diesem Ordner befinden sich alle für den Kioskbetrieb wichtigen Dateien.

Dateien verschieben

Es gibt mehrere Wege, die abzuspielenden Videos auf das System zu kopieren. Wichtig ist nur, dass die Dateien anschließend im Ordner /storage/videos/ liegen. Während des Basis-Setups haben Sie den SSH-Dienst schon aktiviert und können die Dateien jetzt via SFTP übertragen. Unter Linux verwenden Sie dazu einfach das vorinstallierte Kommandozeilenwerkzeug Sftp. Nach dem Übertragen der Dateien lassen diese sich in LibreELEC bereits abspielen (Abbildung 3). Sie erreichen die Dateien über das Menü Filme | Videos.

Abbildung 3: Die Videos lassen sich in LibreELEC direkt abspielen.

Abbildung 3: Die Videos lassen sich in LibreELEC direkt abspielen.

Wiedergabeliste erstellen

Da Sie nicht planen, jedes Video einzeln anzuklicken, sondern alle Clips in einer Dauerschleife laufen sollen, gilt es jetzt, eine Wiedergabeliste (Playlist) zu erstellen. Dazu klicken Sie mit der rechten Maustaste auf das Video und wählen In Wiedergabeliste einreihen aus. Diesen Vorgang wiederholen Sie für alle Filme, die in der Schleife laufen sollen. Danach klicken Sie auf Optionen | Zur Wiedergabeliste…, um in die Videowiedergabeliste zu gelangen. Da die Screens sich sehr ähnlich sehen, kommt man hier leicht durcheinander. Achten Sie daher genau auf die Überschriftenzeile im Navigationsbereich (Abbildung 4).

Abbildung 4: Sie befinden sich hier innerhalb der Videowiedergabeliste.

Abbildung 4: Sie befinden sich hier innerhalb der Videowiedergabeliste.

Um die Wiedergabeliste zu speichern, wählen Sie jetzt Optionen | Speichern aus. Im nächsten Schritt geben Sie der Liste einen Namen. Rufen Sie nach dem Speichern noch einmal die Optionen auf und überprüfen Sie, ob Wiederholung auf Alle gesetzt ist. Um die Wiedergabeliste zu starten, wechseln Sie zurück auf die Startseite von Kodi und navigieren zu den Wiedergabelisten (Videos | Wiedergabeliste). Dort starten Sie die Wiedergabeliste mit der Funktion Wiedergeben (Abbildung 5). Im Dateisystem liegen die Wiedergabelisten unter /storage/.kodi/userdata/playlists/video/ – diese Information benötigen Sie später noch einmal.

Abbildung 5: Das Starten der Wiedergabeliste gelingt in Kodi per Mausklick.

Abbildung 5: Das Starten der Wiedergabeliste gelingt in Kodi per Mausklick.

Aktuell müssten Sie die Wiedergabeliste nach jedem Reboot des Systems manuell starten. Im nächsten Abschnitt sehen wir uns an, wie man Aktionen automatisch beim Start ausführt.

Automatische Wiedergabe

Da es keine Möglichkeit gibt, über die Benutzeroberfläche einen Autostart zu realisieren, bauen Sie sich einen eigenen Dienst dafür. Dank der offenen Architektur von Kodi stellt das tatsächlich keinerlei Problem dar.

Zuerst erstellen Sie mithilfe von Mkdir den Ordner /storage/.kodi/addons/service.autostart erstellen, um darin die nötigen Dateien addon.xml (Listing 1) und autostart.py (Listing 2) abzulegen. Anschließend müssen Sie den RasPi einmal booten, damit der Service in der Benutzeroberfläche sichtbar wird. Um ihn zu aktivieren, navigieren Sie zum Menüpunkt Addons | Benutzer-Addons  | Alle. Dort angekommen, klicken Sie mit der rechten Maustaste auf Autostart Service und aktivieren den Dienst wie in Abbildung 6 gezeigt. Ab jetzt startet die Wiedergabeliste bei jedem System-Reboot automatisch.

Abbildung 6: Den Autostart f&uuml;r den Dienst aktivieren Sie unter <span class="ui-element">Addons</span>&nbsp;| <span class="ui-element">Benutzer-Addons </span>&nbsp;| <span class="ui-element">Alle</span>.

Abbildung 6: Den Autostart für den Dienst aktivieren Sie unter Addons | Benutzer-Addons  | Alle.

Listing 1

addon.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="service.autostart" name="Autostart Service" version="1.0.0" provider-name="Benutzername">
  <requires>
    <import addon="xbmc.python" version="3.0.0"/>
  </requires>
  <extension point="xbmc.service" library="autostart.py">
  </extension>
  <extension point="xbmc.addon.metadata">
    <summary lang="en_GB">Automatically run python code when Kodi starts.</summary>
    <description lang="en_GB">The Autoexec Service will automatically be run on Kodi startup.</description>
    <platform>all</platform>
    <license>GNU GENERAL PUBLIC LICENSE Version 2</license>
  </extension>
</addon>

Listing 2

autostart.py

import xbmc
xbmc.executebuiltin('PlayMedia(/storage/.kodi/userdata/playlists/video/Dauerschleife.m3u,playlist_type_hint=1)')

Kodi verfügt über eine große Anzahl eingebauter Funktionen, die Sie in eigenen Skripten und Diensten verwenden können. Eine Übersicht findet sich im Wiki des Projekts [4]. Bitte beachten Sie beim Entwickeln, dass Kodi eine spezielle Umgebung zur Ausführung der Skripte erzeugt, in der sich alle nötigen Importe erreichen lassen. Sie können die Skripte jedoch nicht ohne Weiteres auf der Konsole testen.

Weitere Informationen zum Thema Autostart finden sich in der englischen Kodi-Originalanleitung [5]. Eine weitere nützliche Informationsquelle ist das bereits erwähnte Kodi-Wiki: Dort finden sich die komplette Dokumentation von Kodi sowie zahlreiche Schritt-für-Schritt-Anleitungen [6].

Wissenswertes zu Kodi

Neben der Möglichkeit, die eingebauten Kodi-Funktionen aus eingebundenen Skripten und Diensten aufzurufen, gibt es das Tool kodi-send. Damit rufen Sie über ein einfaches Kommando alle Kodi-Funktionen auf. Das Tool erweist sich beim Testen oder bei Eigenentwicklungen als sehr nützlich. Listing 3 führt einige hilfreiche Kommandos auf.

Listing 3

Nützliche Kommandos

### Player stoppen
$ kodi-send --action="PlayerControl(Stop)"
### Wiedergabeliste starten
$ kodi-send --action="PlayMedia(/storage/.kodi/userdata/playlists/video/Dauerschleife.m3u)"
### Nachricht einblenden
$ kodi-send --action="Notification(Pause, Essen ist fertig)"
### Lautstärke erhöhen
$ kodi-send --action="VolumeUp"
### Lautstärke verringern
$ kodi-send --action="VolumeDown"

Soundausgabe

Eine weitere Anforderung an das Kiosksystem lautet, die Videos über einen Mini-Bildschirm abzuspielen, der am Display Serial Interface (DSI) des RasPi hängt. Daher kann die Soundausgabe nicht wie standardmäßig eingestellt über HDMI erfolgen, sondern muss über den Klinkenstecker des RasPi erfolgen.

Hier kommt der aktivierte SSH-Dienst ins Spiel. Sie öffnen eine SSH-Verbindung zum Raspberry Pi und fügen der Datei /flash/distroconfig.txt die Zeilen aus Listing 4 hinzu. Damit aktivieren Sie die Soundausgabe über die Klinkenbuchse.

Listing 4

Soundausgabe

dtparam=audio=on
audio_pwm_mode=2
disable_audio_dither=1

Ärgerlicherweise befindet sich das entsprechende Dateisystem im Read-only-Modus. Mit dem Kommando mount -o remount rw /flash/ versetzen Sie es in den Read-Write-Modus und passen die Datei an. Nach der Anpassung muss das System einmal neu gebootet werden, weil Sie mit unseren Änderungen Kernel-Parameter anpassen.

Nach einem Reboot finden Sie bei den Soundeinstellungen ein zusätzliches Gerät, das Sie verwenden können. Abbildung 7 zeigt den entsprechenden Menüpunkt Einstellungen | System | Audio. Hier wählen Sie jetzt via BCM2835 Headphones die Soundausgabe über die Klinkenbuchse aus.

Abbildung 7: Die Soundausgabe l&auml;sst sich unkompliziert auf die Klinkenbuchse umstellen.

Abbildung 7: Die Soundausgabe lässt sich unkompliziert auf die Klinkenbuchse umstellen.

Fazit

Dieser Artikel konnte nur einen Bruchteil der Möglichkeiten zeigen, die LibreELEC im Zusammenspiel mit Kodi bietet. Sie haben es hier mit einer leicht zu bedienenden und nahezu beliebig erweiterbaren Mediacenter-Lösung zu tun. In unserem Test gab es während der Projektphase nichts zu beanstanden, auch keinen einzigen Absturz – da können sich einige professionelle Lösungen ein Stück abschneiden. In der dunklen Jahreszeit findet sich sicher ein trüber Sonntagnachmittag, an dem Sie sich einmal näher mit dem Thema LibreELEC beschäftigen können. (uba)

Der Autor

Martin Mohr hat die Entwicklung der modernen Computertechnik miterlebt. Nach dem Studium entwickelte er überwiegend Java-Applikationen. Mit dem Raspberry Pi erwachte seine alte Liebe zur Elektronik wieder.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 12/2023 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben