Repos / whisper.cpp
Local and privatewhisper.cpp
For anyone who wants to transcribe audio without sending it to any service and is not afraid of building a project from the terminal.
What it does.
- transcribe audio to text with the Whisper model on your own machine
- run on CPU only or accelerate with Metal, NVIDIA, Vulkan, ROCm and other options
- use quantized models to save memory and disk
- detect speech with VAD and use it from a C API
Systems: macOS (Intel and Arm), iOS, Android, Linux, FreeBSD, Windows (MSVC and MinGW), WebAssembly, Raspberry Pi and Docker.
What you need.
- RAM, smallest model: 273 MB Depends on the model Tiny model (~273 MB), the smallest. source for this requirement (opens in a new tab)
- RAM, another documented figure: 388 MB Depends on the model Base model (~388 MB). source for this requirement (opens in a new tab)
- RAM, another documented figure: 852 MB Depends on the model Small model (~852 MB). source for this requirement (opens in a new tab)
- RAM, another documented figure: 2.1 GB Depends on the model Medium model (~2.1 GB). source for this requirement (opens in a new tab)
- RAM, largest model: 3.9 GB Depends on the model Large model (~3.9 GB), the biggest: it transcribes best. source for this requirement (opens in a new tab)
- Disk, smallest model: 75 MB Depends on the model Tiny model: 75 MiB. source for this requirement (opens in a new tab)
- Disk, another documented figure: 142 MB Depends on the model Base model: 142 MiB. source for this requirement (opens in a new tab)
- Disk, another documented figure: 466 MB Depends on the model Small model: 466 MiB. source for this requirement (opens in a new tab)
- Disk, another documented figure: 1.5 GB Depends on the model Medium model: 1.5 GiB. source for this requirement (opens in a new tab)
- Disk, largest model: 2.9 GB Depends on the model Large model: 2.9 GiB. source for this requirement (opens in a new tab)
- CMake and a C/C++ compiler (the README builds with cmake). source for this requirement (opens in a new tab)
- 16-bit WAV audio; the README uses ffmpeg to convert it. source for this requirement (opens in a new tab)
Check whether your machine can handle it. It adds up its RAM, CPU and disk together with other repos.
How to install.
Clone the repo and enter it:
git clone https://github.com/ggml-org/whisper.cpp.git && cd whisper.cppDownload a model in ggml format, for example base.en:
sh ./models/download-ggml-model.sh base.enBuild:
cmake -B build && cmake --build build -j --config ReleaseTranscribe the sample audio:
./build/bin/whisper-cli -f samples/jfk.wav
Commands taken from the official documentation. Read them before you run them: it is your machine.
Permissions and data.
- It asks for no special permissions: it is a terminal program that reads the audio you point it to.
- The download-ggml-model.sh script downloads the model you choose; you do need a connection once for that.
Limits and warnings.
- whisper-cli only reads 16-bit WAV: convert first with ffmpeg (the README gives the command).
- It is a C/C++ project with terminal examples, not an app with a ready-to-use interface.
- The bigger the model, the more RAM and disk it needs (table above).
- Speed depends on your hardware and the acceleration you build; the README promises no general figure.
Real cost and cloud.
- Free and open source; the cost is the machine where you run it.
- Local: the README describes it as dependency-free inference, with a CPU-only mode and a fully offline example on an iPhone.
- It is a reimplementation of OpenAI's Whisper model; also check the terms of the model you download.
License.
MIT Permissive open source
MIT: permissive license. You can use, modify and redistribute it, including in commercial products, as long as you keep the copyright notice.
This is a summary to orient you, not legal advice. For commercial use, read the original LICENSE file.
Where all of this comes from.
Checked against the official documentation on October 29, 2026; this is not a lab test. Nothing was installed or measured to write this guide. If something has changed, the project's documentation is the authority.