SRT naar VTT
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.
SRT en WebVTT dragen dezelfde ondertitels in een ander omhulsel, en deze pagina verplaatst een bestand van het ene naar het andere. De tijdlijn, de bloktekst, de regeleinden en eventuele inline-opmaak blijven ongewijzigd; wat verandert is de syntax eromheen. Elke SRT-tijdstempel van de vorm 00:00:01,000 wordt 00:00:01.000, omdat WebVTT een punt schrijft waar SRT een komma schrijft, en het bestand krijgt de WEBVTT-kopregel die spelers bovenaan eisen.
De bloknummers blijven staan. WebVTT staat een optionele ID vóór elk blok toe en geen enkele speler heeft die nodig, maar met de nummers uit het SRT-bestand kun je beide versies naast elkaar lezen en hetzelfde blok in allebei terugvinden.
Rommelige invoer is geen probleem: een byte-order mark, Windows-regeleinden, een uurveld met één cijfer of een blok met lege tekst worden allemaal zonder klagen gelezen, en de uitvoer krijgt elke keer dezelfde nette structuur. Sleep er één bestand in of een heel seizoen; de wachtrij werkt ze in volgorde af, je kunt halverwege stoppen en de resultaten komen samen als één ZIP binnen. Niets wordt geüpload — de hele omzetting draait in je browser.
Voorbeelden
Een typisch SRT-bestand, omgezet naar VTT
Invoer
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.
Uitvoer
WEBVTT
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.
Hier gaat niets verloren: vergelijk beide kanten regel voor regel.
Dezelfde omzetting op een rommelige invoer
Invoer
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.
Uitvoer
WEBVTT
1
00:00:01.000 --> 00: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.
Zo zien echte bestanden eruit — gemengde regeleinden, losse spaties, lege velden. Vergelijk met het nette voorbeeld hierboven om te zien wat de parser vergeeft.
Veelgestelde vragen
Blijven mijn SRT-tijden behouden bij het omzetten naar WebVTT?
Ja, tot op de milliseconde. De SRT-tijdstempel 00:00:01,250 en de WebVTT-tijdstempel 00:00:01.250 benoemen hetzelfde moment; alleen het teken tussen seconden en milliseconden verandert — komma wordt punt.
Blijven de bloknummers uit het SRT-bestand staan?
Ja, op dezelfde plek. WebVTT leest de nummers vóór een blok als blok-ID’s, dus 1, 2 en 3 uit het SRT-bestand verschijnen als 1, 2 en 3 in de uitvoer. Ze zijn cosmetisch, maar ze lijnen beide bestanden netjes uit als je ze vergelijkt.
Wat gebeurt er met cursieve en vette tags van SRT naar VTT?
Die gaan ongewijzigd mee. Beide formaten schrijven inline-opmaak tussen punthaken, dus een stuk cursief in de invoer is een stuk cursief in de uitvoer. Niets wordt herschreven of vertaald.
Waarom begint de VTT-uitvoer met de regel WEBVTT?
Omdat dat de eerste regel van het formaat is. Een bestand dat er verder uitziet als WebVTT maar niet met het woord WEBVTT begint, wordt door spelers geweigerd — de meest voorkomende reden dat een met de hand bewerkt .vtt-bestand niet laadt. De regel wordt voor je toegevoegd.
Wordt mijn SRT-bestand ergens naartoe gestuurd?
Nee. Het bestand wordt in het browsertabblad gelezen en herschreven, dus over de lijn gaat alleen de pagina zelf. Niets van de ondertitels — tekst, tijden of tags — belandt in een verzoek, en zodra de pagina geladen is blijft hij werken met het netwerk uit.