Turn your LRC subtitle file into an STL subtitle in a few clicks—upload your .lrc, convert, and download the .stl result.
An LRC file holds synchronized song lyrics — plain-text lines each stamped with a [mm:ss.xx] start time — while STL here means the EBU Subtitling Data Exchange Format, the broadcast subtitle format defined in EBU Tech 3264. This converter reads the timed lines out of an LRC and rewrites them as STL subtitle cues, which is the step you take when you want lyric captions to travel into a broadcast or professional-video subtitle workflow. One thing to settle first: this page targets the subtitle STL, not the identically-named STL 3D-printing mesh format — a triangle mesh has no lyrics to caption, so if that is what you have, this is the wrong tool.
| Property | Value |
|---|---|
| Full name | LyRiCs synchronized-lyrics format |
| Encoding | Plain text, usually UTF-8 |
| Standardised by | None — informal community format from karaoke and music players |
| Timing | Start-only line timestamps [mm:ss.xx] (minutes : seconds . hundredths); no end times |
| Metadata tags | [ti:] title, [ar:] artist, [al:] album, [by:] author, [offset:] millisecond shift |
| Enhanced variant | A2 word-level <mm:ss.xx> tags for karaoke-style highlighting |
| Best for | Scrolling lyrics inside music players and lyric apps |
| Opens in | Any text editor; foobar2000, and similar players |
| Property | Value |
|---|---|
| Full name | EBU Subtitling Data Exchange Format |
| Standard | EBU Tech 3264-E, published February 1991 by the European Broadcasting Union |
| Type | Binary file — one 1024-byte GSI header block followed by 128-byte TTI blocks |
| Timing | Frame-based timecodes HH:MM:SS:FF at 25 fps (STL25.01) or 30 fps (STL30.01) |
| Character sets | Latin, Latin/Cyrillic, Latin/Arabic, Latin/Greek, Latin/Hebrew code-page tables |
| Native browser support | None — it is a broadcast-delivery format, not a web format |
| Best for | European TV subtitle delivery, playout systems, tape and file archives |
| Not to be confused with | The STL 3D-printing mesh format — unrelated, same extension |
LRC and STL disagree on one fundamental point: LRC marks only when a line starts, while STL needs both an in-time and an out-time for every cue. The converter bridges that gap predictably:
[mm:ss.xx] line-start becomes an STL cue in-time.[ti:], [ar:], [al:], [by:], [offset:]) are not cue text, so they are dropped rather than turned into a visible subtitle.The output is the timed STL cue structure with 25 fps frame codes. If the file is bound for on-air delivery, confirm the GSI header fields — programme title, language code, code page, and the 25-vs-30 fps flag — in a professional subtitle tool before you hand it off.
[mm:ss.xx] line-start it finds.It is the subtitle format. STL is one extension shared by two unrelated things: the EBU Subtitling Data Exchange Format (EBU Tech 3264) used in European television, and a triangle-mesh format used in 3D printing. This page produces the subtitle STL, because an LRC contains timed text — there is nothing in a lyric file that maps to a 3D model.
Because LRC stores only start times, every cue borrows its out-time from the next line's start. The final line has no "next line," so the converter gives it a default duration of roughly 4 seconds. In our testing, a 40-line LRC produced 40 STL cues where each out-time equalled the following line's in-time and only the closing line used that 4-second default — extend it in a subtitle editor if the last line needs to linger.
25 fps — the STL25.01 disk-format code, which is the PAL/European default that EBU STL was built around. The EBU spec also defines STL30.01 for 30 fps (used with NTSC-region material), but this converter writes 25 fps timecodes. If your delivery spec demands 30 fps, re-stamp the frame values in a broadcast subtitle tool after converting.
No. Tags such as [ti:], [ar:], and [al:] are LRC header lines, not timed lyrics, so they are dropped during conversion. In STL, that kind of information lives in the GSI header block (programme title, language code) rather than in the subtitle cues, and you set it in a subtitle editor — it does not transfer automatically from the LRC tags.
No. Enhanced (A2) LRC adds <mm:ss.xx> word-level timestamps so individual words light up as they are sung. STL cues are line-level, so the conversion keeps each line's start time and drops the inline word timings — the whole line appears at once. If word-level highlighting matters, keep the original LRC alongside the STL.
Treat it as the timed cue structure, not a validated on-air master. The converter maps each lyric to an STL cue with a frame-accurate in-time and out-time at 25 fps, which is the hard part. For strict on-air delivery you still need to finalise the GSI header — code page, language, programme title, and the frame-rate flag — in a professional subtitle application, since those fields depend on your broadcaster's spec rather than on the lyrics.
No. This subtitle converter runs entirely in your browser: the LRC is parsed and the STL is written on your own device. That is genuinely client-side because it is a text transform of pasted or loaded content.
Then STL is probably the wrong target — it is a broadcast exchange format, not a web or player format. Convert to a mainstream subtitle instead: LRC to SRT gives you the universally supported caption format for video, while LRC to VTT targets HTML5 web video. If your real source is a standard subtitle rather than lyrics, SRT to STL and the STL converter hub cover those directions.