Favicon of VoiceStreamAI

VoiceStreamAI

A self-hosted speech-to-text server transcribes browser audio with Whisper, supports multiple languages, and uses faster-whisper by default.

VoiceStreamAI turns live browser audio into text on a server you control. It's for developers adding streaming transcription to an app or building a speech-to-text service around Whisper.

  • Browser audio streaming: A JavaScript client sends captured audio to the Python server over WebSocket, with support for encrypted connections.
  • Multilingual transcription: Whisper transcribes speech in multiple languages, and each client can select a language or use multilingual mode.
  • Speech detection: Silero detects speech without an authentication token; the optional Pyannote backend requires a Hugging Face token.
  • Model choice: The server uses faster-whisper by default and also supports OpenAI's Whisper model, including openai/whisper-large-v3; developers can extend the recognition and speech-detection backends.
  • Per-client processing: Each connection can use its own audio chunk length and silence settings to balance response time against transcription context.

The project is open source under the MIT license. It runs as a self-hosted Python server with a browser client, and supports Docker deployment on Linux with NVIDIA GPU acceleration. Audio goes to your server for transcription, where the models run.

Transcription arrives in chunks rather than word by word. The silence-based strategy waits for a pause, so continuous speech can delay results; shorter chunks can reduce accuracy by giving Whisper less context.

Similar to VoiceStreamAI