TTS providers

Deepgram Aura (default)

TTS_PROVIDER=deepgram
DEEPGRAM_TTS_MODEL=aura-2-thalia-en
  • Same API key as STT
  • REST streaming → linear16 PCM at 24 kHz
  • Phrase-level pipelining: LLM tokens batched, multiple HTTP speak calls per reply
  • Retries on transient network errors

ElevenLabs

TTS_PROVIDER=elevenlabs
ELEVENLABS_API_KEY=your_key
ELEVENLABS_OUTPUT_FORMAT=pcm_24000

WebSocket stream-input with token streaming. Falls back to Deepgram if ElevenLabs returns no audio. Note: some free accounts hit policy blocks — Deepgram is the reliable default.

No TTS

TTS_PROVIDER=none

LLM text only; server sends reply_text JSON events to the client.

Client playback

Your client must play 24 kHz int16 mono PCM. The reference client uses sounddevice with a queued writer thread.