Open the appExtract Text from Audio Files

You need to turn a meeting recording into text, and there’s no good way to do it.
Online services ask you to upload the whole recording.
Which means first deciding whether the contents may leave the building at all. With an interview or a counselling session it’s worse.

This tool runs the Whisper model right inside your browser.
Download the model once and every calculation after that happens on your own machine.
The audio never leaves the page. No server upload, no API key, no sign-up.

How to Use

  1. Upload an audio file: click the drop zone or drag and drop. Any format the browser can decode is supported — mp3, wav, m4a, ogg, webm, flac, aac, mp4, etc.
  2. Pick a language: auto-detect / Korean / English / Japanese / Chinese / Spanish / French / German. Explicitly setting a known language is more accurate than auto-detect.
  3. Pick a model: base · small · medium (see the table below).
  4. Show timestamps (optional): when on, output is split into [00:00 → 00:05] text segments.
  5. Click Extract Text. An overlay shows progress.
  6. When done, use the Copy or Download (.txt) buttons at the top right.

Model comparison

ModelDownload sizeAccuracyProcessing time (60s audio)When to use
whisper-base~78 MBFairWebGPU ~4s · WASM ~20sEveryday transcription, fast turnaround
whisper-small~244 MBGoodWebGPU ~11s · WASM ~55sMost real-world use including Korean. Recommended
whisper-medium~300 MB (q4)Very goodWebGPU ~35s · WASM effectively N/AAccuracy first, willing to wait
  • Each model is downloaded once and cached by the browser for instant loading on subsequent visits.
  • Switching models requires downloading/loading the new one. Each model is cached separately, so already-downloaded models are never re-fetched.

Execution backend (WebGPU / WASM)

The bottom of the options panel shows the current backend.

  • ⚡ WebGPU acceleration is available: recent Chrome / Edge / Safari with GPU → fast.
  • ⏳ Running in WASM mode: browsers without WebGPU or on older hardware. Works, but 5–10× slower.

Note: whisper-medium uses q4-quantized files from the repository to fit within browser memory. On environments without WebGPU it’s effectively unusable.

Progress overlay

A translucent card appears throughout processing.

  • Audio decoding: file is resampled to 16 kHz mono. Usually 1–3 seconds.
  • Model preparation: encoder / decoder / tokenizer etc. shown as separate lines with individual %. Download percentages appear only on the first run; cached models load almost instantly on subsequent runs.
  • Transcribing: an “about N min left” estimate refreshes every 10 seconds, computed from audio duration and model. It’s an RTF (real-time factor) based estimate — expect ±50% error.

The X button in the top-right of the card cancels at any time. Cancelled downloads remain in the browser cache for reuse next time.

Quality and Safety Nets

Result auto-save (safety net)

Completed transcripts are automatically saved to browser localStorage. If you accidentally refresh or close the tab, reopening the page restores the previous result with a “Restored previous result (saved …)” toast. Only the most recent transcript is kept — a new completion overwrites the previous one.

Repetition-loop prevention

Whisper has one chronic ailment.
Hit a silent or noisy stretch and it starts repeating the same word dozens of times.
You’ve probably seen “thank you thank you thank you…” fill the screen. This tool sets no_repeat_ngram_size=3 and greedy decoding (temperature=0) to block any 3-gram from repeating consecutively.

Supported audio formats

Anything the browser’s AudioContext can decode.

  • Common: mp3, wav, m4a, ogg, opus, webm, flac, aac
  • Containers: audio tracks in mp4 files are extracted
  • Stereo / multi-channel is automatically downmixed to mono
  • Any input sample rate is automatically resampled to 16 kHz

Good to Know

Privacy

  • Fully client-side: audio, intermediate tensors and the final transcript are never sent to any server.
  • Model files are fetched from the Hugging Face CDN on the first run only, then stored in the browser’s Cache Storage.
  • Result storage uses only localStorage on this site’s origin.

Notes and caveats

  • First run takes time because the model has to download (~80 MB for base, ~300 MB for medium). Expect tens of seconds to a few minutes depending on network speed.
  • Long audio takes long. A 30-minute lecture with medium takes roughly 15 minutes in practice.
  • Mobile browsers may fail with small or larger models due to memory limits — base is recommended on mobile.
  • Auto-detect may misidentify very short clips (< 5 s). Set the language explicitly if you know it.
  • Because everything runs locally, processing time varies significantly with device performance even for the same file.

Internationalization

The whole page supports Korean / English; toggle KO/EN in the top-left to switch instantly.

Open the appExtract Text from Audio Files