Skip to main content

Auto Subtitle Generator

Generate subtitles for any video automatically and free — in your browser, with no upload and no account. A small Whisper speech-recognition model downloads once, then the whole pipeline runs offline in this tab: the audio track is extracted, transcribed with timestamps, and you edit every line before exporting SRT or VTT subtitles.

Local-only

Heads up: generating subtitles runs a neural network right in your browser. On modest devices, longer videos take a while and your machine may warm up — shorter clips finish much faster.

Drop a video file

or drop anywhere on this page · Choose a file · 100 MB

Accepted: MP4, M4V, MOV, WebM, MKV, AVI, WMV, ASF, FLV, 3GP, 3G2, MPG, MPEG, M2V, VOB, TS, M2TS, MTS, OGV, MXF, DV, F4V, RM, RMVB, DIVX

The speech model downloads once (~40 MB for Tiny), then everything — audio extraction, transcription, export — runs offline in this tab. Your video never leaves this device.

How does Auto Subtitle Generator work?

The engine is Whisper, the open speech-recognition model whose tiny and base variants are small enough to run on a laptop CPU. It was trained on 680,000 hours of labelled audio, which is why it handles accents, background noise and domain jargon far better than the phoneme-based recognisers of a decade ago. This page runs the model with onnxruntime WebAssembly, entirely in your tab.

Where the audio comes from

Your video file is decoded with the Web Audio API and only its audio track is kept, resampled to exactly 16 kHz mono — the format Whisper was trained on. The video pictures are never processed; they stay on screen purely as a reference while you review the subtitles. MP4 (H.264), WebM, MOV and MKV all work as long as your browser can play them.

Chunking long videos

Whisper consumes 30-second windows, so a long video is sliced into overlapping 30-second chunks with 5 seconds of overlap. Each chunk is transcribed with timestamps, then the overlap region is assigned to the earlier chunk — words at the boundary are kept once, never doubled. The progress bar tracks this chunk by chunk, so a 15-minute video visibly advances instead of hanging.

Editing before export

Every segment is editable: the text, the start time and the end time. Click a timestamp to jump the video player straight to that line and check it against what you hear. SRT and VTT files are generated from your edited segments, not the raw model output, so what you download is exactly what you approved.

What it cannot do

The tiny model (~40 MB) is fast — roughly real-time on a modern laptop — but it stumbles on heavy accents, crosstalk and technical vocabulary; the base model (~80 MB) is noticeably more accurate at the cost of a longer download and slower transcription. Neither diarises speakers: overlapping voices come out as one stream, and the page does not claim to tell your speakers apart.

Example input

tutorial.mp4 — 8 minutes, one presenter

Example output

Timestamped subtitles: “0:04 Welcome back to the channel…” → export as .srt

What options and edge cases does Auto Subtitle Generator support?

Options
ParameterTypeDefaultBehaviour & edge cases
ModelTiny / BaseTinyTiny (~40 MB) generates subtitles fast and is fine for clear speech. Base (~80 MB) is more accurate on accents, noise and jargon, but downloads and runs slower.
Language14 optionsAuto-detectWhisper detects the language itself; picking it explicitly is slightly faster and more accurate for short clips.
Inputvideo/*—MP4, WebM, MOV, MKV and anything else your browser plays. Only the audio track is processed. Capped at 250 MB and 20 minutes so the tab stays responsive.
Editingtext + timestamps—Every segment's text, start and end time is editable. Click a timestamp to jump the video player there and verify.
ExportsSRT / VTT—SubRip subtitles and WebVTT subtitles — generated from your edited segments, ready to upload to YouTube, VLC or any player.

Frequently asked questions

Is my video uploaded anywhere?

No. The only network request this page makes is downloading the Whisper model (~40 MB for tiny, ~80 MB for base) from this site, once — after that it works fully offline. Audio extraction, transcription and export all run in this tab. Your video never leaves this device.

Which subtitle format should I download — SRT or VTT?

SRT (SubRip) is the universal choice: YouTube, VLC, Plex and virtually every video player and editor reads it. VTT (WebVTT) is the web-native format, used for <track> elements in HTML5 video. Both carry the same timestamps and the text you edited.

How accurate are the generated subtitles?

On clear speech, Whisper is remarkably good — comparable to paid services. It degrades with heavy accents, overlapping speakers, music and very noisy audio. That is why every line is editable and every timestamp is clickable: jump the video to any doubtful line and fix it in seconds.

Can I adjust the timing of a subtitle?

Yes. Each segment shows editable start and end times in seconds, alongside the text. Nudge them to match cuts or pauses, delete lines you don't want, and the SRT/VTT export reflects exactly what you see.

What video formats are supported?

Anything your browser can play: MP4 (H.264), WebM, MOV and MKV. Only the audio track is decoded and processed. Videos are capped at 250 MB and 20 minutes so the tab stays responsive.

Does it work offline?

After the first run, yes. The speech model downloads once and is cached by the browser; from then on the whole pipeline — audio extraction, transcription and subtitle export — works with no network at all.