Episode 04: Recording Pipeline & AI Shownotes (Trilogy)
Datum: 09.02.2026 | Zeit: 19:51 - 23:15 (CET)
Recording IDs: 008, 009, 010 (3 parts)
Status: ✅ Complete
Über diese Episode
Eine technische Deep-Dive Trilogy! Wir haben eine komplette automatische Recording-Pipeline deployed, die BBB-Aufnahmen verarbeitet, transkribiert und AI-generierte Shownotes erstellt. Die längste Session bisher mit 3 Parts!
Session Parts
| Part | Recording ID | Zeit (CET) | Dauer | Status | Inhalt |
|---|---|---|---|---|---|
| Part 1 | 008 | 19:51 | 22 min | ✅ Processed | Pipeline deployment, erste Transkription |
| Part 2 | 009 | 20:26 | 98 min | ✅ Processed | Obsidian sync, Knowledge graphs, Player accounts |
| Part 3 | 010 | 22:05 | 228 min (3h 48min) | ✅ Transcribed | Nextcloud Sync, OCR Invoicing, Quest Processing |
Total Duration: ~6 hours (across 3 parts)
Teilnehmer
- Emil
- Alex
Themen & Tags
Recording-PipelineWhisper-TranscriptionAI-ShownotesOllama-LLMBBB-ProcessingBBB-DebuggingRedis-PubsubFFmpeg-Fixes
🚀 Recording Pipeline
Das Highlight dieser Episode! Wir haben eine vollautomatische Pipeline deployed:
BBB Recording → Extract → Convert → Transcribe → Shownotes → Package ↓ ↓ ↓ ↓ ↓ raw files MP3/MP4 SRT/VTT AI Summary .tar.gzDeployed Scripts
Auf
bbb.foss.systems:/opt/liveplay-processing/scripts/:Script Funktion bbb-list-recordings.shVerfügbare Aufnahmen auflisten extract-media.shRaw-Dateien extrahieren process-media.shOpus→WAV/MP3, WebM→MP4 transcribe-whisper.shDeutsche Transkription generate-shownotes.shAI-Zusammenfassung mit Ollama package-episode.shTarball erstellen process-all.shMaster-Orchestrator Technologie-Stack
- Whisper (base model) - Deutsche Spracherkennung
- Ollama (llama3.2:3b) - AI Shownotes Generation
- FFmpeg - Media-Konvertierung
- Python - Metadata-Extraktion
Part 1: Pipeline Deployment
Was wurde gemacht?
- ✅ 7 Processing-Scripts auf BBB-Server deployed
- ✅ Whisper & Ollama installiert und konfiguriert
- ✅ Erste Aufnahme verarbeitet (22 Minuten → 2271 Wörter)
- ✅ AI-Shownotes generiert mit Kapitelmarkern
- ✅ Episode als 145MB Tarball paketiert
Verarbeitete Ausgabe
episode-04-2026-02-09/ ├── manifest.json ├── media/ │ ├── audio.mp3 (16MB) │ ├── audio.opus (10MB) │ └── deskshare.mp4 (48MB) ├── transcripts/ │ ├── transcript-full.txt │ ├── transcript.srt │ ├── transcript.vtt │ └── transcript.json └── shownotes/ └── summary.md
Part 2: Dashboard & Accounts
Was wurde gemacht?
- ✅ Dashboard aktualisiert (13 Quests, 4 Episoden)
- ✅ 6 individuelle Player-Accounts erstellt
- ✅ Episode 03 & 04 zur Website hinzugefügt
- ✅ Quest 013 (WhisperX Speaker Diarization) erstellt
Neue Player-Accounts
Player Role emil Member (Admin) alex Member (Admin) boba Player yuri Player fcpennerschnaps Player gogo Player
Part 3: Nextcloud Sync & OCR Success (3h 48min)
Vollständig transkribiert: ✅ 2,437 Segmente, 228 Minuten
Was wurde gemacht?
- ✅ Nextcloud Sync erfolgreich - 4.7 GB Recording-Daten (352 Dateien, 143 Ordner)
- ✅ OCR Rechnungsgenerierung - Von 1h manuell auf 1 Minute automatisch!
- ✅ Quest System Testing - Alex mit Full Admin Access
- ✅ Chunked Transcription - 8 × 30min Segmente mit Whisper "small" model
- ✅ Knowledge Graph Demo - AI Agents mit Kontext
Teilnehmer Part 3
- Emil - Pipeline Development, Whisper Integration
- Alex - Community Coordination, Quest System
- Yuri, Gogo, Jens, Boba - Testing, Feedback, Community
Highlights
📊 OCR-Workflow Erfolg:
- Handschriftliche Notizen automatisch erkannt
- Vorher: 1+ Stunde manuelle Eingabe
- Jetzt: 1 Minute (Foto → OCR → Rechnung)
- Use Case: Stiefbruder schickt handschriftlichen Zettel → Foto → KI erkennt 1:1 alle Positionen
🔧 Technische Achievements:
- BBB Recordings automatisch zu Nextcloud synchronisiert
- Whisper Transcription in 5 Formaten (TXT, SRT, VTT, TSV, JSON)
- Knowledge Graph Visualisierung für AI Agent Context
Probleme & Lösungen
Problem: Python-Syntax-Fehler verhindert Merge der Transcription-Chunks Status: Gefixt am 2026-02-17 Impact: Blockierte Episode-Verarbeitung (CRITICAL)
Problem: Audio-Qualität bei Boba's Recording (Quest 002) Status: Open, Critical Priority XP: 150 XP
Neue Quest-Kandidaten aus Part 3
- Fix Python Syntax Error - 50 XP (Critical) - ✅ FIXED
- Better Naming for BBB Recordings - 100 XP (Medium)
- Upgrade Recording Sync Pipeline - 300 XP (Medium)
- AI Agent Context System - 250 XP (Low/Experimental)
Transkript-Details
- Dauer: 3h 48min (228 Minuten)
- Segmente: 2,437 Whisper segments
- Zeilen: 2,456 lines
- Formate: TXT (88 KB), SRT (171 KB), VTT (158 KB), TSV (123 KB), JSON (1.3 MB)
- Model: Whisper "small" (Deutsch)
- Processing: Chunked (8 × 30min)
Neue Quest
🗣️ Quest 013: WhisperX Speaker Diarization
Ziel: "Wer hat was gesagt" zu Transkriptionen hinzufügen
Requirements:
- HuggingFace Account
- pyannote/speaker-diarization Modell
- WhisperX Installation
Output-Format:
[00:00:00] SPEAKER_00: Ich habe hier einen Grundgeräusche... [00:00:23] SPEAKER_01: ich weiß, ich könnte die Waschmaschine sein...Status: New | XP: 400 | Assignee: @emil
Topics Discussed
Technische Themen
- BBB Recording-Struktur (raw vs published)
- Whisper-Modelle (base vs medium vs large)
- Ollama lokale LLM-Inferenz
- Speaker Diarization mit pyannote
Projekte erwähnt
- Obsidian vault sync via Nextcloud/Git
- Nikita's Multiple Intelligences Framework
- Corinna's Marms Downtown Projekt
Downloads & Ressourcen
Transkripte
- Volltext: transcript-full.txt
- Untertitel: transcript.srt
- WebVTT: transcript.vtt
AI-Shownotes
- Summary: summary.md
Scripts
Part 3: BBB Debugging & Fixes
BBB Pubsub Disconnection Issue
Während Part 3 wurden wir mehrfach aus dem BBB-Meeting geworfen. Die Ursache wurde identifiziert:
Problem: Redis Pubsub Failures durch Server-Überlastung
Zeit (UTC) Event 20:44:18 Pubsub Error - Disconnection 20:45:46 Recovered (1.5 min Ausfall) 23:10:42 Pubsub Error - Disconnection 23:12:47 Recovered (2 min Ausfall) Root Cause:
- BBB Server hat nur 7.6GB RAM
- Whisper Transkription verbraucht ~1GB zusätzlich
- Load Average stieg auf 29.89
- Redis konnte Pubsub-Messages nicht mehr verarbeiten
Lösung: Schwere Transkriptions-Jobs außerhalb der Live-Sessions oder auf separatem Server ausführen.
Video Conversion Fix
Problem: FFmpeg H.264 Encoding schlägt bei ungeraden Dimensionen fehl
[libx264] width not divisible by 2 (371x494)Fix angewandt: Padding-Filter zu
process-media.shhinzugefügt:-vf "pad=ceil(iw/2)*2:ceil(ih/2)*2"Dies paddet Videos mit ungeraden Dimensionen automatisch auf gerade Werte.
Statistiken
- Session-Dauer: ~6 Stunden (Trilogy: Part 1: 22min, Part 2: 98min, Part 3: 228min)
- Recording IDs: 008, 009, 010
- Transkribierte Minuten: 348 (alle 3 Parts vollständig)
- Transkript-Segmente: 2,437 (Part 3 allein)
- Wörter transkribiert: ~20,000+
- Scripts deployed: 7
- Scripts gefixt: 2 (process-media.sh, whisper-merge Python bug)
- Neue Quests: 1 (Quest 013)
- Quest Candidates: 4 (aus Part 3 diskutiert)
- Neue Accounts: 6
- Bugs gefunden: 3 (Pubsub, Video dimensions, Python syntax)
- BBB Known Issues dokumentiert: 2
- Nextcloud Sync: 4.7 GB (352 files, 143 folders)
- OCR Workflow: Von 1h → 1min (100x speedup!)
Links & Referenzen
Tools & Projekte
- OpenAI Whisper - Speech Recognition
- WhisperX - Speaker Diarization
- Ollama - Local LLM
- pyannote-audio - Speaker Diarization
Verwandte Episoden
- Episode 03: Community Session - Vorherige Episode
- Episode 06: Quest Processing & Community Testing - Nächste Episode (EP05 skipped - no session)
Alle Episoden | Vorherige Episode | Nächste Episode | Dashboard