~/whisper-local-scribe browser ai translate audio editor ☕ Support me apps ← about me
██╗ ██╗██╗ ██╗██╗███████╗██████╗ ███████╗██████╗ ██╗ ██████╗ ██████╗ █████╗ ██╗ ███████╗ ██████╗██████╗ ██╗██████╗ ███████╗ ██║ ██║██║ ██║██║██╔════╝██╔══██╗██╔════╝██╔══██╗ ██║ ██╔═══██╗██╔════╝██╔══██╗██║ ██╔════╝██╔════╝██╔══██╗██║██╔══██╗██╔════╝ ██║ █╗ ██║███████║██║███████╗██████╔╝█████╗ ██████╔╝ ██║ ██║ ██║██║ ███████║██║ ███████╗██║ ██████╔╝██║██████╔╝█████╗ ██║███╗██║██╔══██║██║╚════██║██╔═══╝ ██╔══╝ ██╔══██╗ ██║ ██║ ██║██║ ██╔══██║██║ ╚════██║██║ ██╔══██╗██║██╔══██╗██╔══╝ ╚███╔███╔╝██║ ██║██║███████║██║ ███████╗██║ ██║ ███████╗╚██████╔╝╚██████╗██║ ██║███████╗ ███████║╚██████╗██║ ██║██║██████╔╝███████╗ ╚══╝╚══╝ ╚═╝ ╚═╝╚═╝╚══════╝╚═╝ ╚══════╝╚═╝ ╚═╝ ╚══════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝╚══════╝ ╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝╚═════╝ ╚══════╝

Whisper Online — free audio & video to text_

Whisper Local Scribe · Large v3 Turbo · 99 languages · transcribes to the last second · TXT & SRT subtitles · no upload · no sign-up · runs on your GPU via WebGPU
OpenAI Whisper · Transformers.js · ONNX Runtime · your audio never leaves your device
⚠ WebGPU not detected. Your browser doesn't support WebGPU — switch to the WASM tab below for CPU-based transcription, or try Chrome / Edge 113+ on a desktop.
▸ Model not loaded
▸ Audio / Video File
🎙️
Drop audio or video file here
or click to browse · MP3, WAV, OGG, FLAC, M4A, MP4, WEBM · no size limit*
* no length limit — long files are transcribed window by window to the end; very long recordings need enough RAM
▸ Status
Waiting — load a model, then drop a file.
▸ Transcript

Guide — audio, video and songs to text in your own browser

OpenAI Whisper Large v3 Turbo via Transformers.js on WebGPU or WASM. Your audio is never uploaded; TXT and SRT export.
1Choose the engine

Use ⚡ WebGPU to run on your graphics card (Chrome, Edge), or 🧠 WASM for the CPU. Without WebGPU the page switches to WASM and to Whisper Small by itself.

2Load the model

Whisper Large v3 Turbo is selected by default — the most accurate model, about 1.6 GB on WebGPU. Press ⚡ Load model; it downloads once and stays in your browser cache. Small, Base and Tiny are lighter.

3Add your recording

Drop an audio or video file — MP3, WAV, M4A, FLAC, OGG, MP4 or WEBM: a meeting, interview, podcast, voice memo, lecture or song. It is decoded in the browser, not uploaded.

4Set language and timestamps

Pick the spoken language or Auto-detect, and Chunk (SRT), Word-level or None. Press ▶ Transcribe: the text appears window by window until the very end of the file.

5Copy or download

Use 📋 Copy text, ⬇ Download .txt or ⬇ Download .srt subtitles for YouTube, VLC or Premiere. ✕ Cancel stops after the current window and keeps what is done.

Quick reference

MODELSSix Whisper models
best
Large v3 Turbo · 809M · ~1.6 GB GPU / ~1.1 GB CPU
99 languages
Small ~590/250 MB · Base ~210/80 MB · Tiny ~120/40 MB
English only
Base EN · Tiny EN
ENGINEWebGPU or WASM
WebGPU
GPU · fp16 (Turbo) or fp32 encoder + 4-bit decoder
WASM
CPU · 8-bit, works everywhere, slower
long files
30 s windows, each starting where the last full sentence ended
NETWORKWhat is downloaded
model weights
huggingface.co, once, then cached
Transformers.js
cdn.jsdelivr.net
your audio
never uploaded

Free speech-to-text with Whisper, explained

Whisper Local Scribe is a free audio to text converter that runs OpenAI's Whisper speech recognition inside your browser. Drop an MP3, WAV, M4A or MP4 and get a transcript, word-level timestamps or an SRT subtitle file — no sign-up, no upload, no minute limits and no API key. It is a private alternative to online transcription services for meetings, interviews, podcasts, lectures, voice memos, YouTube videos and song lyrics.

Does my audio get uploaded anywhere?

