Out-of-sync subtitles are one of those problems that seems random until you know there are only three kinds. Each has a different fix, and the trick is telling them apart in a minute or two.
Step 1: diagnose the kind of problem
Play the video at three points: near the start, in the middle, and near the end. At each point, note roughly how early or late the subtitles are.
| What you see | What it is | The fix |
|---|---|---|
| The same delay everywhere, e.g. 2 s late at start, middle and end | Constant offset | Shift all cues |
| Fine at the start, gradually worse: 0 s, 1 s, 2 s late | Drift | Stretch with two-point resync or a frame-rate change |
| Fine until a point, then a sudden jump | A cut or added scene | Shift from a specific cue onward |
Constant offset: shift
An offset happens when your video starts at a different moment than the one the subtitles were made for, often because of a studio logo or a recap. The fix is to add or subtract the same amount from every time. In the subtitle shifter, enter the delay in seconds: positive if the subtitles are early, negative if they are late. Load your video in the Preview tab and nudge in half-second steps while it plays until speech and text line up.
Drift: stretch
Drift means the subtitles and the video run at slightly different speeds. The classic cause is frame rate. Films are released digitally at 23.976 fps, but in PAL regions they were often sped up to 25 fps. Subtitles timed for one version run about 4% fast or slow on the other: after an hour that is almost two and a half minutes.
If you know both frame rates, the frame rate converter multiplies every time by their ratio (23.976 ÷ 25 ≈ 0.95904 to go from film to PAL). If you do not, two-point resync measures it for you:
- Find a line near the start and note exactly when it is spoken.
- Find a line near the end and note when it is spoken.
- Enter both cue numbers and both times, then apply.
Behind the scenes, every time t becomes k × t + o. The stretch factor k is the ratio between the gap separating your two correct times and the gap separating the two current times; the offset o makes the first reference land exactly. Both reference lines end up on the exact millisecond you entered, and everything else is scaled along the straight line between them. A stretch factor close to 1.0427 or 0.9590 is a tell-tale sign of a 23.976/25 fps mismatch.
A jump: shift part of the file
If the subtitles are fine until a certain scene and then consistently off, that version of the video has a scene cut or added. Find the first line that is wrong, note its cue number, measure the new offset, and shift from that cue onward; the shifter has a “starting from cue number” field for exactly this. If there are several cuts, repeat for each one, working from the start of the film to the end.
Combined problems
Sometimes you get both drift and an offset: a different frame rate and a longer intro. Fix the drift first (resync or frame rate), then check the start again and shift the remaining constant offset. Two-point resync actually corrects both at once, because the offset term absorbs any constant difference, as long as your two reference lines come after the extra intro.
Tips for precise timing
- Choose reference lines that start right after a pause, so the moment speech begins is easy to hear.
- Use lines far apart: the first and last lines of dialogue give the most accurate stretch.
- Pause the video on the first frame of speech and read the player’s time display, rather than reacting live.
- Undo freely. Myriadfile keeps the last 30 changes and a reset to the original file.
When it still does not match
If no combination works, the subtitles probably belong to a different edit of the film, such as a director’s cut or a TV version with scenes removed. Searching for subtitles that match your release name usually beats fixing a dozen cuts by hand. For MicroDVD .sub files, make sure the right frame rate is used when the file is read; the SUB to SRT page lets you set it.