-
Egmont Schreiter authoredEgmont Schreiter authored
MuseumVideoFotoPlayer
Die Software ist für einen Bild- und Video-Player in einer Ausstellung. In einer Linux-Umgebung eingerichtet, werden von einem USB-Stick die Bilder und Videos im Browser als Kiosk Mode endlos abgesielt. Mit der Tastatur am PC kann zu Bildern gesprungen werden, die Informationen zu Ausstellungsstücken enthalten.
- Die Software läuft im Autostart-Eintrag in einem Linux MINT XFCE als Python-Script. Sie sucht nach USB-Laufwerken, sollte aber USB Festplatten ignorieren.
- Auf dem USB-Speicher wird ein Verzeichnis "Eisenbahn" gesucht (die Ursprüngliche Ausstellung hat einen Bezug zur Eisenbahn) und darin nach *.jpg, *.jpeg und *.mp4 Dateien.
- Es wird versucht die Umgebung reveal.js auf den USB-Stick zu kopieren und eine Präsendation zu erstellen:
- Pro Bild und Video wird eine Voll-Format-Seite erstellt
- Die Seiten wechseln automatisch: Videos je nach Videolänge hintereinander in Endlosschleife, Von Bildern wird nach einer einstellbaren Zeit zu den Videos gewechselt.
- Wird auf der Tastatur die Ziffern [1], [2] und [ENTER] nacheinander gedrückt, wechselt die Präsentation zu Seite 12. Mit den Pfeiltasten und [+] und [-] kann gewechselt werden.
- Um nicht immer mit den Selben Videos nach den Bildern zu starten, wird je nach Reihenfolge z.B. vom ersten Bild zu ersten Video, aber vom letzten Bild zum letzten Video gesprungen.
- Das Script nutzt die Ausgabe von ffmpeg um die Videodauer zu ermitteln.
- Die Wartezeit nach der Bildanzeige bis zum automatischen Wechsel zu Video kann mit einer Zahl in der "wartezeit.txt" im "Eisenbahn" Ordner erfolgen.
- Das Script erstellt und startet die Präsendation im Vollbildmodus und blendet einen Mauszeiger mit hilfe von der Software "unclutter" nach ein paar Sekunden aus.
- Die erstellte Presendation befindet sich komplett auf dem USB Stick im "Eisenbahn/reveal" Unterordner. Mit "index.html" wird sie gestartet. Sie kann an einem beliebigen PC mit Browser geöffnet und abgespielt werden.
- Browser beenden mit [ALT] + [F4]
- Mit Ziffern gefolgt von [ENTER] kann zur Seite gesprungen werden
- UsePfeiltasten, [Numpad +] und [Numpad -] wechseln zwischen den Seiten
Systemanforderungen
System mit Linux MINT XFCE, Tastatur, autologin ohne Passwort, ggf. eine reine Zahlentastatur.
Installation
- sudo apt install ffmpeg python3 chromium-browser unclutter usbmount
- wget https://edugit.org/eshszg/museumplayer/-/archive/master/museumplayer-master.zip
- unzip museumplayer-master.zip
- *.py Dateien ausführbar markieren
- usbmount: enable write acces for users, not only root:
- sudo nano /etc/usbmount/usbmount.conf
- edit: FS_MOUNTOPTIONS="-fstype=vfat,gid=users,dmask=0007,fmask=0117"
- sudo usermod -aG GRUPPENNAME users
- restart
- museumplayer-master.py mit Autostart starten: erzeuge Datei '/home/{USER}/.config/autostart/museumplayer.desktop' mit folgendem Inhalt
- [Desktop Entry]
- Encoding=UTF-8
- Version=0.9.4
- Type=Application
- Name=museumplayer
- Comment=
- Exec=/home/{PATH}/museum-player.py
- OnlyShowIn=XFCE;
- StartupNotify=false
- Terminal=false
- Hidden=false
- kopiere *.desktop Dateien auf den Schreibtisch
- ggf. Pfad in Datei anpassen
ToDo
- complete translation or switchback to german
- send feature for slide-navigation with numbers back to reveal.js
- what if the script found no USB Memory or no folder, where should to logfile be stored, where did the user find some informations? (create html infopage and show in browser?)
- limit size of logfile? --> overwritten every time
- test wrong keys, can we just give a ordinary 102-key keyboard?
- Do we need a stable kiosk-distribution (no changes to system possible, autostart of browser to fullscreen and foreground, limit damage, ...)
- Not all mp4 files run in the browser. Some files are played only with audio. MP4 is a container for different formats. Test with ffmpeg the type of video an give a suggestion for conversation with 'ffmpeg -hide_banner -i in_wrong_format.mp4 out.mp4'2
- bring browser always in foreground (bring window with keyring in background - or remove master password for keyring 'seahorse')
Fehlersuche
- steht in der /Eisenbahn/log.txt Datei etwas informatives?
- Lösche den Unterordner "/Eisenbahn/reveal.js-master" und starte den Rechner erneut oder mit Verknüpfung auf dem Schreibtisch
- Im Browser öffnet [SHIFT] + [CRTL] + [I] die Fehlerkonsole, gibt es da Hinweise auf den Fehler?
Entstehungsgeschichte
In einer Ausstellung sollten Videos endlos abgespielt werden. Die erste Idee war ein DVD Player im Endlos Mode. Er sollte einfach an- und aus-geschaltet werden. Oder einen Raspberry-PI mit Kodi als Mediaplayer. Irgendwie müsste dann beim Start eingelesen werden, welche Videos vorhanden sind.
Dann kam der Wunsch auf, auch Informationen zu Ausstellungsstücken zeigen zu können. Wenn wir schon einen Monitor haben, dass soll er das können. Mit einer Tastatur gebe ich die Zahl 47 ein und bekomme zum Ausstellungsstück 47 etwas angezeigt. Als Lösung suchten wir etwas mit freier Software. So entstand das Projekt mit dem Paket https://revealjs.com als Basis.
-
erzeugt mit http://madebyevan.com/fsm/ ↩
-
- working codec: h264 (High) (avc1 / 0x31637661)
- not working: mpeg4 (Simple Profile) (mp4v / 0x7634706D)