Workflows 6 min read
Subtitles Out of Sync: Fixing Constant Offset and Frame-Rate Drift
Two failure signatures: sync is off by the same amount throughout (constant offset — fix is a time shift), or sync degrades over runtime (frame-rate mismatch — fix is scaling the timestamps). Diagnosing which one you have takes two spot-checks.
Diagnose in two checks
- Check the first line and the last line. Both off by ~2s → constant offset.
- First line perfect, last line off by seconds → frame-rate drift (e.g. subtitles made for 23.976 fps video applied to 25 fps).
- Drift ratio ≈ runtime where sync fails ÷ total runtime; the multiplier between common rates is 25/23.976 ≈ 1.0427.
Fixes
Constant offset: shift all timestamps by the measured amount (positive or negative). Drift: linear time-scale the timestamps by the ratio. Both are lossless text operations — no video re-encode needed.