11st of 15 in Voice

whisper.cpp

C/C++ port of OpenAI Whisper for local speech-to-text transcription

Stars
54.4k
License
MIT
Last commit
Oct 2026
Last release
Oct 2026
Language
C++
Stars, last 29 weeks+6,896
24 Mar 2026: 47,463 stars31 Mar 2026: 47,729 stars7 Apr 2026: 47,957 stars14 Apr 2026: 48,223 stars21 Apr 2026: 48,515 stars28 Apr 2026: 48,761 stars5 May 2026: 49,044 stars12 May 2026: 49,266 stars19 May 2026: 49,558 stars26 May 2026: 49,824 stars2 Jun 2026: 50,070 stars9 Jun 2026: 50,296 stars16 Jun 2026: 50,492 stars23 Jun 2026: 50,721 stars30 Jun 2026: 50,909 stars7 Jul 2026: 51,186 stars14 Jul 2026: 51,500 stars21 Jul 2026: 51,876 stars28 Jul 2026: 52,184 stars4 Aug 2026: 52,387 stars11 Aug 2026: 52,651 stars18 Aug 2026: 52,869 stars25 Aug 2026: 53,043 stars1 Sept 2026: 53,235 stars8 Sept 2026: 53,429 stars15 Sept 2026: 53,602 stars22 Sept 2026: 53,795 stars29 Sept 2026: 53,975 stars6 Oct 2026: 54,157 stars13 Oct 2026: 54,359 stars

47,463 on 24 Mar 202654,359 on 13 Oct 2026

From GitHub's daily star counts.

Checked on GitHub.

Overview

whisper.cpp runs OpenAI's Whisper speech recognition models in plain C/C++ on top of the ggml library, with a C-style API in whisper.h and a whisper-cli example for transcribing 16-bit WAV files. It runs on CPU or can offload to Metal, Core ML, CUDA, Vulkan, ROCm, OpenVINO, Ascend CANN, Moore Threads MUSA and AMD Ryzen AI NPUs. It supports integer quantization and voice activity detection, and builds for desktop, mobile, WebAssembly and Docker.

Who it is for: Developers embedding offline speech-to-text in apps, servers or devices

Strengths

  • No dependencies in core; zero memory allocations at runtime
  • Wide backend coverage: Metal, Core ML, CUDA, Vulkan, ROCm, OpenVINO, CANN, MUSA, NPU
  • Runs on iOS, Android, WebAssembly, Raspberry Pi, and Java bindings exist
  • Q5_0-style integer quantization shrinks models; base model needs about 388 MB RAM

Weaknesses

  • whisper-cli accepts only 16-bit WAV unless built with optional FFmpeg support
  • Core ML, OpenVINO and VitisAI encoders need a separate Python conversion step
  • Models must be in ggml format; downloaded via script, not bundled
  • Library and CLI only; no built-in web UI or multi-user features

What it needs

  • GPU optional
  • Docker
  • Needs CMake, ffmpeg (optional), CUDA / ROCm / Vulkan / OpenVINO (optional backends)
  • Models: Whisper ggml (tiny, base, small, medium, large-v1/v2/v3, large-v3-turbo), Quantized ggml (e.g. q5_0)

Head to head

Also in Voice

See all 15
Also in Voice
RankProjectScore
2VoiceboxLocal voice studio for cloning, TTS, dictation and agent speech57.4k starsMIT69 out of 100
3Speech-to-SpeechModular voice-agent pipeline exposed through the OpenAI Realtime API13.4k starsApache-2.066 out of 100
#4Kokoro-FastAPIOpenAI-compatible text-to-speech server for the Kokoro-82M model Live demo ↗ (opens in a new tab)5.5k starsApache-2.065 out of 100
#5Pocket TTSCPU-only text-to-speech model with voice cloning and streaming Live demo ↗ (opens in a new tab)9.9k starsMIT63 out of 100
#6OpenReaderReads EPUB, PDF and DOCX aloud with synced word highlighting540 starsMIT59 out of 100