Turn STL subtitle files into ASS (Advanced SubStation Alpha) format in a few clicks—right in your browser.
STL here is the EBU Subtitling Data Exchange Format — the broadcast subtitle format defined by EBU Tech 3264, not the identically-named 3D-printing mesh file. ASS (Advanced SubStation Alpha) is the styled subtitle format Aegisub and the anime fansub world are built on. This converter reads each subtitle's in and out timecodes and dialogue from the STL and rewrites them as ASS Dialogue: lines, entirely in your browser — the file is parsed and rebuilt on your own device and is never uploaded to a server. Be clear on the honest ceiling before you convert: EBU STL carries only basic Teletext-era formatting, so the output is your correctly-timed dialogue under a single default ASS style. The tool does not invent the rich fonts, colours and on-screen positioning that a hand-typeset ASS script would have — the text and timing carry over, the styling is not fabricated.
| Property | Value |
|---|---|
| Full name | EBU Subtitling Data Exchange Format, specified by EBU Tech 3264 |
| Published | European Broadcasting Union, 27 February 1991 |
| Document type | Binary — a 1024-byte General Subtitle Information (GSI) header followed by fixed-size Text and Timing Information (TTI) blocks, one per subtitle |
| Purpose | Exchanging in-vision and Teletext subtitles between broadcasters |
| Timing | Frame-based timecodes, hh:mm:ss:ff, at 25 fps (PAL/European) or 30 / 29.97 fps (NTSC) |
| Text encoding | Legacy code pages declared in the GSI header — the format predates Unicode |
| Styling | Teletext-style basics only (a few colours, italics, box) — no fonts, no pixel positioning |
| Best for | TV playout, delivery specs, tape/MXF archives |
| Property | Value |
|---|---|
| Full name | Advanced SubStation Alpha — the v4.00+ revision of SubStation Alpha, written by CS Low ("Kotus") in the late 1990s for anime fansubbing |
| Document structure | Plain UTF-8 text in INI-style sections: [Script Info], [V4+ Styles], [Events] |
| Cue line | Dialogue: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text |
| Timing | H:MM:SS.cc — centisecond resolution, so 0:00:04.48 is four and a half-ish seconds |
| Styling | One named style row per style: font, size, primary/outline/back colours, bold, italic, scale, alignment, margins; plus brace-wrapped override tags for positioning, karaoke and animation |
| Native editor | Aegisub |
| Best for | Fansubs, karaoke, sign typesetting, soft subtitles muxed into MKV |
Dialogue: line under one default style, its frame-based timecodes rewritten as centisecond ASS times.| Element of the STL | In the ASS output | Why |
|---|---|---|
| Cue dialogue text | The Text field of a Dialogue: line |
The dialogue is the payload both formats share |
| In / out frame timecodes | Start and End in H:MM:SS.cc |
Frame counts are converted to centiseconds — an out-cue of ...:12 (frame 12 at 25 fps) lands at .48 |
| Line breaks within a cue | \N hard line break |
ASS's forced-break marker inside the Text field |
| Teletext colour / italics | Dropped — one default style is written instead | STL's basic broadcast styling has no field-by-field ASS equivalent, and the tool does not guess one |
| GSI header metadata (programme title, language codes) | Dropped | ASS's [Script Info] has no place for broadcast delivery metadata |
Because the output is built around a single default style — DefaultVCD, Arial at 28 points — every Dialogue: line renders the same way in any ASS-aware player. That is the right behaviour for a broadcast STL: it never held fonts, outlines or per-line positioning to begin with, so there is nothing to map onto ASS's typesetting fields. If you want real styling, the output is plain text — open it in Aegisub and write the [V4+ Styles] line you want. If instead you only need subtitles that play everywhere, ASS to SRT strips the styling back out to the universal format, and the STL converter hub lists every other direction.
No — same three letters, unrelated file. This page reads the EBU subtitle STL used in television delivery, which holds timed dialogue. A 3D-model .stl describes triangle meshes for printing and contains no subtitles, so a subtitle converter has nothing to extract from it. If your file came out of a CAD or slicer program, this is the wrong tool.
No, and that is honest rather than a shortfall of the tool. EBU STL carries only Teletext-era basics — a handful of colours, italics, a box — and none of them map onto ASS's font, outline, shadow or pixel-positioning fields. The converter writes your dialogue under one clean default style and stops there. It will not fabricate the fonts, sign placement or karaoke effects that a hand-typeset ASS script has, because the STL never contained that information to carry across.
Yes. In our testing, a two-cue STL running 00:00:01:00 → 00:00:04:12 and 00:00:04:15 → 00:00:08:00 came out as ASS Dialogue: lines timed 0:00:01.00 → 0:00:04.48 and 0:00:04.60 → 0:00:08.00, under the single DefaultVCD style, with the | line separator rewritten as \N. Whole seconds are copied straight across; each sub-second frame is converted to centiseconds — frame 12 of 25 becomes .48, frame 15 becomes .60.
25 fps — the PAL/European rate that most EBU STL files use. The frame portion of each hh:mm:ss:ff timecode is divided by 25 to produce the centisecond value ASS expects. If your source is a 29.97 / 30 fps NTSC STL, the whole-second boundaries stay correct but the sub-second frame conversion can land a few tens of milliseconds off, so check sync against the video after converting an NTSC-rate file.
A single style named DefaultVCD — Arial at 28 points with a standard outline — written into the [V4+ Styles] section, with every Dialogue: line pointing at it. It is a valid v4.00+ style, so any ASS-aware renderer (VLC, mpv, Aegisub) displays the file consistently. Rename it and its references in a text editor if your workflow expects a particular style name.
Yes. The .ass output is plain UTF-8 text, so open it in Aegisub or any text editor and edit the [V4+ Styles] block — change the font, size, colours and alignment, or add brace-wrapped override tags such as \pos and \an on individual lines. The converter gives you a clean, correctly-timed starting script; the typesetting is yours to build on top of it.
Convert to ASS when the file is destined for a styled-subtitle workflow — muxing into an MKV, opening in Aegisub, or matching a project that already uses .ass scripts. Choose SRT instead when you just need subtitles that load in nearly every player and editor without any styling machinery; SRT keeps the same timing and text with less to go wrong. Since a broadcast STL has no rich styling to preserve either way, SRT is often the simpler target — STL to SRT makes that trip directly.
No. This converter is genuinely client-side: the STL is parsed and the ASS script is built by JavaScript running on your own machine, and the file is never sent anywhere. That is also why it returns instantly even for a feature-length programme's subtitles — there is no upload, no queue and no processing wait. Close the tab and the file is gone.