Who it is forA journalist or podcaster with hours of interviews who cannot upload the audio anywhere.
The problemCloud transcription costs money per minute and means handing private recordings to a third party.
The outcomeA local transcript of each recording, produced entirely on your own hardware.
What you need first
- A C/C++ toolchain and CMake to build from source
- ffmpeg to convert audio to 16-bit WAV, since whisper-cli reads 16-bit WAV files
- Disk and RAM for the model you pick: about 142 MiB and 388 MB for base, up to 2.9 GiB and 3.9 GB for large
- Optional: Xcode command line tools and Python 3.11 for Core ML on Apple Silicon
Steps
- Run
git clone https://github.com/ggml-org/whisper.cpp.gitand cd into the folder - Download a model with
sh ./models/download-ggml-model.sh base.en - Build the tool: run
cmake -B buildand thencmake --build build -j --config Release - Convert your recording to 16-bit WAV with
ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le output.wav - Transcribe it with
./build/bin/whisper-cli -f samples/jfk.wav, swapping in your own file, and check./build/bin/whisper-cli -hfor output options
Prompt for your agent
Clone ggml-org/whisper.cpp, build whisper-cli with CMake, download the base.en model, convert every MP3 in <folder> to 16 kHz mono WAV with ffmpeg and transcribe each one. Save one text file per recording next to the audio.
Caveat. whisper-cli only reads 16-bit WAV, so every other format needs an ffmpeg conversion first, and larger models need several GB of RAM.
Use this in your AI agent
Ask your agent
Using the Deduped MCP, get the setup steps for ggml-org/whisper.cpp and "Transcribe audio files offline on your own machine"
Add Deduped to Claude Code once
claude mcp add --transport http deduped https://dedupedai.com/mcp
Every Monday: the 5 hottest repos and exactly how to use them. Free, one email a week, unsubscribe anytime.
Get them freeShare: X LinkedIn Hacker News Email Copy link
Third-party repos we don't own. AI-written use cases can be wrong. Disclaimer