Back to Free Tools
FREE TOOLS
Burn Subtitles into Video
Burn timed SRT or WebVTT captions into a video locally.
MP4, MOV, WebM, Matroska, UTF-8 SRT, UTF-8 WebVTT
WebM (VP8/Opus), MP4 (AVC/AAC)
Browser only
Runs locally in your browser. Your files, pasted content and generated output are not uploaded. Reset clears this tool’s working data.
This tool needs JavaScript. If it does not load, refresh the page and try again.
How to use this tool
- Choose one local video and a UTF-8 SRT or WebVTT caption file.
- Set caption size and margin so the text fits the video. Choose WebM or MP4 output.
- Process video, review the reported cue count and any clipped or omitted times, then download the video. Captions become permanent pixels; the original soundtrack is retained.
Examples
A caption from 00:00:00,250 to 00:00:00,750 appears for exactly that half-second, even if the source frame holds across the cue boundary.
Limitations
- 128 MiB total local input/output; 5 minutes output; 8 megapixels/frame and 8192 pixels/side. Video edits are bounded to 9,000 frames and 4 billion decoded/output pixels including backward seeking, with a 120-second cancellable worker deadline.
- Local MP4/MOV/WebM/Matroska with browser-supported codecs. Primary tracks only. WebM uses VP8/Opus; MP4 uses AVC/AAC when supported by the current browser. No network source or server fallback. Output is re-encoded; separate alpha-plane video is unsupported, supported transparency becomes black, and source tags are omitted, and HDR/color-profile fidelity is not guaranteed.
- Video join fits clips into one even-sized canvas with black letterboxing. Container display orientation is applied. Speed changes preserve synchronization by changing audio speed and pitch together. Reverse is limited to 60 seconds and 600 frames; backwards decoding can be slow.
- Decoded audio is limited to 5 minutes total, 32 million samples and 1–2 channels. Audio is processed at 48 kHz. Added sound is trimmed or padded/looped to video length; mixed sound uses peak protection. Gain above full scale may clip.
- PNG sequence export is limited to 300 images and 100 million output pixels and includes requested/source timestamps. Animated WebP uses lossy browser encoding, no audio, millisecond-rounded delays, 300 frames, 20 million total frame pixels and 40 MiB output.
- Image input is limited to 30 static PNG/JPEG/WebP images, 20 MiB each and 128 MiB combined. Stored pixel orientation is used. Text uses the local sans-serif font and is limited to 200 characters/five lines; overlays must fit within the output frame.
- Subtitle input: UTF-8 up to 1 MiB, 2,000 cues, 500 characters/six explicit lines per cue, eight simultaneous cues and 12 wrapped lines total. Plain white local-font text on a translucent black box; formatting, WebVTT style/region/position settings and karaoke timestamps are unsupported. Source tags are omitted.
- Cue times are clipped to the video duration and outside-video cues are omitted with counts. Overlapping cues stack in time order. Added cue boundaries count against 9,000 output frames/four billion pixel work. WebM frame/cue timing rounds to milliseconds and coincident boundaries are combined. Captions that do not fit vertically fail with an actionable error.
- When audio is decoded, tracks with more than one second of decoder priming or overlapping sample timestamps are unsupported. The 32-million decoded-sample work cap includes priming and skipped samples.
Related tools
No items found.