Stand: 2026-04-17
Das System laeuft produktiv mit 3 Raspberry Pi 5 und 6 Monitoren (2x HDMI pro Pi).
- OS: Raspberry Pi OS (64-bit), Debian 13 "trixie", labwc (Wayland)
- Player: mpv persistent mit IPC (
--gpu-context=wayland,--background=none) - Head-Pi: viewer.py (Sync-Master) + displaywall-mgr.py (Web-GUI, Port 8080)
- Slave-Pis: displaywall-agent.py (Sync-Slave, REST-API, Port 8081)
- Sync: CLOCK_MONOTONIC_RAW + UDP-PLL (Port 1666), ~17ms Versatz
- Pre-Decode: Bilder 3s vor Wechsel vorgeladen (
loadfile append+playlist-next) - Netzwerk: TP-Link Router als AP (SSID
displaywall, 10.42.0.0/24)
| Pi | IP | Rolle | Monitore | Status |
|---|---|---|---|---|
| head | 10.42.0.10 | Master | head-1, head-2 | Laeuft stabil |
| slave1 | 10.42.0.22 | Slave | slave1-1, slave1-2 | Laeuft stabil, Sync aktiv |
| slave2 | 10.42.0.23 | Slave | slave2-1, slave2-2 | Laeuft, HDMI-2 ohne Monitor |
- Web-GUI mit Canvas-Editor, Asset-Pool, Drag & Drop
- Playlists pro Monitor (Bilder + Videos, konfigurierbare Duration)
- Transport-Controls (Play/Pause/Next/Prev) pro Monitor
- Shuffle-Modus pro Monitor
- Playback-Highlight (aktuelles Asset in Playlist markiert)
- Live-Preview und Thumbnails
- Devices-Tab (Temperatur, Speicher, Netzwerk, Throttle)
- Cross-Pi Sync (TickClock + DeterministicPlaylist + SyncMaster/Slave)
- Pre-Decode (loadfile append + playlist-next)
- Asset-Validierung (defekte Assets werden uebersprungen, GUI-Markierung)
- Auto-Resize beim Upload (max 2560x1440, GPU-Texturlimit)
- Persistenter mpv (kein Flackern beim Bildwechsel)
- Slave-Agent mit Pull-Loop (30s) + lokaler Playlist-Cache
- Admin-AP Failover (Slave wird AP wenn displaywall-WLAN weg)
- Unsichtbarer Cursor (labwc + Xcursor-Theme)
- Auto-Recovery nach Stromausfall
- Watchdog (ueberwacht Services, Temperatur, Netzwerk)
- Automatische Installations-Scripts (install-head.sh, install-slave.sh)
- Systemzeit auf slave2 falsch (Apr 13 statt Apr 17) — NTP einrichten
- SCHED_FIFO braucht Root-Rechte — CAP_SYS_NICE oder chrt in autostart
- HDMI-Capture-Streaming (Live-Thumbnails in GUI)
- Videos in Playlists testen (bisher nur Bilder verifiziert)
- USB-Speicher als Asset-Storage (vorbereitet, nicht getestet)
- Xibo CMS (2025-04) — Verworfen: ARM64-Player nicht verfuegbar.
- Anthias (Screenly OSE) (2025-04) — Installiert, nur 1 Display pro Pi.
- Eigener Stack (2026-04-10) — Pivot: labwc + mpv + eigener Sync-Layer. Anthias-DB wird noch fuer Asset-Metadaten referenziert.
Details zu verworfenen Ansaetzen: siehe _historical/PLAYER_EVALUATION.md.
- Sprache: Dokumentation Deutsch, Code Englisch
- Zielplattform: Raspberry Pi 5 (arm64, Debian 13 trixie)
- Display-Regel: Keine Warnungen/Overlays auf Bildschirmen
- Credentials: Offen dokumentiert (Consumer-Hardware-Ansatz)
- Sync: Eigener Layer, NICHT omxplayer-sync oder NTP-basiert
- Anthias: Wird NICHT mehr als Player verwendet, nur DB fuer Assets