Most viewers watch social video with the sound off, so captions matter. Drop in a video and Whisper writes timed subtitles from its speech; tweak the cues, style them and either download an SRT or VTT file or burn the captions straight into the picture.
Processing locally on your device
Overview
Good subtitles are more than a transcript. Each cue should be short enough to read comfortably, typically no more than two lines of about 42 characters, stay on screen for a sensible time and break at natural pauses. This tool starts from Whisper's word-level timestamps and builds cues to those rules: it starts a new cue at sentence ends, at long pauses, when a cue would exceed your character limit, or when it would stay up longer than the maximum duration you set. Lines are then balanced so the two rows have similar lengths.
Recognition runs locally with OpenAI's Whisper (Apache-2.0) through Transformers.js. The soundtrack is decoded by your browser, resampled to 16 kHz mono and processed in overlapping 30-second windows. Without a WebGPU graphics card, Tiny (41 MB) and Base (77 MB) run on the CPU with 8-bit weights; with WebGPU you can also use Small for better accuracy. Whisper can translate as it goes, so speech in any of its 99 languages can become English subtitles.
Every cue stays editable: change its text, nudge start and end times, split it at the playhead, merge it with the next one or delete it. The preview draws the captions over the video using the same style values that are later sent to libass, the subtitle renderer inside FFmpeg, so what you see is close to what you get. Warnings flag lines over 42 characters, reading speeds above 20 characters per second and overlapping cues.
Downloading SRT or VTT is instant and lets YouTube, Vimeo or any player show captions viewers can switch off. Burning them in re-encodes the video to H.264 MP4 with FFmpeg compiled to WebAssembly (about 31 MB, downloaded once) and is the right choice for Instagram, TikTok and other places that ignore subtitle files. Re-encoding in a browser is slower than desktop software: a minute of 1080p video can take a few minutes on a laptop.
| Use | Characters per line | Lines | Longest cue |
|---|---|---|---|
| Broadcast / YouTube | 42 | 2 | 6 s |
| Vertical social video | 22–30 | 1 | 3 s |
| Courses and talks | 37–42 | 2 | 7 s |
| Children's content | 32 | 2 | 6 s |
Drop in a video file.
Choose the Whisper size and spoken language, and switch on Translate to English if you want English subtitles.
Click Generate subtitles and wait for the transcription.
Adjust characters per line, lines per cue, longest cue and gap, then edit any cue in the list.
Download SRT or VTT, or set a caption style and click Burn into video.
Use cases
Short one-line captions burned into the frame keep vertical videos watchable on mute in feeds that don't support subtitle files.
Upload the SRT or VTT as a caption track so viewers can turn it on or off, and search engines can read what your video says.
Captions help deaf and hard-of-hearing viewers and anyone watching in a noisy place. The editor makes it easy to fix names and terms before publishing.
Turn on translation to produce English subtitles for an interview or vlog recorded in another language.
Pro tips
Answers to common questions about the auto subtitles.
Not usually. YouTube, Vimeo and most players accept SRT or VTT files, and viewers can switch them off. Burn them in for platforms that ignore subtitle files, such as many social media apps.
Whisper can translate speech into English as it transcribes. For other target languages, download the SRT and run it through the Subtitle Translator.
The rules rebuild all cues from the word timings. Set the rules first, then edit individual cues.
It re-encodes every frame in your browser, which is slower than desktop software. Short clips take seconds to a minute; a minute of 1080p can take a few minutes, and long clips automatically use a faster preset.
Yes. Whisper Tiny and Base run on the CPU with WebAssembly. Only the larger Small model requires a WebGPU graphics card.
No. ToolEnhancer processes files on your own device inside the browser. They are never sent to, stored on or seen by our servers.
Yes. The auto subtitles is free to use with no sign-up, no watermarks and no daily limits.