Merge subtitle files

Join two parts of one video into a single file, or stack two languages to show together. Both files stay in your browser — no upload.

Runs in your browser. Files never leave your device.

Drop a subtitle file

or ·

first file: SRT, VTT or ASS · processed in your browser · nothing is uploaded

Mode
No file chosen

Tip: enter the first video’s exact running time so part two lines up perfectly.

Two kinds of merge

“Merging subtitles” means two different things, and this tool does both. Sometimes you have one film split into two downloads, each with its own subtitle file, and you want a single continuous file. Other times you have two languages for the same film and want to study or watch them together. The first is a join; the second is a bilingual stack.

Join two parts (CD1 + CD2)

The second file’s cues all start from zero, but in the combined video they begin where part one ended. So every cue in file two is shifted forward by the first video’s duration, then the whole thing is renumbered into one sequence.

part 1 ends ~00:58:10  ·  part 2 offset = 00:58:10
file2 cue 1:  00:00:02,000  becomes  00:58:12,000
renumbered continuously: …, 612, 613, 614, …

Enter the first video’s exact running time for a perfect seam; leave it blank and the tool estimates from where part one’s subtitles end.

Stack two languages

Bilingual merge interleaves both files by start time, so each language appears when it should. You pick whether the second language sits on top or joins the first at the bottom. Top positioning uses the {\an8} convention in SRT (or a line setting in VTT) that VLC, MPV and MPC honour — handy for language learning, where you want the original and a translation on screen at once.

What to know

  • The output uses the first file’s format; both files are decoded from their own encodings.
  • Bilingual positioning relies on player support; some TVs show both languages at the bottom regardless.
  • Everything runs locally — no upload, no size limit, instant.

Frequently asked questions

What’s the difference between the two modes?

Join (append) is for one video split across two files — CD1 + CD2. The second file’s timing is pushed back by the length of the first part so it continues seamlessly. Bilingual stacks two languages that cover the same video, so both appear together.

For a CD1 + CD2 join, what offset do I enter?

The exact running time of the first video file. That’s the point where part two begins. If you leave it blank, the tool estimates the offset from where the first subtitle ends — close, but the video duration is exact, so enter it when you can.

How does bilingual merge position the two languages?

Both tracks are interleaved by time. You choose whether the second language sits on top or at the bottom. For SRT we use the {`{\an8}`} top-position convention (honoured by VLC, MPV and MPC); for VTT we use a line setting. Some TVs ignore positioning and show both at the bottom.

Can I merge two different formats?

Yes — drop an SRT and a VTT, for example. The result is written in the format of the first file. Both files are decoded from their own encodings automatically.

Is anything uploaded?

No. Both files are read and merged in your browser. Nothing is sent to a server.