← all repositories
k2-fsa/sherpa-ncnn

Speech toolkit that runs on your phone, laptop, and a RISC-V board

It packages streaming speech recognition, synthesis, and voice-activity detection into a single offline engine that runs on everything from Android phones to RISC-V boards.

sherpa-ncnn
Not currently ranked — collecting fresh signals.
star history

What it does

sherpa-ncnn is a C++ inference engine for streaming speech-to-text, text-to-speech, and voice-activity detection. It runs entirely on-device via the ncnn framework, exposing APIs in C++, C, Python, Go, C#, Kotlin, JavaScript, and Swift. The project targets Android, iOS, Linux, macOS, Windows, and a long tail of embedded boards from Raspberry Pi to RISC-V devices like the VisionFive 2.

The interesting bit

The unusual angle is the sheer breadth of platform support achieved by piggybacking on ncnn and offering static linking. It explicitly avoids PyTorch and other heavy frameworks, relying only on system libraries after compilation. That means you can deploy the same speech pipeline to an Android phone, a Raspberry Pi, or a RISC-V board without cloud dependencies or vendor lock-in.

Key highlights

  • Runs streaming ASR, TTS (Piper VITS models), and VAD (Silero) entirely offline through a single C++ core.
  • Covers arm32, arm64, x86, x64, and riscv64 across Linux, macOS, Windows, Android, iOS, WearOS, NodeJS, and WebAssembly.
  • Exposes APIs in C++, C, Python, Go, C#, Kotlin, JavaScript, and Swift.
  • Compiles to a static binary that depends only on system libraries, avoiding PyTorch entirely.
  • Pre-trained models and pre-built Android APKs are available from the releases page.

Verdict

Worth a look if you need offline speech processing on mobile, desktop, or resource-constrained edge hardware. Skip it if you are already invested in cloud-based APIs or need a managed, turn-key SaaS solution.

Frequently asked

What is k2-fsa/sherpa-ncnn?
It packages streaming speech recognition, synthesis, and voice-activity detection into a single offline engine that runs on everything from Android phones to RISC-V boards.
Is sherpa-ncnn open source?
Yes — k2-fsa/sherpa-ncnn is open source, released under the Apache-2.0 license.
What language is sherpa-ncnn written in?
k2-fsa/sherpa-ncnn is primarily written in C++.
How popular is sherpa-ncnn?
k2-fsa/sherpa-ncnn has 1.8k stars on GitHub.
Where can I find sherpa-ncnn?
k2-fsa/sherpa-ncnn is on GitHub at https://github.com/k2-fsa/sherpa-ncnn.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.