Clip Caption Kit

How to Reset SRT Timestamps to Zero

To reset SRT timestamps after trimming a video, subtract the clip's original start time from every subtitle timestamp. The rule is new timestamp = original timestamp − clip start, worked out in integer milliseconds so the file starts at 00:00:00,000 like the clip itself.

The rule: subtract the clip start

An SRT file positions captions on the full-length source timeline. A trimmed clip starts a new timeline at 00:00, so every caption must be moved back by the clip's original start time:

new timestamp = original timestamp − clip start

Worked out, that looks like this:

Original:    00:03:45,500 --> 00:03:48,000
Clip starts: 00:03:42,000
Result:      00:00:03,500 --> 00:00:06,000

Do the arithmetic in integer milliseconds — 3.5 seconds stored as 3499.99999 rounds to the wrong millisecond. The output uses HH:MM:SS,mmm with a comma separator, the standard SRT form.

When resetting to 00:00 is the fix

  • You cut clips out of a long recording and each delivered clip needs its own SRT starting at zero.
  • A client hands back a clip with subtitles that are minutes out of sync, and the captions themselves are fine.
  • You exported one SRT for a subsequence and want it re-based to the subsequence start instead of the master timeline.

Three ways to reset timestamps, compared

MethodStrengthWatch out for
By handZero setup, fine for a small fileSubtraction, renumbering and negative clamping are repeated for every caption and every clip
FFmpegFree and scriptableffmpeg -i in.srt -ss <start> -t <dur> out.srt cuts a range and ffmpeg -itsoffset -<seconds> -i in.srt out.srt shifts it earlier, but neither re-bases per clip nor renumbers for you
Clip Caption KitCSV in, audited ZIP outRequires signing in; the free plan covers one project with up to 200 captions

Common mistakes

  • Forgetting to renumber. Players usually tolerate it, some do not — and a delivery reviewer will notice.
  • Float arithmetic. Convert to integer milliseconds first, subtract, then convert back.
  • Subtracting the wrong time base. The clip start is a position on the original timeline, not a duration of the clip.
  • Treating a different cut as an offset. A constant shift cannot fix captions made for another version of the edit — see the out-of-sync guide for the diagnosis.

Resetting a whole clip list

When the reset is part of a delivery — one master SRT, many clips — write the ranges into a CSV and run the batch SRT splitter: every clip comes back re-timed to 00:00, renumbered and paired with a plain-text TXT.

Resetting SRT timestamps FAQ

Reset timestamps for a whole clip list

Put the clip ranges in a CSV once and generate re-timed, clip-relative SRT and TXT files for all of them in one ZIP.

Batch split my SRT