Release v1.0.11: Pause-Fix, OAuth-Assistent, Docs, Cleanup

Pause-Fix (Silence-Injektor):
- Python-Skript zwischen librespot und ffmpeg
- Bei Pause füllt der Injektor die Stille mit Null-Bytes
- Icecast bleibt verbunden, Stream reißt nicht ab

OAuth-Einrichtungs-Assistent (Port 5589):
- oauth_helper.py: HTTP-Server mit geführtem Anmelde-Prozess
- Zeigt Spotify-Auth-Link automatisch sobald librespot ihn ausgibt
- URL-Fixer: Nutzer fügt 127.0.0.1-URL ein, Assistent korrigiert auf HA-IP
- Erkennt bereits vorhandene Credentials und zeigt Hinweis

Dokumentation:
- DOCS.md für die HA Add-on Detailseite erstellt
- README.md vollständig überarbeitet und aktualisiert

Cleanup:
- Leere Testdatei entfernt
- Veraltete example-config.yaml entfernt
- manifest.json der Custom Component auf v1.0.11 gebracht

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Niklas Gühne
2026-04-07 12:14:56 +02:00
parent fbebf84b76
commit a463403c43
9 changed files with 505 additions and 138 deletions

View File

@@ -0,0 +1,89 @@
# Busch-Radio Spotify Bridge
Streamt Spotify-Musik als Internetradio-Stream für das Busch-Jäger Unterputz-Internetradio.
Ein virtuelles Spotify Connect-Gerät (librespot) nimmt Audio entgegen und stellt es per Icecast als HTTP-Stream bereit.
```
Spotify-App → librespot → ffmpeg → Icecast → Busch-Jäger Radio
```
---
## Erste Einrichtung
### 1. Add-on konfigurieren und starten
Passe die Optionen an (siehe unten) und starte das Add-on.
### 2. Spotify autorisieren (einmalig)
Öffne den Einrichtungs-Assistenten im Browser:
```
http://<homeassistant-ip>:5589
```
Der Assistent führt dich Schritt für Schritt durch die Anmeldung. Die Credentials werden dauerhaft gespeichert dieser Schritt ist nur beim ersten Start nötig.
### 3. Stream-URL im Radio eintragen
```
http://<homeassistant-ip>:8000/stream
```
### 4. Musik abspielen
Wähle in der Spotify-App **„Busch-Radio"** (oder deinen konfigurierten Gerätenamen) als Abspielgerät aus.
---
## Konfigurationsoptionen
| Option | Standard | Beschreibung |
|---|---|---|
| `device_name` | `Busch-Radio` | Name des Geräts in der Spotify-App |
| `bitrate` | `160` | Audioqualität in kbps (`96` / `128` / `160` / `192`) |
| `stream_format` | `mp3` | Audioformat (`mp3` oder `aac`) |
| `stream_port` | `8000` | HTTP-Port des Icecast-Streams |
| `stream_mount` | `/stream` | URL-Pfad des Streams |
| `icecast_password` | | Internes Icecast-Passwort (bitte ändern) |
---
## Nützliche URLs
| URL | Funktion |
|---|---|
| `http://<ha-ip>:5589` | Einrichtungs-Assistent (OAuth) |
| `http://<ha-ip>:8000/stream` | Stream-URL für das Radio |
| `http://<ha-ip>:8000` | Icecast-Statusseite |
---
## Fehlerbehebung
**„Busch-Radio" erscheint nicht in der Spotify-App**
→ Spotify-Autorisierung noch nicht abgeschlossen. Einrichtungs-Seite öffnen: `http://<ha-ip>:5589`
**Stream nicht erreichbar**
→ Icecast-Statusseite prüfen: `http://<ha-ip>:8000`
→ Port 8000 muss im Netzwerk erreichbar sein (`host_network: true` ist aktiviert)
**Stream bricht bei Pause ab**
→ Add-on auf Version 1.0.11 oder neuer aktualisieren
**Songs wechseln zu schnell / keine Steuerung vom Handy**
→ Add-on auf Version 1.0.10 oder neuer aktualisieren
**Neu autorisieren**
→ Add-on stoppen → Datei `/data/librespot-cache/credentials.json` löschen → Add-on starten → Einrichtungs-Seite öffnen
---
## Technische Hinweise
- librespot wird beim Build aus dem Quellcode kompiliert (Rust) der erste Build dauert ca. 1015 Minuten
- Der OAuth-Callback-Server bindet an `0.0.0.0`, damit er aus dem Heimnetz erreichbar ist
- Audio wird nicht gespeichert ausschließlich live gestreamt
- Spotify Premium ist für Spotify Connect erforderlich