• feat(tts): migrate RP-surface TTS chatterbox-fast → dots-tts

    vh released this 2026-08-10 07:13:10 -07:00 | 3 commits to main since this release

    Swap the voice synthesis backend from chatterbox-fast (:8197 bespoke /tts)
    to dots-tts (rednote-hilab dots.tts-soar, :8198 OpenAI-shaped
    /v1/audio/speech), operator-directed after an A/B win. tts.py stays the
    single swap seam.

    • gateway body OpenAI-shaped: {input, voice, response_format, stream}
      (was chatterbox {text, voice, format, stream})
    • sample rate 24000 -> 48000 Hz (browser Web Audio SR)
    • default voice glados_25s -> glados; donut voice carries over
    • serialized single-consumer (satisfied by the existing DEC-5 lock)
    • affect stays dropped (dots has no emotion knob, same as chatterbox)

    DOTS_TTS_URL replaces CHATTERBOX_TTS_URL; RATATOSKR_TTS_URL override
    unchanged. chatterbox-fast :8197 kept up as rollback. Contract amended
    (donut_voiced_interview.contract.md). Live-verified end-to-end on :8765
    (RIFF/WAVE 48kHz mono s16le through /api/tts). 520 tests green.

    Downloads