SRT → VTT Converter
Convert SubRip (.srt) subtitles into WebVTT (.vtt).
Overview
The SRT-to-VTT converter takes a SubRip (.srt) subtitle file and emits a WebVTT (.vtt) version suitable for HTML5 <track> elements. The cue text and timing are preserved exactly; the syntactic differences between the two formats are handled automatically.
Web developers shipping captions to browsers, video editors moving between desktop and web pipelines, and accessibility engineers preparing transcripts reach for this when an SRT export needs to land on a video tag. Long-tail searches that lead here include "convert .srt to .vtt online", "SubRip to WebVTT converter", and "add captions to HTML5 video".
How it works
SubRip is a simple text format: blocks separated by blank lines, each block containing a numeric cue index, a HH:MM:SS,mmm --> HH:MM:SS,mmm timing line (note the comma decimal separator), and one or more lines of cue text. WebVTT (W3C specification) is similar but mandates a WEBVTT header on the first line, uses a period as the decimal separator in timings, and drops the leading numeric index in favour of an optional cue identifier.
The converter prepends WEBVTT\n\n, walks each SRT cue, replaces , with . in the timestamps, and either drops the numeric index or converts it into a VTT cue identifier on its own line. Inline tags like <i>, <b>, and <u>, which both formats accept, are passed through unchanged.
Examples
- Convert a translator's
.srtdeliverable into the.vttformat your video player expects. - Re-encode legacy SRT subtitle libraries to WebVTT for HTML5 playback.
- Prepare captions for HLS streaming, which serves subtitles as
.vttsegments. - Migrate a multi-language subtitle set wholesale to WebVTT in a single batch.
FAQ
Is the conversion lossy?
No. Every cue's text and timing survives the conversion; only the decimal separator and the header line change.
What about colours and positioning?
SRT does not natively support cue positioning. VTT does, via cue settings and CSS. The converter does not invent positioning; the cues end up centred at the bottom of the video, matching the SRT default.
Does it validate timing overlaps?
Overlapping cues are passed through. Some players draw them stacked; others ignore one. If overlaps cause issues, edit the SRT before conversion.
What encodings are accepted?
UTF-8 is preferred and recommended. ASCII SRT files convert cleanly too. Files in legacy regional encodings (Windows-1252, Shift-JIS) should be transcoded to UTF-8 first.
Can I add a region or style block?
The converter outputs minimal valid VTT — the header and the cues. To add STYLE or REGION blocks, edit the output afterwards.