No. Transcription runs entirely in your browser. The page does download code and models: the Transformers.js library from the jsDelivr CDN and the Whisper model weights from the Hugging Face Hub (huggingface.co), once, after which they are cached locally. All speech recognition then happens on your own CPU or GPU. Your audio, the transcript and the file name are never sent anywhere — you could disconnect from the internet after the model has loaded and keep transcribing.

Which Whisper model should I pick?

Whisper Large v3 Turbo (default) is the most accurate model in the list. It keeps the encoder of Whisper large-v3 and uses a 4-layer decoder instead of 32, so it has 809 million parameters and is much faster than large-v3 while scoring close to it. On WebGPU it downloads about 1.6 GB (fp16 encoder plus 4-bit decoder; about 760 MB with a 4-bit encoder if your GPU has no fp16 support) and needs roughly 2–3 GB of graphics memory. It is the one to use for difficult audio: accents, background noise, several speakers, music and non-English speech.

Whisper Small (244M) is the best choice without WebGPU: about 250 MB on the CPU. Base (74M) and Tiny (39M) are fast drafts; the EN versions are English only and a little better at English than their multilingual twins.

ModelParametersWebGPU downloadWASM downloadLanguages
Large v3 Turbo809M~1.6 GB~1.1 GB99
Small244M~590 MB~250 MB99
Base / Base EN74M~210 MB~80 MB99 / English
Tiny / Tiny EN39M~120 MB~40 MB99 / English

How do I transcribe a song or long recording to the end?

Whisper listens to 30 seconds at a time. Long files are processed the same way OpenAI's own long-form transcription works: the page transcribes a 30-second window, keeps the sentences that finished inside it, and starts the next window exactly where the last complete sentence ended. A sentence cut off by the window edge is transcribed again in the next window, so nothing is lost between windows, and the loop only stops at the last second of the file. Instrumental passages and silence simply produce no text, and repeated lines that Whisper sometimes "loops" on are dropped. The status panel shows each window as it is done and the transcript grows live.

For song lyrics, use Large v3 Turbo, set the language of the song instead of Auto-detect, and choose Chunk timestamps. Loud music under the vocals is the hardest case for any speech model, so expect some misheard words.

Video to text and subtitles (SRT)

Video files (MP4, WEBM, and MKV in some browsers) work too: the browser decodes their audio track locally. With Chunk (SRT) timestamps you can download an .srt subtitle file — the most widely used caption format, accepted by YouTube, VLC, Premiere Pro, DaVinci Resolve and almost every video player. Upload it next to your video to get captions without paying a captioning service. Word-level timestamps give one cue per word, handy for karaoke-style captions or editing.

Which languages can it transcribe?

The multilingual models know 99 languages. The menu offers English, French, Dutch, German, Spanish, Portuguese, Italian, Chinese, Japanese, Korean, Arabic, Russian, Turkish, Polish and Ukrainian, plus Auto-detect. Choosing the language yourself is usually more reliable than Auto-detect, especially for short clips and songs. The output is a transcription in the spoken language; for a translation, paste the text into the translator.

What audio formats are supported?

Any format your browser can decode with the Web Audio API, typically MP3, WAV, M4A, AAC, OGG, OPUS and FLAC. Support differs per browser and codec. If a file doesn't load, convert it to WAV or MP3 first with the free Audio Editor.

What is WebGPU and why does it matter?

WebGPU is a browser API that gives JavaScript direct access to your graphics card. Neural networks run several times faster on a GPU than on a CPU, which matters most for Large v3 Turbo. WebGPU is supported in Chrome and Edge 113+ on desktop; Safari and Firefox have started enabling it in recent versions. Without it, the WASM engine runs everywhere on the CPU, just slower.

What is OpenAI Whisper?

Whisper is an open-source speech recognition model released by OpenAI under the MIT license, trained on 680,000 hours of multilingual audio. This tool uses ONNX versions published by the onnx-community on Hugging Face and runs them with Transformers.js, Hugging Face's JavaScript port of the Python transformers library.

How long can my audio file be?

There is no fixed limit and no minute quota. The whole recording is decoded into memory first (one hour of audio is about 230 MB as 16 kHz float32), so very long files need a computer with enough RAM, and the tab must stay open while it works. Speed depends on your hardware: WebGPU is far quicker than the CPU, and on the CPU Turbo is slow — pick Small for long files there.

Why does the first transcription take longer?

The first time you load a model, its weights are downloaded from the Hugging Face Hub and stored in your browser's Cache Storage, so later loads skip the download. WebGPU also compiles its shaders on first use, which adds some warm-up time.

Does it work offline after first load?

Mostly. Once the model is loaded you can disconnect and keep transcribing. Reopening the page while fully offline only works if your browser still has the page and the Transformers.js library in its HTTP cache, because they are not stored for offline use. The model cache persists until you clear your browser data.

More free tools