Convert ASS and SSA Subtitles to SRT Without Losing the Timing
Flatten a styled ASS or SSA script to SubRip. Review what the conversion keeps, what it drops on purpose, and the three reasons a cue does not reach the SRT.
Drop a script on the left. The flattened SRT appears here, ready to copy or download.
The script is parsed in your browser. A subtitle file is the whole dialogue of an episode, so nothing about it is sent to FindUtils or anywhere else — you can confirm that in your browser's network panel while converting.
An ASS or SSA script is two things at once: a list of timed dialogue lines, and a set of instructions for drawing them. The instructions live in override blocks inside braces — {\an8} pins a line to the top of the frame, {\pos(320,40)} places it at a coordinate, {\k} tags time a karaoke syllable, and {\p1} switches into a vector drawing mode used for signs and logos. SubRip has no way to express any of that. It has a number, two timestamps, and text.
Flattening is therefore a matter of keeping the first thing and discarding the second, carefully. This converter reads the Format line of the Events section so it knows which comma-separated column is the start, which is the end and which is the text, splits each Dialogue line on exactly that many commas so a comma in the dialogue survives, and converts the H:MM:SS.cc timestamps to HH:MM:SS,mmm. Every brace block is removed, a drawing run is removed with it, \N and \n become line breaks and \h becomes a space. Cues left empty by that are dropped, the rest are sorted by start time and numbered from 1.
A malformed line is skipped and counted rather than stopping the file, because a 900-cue script with one broken row is the common case. Everything runs in the browser: the script is never uploaded.
Most sites that convert ASS to SRT upload the script, convert it on a server, and hand back a download link. A subtitle file is the entire dialogue of an episode or a film, which for an unreleased or licensed work is exactly the thing that must not leave the machine. This page runs the parser in the tab, so the script stays where it is. It also reads the Format line instead of assuming the column order, which is what breaks many converters on SSA v4 files.