Debuly
whisper.cpp logo

whisper.cpp

Dependency-free C/C++ port of OpenAI's Whisper speech recognition that runs offline on CPUs, Apple Silicon and many GPUs.

Open source

What is whisper.cpp?

whisper.cpp is an open-source C and C++ implementation of OpenAI's Whisper automatic speech recognition model, released under the MIT license. It has no external dependencies, makes no memory allocations at runtime and runs on plain CPUs, so the same code can sit inside a command-line tool, a mobile app or a browser build. On Apple Silicon it uses ARM NEON, Accelerate, Metal and optional Core ML for the encoder, and it also offers NVIDIA CUDA, Vulkan, AMD ROCm, OpenVINO, Ascend and Moore Threads backends plus a mixed F16 and F32 precision mode and integer quantization. You download a Whisper model in ggml format, build the whisper-cli example and transcribe 16-bit WAV files, with ffmpeg used to convert other inputs. A C-style API in whisper.h, voice activity detection, bindings and example apps make it a building block for offline voice features. There is no price: the project is free to use and self-host.

Use cases

  • Transcribe audio fully offline
  • Embed speech recognition in a native app
  • Run Whisper on iPhone or Android
  • Build an offline voice assistant
  • Run speech-to-text in the browser with WebAssembly
  • Speed up transcription with quantized models

Who it's for

  • Developers
  • Embedded engineers
  • Mobile app developers
  • Privacy-focused users

Why use whisper.cpp

  • Runs speech recognition entirely on your own device, so audio never has to leave it.
  • A single dependency-free codebase ports to desktop, phone, browser and small boards like Raspberry Pi.
  • Quantization and hardware backends let you trade accuracy for speed and memory on modest machines.
  • Free and MIT licensed, with no per-minute or per-seat fees.
  • A small C API makes it straightforward to wrap in your own application.

whisper.cpp features

  • Plain C/C++ implementation with no dependencies
  • Apple Silicon support through NEON, Accelerate, Metal and Core ML
  • AVX support on x86 and VSX on POWER
  • NVIDIA, Vulkan, AMD ROCm, OpenVINO and Ascend NPU backends
  • Integer quantization of ggml models
  • Mixed F16 and F32 precision
  • Zero memory allocations at runtime
  • C-style API in whisper.h
  • Voice activity detection
  • whisper-cli example for transcribing WAV files
  • Docker image and Conan, npm and Java packaging

whisper.cpp integrations

  • OpenAI Whisper
  • ggml
  • Core ML
  • OpenVINO
  • ffmpeg

How to get started with whisper.cpp

  1. Clone the whisper.cpp repository from GitHub.
  2. Download a Whisper model converted to ggml format, for example with the provided download script for base.en.
  3. Build the project with CMake, adding flags for Core ML, CUDA, Vulkan or another backend if you want acceleration.
  4. Convert your audio to 16-bit WAV with ffmpeg if needed.
  5. Run whisper-cli with the model and audio file, or call the C API from your own program.

whisper.cpp limitations

  • The whisper-cli example currently accepts only 16-bit WAV files, so other formats need ffmpeg conversion
  • You must download and convert Whisper models into ggml format yourself
  • Large model needs about 2.9 GiB of disk and roughly 3.9 GB of memory
  • Core ML use needs a one-time model generation step, and the first run on a device is slow
  • macOS Sonoma or newer is recommended for Core ML to avoid transcription hallucinations

whisper.cpp pricing

whisper.cpp is open source, so you can use and self-host it for free.

Prices can change and may vary by country or exclude tax. Check the official pricing page.

whisper.cpp alternatives

The main whisper.cpp alternatives listed on Debuly are whisper-ctranslate2, WhisperX, Deepgram, CAMB.AI, Cartesia and ElevenLabs. The table compares pricing and platforms; order is A–Z.

whisper.cpp compared with its alternatives
ToolPricingStarting pricePlatforms
whisper.cppOpen source—macOS, iOS, Android, Linux
CAMB.AIFreemium$5/moWeb, API
CartesiaFreemium$5/moAPI, Web
DeepgramFreemium—API, Web, Self-hosted
ElevenLabsFreemium$6/moWeb, API
whisper-ctranslate2Open source—CLI, Docker
WhisperXOpen source—CLI, Linux, Windows, macOS
  1. CAMB.AI

    AI dubbing, text-to-speech, translation and voice cloning across 140+ languages, with a studio app and developer API.

  2. Cartesia

    Voice AI platform with Sonic text-to-speech, Ink speech-to-text and managed voice agents, priced by credits and minutes.

  3. Deepgram

    Voice AI platform with speech-to-text, text-to-speech and Voice Agent APIs, available as a managed API, in-VPC or self-hosted.

  4. ElevenLabs

    AI audio platform for text to speech, voice cloning, dubbing, transcription, music and conversational voice agents, via app or API.

  5. whisper-ctranslate2

    Command-line Whisper client on CTranslate2 and faster-whisper, compatible with OpenAI's CLI, with diarization and live transcription.

  6. WhisperX

    Open-source speech recognition built on Whisper, adding word-level timestamps, speaker diarization and fast batched transcription.

whisper.cpp FAQ

How much does whisper.cpp cost?

Nothing. It is free and open source under the MIT license, and the repository lists no paid plans. You pay only for your own hardware.

Is whisper.cpp open source?

Yes. The code is MIT licensed on GitHub, and the high-level implementation lives in whisper.h and whisper.cpp, with the rest coming from the ggml machine learning library.

Which platforms does whisper.cpp run on?

macOS on Intel and Arm, iOS, Android, Linux and FreeBSD, Windows with MSVC or MinGW, WebAssembly, Raspberry Pi and Docker. Java bindings are also available.

Does whisper.cpp work offline?

Yes. Inference runs locally, and the project demonstrates the model running fully offline on an iPhone 13. You only need internet once to download a model.

How much memory do the models need?

Disk and memory grow with model size: tiny uses 75 MiB of disk and about 273 MB of memory, base 142 MiB and about 388 MB, small 466 MiB and about 852 MB, medium 1.5 GiB and about 2.1 GB, large 2.9 GiB and about 3.9 GB.

What are alternatives to whisper.cpp?

Alternatives include faster-whisper, whisper-ctranslate2, WhisperX, the original OpenAI Whisper, and hosted APIs such as Deepgram and AssemblyAI.

Sources & verification

Facts on this page come from the official sources below, each with the date we read it. Written by Debuly; the vendor did not review this page.

SourceTypeAccessed
github.com/ggml-org/whisper.cppofficial

Image credits

  • Logo: from avatars.githubusercontent.com · fetched · Vendor trademark, used only to identify the product; removed on request
  • Cover: none collected yet, so a generated tile is shown.

Spot an error? Report an issue with this listing. We also remove a logo or image on the owner's request.