Lyricify Syllable is the proprietary syllable-timing format used by the Lyricify App. Each syllable is encoded asDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/6xingyv/accompanist-lyrics-core/llms.txt
Use this file to discover all available pages before exploring further.
word(startMs,durationMs) inline with the lyric text, and an optional [n] attribute code at the start of each line controls whether it is a main vocal or an accompaniment, and which horizontal alignment it should use. LyricifySyllableParser is a Kotlin object (singleton) that decodes this format into strongly-typed KaraokeLine instances.
Format
Syllable notation
Every syllable consists of its text immediately followed by(startMs,durationMs) in parentheses. The start time is absolute in milliseconds; the duration is also in milliseconds:
Attribute codes
An optional[n] prefix controls line type and alignment. The attribute value is a single digit:
| Code | Type | KaraokeAlignment |
|---|---|---|
[0] | Main vocal | KaraokeAlignment.Start |
[1] | Main vocal | KaraokeAlignment.Start |
[2] | Main vocal | KaraokeAlignment.End |
[3] | Main vocal | KaraokeAlignment.Start |
[4] | Main vocal | KaraokeAlignment.Start |
[5] | Main vocal | KaraokeAlignment.End |
[6] | Accompaniment | KaraokeAlignment.Start |
[7] | Accompaniment | KaraokeAlignment.Start |
[8] | Accompaniment | KaraokeAlignment.End |
0–5 produce KaraokeLine.MainKaraokeLine. Attributes 6 and above produce KaraokeLine.AccompanimentKaraokeLine. Codes 2, 5, and 8 set KaraokeAlignment.End; all others default to KaraokeAlignment.Start. Lines without a [n] prefix are treated as main vocals with KaraokeAlignment.Start.
Full example
[2] line is a main vocal with KaraokeAlignment.End. The [8] line is an accompaniment. The parser attaches accompaniment lines to the immediately preceding MainKaraokeLine.accompanimentLines.
Detection
LyricifySyllableParser recognises the format when the content contains at least one match for the pattern:
(number,number) — a pattern specific enough to avoid false positives on LRC files.
Usage
LyricifySyllableParser is a Kotlin object—no instantiation required:
Working with the result
Every line inSyncedLyrics.lines is either a KaraokeLine.MainKaraokeLine or a KaraokeLine.AccompanimentKaraokeLine. Accompaniment lines are attached to the preceding main line rather than appearing as top-level entries when a main line exists:
Full parse example
LyricifySyllableParser does not currently populate SyncedLyrics.title or SyncedLyrics.artists. Metadata embedded in LRC-style header tags at the top of the file is stripped before syllable parsing but not surfaced on the result object.