Auto Caption Video
Turn the speech in a video into editable captions on your device, then download SRT or VTT subtitles, burn them into the picture or add a subtitle track, without uploading the video.
Choose a video or audio file
or drop it here
The video is processed on this device and never uploaded.
MP4, MOV, WebM, MKV, AVI, WMV, FLV, 3GP, TS / MTS / M2TS or VOB / MPGAudio: WAV, MP3, M4A, FLAC or OGG
Files over 1 GB can be slow. Very large outputs need a browser that can save straight to a file.
How it works
Choose a video and press Transcribe. The page reads the sound track, finds the parts with speech and runs OpenAI’s Whisper speech recognition model on them in your browser. Each word gets a time, and the words are grouped into captions of one or two short lines.
The model files download once, from this site. Whisper tiny is 44 MB, base 80 MB and small 252 MB when the model runs on the processor (WebAssembly), or 122, 209 and 589 MB on the graphics card (WebGPU), plus 29 MB for the speech engine. Your browser keeps them, so later transcriptions work offline. The video and the transcript never leave your device.
Read the captions and fix anything the model misheard; changing the words keeps their timing. Then download an SRT or VTT subtitle file, burn the captions into the picture so they always show, or add a WebVTT subtitle track that viewers can switch on and off. Burning in re-encodes the video. The subtitle track copies the video and audio without re-encoding when the format allows it.
With WebGPU the model runs on the graphics card and is several times faster; otherwise it runs on the processor.
Supported files
- Inputs
- MP4, MOV, M4V, WebM and MKV. Transcription also works for AVI, WMV, FLV and MPEG files, for audio files (WAV, MP3, M4A, FLAC, OGG) and for audio the browser cannot decode itself (WMA, Apple Lossless, AMR, Dolby TrueHD and others): the FFmpeg engine, downloaded once from this site, decodes the audio on your device first.
- Outputs
- SRT and WebVTT subtitle files; MP4 (H.264) or WebM (VP9) with burned-in captions; MP4, WebM or MKV with a WebVTT subtitle track.
Limitations
- Accuracy depends on the recording. Clear speech close to the microphone works best; music, crosstalk, strong accents and noise cause mistakes. Read the captions before you publish them.
- Whisper understands about 100 languages, but quality varies widely. English, Spanish, French, German, Italian, Portuguese and Japanese are the strongest. Automatic detection uses the first speech in the video.
- The first transcription downloads the model: 44 to 589 MB, depending on the model and on whether the browser has WebGPU. Small is offered only where this site hosts it.
- Speakers are not labelled, and sounds or music are not described.
- Long videos take time. On a typical laptop without WebGPU, the base model needs roughly as long as the speech itself.
- Browsers without WebCodecs audio decoding, such as Firefox for Android, decode the audio with the FFmpeg engine first, which is slower and needs one online visit to download it.
- Burning captions in or adding a subtitle track to WMV, MPEG-2 (VOB) or MPEG-4 Part 2 video, which browsers cannot decode, first decodes the video into an intermediate copy with the FFmpeg engine, which takes longer. Audio files get SRT and VTT captions only.
- Burning captions in re-encodes the video. Web browsers do not show a WebVTT track stored inside a file, many players and editors ignore it, and MOV files cannot carry one, so they are saved as MP4.
Questions
Is my video or transcript uploaded?
How large is the model download?
Which model should I choose?
Should I use SRT, VTT, burned-in captions or a subtitle track?
Can I edit the timing?
Example
A two-minute interview recorded on a phone: choose it, keep the base model and automatic language, and press Transcribe. After the model has downloaded once, the captions appear in about a minute; fix the names it misheard, then press Burn captions into video to get an MP4 for social media, or Download SRT to upload with the original.