whisper.cpp CLI
whisper.cpp is an audio CLI without a Python environment, compiled for a selected processor or hardware accelerator.
- 54,957 ★ on the repository
- Last commit
- MIT
Extended access
Why this level
- The build invokes project tooling; the CLI reads audio files and writes local results.
Install
Manual install
git clone https://github.com/ggml-org/whisper.cpp.git
cd whisper.cppFirst Quick start steps. Download a model and build the CLI next.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The build invokes project tooling; the CLI reads audio files and writes local results.
This is third-party code. Review the repository files before installing.
What it does
whisper.cpp is a CLI for Whisper speech recognition through a C and C++ implementation. Users build `whisper-cli`, download a ggml-format model and supply an audio file. Transcription can run on CPU alone or with a supported accelerator. Integer quantization reduces model size by storing numbers more compactly. The project includes build options for Metal, CUDA, Vulkan and other devices. Compared with the reference Python CLI, users choose a compiled executable and hardware configuration and obtain models in this project’s format.
Who it is for. Local speech-tool developers matching a compiled runtime and model to specific hardware.
Good fit when
- A developer tests CPU transcription on a machine without a GPU.
- A Mac owner builds for Apple Silicon acceleration.
- A team reduces model size through quantization.
- Audio must be handled by a local executable without the Whisper Python environment.
Not a fit when
- A user expects reference Python weights to work without ggml preparation.
- A team passes MP3 directly to the Quick start CLI without conversion.
- An administrator expects one accelerator build to work on every GPU without configuration.
Example request
Build whisper.cpp for this computer and transcribe a test WAV locally, showing the model and build options first.Limitations
Initial setup requires a CMake build and a separate ggml-format model. The README’s `whisper-cli` example accepts 16-bit WAV input; other audio needs conversion, for example with ffmpeg. Accelerator support depends on build flags and platform dependencies, so merely having a GPU does not enable a suitable backend. Model file size and working memory increase with model class; consult the README table when selecting a size for the target machine.
How to disable. Stop `whisper-cli` and remove its invocations from scripts. Models, source WAV files and transcripts remain in their directories.
FAQ
How does setup start?
Quick start begins with `git clone https://github.com/ggml-org/whisper.cpp.git`, then `cd whisper.cpp`. Download a model separately before the sample run.
How do I get the sample model?
From the project directory run `sh ./models/download-ggml-model.sh base.en`. This downloads an English-only model; select a multilingual variant from the README for other languages.
How do I build the executable?
Use `cmake -B build`, then `cmake --build build -j --config Release`. The sample invocation is `./build/bin/whisper-cli -f samples/jfk.wav`.
How do I prepare MP3 input?
The README gives `ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le output.wav`. Replace filenames and pass the resulting WAV to the CLI.
How does it differ from Python Whisper?
This project compiles a C/C++ implementation and uses prepared ggml models. Choose it to manage the build and acceleration; use openai-whisper for a Python-package workflow.
Discussion
No questions or reviews yet.
Related
CLI toolsWhisper is a CLI for audio transcription, with model sizes for different hardware and output in the original spoken language.
Piper is a CLI for local text-to-speech, with downloadable voices, WAV output and options for your own speech applications.
Local speech synthesis for agents: a command and a skill voice text, clone a voice from a recording and render scores to audio, with no cloud
A local MCP server for voice work on macOS: voice cloning, speech synthesis and audiobooks from PDF on an agent's command
A skill and scripts for transcribing audio through Yandex SpeechKit: audio preparation, Object Storage upload and asynchronous v3 recognition
Claude Video Vision
claude-video-vision
An MCP server and Claude Code plugin that let the agent watch video: frames via ffmpeg and audio transcription via Gemini, local Whisper or OpenAI
README in short
Quick start combines checkout, model download and compilation. Separate sections cover accelerators, quantization and voice activity detection. Demo applications and a library API accompany the CLI.