Gå till huvudinnehållet
SubtitleMatrix

Konvertera LRC till JSON

FormatkonverteringSångtext (LRC)
Eller klistra in undertexttext

Inställningar

Används när källan saknar sluttider (vanlig text, LRC). Tidslinjen i resultatet genereras här i stället för att konverteras, så det här talet är vad du får.

Vad den här konverteringen ändrar

1 sak tappas eller kräver ett beslut

  • Tider

    textblockens sluttider – källan registrerar dem inte, så utdatans kommer att genereras i stället för att konverteras

Den här listan kommer från kapacitetsmatrisen för de här två formaten, inte från den specifika fil du laddade. En viss fil kan förlora mer om den använder funktioner som formatet tillåter men matrisen inte modellerar.

Den här sidan konverterar en LRC-fil till JSON. LRC skriver en tidpunkt som [00:12.00], i minuter, sekunder och hundradelar. JSON skriver tiden som ett heltal millisekunder, till exempel "start": 4126. Ett LRC-textblock är en rad med en tidsstämpel i hakparentes följd av själva texten. Ett JSON-textblock är ett objekt med start, end och text, samlade i en cues-lista. LRC räknar i hundradels sekunder, medan JSON har finare upplösning och tar emot värdet utan ytterligare avrundning.

Det som inte följer med: sluttiderna. Sluttiderna är härledda: LRC sparar bara starttider, så varje slut räknas fram från nästa rad. Rapporten ovanför filrutan listar förlusterna innan du väljer en fil, och räknar dem per fil när filen är inläst.

En fil eller en hel säsong: kön bearbetar filerna i tur och ordning, du kan avbryta mitt i och resultaten laddas ner tillsammans som en ZIP. Hela konverteringen sker i webbläsaren – filen lämnar aldrig datorn.

Exempel

En typisk LRC-fil konverterad till JSON

Indata

[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.

Resultat

{
  "version": 1,
  "title": "Sample Song",
  "cues": [
    {
      "start": 12000,
      "end": 15300,
      "lines": [
        "First line of the song."
      ]
    },
    {
      "start": 15300,
      "end": 18000,
      "lines": [
        "Second line.",
        "Second line, translated."
      ]
    },
    {
      "start": 18000,
      "end": 21500,
      "lines": [
        ""
      ]
    },
    {
      "start": 21500,
      "end": 23500,
      "lines": [
        "Final line."
      ]
    }
  ]
}

Förlorat i utdatafilen: sluttiderna. Jämför de två sidorna rad för rad.

Samma konvertering på en stökig fil

Indata

[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]

Resultat

{
  "version": 1,
  "cues": [
    {
      "start": 3000,
      "end": 5500,
      "lines": [
        "Out of order."
      ]
    },
    {
      "start": 5500,
      "end": 7000,
      "lines": [
        "Leading zero omitted, one decimal."
      ]
    },
    {
      "start": 7000,
      "end": 9000,
      "lines": [
        "Second with no centiseconds.",
        "Repeated chorus line."
      ]
    },
    {
      "start": 9000,
      "end": 12000,
      "lines": [
        "Repeated chorus line."
      ]
    },
    {
      "start": 12000,
      "end": 14000,
      "lines": [
        ""
      ]
    }
  ]
}

Så här ser skadade filer ut i verkligheten – blandade radbrytningar, lösa blanksteg och tomma fält. Jämför med det prydliga exemplet ovan för att se vad tolken förlåter.

Vanliga frågor

Hur skiljer sig tidskoderna i LRC och JSON?

LRC skriver en tidpunkt som [00:12.00], i minuter, sekunder och hundradelar. JSON skriver tiden som ett heltal millisekunder, till exempel "start": 4126. LRC räknar i hundradels sekunder, medan JSON har finare upplösning och tar emot värdet utan ytterligare avrundning.

Vad förloras när en LRC-fil blir JSON?

När LRC blir JSON går sluttiderna förlorade. Sluttiderna är härledda: LRC sparar bara starttider, så varje slut räknas fram från nästa rad. Texten, ordningen och starttiderna följer med.

Klarar JSON av formatering och placering som LRC har?

LRC har ingen stildel; spelaren ritar raden med sin egen typografi. LRC har ingen placering i filen. LRC har ingen karaoke. JSON bevarar hela modellen: stilar, placering, karaoke och strukturerade taggar. JSON sparar positionen som x, y och en justering. JSON sparar karaoketider som strukturerade taggar.

Vad händer med radbrytningar och antalet textblock när LRC konverteras till JSON?

LRC till JSON: Ett LRC-textblock är en rad med en tidsstämpel i hakparentes följd av själva texten. Flera rader med samma tidsstämpel bildar ett textblock med flera rader. JSON behåller hårda radbrytningar som en lista av rader.

Laddas min LRC-fil upp när jag konverterar den till JSON?

Nej. Både inläsningen av LRC-filen och skrivningen av JSON-filen sker i webbläsaren; ingen del av texten, tiderna eller taggarna skickas i en förfrågan. Du kan lägga in en hel säsong, avbryta mitt i och ladda ner resultaten som en ZIP.

Relaterade verktyg