Skip to content

TTML to STL Subtitle Converter

Fast. Private. Perfect.

100% local processing in your browser. No upload. No waiting.

Private & Secure
Blazing Fast
Free & Private
TTML
<?xml version="1.0" encoding="UTF-8"?>
<tt xml:lang="en" xmlns="http://www.w3.org/ns/ttml">
<body>
<div>
<p begin="1.000s" end="4.000s">Hello, world!</p>
<p begin="4.500s" end="8.000s">This is a subtitle file.</p>
<p begin="8.500s" end="12.000s">Converted locally!</p>
</div>
</body>
</tt>
STL
// Spruce Subtitle File
// Format: Start Time, End Time, Subtitle Text
 
00:00:01:00 , 00:00:04:00 , Hello, world!
00:00:04:15 , 00:00:08:00 , This is a subtitle file.
00:00:08:15 , 00:00:12:00 , Converted locally!

Drag & drop your TTML file here

or click to browse

Supports .ttml, .itt, .xml files up to 50 MB

100% LocalNo UploadSecureInstant

How It Works

1

Upload TTML File

Drag & drop or select your .ttml file

2

Convert Instantly

We process it locally in your browser

3

Download STL

Get your .stl file immediately

Why Choose AllSubConverter?

Your Privacy Matters

Everything runs in your browser. Your files are never uploaded.

Lightning Fast

Optimized processing engine converts files in seconds.

Free & Local

Each file can be up to 50 MB. Batches can contain up to 200 files or 1 GB total.

Works Everywhere

Works on Windows, Mac, Linux, iOS, Android - any modern browser.

Free Online TTML to STL Converter

This converter reads <p> cues from a TTML document and writes text-based Spruce STL output. Timing is quantized to a 29.97 fps frame grid, line breaks become vertical-bar separators, and common inline TTML tags are removed. Each output cue contains a start time, end time, and text.

Input Format

TTML

TTML (Timed Text Markup Language) is an XML subtitle format. This converter looks for <p> elements with begin and end, or begin and dur, timing attributes, and accepts second-based or clock-valued timing. Cues without a begin attribute are skipped.

Output Format

STL

This output is text-based Spruce STL, not binary EBU STL. The file includes generator comments followed by start time, end time, and text entries. Timing uses SMPTE-style HH:MM:SS:FF values at 29.97 fps, and display line breaks are represented with vertical bars.

Features

Reads TTML <p> cues with begin/end or begin/dur timing
Writes text-based Spruce STL entries
Quantizes timing to a 29.97 fps frame grid
Converts cue line breaks to vertical-bar separators
Removes common inline TTML formatting tags
Processes files locally in your browser

Why Convert?

STL text entries are compact and easy to inspect as plain text.
The conversion preserves explicit start and end times.
Vertical-bar separators provide a simple line-break representation for STL text.
A Spruce-style text file can be useful when a workflow expects this layout.

Format Differences

TTML is XML; this STL output is a plain-text cue list.
TTML timing attributes are converted to frame-based SMPTE-style timecodes.
TTML <br/> elements become vertical-bar STL separators.
TTML styling and metadata are not mapped to the STL output.

Common Use Cases

Text STL Preparation

Create text-based Spruce-style STL entries from supported TTML cues.

Line-Break Conversion

Convert TTML line breaks into STL vertical-bar separators.

Timing Conversion

Move begin and end values into frame-grid SMPTE-style timecodes.

Related Formats

Frequently Asked Questions

No. The output is text-based Spruce STL with start, end, and text entries. Binary EBU STL is not generated.

Times are quantized to a 29.97 fps SMPTE-style frame grid. TTML millisecond precision may be adjusted to the nearest supported frame representation.

Yes. There is no registration or watermark, and conversion happens in your browser.

TTML line breaks are written as vertical-bar separators in the STL text field.

No. Common inline tags are removed and no TTML styling or metadata is mapped.

No. Processing stays in your browser and the subtitle file is not uploaded.

Ready to convert your subtitles?

Drop your TTML file here and convert to STL instantly.