29,97 fps naar 23,976 fps
Of plak ondertiteltekst
Opties
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.
De beeldsnelheid van de versie waarmee je de ondertitels gaat gebruiken — de video die je daadwerkelijk afspeelt. De toegepaste factor is het eerste vak gedeeld door dit vak, dus 24 naar 25 geeft 0,96: een film loopt op PAL 4% sneller, en een speelfilm van 100 minuten past op een band van 96 minuten. Draai je de twee vakken om, dan verschuift de hele tijdlijn met hetzelfde bedrag de verkeerde kant op.
Deze pagina neemt een ondertitelbestand waarvan de tijdas in 29,97 frames per seconde is geteld en zet het op een tijdas van 23,976. Elke tijdstempel wordt met 1,25 vermenigvuldigd — precies vijf vierde — dus het bestand komt een kwart langer uit: een blok op achtenveertig seconden wordt er een op een minuut, en een blok dat vierentwintig minuten aangeeft in een aflevering van dertig komt terug op dertig. De twee velden zijn al ingevuld; pas ze aan als je bestand in iets anders is geteld.
De fout is dezelfde berekening als zijn spiegelbeeld, vanaf de andere kant bekeken. Framenummers gedeeld door 29,97 terwijl ze bij een 23,976-tijdas hoorden, komen een kwart te klein uit, omdat 23,976 gedeeld door 29,97 0,8 is — dus de hele tijdas wordt tot vier vijfde van zijn lengte samengedrukt en elke ondertitel verschijnt 20 procent te vroeg, steeds verder vooruit naarmate de film vordert. Vermenigvuldigen met 1,25 deelt die fout er weer uit.
Herkenningen welke kant je op moet, is de hele klus, en het symptoom zegt het. Ondertitels die te laat lopen en steeds later worden, met een aflevering van vierentwintig minuten waarvan het laatste blok dertig minuten beweert, hebben 0,8 nodig. Ondertitels die te vroeg verschijnen en steeds vroeger worden, met een aflevering van vierentwintig minuten waarvan het laatste blok vierentwintig beweert terwijl de aflevering dertig minuten duurt, hebben deze pagina nodig. Beide bestanden zijn uit dezelfde verkeerd gedeelde framenummers gebouwd; alleen de richting van de fout verschilt.
1,25 is exact, om dezelfde reden als zijn spiegelbeeld: 29,97 is 30000/1001 en 23,976 is 24000/1001, dus de gedeelde deling door 1001 valt weg en 29,97 gedeeld door 23,976 is simpelweg 30000 gedeeld door 24000 — vijf vierde, niets afgerond en niets over. Elk blok krijgt een kwart meer schermtijd, dus de leessnelheid van elke regel daalt met 20 procent, en dat is de enige richting in deze groep die de druk verlicht in plaats van verhoogt. Niets wordt geüpload, en een heel seizoen gaat in één keer door de wachtrij — SRT-, WebVTT-, ASS-, SSA-, SBV-, SAMI-, MicroDVD-, TTML-, JSON- en CSV-bestanden worden gelezen als wat ze werkelijk zijn in plaats van wat de extensie suggereert.
Voorbeelden
Het kwart, in het echt
Invoer
1
00:00:01,000 --> 00:00:03,000
Hello there.
2
00:01:00,000 --> 00:01:02,000
One minute in.
Uitvoer
1
00:00:01,250 --> 00:00:03,750
Hello there.
2
00:01:15,000 --> 00:01:17,500
One minute in.
1,25 is 29,97 gedeeld door 23,976. Het blok op één seconde wint 250 ms en dat op een minuut wint 15.000 ms — zestig keer de afstand tot nul, zestig keer de beweging. Beide randen van elk blok worden vermenigvuldigd, dus een regel van twee seconden krijgt 2,5 seconde, en uit die extra ruimte komt de verbetering van de leessnelheid.
Te vroeg met een kwart van de verstreken tijd
Invoer
1
00:08:00,000 --> 00:08:02,000
Eight minutes in.
2
00:24:00,000 --> 00:24:02,000
Twenty-four minutes in.
Uitvoer
1
00:10:00,000 --> 00:10:02,500
Eight minutes in.
2
00:30:00,000 --> 00:30:02,500
Twenty-four minutes in.
Twee minuten te vroeg op de acht-minuutmarkering, zes minuten te vroeg op de vierentwintig-minuutmarkering — in beide gevallen een kwart van de verstreken tijd, en zo ziet een verhoudingsprobleem eruit in plaats van een verschuiving. Het laatste blok is degene die je na het omzetten controleert: open het bestand op zijn nieuwe tijdstempel en de regel hoort er te staan; staat hij er, dan klopt alles ervoor ook.
De frames blijven staan, de verklaring beweegt
Invoer
{1}{1}29.97
{300}{360}Hello
Uitvoer
{1}{1}23.976
{300}{360}Hello
MicroDVD telt in frames, en aan de frames was niets fout — de snelheid waardoor ze werden gedeeld was dat. Frame 300 op 29,97 leest als tien seconden, dat is de vroegheid waarover geklaagd wordt; op 23,976 leest het als twaalfenhalf, en daar hoort dat blok. Dus wordt de eerste regel aangepast en geen enkel framenummer aangeraakt: ze herschrijven zou het extra kwart twee keer toepassen.
Veelgestelde vragen
Waarom is de factor voor 29,97 naar 23,976 precies 1,25?
Omdat beide snelheden een rond getal gedeeld door 1001 zijn — 29,97 is 30000/1001 en 23,976 is 24000/1001 — dus de een door de ander delen schrapt de 1001 en laat 30000 boven 24000 over, dat is vijf vierde. Niets wordt afgerond en niets benaderd, en daarom landt het blok op achtenveertig seconden op precies een minuut.
Mijn ondertitels verschijnen te vroeg en steeds vroeger — is dit het paar?
Controleer of de vroegheid een kwart van de verstreken tijd is. Twee minuten te vroeg op de acht-minuutmarkering, zes minuten op de vierentwintig-minuutmarkering, en vierentwintig minuten te vroeg in een film van twee uur is precies dit paar. De spiegelpagina behandelt het tegenovergestelde symptoom: ondertitels die te laat lopen en steeds later worden hebben 0,8 nodig in plaats van 1,25.
Kan ik dit paar gebruiken om van een NTSC-video rechtstreeks naar PAL te gaan?
Nee, en via deze pagina gaan is met opzet de lange weg. 29,97 naar 25 is 1,19880 en daar is geen pagina voor, omdat 29,97 de snelheid is waarmee het signaal loopt en niet een snelheid waarmee de beelden worden afgespeeld — film erin wordt opgevuld met herhaalde frames die de speelduur ongemoeid laten. De eerlijke route van een NTSC-tijdas naar een PAL-tijdas gaat eerst terug naar de filmsnelheid, en dat is deze omzetting, en daarna 23,976 naar 25.
De video is 29,97 en de ondertitels lijken te kloppen — verpest deze pagina ze dan?
Ja, en dit is de spiegel van de val op de andere pagina. Een film in een NTSC-signaal krijgt pulldown, die frames herhaalt zonder de speelduur te veranderen, dus een bestand dat tegen die video is getimed, is al correct. Alleen een bestand waarvan de framenummers door de verkeerde snelheid zijn gedeeld, hoeft omgezet te worden; een correct bestand met 1,25 vermenigvuldigen maakt elke ondertitel een kwart van de tijd te laat.
Wat gebeurt er met bloklengtes en leessnelheid wanneer de tijdas een kwart groeit?
Elk blok wint 25 procent van zijn duur en schuift ook later, dus een regel van twee seconden krijgt 2,5 seconde terwijl de woorden precies blijven zoals ze waren. Dat verlaagt de leessnelheid van elke regel met 20 procent, wat dit een van de twee paren in de groep maakt die druk van een bestand halen in plaats van toevoegen — het andere is de halvering van 50 naar 25.
Welke werkwijze levert een bestand op dat te vroeg is in plaats van te laat?
Een werkwijze die de snelheid van de container als de snelheid van de beelden behandelde. NTSC draagt 29,97, dus een gereedschap dat dat getal van de video afleest en framenummers erdoor deelt, timet elke film in het signaal te vroeg, omdat de film zelf op 23,976 loopt en de pulldown alleen opvulling was. De oplossing is de snelheid verklaren waarmee de beelden echt lopen, en dat is wat deze pagina doet: 29,97 eerst, 23,976 tweede.