Naar de hoofdinhoud
SubtitleMatrix

Ondertitels op duur splitsen

SynchronisatieSplitsen op een tijdstip
Of plak ondertiteltekst

Opties

Een duur — 3000, 3s, 1m30s en 00:00:03,000 werken allemaal. Elk blok dat langer dan dit in beeld is, wordt in zoveel stukken verdeeld als nodig, dus een blok van 8 seconden met hier 3000 wordt drie stukken, en de tijd wordt gelijkmatig verdeeld, ongeacht de tekstlengte van de stukken. Gebruik dit wanneer het probleem is hoe lang een blok in beeld blijft; gebruik het tekensvak op de andere pagina wanneer het probleem is hoeveel tekst het bevat.

In welke beeldsnelheid de tijden worden geteld. Op de formaatpagina’s is dit wat MicroDVD nodig heeft, want het slaat tijden op als framenummers. Op de beeldsnelheidspagina’s is het de snelheid waartegen het bestand getimed is — de versie waarvoor de ondertitels gemaakt zijn — en het tweede vak op de pagina neemt de snelheid van de video die je gaat gebruiken. 23,976, 24, 25, 29,97, 30, 50, 59,94 en 60 zijn de gebruikelijke. Een verkeerde waarde verschuift de hele tijdlijn, en op de beeldsnelheidspagina’s verschuift ze die met een verhouding in plaats van met een vast bedrag.

Deze pagina verdeelt elk blok dat langer in beeld blijft dan je limiet in zoveel stukken als nodig. De limiet begint bij 7000 ms — zeven seconden, het plafond dat de meeste stijlgidsen voor één blok noemen — en is je limiet in seconden uitgedrukt in plaats van in tekens, dan is dit de pagina die je wilt. Een blok van acht seconden met de limiet op drie seconden wordt drie blokken van ongeveer 2667 ms elk.

Het aantal stukken wordt uit de duur berekend en niet met de hand geteld, en de tijd wordt gelijkmatig over de stukken verdeeld. De tekst wordt daarna geknipt bij de woordgrenzen die het dichtst bij die gelijke verdelingen liggen, zodat de stukken zelden precies evenveel tekens houden. Dat is met opzet: je vroeg om duren, dus duren zijn wat het gereedschap garandeert, en de tekst volgt zo dicht als hele woorden toelaten.

Buiten het blok dat wordt verdeeld beweegt niets. Een blok van precies de limiet blijft staan, en een bestand waarin niets te lang is komt byte voor byte terug — dit gereedschap verdeelt alleen, dus een limiet die te hoog staat is een veilige eerste run op een bestand dat je niet kent. Zet de limiet lager en je krijgt kortere stukken en meer ervan; de stukken tellen nog steeds precies op tot de oorspronkelijke span.

Zoals op elke pagina hier wordt het bestand in dit browsertabblad gelezen, verdeeld en opnieuw geschreven, zonder upload. SRT, WebVTT, ASS, SSA, SBV, SAMI, MicroDVD, TTML, JSON en CSV worden allemaal aangenomen, en een bestand waarvan het aantal blokken veranderde wordt in tijdvolgorde geschreven met nummering vanaf 1.

Voorbeelden

Een blok van acht seconden tegen een limiet van drie seconden

Invoer

1
00:00:00,000 --> 00:00:08,000
The rain kept falling all through the night and no one in the house could sleep.

Uitvoer

1
00:00:00,000 --> 00:00:02,667
The rain kept falling all

2
00:00:02,667 --> 00:00:05,333
through the night and no one

3
00:00:05,333 --> 00:00:08,000
in the house could sleep.

Drie stukken van 2667, 2666 en 2667 ms — de afronding moet ergens heen, en het laatste stuk neemt wat overblijft zodat de span precies op 8000 ms sluit. De knippen vallen na „all” en na „one”, de woordgrenzen die het dichtst bij een derde en twee derde van de weg liggen, dus de stukken houden 25, 28 en 25 tekens in plaats van elk 26.

Een blok van precies de limiet, en een van één milliseconde erover

Invoer

1
00:00:01,000 --> 00:00:04,000
Exactly three seconds long.

2
00:00:05,000 --> 00:00:08,001
Just one millisecond too long.

Uitvoer

1
00:00:01,000 --> 00:00:04,000
Exactly three seconds long.

2
00:00:05,000 --> 00:00:06,501
Just one millisecond

3
00:00:06,501 --> 00:00:08,001
too long.

