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)

  1. Download a binary from the Releases page for your OS.
  2. Run a TTS demo:
    crispasr --backend kokoro -m auto \
           --tts "The quick brown fox jumps over the lazy dog." \
           --tts-output hello.wav
    
  3. Transcribe the result:
    crispasr --backend parakeet -m auto -f hello.wav -l en
    
    You’ll see the transcription printed and the processing speed (e.g., 10× realtime).

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.md walks you through the first run.
  • Full feature matrix – docs/feature-matrix.md lists every backend and its capabilities.
  • Server & concurrency – docs/server.md and docs/concurrency.md explain how to scale the HTTP API.
  • Bindings – docs/bindings.md shows how to call the C‑ABI from other languages.
  • Benchmarking – docs/benchmarking.md provides 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