Document tools

Merge subtitle tracks

Combine 2+ subtitle files (e.g. two language tracks, or a track split across parts) into one file, sorted by start time. Each input keeps its own format on read; the output takes the first file's format. Overlapping cues (e.g. two languages at once) are kept as separate cues, not merged into one. Runs on your device.

Runs on your device. The file is never uploaded.

Merge subtitle tracks pools the cues of two or more files into start time order, ties broken by the end time. The download is merged plus the extension of whichever file came first, and formats can be mixed, each read by its own extension. No offset is added, so a second part timed from zero overlaps the first.

Input

Questions

How are the cues ordered in the merged file?

By start time, then by end time when two cues start together. The order you dropped the files in does not decide the output order, so merging two parts of a track or two language tracks both work. Cues that overlap in time are kept as separate cues; nothing is combined into one.

Can I mix formats, and which one comes out?

You can mix them. Each file is read according to its own extension, so an SRT and a VTT can be merged together, and the output takes the format of the first file you dropped. The file you get is called merged plus that format's extension, for example merged.srt.

I am joining two parts of a video. Why is part two at the wrong time?

Because merging does not add an offset. The second file's cues start from zero if that is how they were timed, so they land on top of part one. Run Shift subtitle timing on part two first, offsetting it by the length of part one in milliseconds, then merge.

Why does it say it needs at least 2 files?

Because merging one file would do nothing. The check is exact: "subtitle-merge needs at least 2 files to merge". Drop two or more at once. Every file must have a recognised extension, and an unrecognised one is named in the error, which lists .srt, .vtt, .ass, .ssa and .sbv as the accepted set.

Will two language tracks read correctly in one file?

They will play at the same time as separate cues, which most players stack or overlay. Nothing pairs the lines up into one cue with two lines. If you want that, merge here first and then edit the pairs, or keep the tracks as separate files and let the player choose.

Related Document tools

1→1SRT to VTTConvert SRT to VTT subtitles. Cue timings are re-parsed and re-formatted exactly, not merely re-punctuated. ASS/SSA override tags ({\i1}, {\an8}, ...) are carried through as literal text, not re-rendered or stripped. Use Strip subtitle formatting for that. VTT cue settings (align, position, line, size, ...) are dropped, not preserved. This converter carries dialogue and timing, not layout.Takes one file1→1VTT to SRTConvert VTT to SRT subtitles. Cue timings are re-parsed and re-formatted exactly, not merely re-punctuated. ASS/SSA override tags ({\i1}, {\an8}, ...) are carried through as literal text, not re-rendered or stripped. Use Strip subtitle formatting for that. VTT cue settings (align, position, line, size, ...) are dropped, not preserved. This converter carries dialogue and timing, not layout.Takes one file1→1SRT to ASS/SSAConvert SRT to ASS subtitles. Cue timings are re-parsed and re-formatted exactly, not merely re-punctuated. ASS/SSA override tags ({\i1}, {\an8}, ...) are carried through as literal text, not re-rendered or stripped. Use Strip subtitle formatting for that. VTT cue settings (align, position, line, size, ...) are dropped, not preserved. This converter carries dialogue and timing, not layout.Takes one file1→1ASS/SSA to SRTConvert ASS to SRT subtitles. Cue timings are re-parsed and re-formatted exactly, not merely re-punctuated. ASS/SSA override tags ({\i1}, {\an8}, ...) are carried through as literal text, not re-rendered or stripped. Use Strip subtitle formatting for that. VTT cue settings (align, position, line, size, ...) are dropped, not preserved. This converter carries dialogue and timing, not layout.Takes one file1→1SRT to SBV (YouTube)Convert SRT to SBV subtitles. Cue timings are re-parsed and re-formatted exactly, not merely re-punctuated. ASS/SSA override tags ({\i1}, {\an8}, ...) are carried through as literal text, not re-rendered or stripped. Use Strip subtitle formatting for that. VTT cue settings (align, position, line, size, ...) are dropped, not preserved. This converter carries dialogue and timing, not layout.Takes one file1→1SBV (YouTube) to SRTConvert SBV to SRT subtitles. Cue timings are re-parsed and re-formatted exactly, not merely re-punctuated. ASS/SSA override tags ({\i1}, {\an8}, ...) are carried through as literal text, not re-rendered or stripped. Use Strip subtitle formatting for that. VTT cue settings (align, position, line, size, ...) are dropped, not preserved. This converter carries dialogue and timing, not layout.Takes one file