Turn TTML subtitle files into DFXP format in a few clicks—upload your .ttml file, convert, then download the converted subtitle.
.ttml (or .xml caption) file, or click "Add Files" to browse. Batch upload is supported — drop in a folder of language tracks and each is processed in parallel. You can also paste the raw XML into the editor box if you only have the markup on a clipboard..dfxp. Because DFXP is a W3C-defined profile of TTML, the cue structure, timing (begin / end / dur), styling, and regions are preserved as-is — the conversion is primarily a filename + container handoff so platforms that key on the .dfxp extension accept the file.<br/> placement match expectations, and that any tts:textAlign, tts:color, or region attributes you depend on came through..dfxp file directly.TTML (Timed Text Markup Language) is the W3C base specification for XML captions — TTML1 became a W3C Recommendation in November 2010, with a Second Edition in September 2013. DFXP (Distribution Format Exchange Profile) is the most widely deployed profile of that same standard, defined in three flavors: Presentation (for video players), Transformation (for caption editors and converters), and Full (which equals TTML in scope). In practical terms the file contents are largely the same XML — <tt xmlns="http://www.w3.org/ns/ttml"> with <body>, <div>, and <p> cues — but several distribution platforms validate captions by the .dfxp extension rather than .ttml. Common reasons to make this conversion:
.dfxp on upload, even though the modern Brightcove Player prefers WebVTT..dfxp can carry several language tracks with xml:lang divs, which is convenient for translation packages..dfxp filename..ttml outright because their content management system has only registered the .dfxp MIME mapping; the file body is identical XML but the filename is the gate..ttml or .xml. Workflows that batch-process them (subtitle review, translation memory) often standardize on .dfxp so downstream tools key on a single extension.| Property | TTML | DFXP |
|---|---|---|
| Standards body | W3C Timed Text Working Group | W3C — DFXP is the published profile within the TTML1 spec |
| Current version | TTML1 (2010, 2nd Ed. 2013); TTML2 finalized 2018 | DFXP 1.0 (the three profiles defined inside TTML1) |
| XML root | <tt xmlns="http://www.w3.org/ns/ttml"> |
<tt xmlns="http://www.w3.org/ns/ttml"> (same namespace) |
| Typical extension | .ttml or .xml |
.dfxp |
| Feature scope | The full TTML feature set — animation, extended styling, regions | A subset / profile: Presentation, Transformation, or Full |
| Primary users | Broadcasters, IMSC-based streaming, EBU-TT (BBC), Netflix delivery | Brightcove, 3Play Media, Rev, Speechpad, legacy Adobe Flash workflows |
| Relationship | Base specification | Profile of TTML; "TTML" and "DFXP" are often used interchangeably |
| FCC status | Foundation for SMPTE-TT, which the FCC adopted in 2012 | Underlies the SMPTE-TT "safe harbor" interchange format |
| Profile | Designed for | What it includes |
|---|---|---|
| DFXP Presentation | Video players that render captions on screen | Minimum features for correct rendering at playback |
| DFXP Transformation | Editors and converters that read/write captions | Minimum features for round-tripping cues between formats |
| DFXP Full | Generic interchange | Every feature in the base TTML specification |
| SMPTE-TT (extended DFXP) | US broadcasters under FCC rules | DFXP Full plus #image, #data, and #information features for bitmaps, CEA-608/708 passthrough, and metadata |
If you need to go the other direction, see DFXP to TTML. For other subtitle conversions, TTML to SRT (plain-text cues), TTML to VTT (WebVTT for HTML5 players), or SRT to DFXP and VTT to DFXP when you're starting from a flat caption file.
In casual usage, yes — the two terms are frequently used interchangeably because DFXP is a profile of TTML and the XML inside the file uses the same http://www.w3.org/ns/ttml namespace. Strictly, TTML is the W3C base specification (TTML1, Recommended 2010) and DFXP is a set of three profiles (Presentation, Transformation, Full) published within that specification. A "DFXP Full" file is essentially a TTML file with a different filename. The reason to convert is rarely the XML body — it's because the destination platform validates on the .dfxp extension or MIME type.
Usually very little. The root <tt> element, the xmlns namespace, the <head>/<body> structure, and the cue <p> elements pass through unchanged. The converter writes the output with the .dfxp extension and, where source TTML uses features outside the Transformation profile (advanced animations, certain extended styling), those are preserved in DFXP Full but may need flattening if your downstream platform only accepts DFXP Presentation. Inspect the preview pane in step 3 to verify.
Brightcove's caption ingest has historically accepted DFXP as a first-class format alongside WebVTT, SRT, and SCC — older Brightcove Player workflows often expect .dfxp specifically. Caption vendors (3Play Media, Rev, Speechpad) document DFXP as their primary XML deliverable. Adobe Flash-based players and pre-2020 Premiere caption panels were built around DFXP. If your target is a modern HTML5 web player, you probably want TTML to VTT instead — WebVTT is the W3C-recommended format for the HTML <track> element.
Yes. DFXP supports nesting <div xml:lang="en">, <div xml:lang="es">, and so on within the same <body>, which is how vendors like 3Play Media deliver multi-lingual caption packages. The video player exposes a language picker and switches the visible <div> based on user choice. If your input TTML already contains multi-language divs, they are preserved in the DFXP output.
Yes for DFXP Full. Region definitions in <layout>, tts:textAlign, tts:color, tts:backgroundColor, tts:fontFamily, and <br/> placement copy across unchanged because both formats share the TTML schema. If the destination platform only accepts DFXP Presentation (a narrower profile), advanced animation attributes may need to be flattened — those features are valid TTML but not part of every DFXP profile.
Yes. SMPTE-TT is a superset built on top of DFXP Full, adding three features: #image (bitmap-based captions like DVB subtitles), #data (binary payloads for CEA-608/708 pass-through), and #information (extended metadata). The US FCC adopted SMPTE-TT as a "safe harbor" interchange format in January 2012 for online TV content covered by the CVAA. Plain DFXP does not include those extensions; if your delivery contract specifies SMPTE-TT for broadcast compliance, plain DFXP is the prerequisite, not the final deliverable.
No. This conversion is CLIENT_ONLY — the TTML XML is parsed and rewritten entirely in your browser using JavaScript. Nothing is uploaded to a server, no account is required, and there's no watermark or file-retention period to worry about. This matters for caption files containing pre-release show metadata, embargoed transcripts, or contractual translations.
Subtitle files are tiny by nature — a 90-minute feature typically has a few thousand cues and lands in the 100-500 KB range. Because conversion runs in your browser, the practical cap is whatever your device can hold in memory; multi-MB caption files (multi-hour events, broadcast-length specials with metadata) process without issue. Batch uploads also process locally, so dropping in 20 language tracks at once is fine.
Yes. Upload as many .ttml files as you need — one per language, one per episode, one per show. Each file converts to DFXP in parallel within your browser session and downloads individually or as a ZIP. Settings apply to the batch, which keeps multi-episode deliverables consistent.