An SRT subtitle file is a sequence of cues: a numbered index, a timestamp line, the caption text, and a blank
separator line. Timestamps follow the pattern
HH:MM:SS,mmm, with a comma
before the milliseconds, as in
00:00:01,000 --> 00:00:05,000.
Players depend on that exact structure, so one mistimed cue can throw off every caption that follows it.
This adjuster applies one uniform shift: every timestamp line is converted to milliseconds, your offset is
added to both the start and the end of each cue, and indexes and text pass through untouched. Positive values
delay the subtitles, negative values advance them, and decimals are supported for fine, frame-boundary
nudges. Any cue pushed before zero is clamped to 00:00:00,000 rather than breaking the file.
Whole-file offsets usually come from version mismatches: a broadcast edit with a scene removed, a skipped
intro, or a re-export with a different lead-in. When subtitles drift progressively, in sync at the start and
seconds off by the end, the real cause is typically a frame rate mismatch such as 23.976 fps film against
25 fps PAL speedup, and no constant offset can repair that. For neighboring text chores, compare revisions
in the Text Diff Checker,
clean up copy in the Text Editor,
or reflow paragraphs with the Line Break Remover.