CrispStrobe/CrispASR
C++ ggml runtime hub for multilingual ASR and TTS models: Cohere Transcribe, Parakeet TDT, Voxtral, Canary 1B v2, etc, plus universal forced alignment, and more
CrispASR – A One‑Binary, Multi‑Model Speech Engine
What it is – CrispASR is a C++‑only command‑line tool (and library) that can run 119 different speech‑related models – both automatic‑speech‑recognition (ASR) and text‑to‑speech (TTS) – from a single executable. It builds on the open‑source whisper.cpp project and adds a unified runtime for many other GGUF‑format models (Parakeet, Canary, Qwen‑3, Voxtral, etc.). No Python, PyTorch or separate per‑model binaries are required; you just download a model file and point the tool at it.
Key capabilities
| Feature | Details |
|---|---|
| One‑binary, 119 backends | Choose a backend with --backend NAME or let the program auto‑detect the model type from the GGUF file. |
| ASR + TTS + translation | Supports OpenAI Whisper, NVIDIA Parakeet, Qwen‑3, Voxtral, Granite‑Speech, wav2vec2, and 62 different TTS engines (Kokoro, Qwen3‑TTS, Bark, Piper, etc.). |
| Zero Python dependencies | Pure C++ runtime; optional language bindings for Python, Rust, Dart, Go, Java, Ruby, JavaScript. |
| Cross‑platform | Pre‑built binaries for Windows, macOS (Intel & Apple‑Silicon), Linux, plus a 4.3 MB WebAssembly build for browsers. |
| GPU support | Separate CUDA, Vulkan, and HIP builds; CUDA builds fall back to CPU, Vulkan/HIP require matching drivers. |
| Server mode | Run as an HTTP API (crispasr --server …) with configurable workers for concurrent requests. |
| Streaming & live transcription | Real‑time microphone capture and WebSocket streaming. |
| Post‑processing | Word‑level timestamps, SRT/VTT/JSON export, diarization, language detection, and optional translation. |
| Model management | -m auto auto‑downloads models to ~/.cache/crispasr/; crispasr --list-backends shows all supported models. |
| Compliance | Documentation on EU AI Act, synthetic‑audio watermarking, and consent for voice cloning. |
Typical workflow (no build needed)
- Download a binary from the Releases page for your OS.
- Run a TTS demo:
crispasr --backend kokoro -m auto \ --tts "The quick brown fox jumps over the lazy dog." \ --tts-output hello.wav - Transcribe the result:
You’ll see the transcription printed and the processing speed (e.g., 10× realtime).crispasr --backend parakeet -m auto -f hello.wav -l en
Ecosystem
- CrisperWeaver – a Flutter UI app (desktop & mobile) that uses CrispASR for offline transcription.
- CrispEmbed – a sister library for text embeddings, OCR, and multimodal retrieval, sharing the same GGUF‑based runtime.
- Susurrus – a Python GUI that wraps several ASR backends; the C++ approach of CrispASR is its counterpart.
Getting started & resources
- Quick‑start docs –
docs/getting-started.mdwalks you through the first run. - Full feature matrix –
docs/feature-matrix.mdlists every backend and its capabilities. - Server & concurrency –
docs/server.mdanddocs/concurrency.mdexplain how to scale the HTTP API. - Bindings –
docs/bindings.mdshows how to call the C‑ABI from other languages. - Benchmarking –
docs/benchmarking.mdprovides reproducible timing scripts. - Live demo – HuggingFace Space at https://huggingface.co/spaces/cstr/CrispASR.
Who might use it?
- Developers who need a lightweight, portable speech engine without pulling in heavy Python stacks.
- Edge / offline applications (mobile, embedded, browsers) where a single binary or WASM module is preferable.
- Researchers wanting to experiment with many open‑weight ASR/TTS models quickly.
- Enterprises that require an on‑premise solution with clear licensing (most models are MIT/Apache‑2.0 or CC‑BY).
Bottom line – CrispASR is a genuine, production‑ready speech‑processing toolkit that unifies a large catalog of open‑weight models under a single, fast C++ binary, with optional bindings and server capabilities.
Related
- Project
- Project
- Project
- Project
- Project