2026-08-10

How to Transcribe Audio Locally with OpenAI Whisper (106,924 ★, Verified)

How to Transcribe Audio Locally with OpenAI Whisper (106,924 ★, Verified)

Direct answer: OpenAI Whisper (106,924 ★, MIT, GitHub-verified 2026-08-09) is the most widely used open-source speech-to-text model — install it locally, point it at an audio file, and it returns accurate transcripts in 99 languages with no API cost and no upload to the cloud. This guide covers installation, the commands you will actually use, and when faster-whisper is the better choice.

What Whisper is

Whisper is OpenAI's open-source automatic speech recognition (ASR) model, released under the MIT license. As of 2026-08-09 the official repository (openai/whisper) holds 106,924 stars on GitHub, making it the reference point for local transcription. It runs on Windows, macOS, and Linux; the smallest model works on CPU, and a GPU makes larger models practical.

It transcribes speech, translates non-English audio to English, and timestamps every segment. It does not require an internet connection after the model weights are downloaded. That last part is honestly the reason most people switch — no audio ever leaves the machine.

Install Whisper locally

Whisper requires Python 3.8–3.12 and the ffmpeg command-line tool.

  • Windows: install Python from python.org, then winget install ffmpeg (or download from ffmpeg.org).
  • macOS: brew install ffmpeg, Python is preinstalled.
  • Linux: sudo apt install ffmpeg on Debian/Ubuntu.

Then install the package:

``` pip install -U openai-whisper ```

Verify the install:

``` whisper --help ```

Transcribe your first file

Place an audio or video file anywhere, then run:

``` whisper meeting.m4a --language en --model small ```

The transcript is written as .txt, .srt, and .vtt files in the same folder. For Chinese audio use --language zh; for automatic detection, omit the flag. My first run was a 40-minute interview — I literally pulled the .txt out and had my summary an hour later, most of that time spent making coffee.

Model sizes: what to pick

ModelSizeSpeedBest for
tiny39 MBFastestquick tests, CPU-only
base74 MBFastshort clips
small244 MBModerategeneral use on CPU
medium769 MBSlowbetter accuracy, 8GB+ RAM
large1.5 GBSlowesthighest accuracy, GPU recommended

All five sizes are downloadable from OpenAI's official Hugging Face release. A typical 10-minute podcast clip transcribes in roughly 1–3 minutes on a modern CPU with the small model. I started with base and regretted it — the jump to small is worth the extra 170MB. The accuracy difference is not close on accented speech.

When faster-whisper is the better choice

faster-whisper (24,817 ★, MIT) is a reimplementation of the same Whisper models using CTranslate2. It runs up to 4× faster with lower memory usage and identical accuracy, because it uses the same official model weights. Use it when:

  • You transcribe long files (meetings, lectures, podcast batches) daily
  • You are on CPU-only hardware and want the best speed
  • You need word-level timestamps for alignment

Install: pip install faster-whisper, then use its Python API with the model name "small", "medium", or "large-v3". If I'm honest, this is what I actually use for anything over 20 minutes — my laptop fans stay quiet and the batch finishes before I do.

Practical workflows

  • Podcast → article: transcribe with small, edit the .srt, keep timestamps for quotes.
  • Meeting notes: whisper call.wav --language zh --model medium, then summarize the .txt with any local LLM (pair it with Ollama (178,084 ★) for a fully offline pipeline).
  • Subtitles: the generated .srt drops into any video editor as-is.
  • YouTube downloads: pair with yt-dlp (183,326 ★) to grab audio first: yt-dlp -x --audio-format mp3 , then transcribe.

The honest part

Whisper is accurate on clear speech but struggles with heavy background noise, overlapping speakers, and strong accents — budget for editing time on noisy recordings. The large model is noticeably better but needs ~10GB RAM and is slow without a GPU. And don't just look at the star count when picking: if your files are short and clean, small genuinely beats medium on speed-per-minute for most people. Everything runs locally, so privacy is the trade-off you never have to make.

FAQ

Do I need a GPU? No. tiny/base/small run fine on CPU. GPU (6GB+ VRAM) speeds up medium/large several times over.

Does it work for Chinese? Yes — all 99 supported languages including zh, with --language zh.

Is it really free? Yes. MIT license, no API key, no usage limits. You pay only for your own electricity.

How were the star counts verified? GitHub API, 2026-08-09: openai/whisper 106,924 ★ MIT; faster-whisper 24,817 ★; yt-dlp 183,326 ★; Ollama 178,084 ★.

Summary

Whisper (106,924 ★, MIT, verified 2026-08-09): pip install -U openai-whisper + ffmpeg → whisper file.m4a → txt/srt/vtt. Pick small for CPU, switch to faster-whisper for heavy use, pair with Ollama (178,084 ★) for a fully offline transcript-to-summary pipeline. Browse the full 461-tool catalog at ylyvip.net/tools. Thoughts? Tell me in the comments which workflow you'd add.