Skip to content

Generate subtitles automatically

Create timed subtitles for any video with Whisper speech recognition running in your browser — the video never leaves your device.

Drop a video or audio fileMP4, MOV, WebM, MKV, MP3, WAV, M4A… · free up to 10 min
Choose fileProcessed on your device — never uploaded
Runs in your browser · no uploadHow it works

How to use Subtitle generator

  1. 1

    Open your video

    Drop an MP4, MOV, WebM or MKV file (audio files work too). It plays in the preview right away.

  2. 2

    Generate captions

    Choose Tiny, Base or Small, keep auto-detect or name the spoken language, and press Generate subtitles.

  3. 3

    Fix and style

    Correct words, timings and line breaks next to the live preview; pick a caption style if you want them burned in.

  4. 4

    Export

    Download SRT or VTT for upload to YouTube or your editor, or export a new video with the captions in the picture.

Limits and Pro

Files up to 500 MB; the first 10 minutes of each file get subtitles, and burn-in covers the whole video. The Tiny, Base and Small speech models are one-time downloads of 43, 80 and 252 MB.

Files up to 4 GB with up to 600 minutes subtitled per file. See Pro

About Subtitle generator

Subtitle generator turns the speech in a video or audio file into timed captions. A Whisper model (Tiny, Base or Small) runs on your own processor or graphics card, listens to the soundtrack in 30-second windows and writes every word with its timestamp. The words are then grouped into readable caption lines: breaks fall at pauses and punctuation, each line stays under your character limit (42 by default, the Netflix guideline), and by default no caption stays on screen longer than seven seconds.

The editor sits next to a preview that draws the captions exactly as they will be exported. Click a line to jump to it, fix misheard names, nudge start and end times by a tenth of a second, split or merge lines, shift every timing at once to fix a sync offset, and undo any change.

Exports are standard SubRip (.srt), WebVTT (.vtt) or plain text, ready for YouTube Studio, Vimeo, Premiere Pro, DaVinci Resolve, CapCut or VLC. You can also burn the captions into the picture with your own size, colour, background box or outline and position; the video is re-encoded (WebM and MKV become WebM, other formats MP4 with H.264) while the original audio is kept. Speaker names, karaoke-style word animation and translation into languages other than English are not supported.

Privacy

Your video is read from your disk by this page and never uploaded. The audio track is decoded in memory, the Whisper model runs in a background worker on your device, and the burned-in video is assembled locally. The only downloads are the model files from Hugging Face and the media engine from jsDelivr, both cached after the first use.

Features

Private, on-device AI

Speech recognition runs locally with Whisper via WebAssembly or WebGPU. Your video never leaves your computer.

99 languages + translation

Detects the spoken language automatically and can translate speech from any supported language into English subtitles.

Real subtitle editor

Edit text and timings, split and merge lines, shift all timings, follow playback, with undo and redo.

Readable line breaks

Lines are split at natural pauses and punctuation, with your choice of characters per line and one or two lines.

Burn-in captions

Hard-code subtitles into the video with your font size, color, background box or outline and position.

Import existing SRT

Already have subtitles? Import an SRT or VTT file to fix it or burn it into your video.

Subtitle generator: frequently asked questions

How do I add the SRT file to a YouTube video?
Open YouTube Studio, select the video and choose Subtitles in the left menu. Pick the language, click Add next to it, then Upload file and With timing, and select the .srt you downloaded. YouTube shows the captions immediately; you can still fine-tune individual lines in its editor afterwards.
What is the difference between SRT subtitles and burned-in captions?
An SRT or VTT file is uploaded next to the video, and viewers can switch it off or pick a language. Burned-in captions are drawn into every frame, so they appear in apps that ignore subtitle files, such as Instagram Reels, TikTok or WhatsApp, but they can never be hidden or edited later.
Can it make English subtitles for a video in another language?
Yes. Turn on Translate to English before generating: Whisper listens to speech in any of its 99 languages and writes English captions directly. Timing is per phrase rather than per word in this mode. Translation into languages other than English is not something the model can do.
Why are some words or names wrong?
Speech recognition guesses unusual names, brand terms and mumbled or overlapping speech. The Small model makes noticeably fewer mistakes than Tiny, and naming the spoken language instead of auto-detect helps on short clips. Since every caption line is editable, correct the few errors before you export.
Which video formats can I burn subtitles into?
Any video the page can open: MP4, MOV, WebM, MKV, AVI and most phone recordings. WebM and MKV files are exported as WebM with VP9; everything else becomes an MP4 with H.264 video and the original or AAC audio. Hardware encoding is used where the browser offers it, with a slower built-in engine otherwise.