Hopp til hovedinnhold
SubtitleMatrix

SRT til JSON

FormatkonverteringSubRip (SRT)
Eller lim inn underteksttekst

Hva denne konverteringen endrer

Ingenting går tapt i denne retningen — hver egenskap i kildeformatet har et sted å ta veien i målformatet.

Denne listen kommer fra egenskapsmatrisen for disse to formatene, ikke fra den bestemte filen du lastet inn. En bestemt fil kan miste mer hvis den bruker egenskaper formatet tillater, men matrisen ikke modellerer.

Denne siden konverterer SRT til JSON: slipp inn en fil eller lim inn teksten, og du får JSON-versjonen tilbake med tekstblokkene fra SRT i behold.

Ingenting i SRT mangler en plass i JSON: tidslinje, tekst, linjedeling og rekkefølge kommer over som de er.

En enkelt SRT-fil går like fint som hundre, så du kan sende hele sesongen gjennom JSON-konverteringen og laste ned alt som én ZIP.

Arbeidet med SRT til JSON skjer i nettleseren din — ingen server ser filen.

Eksempler

En typisk SRT-fil konvertert til JSON

Inndata

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

Ingenting går tapt her: SRT og JSON uttrykker de samme tingene, så de to sidene kan sammenlignes linje for linje.

Samme SRT-til-JSON-konvertering med vanskelig inndata

Inndata

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."
      ]
    }
  ]
}

Slik ser skader på ekte filer ut — blandede linjeskift, løse mellomrom, tomme felt. Sammenlign med det ryddelige eksempelet over for å se hva SRT-parseren tilgir.

Ofte stilte spørsmål

Hva går tapt når SRT blir JSON?

Ingenting. SRT lagrer tekstblokker med start- og sluttid, millisekunder og innebygde tagger i selve teksten, og JSON lagrer et JSON-skjema med tider i millisekunder og tagger per linje — de to kan sammenlignes linje for linje, og hver tekstblokk, hvert tidsstempel og hver linje kommer over uendret.

Hvordan skrives tidsstemplene om fra SRT til JSON?

En tid i SRT ser slik ut: `00:00:04,126` — timer, minutter, sekunder og millisekunder, med komma foran millisekundene. I JSON skrives den som `"start": 4126` — heltall millisekunder. Begge formatene bruker samme oppløsning, så ingen avrunding skjer. Rekkefølgen er den samme, og ingen tekstblokk flyttes mer enn avrundingen tilsier.

Hva skjer med formateringen fra SRT i JSON?

Formateringen fra SRT kommer over så langt den rekker: SRT har innebygde tagger for fet, kursiv og farge, og JSON har full formatering å skrive dem inn i. JSON får ikke mer formatering enn kilden hadde.

Hvordan ser en JSON-fil ut når den er laget fra SRT?

JSON er et objekt med `version` og en `cues`-tabell, der hver tekstblokk har `id`, `start`, `end` og `lines`. Konverteringen fra SRT fyller den formen: hver tekstblokk blir én JSON-blokk, i samme rekkefølge, med SRT-ens tekst delt i de samme linjene.

Kan jeg konvertere JSON tilbake til SRT, og hva går tapt da?

Ja, og den veien har sin egen tap-liste: stiltabellen og den navngitte stilen forsvinner — skrift, størrelse, farge, omriss og skygge — mens innebygde tagger for fet og kursiv blir med som tekst; plasseringen forsvinner, og hver tekstblokk faller tilbake til standardplassen; karaoketimingen per stavelse forsvinner. Det er ikke den samme listen som SRT → JSON, fordi de to formatene beholder ulike ting.

Relaterte verktøy