// A · format converter Convert between SRT, VTT, and TTML/XML — no timestamp modification
// A1 · load file

Drop a caption file here

SRT · VTT · TTML/XML · DFXP

// B · frame rate converter Scale timestamps for a frame rate change — format is preserved
What this does: SRT and VTT files use millisecond timestamps with no inherent frame rate. This tool assumes your program was speed-converted between frame rates (e.g. 24fps film sped up 4.17% for 25fps PAL broadcast) and scales all timestamps by the ratio source_fps ÷ target_fps. If your content was not speed-converted, no timestamp adjustment is needed.
// B1 · load file

Drop a caption file here

SRT · VTT · TTML/XML · DFXP

// about subtitle tools
01

Format support

Converts between SRT (SubRip), VTT (WebVTT), and TTML/DFXP (Timed Text Markup Language). TTML is the XML-based format used by Netflix, BBC, and most broadcast and streaming workflows. Styling attributes not shared between formats are dropped gracefully.

02

Frame rate conversion

Scales all timestamps by source ÷ target. Example: 24fps → 25fps multiplies every timestamp by 0.96, because the program runs 4.17% faster at 25fps and subtitles must arrive proportionally earlier. The file format is preserved — SRT in, SRT out.

03

23.976 and 24fps

23.976fps (also written 23.98) is not the same as 24fps — the ratio is 1000/1001 ≈ 0.999001. Over a 2-hour film this accumulates to about 7 seconds of drift. The conversion tool handles this precisely using the exact decimal values for each rate.

04

TTML frame timestamps

TTML files can store timestamps in frame format (00:01:23:15) rather than milliseconds. This tool detects the format from the document's ttp:frameRate attribute, converts frame counts correctly, and rewrites the header on output.