Sync Subtitles to a Timecode
Or paste subtitle text
Options
The time the earliest cue belongs at, as a clock value. 00:00:00,000 is the everyday case: it removes a lead-in offset so the subtitles start with the picture. Every cue moves by the same amount, because the offset is measured from where the first cue is now. This is a target time, not a distance — to move everything later by a fixed amount, use the millisecond offset pages instead.
Which frame rate the timings are counted in. On the format pages this is what MicroDVD needs, because it stores timing as frame numbers. On the frame rate pages it is the rate the file was timed against — the version the subtitles were made for — and the page's second box takes the rate of the video you are going to use them with. 23.976, 24, 25, 29.97, 30, 50, 59.94 and 60 are the common ones. Getting it wrong shifts the whole timeline, and on the frame rate pages it shifts it by a ratio rather than by a fixed amount.
This page moves a whole subtitle file so that its earliest cue lands on a time you name. The box is filled in with 00:00:00,000 before you touch anything, so the everyday job — taking off the lead-in so the first subtitle appears with the picture — needs no typing at all: drop the file, run it, and every cue has moved by whatever the file's own lead-in was. Type another time and the first cue goes there instead, with the rest of the file following it.
What you type is a destination, not a distance. That is the difference between this page and the millisecond or timecode-offset ones, and it matters for two reasons. The first is where the numbers come from: when you are looking at a subtitle and a video side by side, what you have is two clocks — this line is at 00:01:12 in the file, the same line is at 00:01:16 in the video — and working out that the answer is "four seconds later" is the step where a sign gets dropped. The second is what can go wrong: because the offset is measured from the file's own earliest cue, no cue can be pushed off the front of the timeline. Nothing is dropped here and no cue is shortened — a promise the negative-offset pages cannot make.
A file that is right at the start and a few seconds out by the end is the one case this page cannot fix, because a single moment can only move the timeline, not stretch it. That is what the two-reference version is for. Set a check point ten minutes in and see whether it lands where you expect; if the beginning is right and the ten-minute mark is not, the file needs a ratio as well as an offset.
Everything runs in this browser tab. SRT, WebVTT, ASS, SSA, SBV, SAMI, MicroDVD, TTML, JSON and CSV files are all read as whatever they actually are rather than as the extension suggests, frame-number files included, and a queue of a hundred files goes through in one pass with no upload at any point.
Examples
A two-second lead-in, with the box left alone
Input
1
00:00:02,000 --> 00:00:04,000
Hello there.
2
00:00:07,500 --> 00:00:09,000
Second line.
Output
1
00:00:00,000 --> 00:00:02,000
Hello there.
2
00:00:05,500 --> 00:00:07,000
Second line.
The default run. The file's earliest cue sits at two seconds, so the offset is minus two seconds and everything moves with it: the first line now appears on the first frame, the second line at 5.5 seconds. The two cues are still 3.5 seconds apart — this is one offset taken off the file, not each cue being sent to the target independently.
Subtitles that belong five seconds in
Input
1
00:00:01,000 --> 00:00:03,000
Hello there.
2
00:00:04,000 --> 00:00:06,000
Second line.
Output
1
00:00:05,000 --> 00:00:07,000
Hello there.
2
00:00:08,000 --> 00:00:10,000
Second line.
A version with a longer title sequence, or an extra card before the first scene: the earliest line belongs at five seconds, so the pair moves four seconds later. Reading 00:00:05,000 off the new opening is the whole input. Filling in five seconds of offset instead would have put the first cue at six seconds and left every later cue five seconds out.
A frame-number file loses 25 frames
Input
{25}{50}Hello
{75}{100}World
Output
{1}{1}25
{0}{25}Hello
{50}{75}World
MicroDVD stores timing as frame numbers, so the same operation shows up as frames: at 25 frames a second the first cue is declared at frame 25, which is one second, and aligning it to zero takes 25 frames off both of its numbers and off the other cue's too. Frame counts are not recalculated per cue — one offset comes off every number, so the gap between the two cues is untouched. The {1}{1}25 line at the top is the writer recording the frame rate it read the file with, which the input never stated.
Frequently asked questions
How do I remove a lead-in so the subtitles start with the picture?
Leave the box at 00:00:00,000 and run the file. The offset is measured from the file's own earliest cue, so nothing needs to be typed: a file whose first line sits at two seconds comes back with every cue two seconds earlier. That default is the reason there is no separate 'start at zero' page — it is what this page does when you do not touch it.
How is this different from shifting the file by a number of seconds?
Here the box takes the time the first subtitle belongs at, not the amount to move by. Filling 00:00:30,000 puts the earliest cue at thirty seconds; putting thirty seconds of offset into the millisecond page would put it at thirty seconds plus wherever it already was. A destination also cannot be negative, so unlike a negative offset this page can never push a cue past the start of the film and shorten it.
What if the file already starts at the time I type in?
Then the offset comes out zero and the file is returned byte for byte. Nothing is reported as lost and nothing is reported as a no-op either, because a request that happens to change nothing is not the same as an empty panel — the two look identical in the download and different on the timeline the page draws above it.
My subtitles are right at the start and a few seconds out by the end. Will this page fix that?
No. One moment can only move the timeline, never stretch it, so aligning the first cue leaves the end exactly as wrong as it was. Point the file's ten-minute mark at the time it should be for a quick diagnosis: if the start is right and that mark is out, the file needs the two-reference page, which solves a ratio and an offset together.
Which moment does the box measure from — the first line of dialogue, or the first cue in the file?
The earliest cue, whatever it is. A song credit, a sound description or an opening sign counts, and if that is what sits first in the file, that is what gets sent to the time you name. There is no way to aim this page at a later cue; if the earliest cue is correct and a later one is not, use the two-reference page and name that cue's time instead.
Can this page lose a subtitle or make a cue shorter?
No, and that is a property of the destination-style box rather than a setting. Because the offset is taken from the file's own earliest cue, every new start time is at or after the time you typed, which is never negative. The pages that can push content off the front of the timeline are the ones where you supply a negative amount to move by.