Shift Subtitles (Sync an SRT File)

Do your subtitles appear too early or too late? Shift them all at once, check on the video, then save the corrected file.

100% local processing, nothing is uploaded

How does it work?

Drop your SRT or VTT file, with the video to check the result. Everything happens on your device, with no upload.

The “Shift all subtitles” panel opens: enter the shift in seconds (to the hundredth), then “Later” if the subtitles appear before the speech, or “Earlier” if they come after it. Start playback to check; repeat to fine-tune, or undo.

Only part of the file is out of sync? Edit the timings of the subtitles concerned in the list. Finally, save as SRT or WebVTT.

Examples

Subtitles a second and a half early

Each subtitle appears 1.5 s too early: a “Later” shift of 1.5 s moves 00:00:10,000 to 00:00:11,500, and so on for the whole file.

A version of the video without opening credits

The subtitles were made for a version with 12 s of opening credits, since removed: an “Earlier” shift of 12 s realigns them; subtitles from the credits, which would fall before 0, are removed.

Frequently asked questions

The subtitles drift gradually: what can I do?
A gradual drift (fine at the start, out of sync at the end) comes from a frame rate difference between versions of the video, for example 25 and 23.976 frames per second: a single shift is not enough. First realign the start, then correct the end timings in the list, or redo the subtitles by automatic transcription on the right version.
What is the difference between SRT and VTT?
Both contain the same information: a number or identifier, the start and end times, then the text. SRT (SubRip) is the most widespread: YouTube, Facebook, VLC, Premiere Pro, DaVinci Resolve. WebVTT (.vtt) is the format for websites (the <track> element) and Vimeo; it uses a period before the milliseconds instead of a comma, and starts with the line “WEBVTT”.
Accented characters in my file display incorrectly: what can I do?
Older subtitle files are often saved in Windows-1252 rather than UTF-8. The tool detects the encoding automatically (UTF-8, UTF-16 or Windows-1252) and always saves in UTF-8, understood by every recent player: accents and special characters are fixed along the way.
Are my video or my text uploaded to a server?
No. Transcription is done by your browser, on your device: your video, its sound and the resulting text are not sent anywhere, unlike most online subtitling tools. Only the speech recognition model (Whisper) is downloaded once, from Hugging Face, with its engine from jsDelivr, then cached. Your work (text and timings, never the video) is saved on your device so you can resume it.