Tools

Audio Transcriber

Drop an audio or video file and get a text transcript — FFmpeg decodes it and OpenAI's Whisper model transcribes it, entirely in your browser.

About Audio Transcriber

Audio Transcriber turns speech in an audio or video file into text without uploading anything. It combines two WebAssembly technologies that run locally on your device: FFmpeg decodes the file — any common audio or video container — and resamples it to the 16 kHz mono audio that speech models expect, and OpenAI's Whisper model (running through the transformers.js ONNX runtime) transcribes that audio to text. Pick the Tiny, Base or Small model to trade speed for accuracy; the model downloads once and is then cached by your browser. Because everything happens client-side, the file and the transcript never leave your device. Note that faster-whisper itself cannot run in the browser — it depends on the native CTranslate2 library — so this tool uses whisper.cpp/transformers.js, the WebAssembly-compatible equivalents.

How to use Audio Transcriber

  1. Choose a Whisper model — Tiny is fastest, Small is most accurate.
  2. Pick an audio or video file (or record one and drop it in).
  3. FFmpeg (WebAssembly) decodes and resamples the audio in your browser.
  4. Whisper transcribes it to text — copy the transcript when it is done.

Frequently asked questions

Can FFmpeg and Whisper really run in the browser?
Yes. FFmpeg is compiled to WebAssembly (ffmpeg.wasm) and Whisper runs through transformers.js on the ONNX WebAssembly/WebGPU runtime, so both execute entirely on your device with no server.
Can I use faster-whisper with WebAssembly?
Not directly. faster-whisper is a Python library built on the native CTranslate2 engine, which has no WebAssembly build, so it cannot run in a browser. This tool uses whisper.cpp/transformers.js instead — the WebAssembly-compatible Whisper implementations that give similar results client-side.
Is my audio uploaded anywhere?
No. The file is decoded and transcribed locally in your browser. Neither the audio nor the transcript is ever sent to a server.
Which model should I choose?
Tiny (~40 MB) is fastest and good for quick drafts; Base (~80 MB) is a balanced default; Small (~250 MB) is the most accurate but slowest. Each model downloads once and is then cached.
What audio and video formats are supported?
FFmpeg handles most common formats — MP3, WAV, M4A, AAC, OGG, FLAC, MP4, MOV, WebM and more. It extracts and resamples the audio track automatically before transcription.
Why is the first run slow?
The first run downloads the FFmpeg WebAssembly core and the selected Whisper model. To make this feel instant, the tool quietly preloads both in the background as soon as the page opens and uses compact 4-bit model weights, and your browser caches them — so by the time you pick a file the model is usually already 'ready', and repeat visits start immediately.
Does transcription happen offline?
Once the FFmpeg core and the Whisper model have been downloaded and cached, transcription itself runs offline — the audio never needs a network connection.
Can it make the transcript more readable?
Yes. The transcript is automatically split into paragraphs using the pauses in the audio, and on browsers with WebGPU you can click 'Polish with AI' to run a small on-device language model that fixes punctuation, removes filler words and improves the paragraphing — still entirely in your browser, with nothing uploaded.
Can I click a sentence to jump to that point in the video?
Yes. The transcript is interactive: each sentence is timed, so clicking it seeks the built-in player to that moment — and for video files it shows the frame. The sentence currently being spoken is highlighted as the media plays. Timings are approximate to within about half a second, and playback needs a format your browser can play natively.