Het eerste blok is precies 3000 ms en blijft heel; het tweede is 3001 ms en wordt midden door geknipt. Dat is de eerlijke lezing van „langer dan de limiet”, en daarom zal een limiet die één milliseconde te laag staat elk blok dat er precies op zit verdubbelen. Controleer de duren in je bestand voordat je je op een getal vastlegt.

Een duurlimiet die niets raakt

Invoer

1
00:00:01,000 --> 00:00:02,000
Short.

2
00:00:03,000 --> 00:00:03,900
Also short.

Uitvoer

1
00:00:01,000 --> 00:00:02,000
Short.

2
00:00:03,000 --> 00:00:03,900
Also short.

Dertig seconden is breder dan alles hier, dus het bestand komt onaangeroerd terug. Er wordt door een ruime limiet niets samengevoegd of uitgerekt: deze pagina verdeelt blokken en doet niets anders, wat haar de veilige manier maakt om erachter te komen hoe lang het langste blok van een bestand werkelijk is.

Veelgestelde vragen

Waar komt de limiet van zeven seconden vandaan, en is die overal hetzelfde?

Zeven seconden is het vaakst genoemde plafond voor één blok en het is een leessnelheidsregel in vermomming: een gemiddelde lezer haalt ongeveer 15 tot 20 tekens per seconde, dus een blok van twee regels en 84 tekens heeft ergens rond de vijf seconden nodig en een langzame lezer meer. Omroepspecificaties verschillen — meerdere Europese gidsen komen op zes seconden uit — dus behandel het veld als uitgangspunt en controleer de specificatie waaraan je levert. Het gereedschap past toe wat er in het veld staat, zonder eigen mening.

Hoe bepaalt het gereedschap in hoeveel stukken een blok uiteenvalt?

Het deelt de duur door je limiet en rondt naar boven af, dus 8000 ms tegen 3000 ms is drie stukken en 8000 ms tegen 4000 ms is twee. De stukken nemen daarna gelijke aandelen van de span, en daarom landen de grenzen op derden en helften van het oorspronkelijke blok in plaats van op de zinnen of regels erin. Wil je dat de knippen de tekst volgen, dan zijn de pagina’s die op tekens of op zinseinden splitsen degene die dat doen.

Kan ik een limiet zo kort zetten dat een blok in honderd stukken valt?

Er is een plafond van 200 stukken per blok, en een tweede dat in de praktijk meer uitmaakt: een stuk kan niet korter zijn dan een milliseconde. Een blok van negen seconden met een limiet van 1 ms geeft je dus 200 stukken in plaats van 9000, en het verslag zegt dat de limiet niet kon worden gehaald. Dat is een vangrail tegen een verdwaalde toetsaanslag die één blok in een eigen bestand verandert, geen limiet die je met een realistisch getal zult raken.

Verandert het verdelen van een lang blok de tijdas van het hele bestand?

Nee. De stukken van een verdeeld blok vullen precies de span die het oorspronkelijke blok innam, en elk ander blok houdt zijn tijden tot op de milliseconde. Het enige dat elders verandert is de nummering, omdat een bestand waarvan het aantal blokken veranderde in tijdvolgorde vanaf 1 wordt uitgeschreven. Droeg een blok dat je verdeelde een stijl, dan blijft die bij het eerste stuk en vertelt het verslag je hoeveel nieuwe stukken zonder stijl uitkwamen.

Mijn bestand heeft blokken die blijven staan omdat ze één korte regel houden. Is deze pagina de oplossing?

Maar gedeeltelijk. Deze pagina kan zo’n blok in tweeën knippen, maar beide stukken houden dan een deel van dezelfde korte regel, wat meestal geen verbetering is — de lezer krijgt dezelfde woorden in twee porties in plaats van één. Een blok dat blijft staan omdat er niets anders gebeurt, kun je beter aanpakken door de tijden zelf te herstellen, en dat is wat de verschuivings- en schaalpagina’s doen, en door te controleren of het blok een pauze in de dialoog moest dekken.

Kan een bestand te groot zijn voor deze pagina?

Bestanden tot 64 MB worden gelezen, wat veel meer is dan enige ondertitelspoor: een uur film is ongeveer 100 KB. Daarboven zegt de pagina het in plaats van stil te falen, omdat een bestand van die grootte vrijwel zeker geen ondertitelbestand is. Een heel groot echt bestand — een hele serie bijvoorbeeld — kun je beter aflevering voor aflevering door de wachtrij halen, waar elke download kan worden gecontroleerd voordat je verdergaat.

Gerelateerde hulpmiddelen