Add speaker-labeled transcripts, favicon, host stream fix, episode page

- Re-label all 8 episode transcripts with LUKE:/CALLER: speaker labels
  using LLM-based diarization (relabel_transcripts.py)
- Add episode.html transcript page with styled speaker labels
- Update publish_episode.py to generate speaker-labeled transcripts
  and copy to website/transcripts/ for Cloudflare Pages
- Add SVG favicon with PNG fallbacks
- Fix CPU issue: tie host audio stream to on-air toggle, not per-caller
- Update how-it-works page with post-production pipeline info
- Add transcript links to episode cards in app.js

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-11 15:19:45 -07:00
parent 4becfd2122
commit cee78b5d88
22 changed files with 2637 additions and 186 deletions

View File

@@ -515,6 +515,9 @@ class AudioService:
def start_host_stream(self, send_callback: Callable):
"""Start continuous host mic capture for streaming to real callers"""
if self._host_stream is not None:
self._host_send_callback = send_callback
return
if self.input_device is None:
print("[Audio] No input device configured for host streaming")
return