Spotify Screensaver Handbuch

spotify-screensaver ist ein eleganter, ressourcenschonender Desktop-Bildschirmschoner mit Live-OLED-Uhr, Song-Metadaten, nativer Audio-Spektrumanalyse (PulseAudio/PipeWire) und Inaktivitäts-Daemon für Linux (WebKitGTK) und Windows (App-Mode). 100% Local-First & Zero Bloat.

🌌
Highlights in v1.4: Echte Hardware-Audiospektrum-Analyse mit 64-Band-FFT, adaptive Farbextraktion aus Album-Covern, Werbeerkennung mit dezentem Badge und kreisförmiger Visualizer-Modus.

🎵 2. Architektur & MPRIS D-Bus

Unter Linux lauscht die Anwendung nativ über den System-D-Bus auf das MPRIS2-Interface (org.mpris.MediaPlayer2.spotify oder spotify_player):

  • Zero-Config: Keine Eingabe von Spotify-API-Tokens oder Entwickler-Accounts nötig.
  • Echtzeit-Synchronisation: Titelwechsel, Play/Pause und Zeitleiste aktualisieren verzögerungsfrei per D-Bus Signals.
  • Standby-Modus: Wenn Spotify pausiert oder geschlossen ist, wechselt der Schoner in eine ruhige Uhren-Standby-Ansicht.

🌊 3. Audio-Spektrum & Visualizer

📊 Bars Mode

48 diskrete Frequenzbalken mit physikalischem Peak-Hold und stufenlosem Farbverlauf.

〰️ Wave Mode

Fließende Oszilloskop-Welle mit weichem Neon-Glow und einstellbarer Sensitivität.

🔘 Circular Mode

360° radiales Spektrum rund um das Album-Cover mit pulsierenden Bass-Akzenten.

🪞 Mirrored Mode

Gespiegelte Doppelsäulen, die symmetrisch von der Mitte nach außen strahlen.

💻 4. Installation & Betriebsmodi

Herunterladen & Starten

# Linux x86_64
tar -xzf spotify-screensaver-*-linux-amd64.tar.gz
./spotify-screensaver

# Vollbild-Screensaver-Modus
./spotify-screensaver -fullscreen

# Browser-Modus
./spotify-screensaver -browser

# Inaktivitäts-Timeout (automatisch nach 5 Minuten Leerlauf starten)
./spotify-screensaver --idle-timeout=300

⌨️ 5. Tastenkombinationen

Taste Aktion
Space Play / Pause
→ / ← Nächster / Vorheriger Titel
↑ / ↓ Lautstärke +/- 5%
F oder F11 Vollbildmodus umschalten
ESC Screensaver beenden / Einstellungen schließen

🛡️ 6. Sicherheit & Fehlerbehebung

Der integrierte Webserver lauscht strikt auf 127.0.0.1:43210 mit Anti-DNS-Rebinding und CSRF-Schutz. OAuth-Tokens werden via AES-256-GCM und PBKDF2 (100.000 Runden) gesichert.

Fehlerbehebung: WebKitGTK Performance unter Linux

Sollte auf bestimmten GPU-Treibern (z. B. NVIDIA) ein Rendering-Lag auftreten, starte die Anwendung mit:

WEBKIT_DISABLE_DMABUF_RENDERER=1 ./spotify-screensaver