Fosniedocsv0.1

Voice

Dictation, read-aloud, and live streaming voice with barge-in.

Fosnie speaks to external speech engines over the standard OpenAI audio API, so speech-to-text (STT) and text-to-speech (TTS) run inside your perimeter like everything else. There are three modes.

Modes

  • Dictation – a mic button next to send transcribes your speech into the message box; you send it.
  • Read-aloud – you dictate, the model answers, and the answer is read back, turn by turn.
  • Live voice – real-time streaming both ways, with voice-activity detection, natural turn-taking, and barge-in (start speaking and it stops talking and listens). Built, and off by default.

Enabling it

  • Dictation and read-aloud: set features.voice = true (boot) and configure the STT/TTS endpoints on the ML service. If an engine is missing, the voice endpoints return 503 rather than failing silently.
  • Live voice: additionally set features.voice_live = true and configure the live-voice engine block.

The ML service needs ffmpeg on its PATH to transcode browser audio; without it only WAV/MP3/FLAC transcribe. STT and TTS are separate servers.

How it behaves

  • Push-to-talk by default, no wake-word. The live, editable transcript is the product – you verify it before any action, and text is always available.
  • Barge-in needs browser acoustic echo cancellation; where that's unavailable, the UI falls back to push-to-talk.
  • On a batch-only box everything degrades gracefully to per-utterance STT and per-clause TTS.

Audit logs record voice metadata only – never audio or transcript content.

Was this page helpful?

On this page