TTML to SRT Converter
Processed locally in your browser — nothing is uploaded.
Quick answer
TTML (also called DFXP) is the XML-based caption format used in broadcast and streaming delivery. To convert TTML to SRT you extract each `<p>` element’s `begin` and `end` times and its text, normalise those times to millisecond SubRip timestamps, number the cues, and discard the XML styling SRT cannot hold. This tool parses the XML in your browser — nothing is uploaded.
How to ttml to srt converter
Add your TTML file
Drop a .ttml, .dfxp or .xml caption file, or paste the markup. The tool parses the XML and finds the paragraph cues.
Convert to SubRip
Each `<p begin end>` becomes a numbered cue, clock or offset times are normalised to SRT timestamps, and styling attributes are dropped.
Save the SRT
Download the .srt file or copy it — a flat, portable caption file for VLC, editors and uploads.
What is TTML and where does it come from?
TTML (Timed Text Markup Language), and its DFXP profile, is an XML caption format used in professional pipelines — broadcast delivery, and streaming platforms including Netflix, use it because XML can carry rich styling, regions and metadata alongside the text. That richness is also why it is awkward to work with outside those pipelines: a plain caption file is far easier to edit and far more widely supported. Converting TTML to SRT flattens the XML into the universal SubRip format.
How does the converter read TTML times?
TTML timestamps come in more than one shape, which is the main thing a converter has to handle. The begin and end attributes on each <p> can be a clock value or an offset:
| TTML form | Example | Meaning | Becomes |
|---|---|---|---|
| Clock time | 00:00:01.500 | One and a half seconds in | 00:00:01,500 |
| Offset (seconds) | 1.5s | One and a half seconds | 00:00:01,500 |
| Offset (milliseconds) | 1500ms | One and a half seconds | 00:00:01,500 |
| Clock with frames | 00:00:01:12 | Frame-based, needs frame rate | Resolved to ,mmm |
The converter recognises each form, resolves it to milliseconds, and writes the comma-fraction SubRip timestamp. Nested inline elements inside a <p> — <span>, <br/> — are flattened to text and line breaks.
What is dropped in the conversion?
The XML styling — <region> layout, <style> definitions, colours, fonts and positioning attributes — is discarded, because SubRip stores only text and timing. The dialogue and its timing are what carry across. If you need that styling on the web instead, convert to a format that keeps some of it rather than to SRT.
Is the TTML uploaded to convert it?
No. The XML is parsed and the SubRip is written entirely in your browser, in memory. Broadcast and pre-release captions are sensitive, so this matters: open DevTools → Network and you will see no upload request when you convert. The file stays on your machine.
Related subtitle tools
Need the captions on a web page afterward? Chain into SRT to VTT. For any other source format the universal subtitle converter reads TTML, DFXP, SBV, ASS and more. Leftover markup in the text can be cleared with remove formatting, and finished captions can be added to a video in-browser.
Your files never leave your device
Processed locally in your browser — nothing is uploaded. You can verify it yourself: open your browser’s developer tools, watch the Network tab, and use the tool — no upload request is ever made.
Frequently asked questions
Is TTML the same as DFXP?
Effectively yes. DFXP is a profile of the TTML standard used for distribution in broadcast and streaming. The converter reads files labelled .ttml, .dfxp or .xml the same way.
Does TTML to SRT keep styling?
No. TTML regions, styles, colours and positioning are XML features SubRip cannot store, so they are dropped. The paragraph text and its timing are preserved.
How are TTML times handled?
The `begin` and `end` attributes are read whether they are clock times (00:00:01.500) or offsets (1.5s, 1500ms), resolved to milliseconds, and written as comma-fraction SRT timestamps.
What about frame-based TTML timestamps?
Times expressed with frames (00:00:01:12) are resolved using the file’s declared frame rate so the result lands on the correct millisecond.
Where is TTML used?
It is common in professional delivery — broadcast systems and streaming platforms such as Netflix use TTML/DFXP because XML can carry styling, regions and metadata alongside the caption text.
Do nested spans and line breaks survive?
Yes as text. Inline `<span>` content is flattened into the cue text and `<br/>` becomes a real line break; the styling attributes on those elements are dropped.
Can I edit the result more easily than the TTML?
That is usually the point. A flat SRT is far simpler to edit by hand or in a subtitle editor than XML, and it opens in far more software.