Convert subtitles from 23.976 fps to 29.97 fps
For subtitle files whose timing was built at a 23.976 fps frame count but needs to match 29.97 fps NTSC. Drop the file in below to re-time it.
Need a different frame rate? Use the full framerate converter →
When 23.976 → 29.97 fps is the right conversion
23.976 and 29.97 fps are the two NTSC rates, related by exactly 1.25× in frame count (29.97 = 23.976 × 1.25). This conversion matters when a subtitle file's timings were derived from frame numbers at 23.976 — most often a frame-based MicroDVD .sub file, or a file a tool exported at the wrong frame rate — and you need them to line up with a 29.97 fps reference.
One important caveat: standard NTSC 3:2 pulldown, the normal way 23.976 fps film is shown on 29.97 fps NTSC, does not change real-time duration — it repeats fields, so the film still plays at normal speed. That means a time-based SRT authored for the 23.976 version is usually already in sync on NTSC. If your SRT simply drifts later and later, the cause is almost always a 25 fps PAL copy, not NTSC — try 23.976 → 25. Use this page for genuine frame-count mismatches, where every timestamp needs multiplying by 23.976 / 29.97 = 0.8.
Not sure what is actually wrong? How to fix out-of-sync subtitles → Other direction: 29.97 → 23.976 fps.
FAQ
My SRT drifts out of sync — will this fix it?
Probably not, if it is a normal time-based SRT: NTSC pulldown keeps real-time duration, so 23.976 fps subtitles usually already match a 29.97 fps NTSC video. Progressive drift almost always means a 25 fps PAL copy — use the 23.976 to 25 page. Use this page for frame-based files or timings computed at the wrong frame rate.
What does times 0.8 actually do?
It multiplies every timestamp by 23.976 / 29.97 = 0.8, the exact frame-count ratio between the two NTSC rates. A cue at 10:00 moves to 8:00. That is the right correction only when the original timing was scaled by the inverse.
Which file types is this for?
Most often MicroDVD .sub files, which store frame numbers rather than clock time, or SRT and VTT files that a converter mis-stamped using 23.976 when the target is 29.97.