SubRip files will not load in an HTML5 video player. WebVTT is the format the browser actually accepts.
Open a project in the editor and go to Captions. You can start from a video you are captioning, or from nothing at all if you only need the file converted.
Bring in the SRT file. The cues and their timings are read in as they are, so nothing is re-timed and nothing is re-transcribed.
Export as VTT. You can also burn the captions into the video instead if you would rather they could never go missing.
The HTML5 <track> element takes exactly one caption format, and it is WebVTT. Point it at a .srt and the player loads without captions and without an error worth reading, which is why this conversion is nearly always someone debugging a silent failure rather than someone with a preference.
The two formats are close enough that the conversion is mostly mechanical. WebVTT needs the literal line "WEBVTT" at the top of the file, and it separates seconds from milliseconds with a dot where SubRip uses a comma. SubRip also numbers each cue and WebVTT does not require it.
Everything that matters, the text and the timings, survives the trip intact. Nothing is lost going this direction.
| SRT (SubRip) | VTT (WebVTT) | |
|---|---|---|
| Loads in an HTML5 player | No | Yes |
| Header line | None | WEBVTT |
| Milliseconds separator | Comma | Dot |
| Cue numbering | Required | Optional |
| Positioning and styling | No | Yes |
If the captions are for a page you control, a VTT file plus a <track> tag is the whole job. If they are going to a platform, check first: YouTube and most social uploaders take SRT happily and some will not take VTT at all, which is the reverse of this problem.
If they are going into a video permanently, converting is the long way round. Burning the captions into the frames means they cannot be switched off, cannot go missing, and survive being re-uploaded anywhere.
Because the <track> element only accepts WebVTT. A .srt file will be fetched and ignored, usually without an obvious error, so the video plays with no captions at all.
No. The timings are identical; only the way they are written changes, from a comma before the milliseconds to a dot, plus a WEBVTT line at the top of the file.
Free, in the browser, and the captions can be burned into the video in the same place.