Andare al contenuto principale
SubtitleMatrix

Convertire LRC in ASS

Conversione dei formatiTesti di canzoni (LRC)
Oppure incollare il testo dei sottotitoli

Opzioni

Usata quando la sorgente non ha orari di fine (testo semplice, LRC). La timeline dell’uscita è qui generata anziché convertita, quindi è questo numero che si otterrà.

Cosa cambia questa conversione

1 elemento viene scartato o richiede una decisione

  • Temporizzazione

    gli orari di fine dei blocchi — la sorgente non li registra, quindi quelli dell’uscita saranno generati anziché convertiti

Questo elenco deriva dalla matrice delle capacità di questi due formati, non dal particolare file caricato. Un file specifico può perdere di più se usa caratteristiche che il formato consente ma la matrice non modella.

Questa pagina trasforma un file LRC in ASS direttamente nel browser: si trascina il file o si incolla il testo, e si scarica la versione ASS. Non c’è nulla da installare e nulla da inviare a un server, quindi il materiale resta sulla macchina.

LRC è un formato per testi di canzoni: un timestamp tra parentesi quadre e poi la riga. Non registra mai la fine di una riga, perché è il lettore a tenere il testo a schermo fino al verso successivo. L’ASS invece vuole due tempi per ogni `Dialogue:` della sezione `[Events]`: la fine viene quindi ricavata dall’inizio della riga seguente, e l’ultima riga riceve la durata impostata sulla pagina. Le righe che condividono un timestamp — l’originale e la traduzione, per esempio — diventano un solo cue con due righe separate da `\N`. La dimensione che si perde è la temporizzazione: gli estremi non erano scritti nel file, sono stati calcolati.

L’elenco in cima alla pagina deriva da ciò che LRC e ASS sanno esprimere, non dal file che si carica, quindi non cambia. Titolo e artista dell’intestazione vengono letti e conservati dove il formato di destinazione ha un campo; l’offset resta com’è, senza essere applicato. Più file alla volta sono previsti: la coda li lavora in ordine e i risultati scendono insieme in un unico ZIP.

Esempi

Un file LRC tipico, convertito in ASS

Ingresso

[ti:Sample Song]
[ar:Some Artist]
[length:00:41.00]
[offset:+250]
[00:12.00]First line of the song.
[00:15.30]Second line.
[00:15.30]Second line, translated.
[00:18.00]
[00:21.50]Final line.

Uscita

[Script Info]
Title: Sample Song
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:12.00,0:00:15.30,Default,,0,0,0,,First line of the song.
Dialogue: 0,0:00:15.30,0:00:18.00,Default,,0,0,0,,Second line.\NSecond line, translated.
Dialogue: 0,0:00:18.00,0:00:21.50,Default,,0,0,0,,
Dialogue: 0,0:00:21.50,0:00:23.50,Default,,0,0,0,,Final line.

In questa conversione si perde la temporizzazione. Tutto il resto resta identico, riga per riga.

La stessa conversione su un input difficile

Ingresso

[ar:Some Artist]
[0:05.5]Leading zero omitted, one decimal.
[00:07]Second with no centiseconds.
[00:03.00]Out of order.
[00:07.00][00:09.00]Repeated chorus line.
[00:12.00]

Uscita

[Script Info]
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:03.00,0:00:05.50,Default,,0,0,0,,Out of order.
Dialogue: 0,0:00:05.50,0:00:07.00,Default,,0,0,0,,Leading zero omitted, one decimal.
Dialogue: 0,0:00:07.00,0:00:09.00,Default,,0,0,0,,Second with no centiseconds.\NRepeated chorus line.
Dialogue: 0,0:00:09.00,0:00:12.00,Default,,0,0,0,,Repeated chorus line.
Dialogue: 0,0:00:12.00,0:00:14.00,Default,,0,0,0,,

È il tipo di danno che i file reali hanno davvero: fini di riga misti, spazi vaganti, campi vuoti. Confrontandolo con l’esempio ordinato qui sopra si vede che cosa il parser perdona.

Domande frequenti

Come ottiene una fine, una riga LRC convertita in ASS?

Dall’inizio della riga successiva. Una riga LRC dura finché non comincia la seguente — è la regola che segue un lettore di testi — quindi le fini nell’ASS sono ricavate, non inventate. L’eccezione è l’ultima riga: non ha nulla dopo di sé e riceve la durata impostata su questa pagina.

Che aspetto ha l’output quando LRC diventa ASS?

Ha l’aspetto dell’ASS: nessun numero di cue, ogni sottotitolo è una riga `Dialogue:` nella sezione `[Events]`, con un campo di livello dove l’SRT tiene il numero. Ogni cue LRC diventa un cue ASS, nello stesso ordine e con lo stesso testo.

Come esce in ASS un cue LRC su due righe?

Come due righe separate da `\N`, che è il modo in cui l’ASS scrive un a capo forzato. L’accoppiamento resta: le due righe LRC appartengono ancora a un solo sottotitolo nell’output ASS, e il lettore le mostra insieme.

I cue LRC mantengono l’ordine nell’output ASS?

Sì, e lungo la strada vengono ordinati per tempo di inizio: prima i più antichi, come si aspetta ogni formato di questo sito e come li leggono i lettori. Se il file LRC elencava i cue fuori sequenza, l’ASS li rimette in ordine: è un cambiamento nella struttura del file, non nel contenuto, ed è voluto.

Posso riconvertire l’ASS in LRC?

Sì, e ha un elenco suo: convertire ASS in LRC perde temporizzazione, formattazione, posizionamento, karaoke e contenuti specifici del formato. Quell’elenco è diverso da quello qui sopra perché i due formati conservano cose diverse.

L’output ASS conserva la codifica del file LRC?

No: l’output è UTF-8, con fine riga Unix e senza BOM, qualunque codifica usasse il file LRC. Un file in UTF-16 o in una codifica a byte singolo di Windows viene decodificato in ingresso — il pannello del risultato lo segnala — e ciò che esce è sempre lo stesso ASS in UTF-8.

Strumenti correlati