What is an SRT file?
SubRip Text, SRT, came out of a program that ripped subtitles off DVDs, and its format is about as simple as a file can get. Each subtitle is a block: a counter, a line with the start and end time separated by an arrow, the text, then a blank line. Nothing else. You can open one in Notepad, read it, fix a typo, and save it.
Because it is plain text with no styling, every video player, editor, and upload form takes it. YouTube, Vimeo, Premiere, DaVinci Resolve, VLC, and every TV box understand SRT, which is why it is still the format to hand someone when you do not know what they will use.
How the timing works
Times are written hours:minutes:seconds,milliseconds, with a comma before the milliseconds rather than a period. That comma is the single most common reason a file is rejected: WebVTT, the web format, requires a period instead, and a player that expects one will refuse the other.
Subtitles that appear consistently early or late are usually a file made for a different cut of the video, or for a different frame rate. Shifting every timecode by the same amount fixes the first case, and our subtitle shifter does exactly that without uploading the file.
SRT, VTT, or ASS?
SRT for handing files to other people and for uploads. VTT for video on a web page, since the HTML track element requires it. ASS when you need styling: fonts, colors, positioning, karaoke timing, the things fansubbing needs and SRT cannot express.
Converting between them is mostly mechanical, and losing styling is the only real risk: ASS to SRT keeps the words and the timing and drops the look.
Frequently asked questions
How do I edit an SRT file?
Open it in any text editor. Keep the blank line between blocks and the arrow between the two timecodes, and save it as plain text with UTF-8 encoding.
My subtitles are out of sync. What do I do?
If they drift further apart over time, the file is for a different frame rate and needs stretching. If they are wrong by a constant amount, shift every line by that many seconds.
Why does my SRT show strange characters?
It was saved in a regional encoding rather than UTF-8. Re-save it as UTF-8 in a text editor and the accents and non-Latin letters come back.
Can an SRT file be styled?
Barely. Some players honor basic HTML-style bold and italic tags, but position, font, and color belong in ASS or VTT.