Gå til hovedindholdet
SubtitleMatrix

SRT til JSON

FormatkonverteringSubRip (SRT)
Eller indsæt underteksttekst

Hvad denne konvertering ændrer

Intet går tabt i denne retning – hver egenskab i kildeformatet har et sted at ende i målformatet.

Denne liste kommer fra kapabilitetsmatricen for disse to formater, ikke fra den konkrete fil, du indlæste. En bestemt fil kan miste mere, hvis den bruger egenskaber, som formatet tillader, men matricen ikke modellerer.

Denne side konverterer en SubRip (SRT)-fil til SubtitleMatrix JSON. SRT skriver 00:00:01,000, mens JSON skriver start: 1000, og tiden kan skrives uden afrunding.

Når SRT bliver JSON, melder kapacitetstabellen intet tab: alt, som SRT kan udtrykke, har en plads i JSON. For SRT til JSON bekræfter rapporten over filfeltet det, før du vælger en fil, og tæller eventuelle fund per fil, når filen er læst.

En fil eller en hel sæson: køen behandler filerne i rækkefølge, du kan afbryde undervejs, og resultaterne hentes samlet som én ZIP-fil. Hele konverteringen kører i browseren – filen forlader aldrig din computer.

Eksempler

En typisk SRT-fil konverteret til JSON

Input

1
00:00:01,000 --> 00:00:03,500
Hello there.

2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.

3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.

Resultat

{
  "version": 1,
  "cues": [
    {
      "id": "1",
      "start": 1000,
      "end": 3500,
      "lines": [
        "Hello there."
      ]
    },
    {
      "id": "2",
      "start": 3500,
      "end": 6000,
      "lines": [
        {
          "text": "Whispering now.",
          "tags": [
            {
              "kind": "italic",
              "start": 0,
              "end": 10
            }
          ]
        },
        "And a second line."
      ]
    },
    {
      "id": "3",
      "start": 6000,
      "end": 9250,
      "lines": [
        {
          "text": "Bold statement.",
          "tags": [
            {
              "kind": "bold",
              "start": 0,
              "end": 4
            }
          ]
        }
      ]
    }
  ]
}

Tidskoderne skrives om fra 00:00:01,000 til start: 1000; ordene og rækkefølgen er den samme. Sammenlign de to filer linje for linje.

Samme konvertering på en beskidt SRT-fil

Input

1
0:00:01,00 --> 0:00:03,500
<B>Bold</B> and <I>italic</I>.


2
00:00:03,500 --> 00:00:06,000


3
00:00:08,000 --> 00:00:09,000
Last one.

Resultat

{
  "version": 1,
  "cues": [
    {
      "id": "1",
      "start": 1000,
      "end": 3500,
      "lines": [
        {
          "text": "Bold and italic.",
          "tags": [
            {
              "kind": "bold",
              "start": 0,
              "end": 4
            },
            {
              "kind": "italic",
              "start": 9,
              "end": 15
            }
          ]
        }
      ]
    },
    {
      "id": "2",
      "start": 3500,
      "end": 6000,
      "lines": []
    },
    {
      "id": "3",
      "start": 8000,
      "end": 9000,
      "lines": [
        "Last one."
      ]
    }
  ]
}

Sådan ser beskadigede filer ud i virkeligheden – blandede linjeskift, løse mellemrum og tomme felter. Sammenlign med det pæne eksempel ovenfor for at se, hvad SRT-læseren tilgiver, før filen skrives som JSON.

Ofte stillede spørgsmål

Hvordan skrives den samme tid i SRT og JSON?

SRT skriver 00:00:01,000, mens JSON skriver start: 1000, og tiden kan skrives uden afrunding.

Hvad går tabt, når SRT bliver JSON?

Når SRT bliver JSON, melder kapacitetstabellen intet tab: alt, som SRT kan udtrykke, har en plads i JSON, så teksten, tidslinjen og linjeskiftet bevares. Det, der ændrer sig, er syntaksen omkring dem.

Kan JSON rumme det, som SRT gemmer uden for tekstblokkene?

Ja. SRT har ingen blokke uden for tekstblokkene. Der er derfor intet privat indhold at miste. JSON har ingen private blokke, men ukendte nøgler bevares.

Hvordan håndteres en beskidt SRT-fil, før den bliver JSON?

Når SRT bliver JSON, læses kilden sådan: BOM og CRLF bevares; ulæselige blokke springes over med en note, og en sluttid før starttiden rettes til 1 ms. Sådan skrives resultatet: Filen skrives med to mellemrum, LF og tekstblokke sorteret efter starttid.

Hvordan bevares struktur og tags, når SRT bliver JSON?

Når SRT bliver JSON, gemmes formatering som strukturerede tags med art, start, slut og værdi. SRT erklærer ingen formatering; fed, kursiv og farve findes kun som tags i teksten. Position gemmes som x, y og align, og ukendte nøgler bevares, så felter, vi ikke kender, ikke forsvinder.

Bliver min SRT-fil uploadet, når jeg laver JSON?

Nej. Både læsningen af SRT og skrivningen af JSON sker i browseren, så intet af teksten, tiderne eller tagsene sendes i en anmodning. Du kan lægge en hel sæson ind, afbryde undervejs og hente resultaterne som én ZIP-fil; når siden er indlæst, virker den også uden net.

Relaterede værktøjer