Open source speech recognition for everyone — a local AI alternative to Wispr Flow.
Part of the OpenAEC Foundation.
- 100% Local — All speech recognition runs on your own computer. No cloud, no subscription, full privacy.
- GPU & CPU — Works on both GPU (CUDA/Vulkan) and CPU. Choose the model that fits your hardware.
- Multilingual — Supports 99+ languages with automatic language detection.
- Dictionary — Add your own words, names and jargon for better recognition.
- Universal speech — Works in any application via a global hotkey.
- Open source — Apache 2.0 license. Free to use, modify and distribute.
Download the latest installer from the Releases page.
- Start Open Speech Studio
- Go to Models and download a speech model
- Press Ctrl+Shift+Space to start speaking
- Speak your text
- Press again to stop — text is automatically inserted
Go to the Dictionary tab to:
- Add your own words (names, abbreviations, technical terms)
- Set up replacements (e.g. "OpenAEC" -> "OpenAEC Foundation")
Via the Models tab you can download models for speech recognition:
| Model | Size | Speed | Accuracy | Recommended for |
|---|---|---|---|---|
| tiny | 75 MB | Very fast | Basic | CPU, quick notes |
| base | 142 MB | Fast | Good | CPU, daily use |
| small | 466 MB | Medium | Very good | GPU or fast CPU |
| medium | 1.5 GB | Slow | Excellent | GPU |
| large-v3 | 3.1 GB | Very slow | Best | Powerful GPU |
| large-v3-turbo | 1.6 GB | Medium | Near best | GPU |
| Component | Technology |
|---|---|
| Framework | Tauri 2 (Rust) |
| Frontend | SolidJS + Vite |
| AI Model | whisper.cpp via whisper-rs |
| Audio | cpal (Cross-Platform Audio Library) |
| UI Style | Office-style ribbon (OpenAEC Foundation) |
- Node.js (LTS)
- Rust
- Platform-specific dependencies: see Tauri prerequisites
git clone https://github.com/OpenAEC-Foundation/open-speech-studio.git
cd open-speech-studio
npm install
cargo tauri devcargo tauri build
# With GPU support
cargo tauri build --features cudaopen-speech-studio/
├── src/ # SolidJS frontend
│ ├── components/ # UI components (Ribbon, Settings, etc.)
│ ├── lib/ # API bindings
│ └── styles/ # CSS
├── src-tauri/ # Rust backend
│ └── src/
│ ├── lib.rs # Tauri commands & app state
│ ├── transcriber.rs # Whisper speech recognition
│ ├── audio.rs # Microphone recording
│ ├── settings.rs # Configuration & model auto-detection
│ └── dictionary.rs # Dictionary
├── models/ # Whisper models (downloaded via app)
└── index.html # Entry point
Apache License 2.0 — see LICENSE
Contributions are welcome! Open an issue or pull request on GitHub.