# Projektplan: Artikel-Vorlese-Funktion (Pre-Generation) **Stand:** 11. Juni 2026 **Prinzip:** Audio wird EINMAL bei Artikel-Erstellung generiert, nicht bei jeder Anfrage. --- ## Übersicht Jeder Artikel auf brettspiel-news.de bekommt automatisch: - Deutsche Audioversion (Thorsten-Stimme, Piper TTS) - Englische Audioversion (Joe-Stimme, Piper TTS, optional) - Play-Button unter dem Artikel - Download-Link für Offline-Hören Der Chatbot nutzt dieselben Dateien — null Zusatzaufwand. --- ## Phase 1: TTS-Pipeline (Hermes-Seite) ### 1.1 Pipeline-Skript - Input: Artikel-URL oder Artikel-ID - Fetch: Artikeltext via Content-API - Clean: HTML → Fließtext (parsbar für TTS) - Generate DE: Piper Thorsten (de_DE-thorsten-medium) - Generate EN: Piper Joe (en_US-joe-medium) — optional - Output: MP3-Datei → Media-Ordner ### 1.2 Performance - 2.000 Zeichen → ~3 min Audio → ~30s Generierung (0,15x Echtzeit) - 5.000 Zeichen → ~8 min Audio → ~75s Generierung - 10.000 Zeichen → ~15 min Audio → ~150s Generierung ### 1.3 API-Endpoint - `POST /tts/generate` — nimmt Artikel-ID/URL, gibt Audio-Pfad zurück - Status-Endpoint für Fortschritt (bei langen Artikeln) --- ## Phase 2: Joomla-Integration ### 2.1 Trigger - Joomla-Plugin: `onContentAfterSave` → Webhook an Hermes - Alternativ: Cron-Job, der alle X Minuten auf neue Artikel prüft - Priorität: Webhook (sofort), Cron (Fallback) ### 2.2 Audio-Speicherung - MP3-Dateien auf brettspiel-news.de Server - Pfad-Schema: `/media/audio/articles/{article-id}-de.mp3` - Auch als Download in Artikel-Metadaten hinterlegt ### 2.3 Artikel-Template - Play-Button: `