Naar de hoofdinhoud
SubtitleMatrix

SBV naar JSON

FormaatconversieYouTube SBV
Of plak ondertiteltekst

Wat deze conversie verandert

In deze richting gaat niets verloren — elk kenmerk van het bronformaat heeft in het doelformaat een plek.

Deze lijst komt uit de capaciteitenmatrix voor deze twee formaten, niet uit het bestand dat je hebt geladen. Een specifiek bestand kan meer verliezen wanneer het kenmerken gebruikt die het formaat toestaat maar de matrix niet modelleert.

Deze pagina zet SBV om naar JSON. Sleep een bestand naar binnen — of plak de tekst — en je krijgt de JSON-versie terug. De conversie draait volledig in je browser, dus er wordt niets geüpload en je hebt geen account nodig.

Er gaat in deze richting niets verloren: SBV bewaart alleen tekst en tijd, en JSON kan beide bevatten. Elke SBV-regel wordt een object met een start en een eind in milliseconden en een array met tekstregels.

Eén bestand kan, een heel seizoen ook: de wachtrij werkt ze op volgorde af en de resultaten komen samen als één ZIP binnen.

Voorbeelden

Een typisch SBV-bestand, omgezet naar JSON

Invoer

0:00:01.000,0:00:03.500
The quick brown fox.

0:00:04.000,0:00:06.250
Jumps over the lazy dog.

0:00:07.000,0:00:09.000
Two lines here.
And a second one.

Uitvoer

{
  "version": 1,
  "cues": [
    {
      "start": 1000,
      "end": 3500,
      "lines": [
        "The quick brown fox."
      ]
    },
    {
      "start": 4000,
      "end": 6250,
      "lines": [
        "Jumps over the lazy dog."
      ]
    },
    {
      "start": 7000,
      "end": 9000,
      "lines": [
        "Two lines here.",
        "And a second one."
      ]
    }
  ]
}

Hier gaat niets verloren: vergelijk beide kanten regel voor regel.

Dezelfde omzetting op een weerbarstige invoer

Invoer

0:00:02.000,0:00:04.000
Carriage-return line endings.

	0:00:06.000,0:00:08.000
Indented timecode, no final newline.

Uitvoer

{
  "version": 1,
  "cues": [
    {
      "start": 2000,
      "end": 4000,
      "lines": [
        "Carriage-return line endings."
      ]
    },
    {
      "start": 6000,
      "end": 8000,
      "lines": [
        "Indented timecode, no final newline."
      ]
    }
  ]
}

Zo ziet schade in echte bestanden eruit — gemengde regeleinden, losse spaties, blokken zonder tekst. Vergelijk dit met het nette voorbeeld hierboven om te zien wat de parser vergeeft.

Veelgestelde vragen

Hoe ziet de uitvoer eruit als SBV JSON wordt?

Als JSON: een object met een versienummer en een cues-array. Elk blok heeft een start en een end in milliseconden en een lines-array met de tekst. Elk SBV-blok wordt één JSON-blok, in dezelfde volgorde, met dezelfde tekst.

Zijn de SBV-tijden exact in het JSON-bestand?

Ja, tot op de milliseconde. SBV schrijft 0:00:04.126 en JSON schrijft hetzelfde moment als 4126; er wordt niets afgerond of verschoven, en een blok dat 3,7 seconden in beeld stond, staat dat nog steeds.

Hoe komt een SBV-blok van twee regels in JSON uit?

Als twee items in de lines-array van het blok. Het paar blijft bij elkaar: de twee SBV-regels horen in de JSON-uitvoer nog steeds bij één ondertitel, en een speler toont ze samen.

Waarom staan er geen titel en geen styles in de JSON als SBV naar JSON gaat?

Omdat SBV ze niet heeft. Het formaat kent geen documenttitel en geen stijlvelden, en de omzetter schrijft geen lege sleutels voor dingen die er niet zijn: de uitvoer bestaat daarom uit een versienummer en een cues-array, zonder een styles-object dat toch leeg zou blijven.

Blijven SBV-blokken in dezelfde volgorde in JSON staan?

Ja, en ze worden onderweg op starttijd gesorteerd — vroegste eerst, de volgorde die elke speler verwacht. Stond je SBV-bestand niet in volgorde, dan zet de JSON-uitvoer het recht; dat raakt de structuur, niet de inhoud, en het is bewust gedaan.

Kan ik de JSON weer naar SBV omzetten?

Ja, en die richting heeft haar eigen lijst: JSON naar SBV verliest stijl, positie en karaoke als de JSON die bevat. Die lijst verschilt van de lijst hierboven omdat beide formaten andere dingen bewaren — SBV heeft niets dat JSON niet kan dragen.

Gerelateerde hulpmiddelen