Naar de hoofdinhoud
SubtitleMatrix

SMI naar VTT

Of plak ondertiteltekst

Wat deze conversie verandert

2 dingen vervallen of vragen om een beslissing

  • Positionering

    positionering op het scherm (elk blok keert terug naar de standaardpositie)

  • Formaatspecifieke inhoud

    inhoud die het bronformaat buiten zijn blokken bewaart (blokken die geen ondertitel zijn, koptekst, instellingen per blok, uitgecommentarieerde gebeurtenissen) — het doelformaat heeft er geen plek voor

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 SMI om naar VTT. Sleep een bestand naar binnen — of plak de tekst — en je krijgt de VTT-versie terug. De conversie draait volledig in je browser, dus er wordt niets geüpload en je hebt geen account nodig.

De twee formaten bewaren niet dezelfde dingen: de plaatsing die SAMI via CSS kent en de kop van het document hebben in VTT geen plek; de tekst en de tijden gaan wel volledig mee. De lijst hierboven komt uit wat beide formaten kunnen uitdrukken.

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 SMI-bestand, omgezet naar VTT

Invoer

<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial; }
.ENCC { Name: English; lang: en-US; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P Class=ENCC>Hello there.
<SYNC Start=3000>
<P Class=ENCC>&nbsp;
<SYNC Start=3500>
<P Class=ENCC>How are you?<br>Fine, thanks.
<SYNC Start=6000>
<P Class=ENCC>&nbsp;
</BODY>
</SAMI>

Uitvoer

WEBVTT

00:00:01.000 --> 00:00:03.000
Hello there.

00:00:03.500 --> 00:00:06.000
How are you?
Fine, thanks.

Verloren in deze uitvoer: positie en formaateigen inhoud. Alles wat overblijft klopt regel voor regel.

Dezelfde omzetting op een weerbarstige invoer

Invoer

<SAMI>
<HEAD>
<TITLE>Episode 1</TITLE>
<STYLE TYPE="text/css">
<!--
.ENCC { Name: English; }
-->
</STYLE>
</HEAD>
<BODY>
<sync start="00:00:02,500">
<P Class=ENCC>Line one<br>Line two
<sync start=9000>
<P Class=ENCC>Tom &amp; Jerry
<SYNC Start=12000>
<P Class=ENCC>&nbsp;
</BODY>
</SAMI>

Uitvoer

WEBVTT

00:00:02.500 --> 00:00:09.000
Line one
Line two

00:00:09.000 --> 00:00:12.000
Tom &amp; Jerry

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

Wat gebeurt er met de positie op het scherm van SMI naar VTT?

VTT kan wel een plaatsing per cue aangeven, maar deze omzetting vult die niet: de uitlijning en plaatsing uit de SAMI-CSS zijn geen VTT-cue-instellingen. Elk blok valt dus terug op de standaardpositie die de speler kiest — meestal onderaan het beeld en gecentreerd.

Wat gebeurt er met het <STYLE>-blok, <TITLE> en de Class=-attributen van SAMI in VTT?

Die vallen weg. VTT kent wel een STYLE-blok, maar dat is een ander soort stijl dan de CSS van SAMI; de klasse-attributen en de documenttitel hebben er geen equivalent. Wat overblijft zijn cues met een tijdregel en tekst — en die tekst behoudt de nadruk die erin stond.

Hoe ziet de uitvoer eruit als SMI VTT wordt?

Als VTT: een WEBVTT-kop, daarna cues met een tijdregel en de tekst, en een lege regel tussen de cues. Elk SMI-blok wordt één cue, in dezelfde volgorde, met dezelfde tekst. Er worden geen identificatienummers voor de cues geschreven.

Zijn de SMI-tijden exact in het VTT-bestand?

Ja, tot op de milliseconde. SMI schrijft Start=4126 en VTT schrijft hetzelfde moment als 00:00:04.126; er wordt niets afgerond of verschoven. De eindtijd komt uit het volgende <SYNC>-blok en wordt de rechterkant van de tijdregel.

Hoe komt een SMI-blok van twee regels in VTT uit?

Als twee regels, de ene onder de andere. Het paar blijft bij elkaar: de twee SMI-regels horen in de VTT-uitvoer nog steeds bij één cue.

Blijven SMI-blokken in dezelfde volgorde in VTT staan?

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

Kan ik de VTT weer naar SMI omzetten?

Ja, en die richting heeft haar eigen lijst: VTT naar SMI verliest de eigen blokken van VTT — de WEBVTT-kop, NOTE en STYLE — en moet voor elk blok een eigen <SYNC>-blok maken. Stijl en positie gaan daarbij niet verloren, want SMI kan beide ook uitdrukken.

Behoudt de VTT-uitvoer de tekencodering van het SMI-bestand?

Nee — de uitvoer is UTF-8, met Unix-regeleinden en zonder BOM, wat het SMI-bestand ook gebruikte. Een bestand in UTF-16 of in een Windows-codering met één byte wordt bij het inlezen gedecodeerd; wat eruit komt is altijd dezelfde UTF-8-VTT.

Gerelateerde hulpmiddelen