Extropian Voice

Type:Modular repository
Category:Engineering UI
Status:in-development

Capture, transcribe, and synthesize speech — one audio library for desktop and browser.

Engineering software should listen as well as it shows. Extropian Voice is the audio layer of the Extropian dependency stack: it owns microphone capture, speaker playback, voice activity detection, speech-to-text transcription, and text-to-speech synthesis, wired together through a VoiceService state machine (Idle → Listening → UserSpeaking → Processing → Speaking → Interrupted). It is deliberately low-level — conversation turn-taking, transcript routing, and UI live in other Extropian components, not here.

The core compiles unchanged for both native and WASM. Platform I/O is dispatched behind AudioCapture/AudioPlayback interfaces — SDL3 on desktop, Web Audio API via Emscripten in the browser. Speech-to-text and text-to-speech go through provider abstractions: local Whisper (whisper.cpp) and Piper TTS on desktop, and cloud Deepgram/ElevenLabs/OpenAI over HTTP.

It is built on extropian-core's Signal<T> event system and builds as a static library with optional provider backends toggled at configure time.

Core capabilities

  • Microphone capture and speaker playback with pluggable audio backends (SDL3 native, Web Audio API in-browser)
  • Real-time voice activity detection from raw PCM with speech/energy signals
  • Speech-to-text via local Whisper or cloud Deepgram/OpenAI providers
  • Text-to-speech via local Piper or cloud ElevenLabs/OpenAI providers
  • End-to-end voice pipeline wiring capture → VAD → transcribe → synthesize → playback

Technical foundation

  • C++23 static library with extropian-core Signal<T> eventing
  • Platform-agnostic shared core (compiles to WASM) over SDL3 / Web Audio API backends
  • Provider abstraction layer supporting local (Whisper, Piper) and cloud (Deepgram, ElevenLabs, OpenAI) engines

Ecosystem connections

Licensing & customization

Open Source (Apache 2.0)

Licensing is negotiated around the software, deployment model, scope, and ownership requirements of each project — whether Extropian Voice is used as-is, customized for your workflows, or embedded in a larger system you are building. I prefer perpetual licenses per major version: one fee licenses the version you chose for as long as you use it, with maintenance updates included within that major version.

Open Source (Apache 2.0): free to use, modify, and distribute — including in commercial products — with attribution.

Start a conversation

Tell me about your workflow and deployment — I respond within 24 hours.