Gå til hovedindholdet
SubtitleMatrix

Skalér underteksternes tidslinje

TidsjusteringSkalér hele tidslinjen
Eller indsæt underteksttekst

Indstillinger

En procentdel: 100 lader filen være, som den er, 50 halverer hele tidslinjen. Til arbejde med billedhastighed er faktoren kildehastigheden divideret med målhastigheden – en filmtimet fil, der skal bruges ved 25 fps PAL, som kører 4 % hurtigere, kræver 96; en PAL-timet fil, der skal tilbage til en 24 fps-master, kræver 104,1667. Hver start og hver slutning ganges med det samme forhold, så tekstbloklængder og hullerne mellem dem ændrer sig sammen.

Hvilken billedhastighed tiderne tælles i. På formatsiderne er det, hvad MicroDVD har brug for, fordi formatet gemmer tider som billednummer. På siderne om billedhastighed er det den hastighed, filen blev timet efter – den version, underteksterne blev lavet til – og sidens anden boks tager hastigheden for den video, du skal bruge dem med. 23,976, 24, 25, 29,97, 30, 50, 59,94 og 60 er de almindelige. Tager man fejl, forskydes hele tidslinjen, og på siderne om billedhastighed forskydes den med et forhold i stedet for et fast beløb.

Denne side ganger hver tidsangivelse i en undertekstfil med en procentdel. Skriv 104,1667, og hele tidslinjen strækkes med det; skriv 96, og den kommer tilbage; skriv 50, og filen komprimeres til halv længde. Både starten og slutningen af hver tekstblok ganges med samme forhold, så bloklængder og mellemrummene mellem dem ændrer sig sammen, og jo senere en undertekst ligger, desto længere flytter den sig.

Grunden til, at den sidste del betyder noget, er, at dette er den eneste form for timingkorrektion, der retter drift. En fil, der er to sekunder for sen i det første minut og to minutter for sen i det sidste, har ikke et forskydningsproblem, men et hastighedsproblem: nogen har timet den mod en version, der kørte med en anden hastighed. At flytte alt med et fast beløb gør begyndelsen værre; at gange alt med et forhold gør begge ender rigtige, fordi den fejl, der rettes, vokser med afstanden fra nul.

Det klassiske tilfælde er en forskel i billedhastighed – en fil timet til 24 fps, som skal bruges med en version på 25 fps, eller omvendt. Film kører 4 procent hurtigere på PAL, så spilletiden er 96 procent af den oprindelige: en film på 100 minutter passer på en båndkopi på 96 minutter. En fil, der er timet mod filmen, skal derfor komprimeres med 96, og en fil, der er timet mod PAL-versionen, skal strækkes med 104,1667 for at sidde på filmversionen igen. Film overført ved 23,976 fps er en anelse anderledes igen, og det er det, fps-siderne i denne gruppe er til; her giver du selv forholdet som en procentdel.

SRT, WebVTT, ASS, SSA, SBV, SAMI, MicroDVD, TTML, JSON og CSV læses alle som det, de faktisk er, og ikke som filendelsen antyder. Ren tekst og LRC accepteres ikke, fordi ingen af dem gemmer en sluttid, som forholdet kan anvendes på. Intet uploades, og en hel sæson kører gennem køen i ét gennemløb.

Eksempler

Fortryd PAL-fremskyndelsen på 4 procent

Input

1
00:00:01,000 --> 00:00:03,000
Hello there.

2
00:00:05,000 --> 00:00:08,000
Second line.

Resultat

1
00:00:01,042 --> 00:00:03,125
Hello there.

2
00:00:05,208 --> 00:00:08,333
Second line.

Skalering sat til 104,1667, som er 25 divideret med 24 – det forhold, der tager en fil timet mod en PAL-version på 25 fps og sætter den tilbage på en filmmaster på 24 fps. Den første blok åbner på et sekund og flytter 42 ms; den anden åbner på fem sekunder og flytter 208 ms. Fem gange afstanden fra nul, fem gange bevægelsen – det er hele forskellen mellem denne side og at flytte alt med et fast beløb.

Hvorfor et forhold er det, der retter drift

Input

1
00:00:00,000 --> 00:00:02,000
Opening line.

2
00:01:00,000 --> 00:01:02,000
One minute in.

3
00:10:00,000 --> 00:10:02,000
Ten minutes in.

Resultat

1
00:00:00,000 --> 00:00:02,083
Opening line.

2
00:01:02,500 --> 00:01:04,583
One minute in.

3
00:10:25,000 --> 00:10:27,084
Ten minutes in.

Igen 104,1667. Åbningslinjen flytter sig næsten ikke, etminut-mærket flytter to og et halvt sekund, og timinutmærket flytter femogtyve. En fast forskydning kunne have rettet ét af de tre og ville have ladet de to andre stå forkert; et forhold retter dem alle på én gang.

Komprimer en fil, så den passer

Input

1
00:00:10,000 --> 00:00:12,000
First.

2
00:01:00,000 --> 00:01:03,000
Second.

Resultat

1
00:00:08,000 --> 00:00:09,600
First.

2
00:00:48,000 --> 00:00:50,400
Second.

Skalering sat til 80. Hver tekstblok beholder 80 procent af sin længde og ligger 80 procent af vejen ud, så en linje, der var to sekunder på skærmen, nu får 1,6 sekunder. Hold øje med læsehastigheden, når du komprimerer: ordene er ikke blevet kortere, kun tiden de får.

Ofte stillede spørgsmål

Hvilken procentdel skal jeg bruge mellem undertekster på 24 og 25 fps?

Forholdet er altid kildens billedhastighed divideret med målets, så hvilket tal du skal bruge, afhænger af, hvilken version filen er timet mod. En fil timet mod filmen på 24 fps, som skal bruges med PAL-versionen på 25 fps, ganges med 96. En fil timet mod PAL-versionen, som skal tilbage på filmmasteren, ganges med 104,1667 – det er 25 divideret med 24. Film på 23,976 fps bruger 95,904 og 104,2708 i de samme to retninger, fordi 23,976 ikke er præcis 24. Med andre ord er 104,1667 det tal, der fortryder PAL-fremskyndelsen, og 96 er det, der anvender den.

Hvorfor flytter de senere undertekster sig længere end de tidligere?

Fordi forholdet anvendes på afstanden fra nul og ikke på blokkens egen længde. En blok på et sekund flytter cirka 42 ms ved 104,1667 procent, mens en blok på ti minutter flytter femogtyve sekunder. Det er det, der gør værktøjet i stand til at rette drift frem for bare at flytte alt med en konstant, og det er grunden til, at tallet, du skriver, er en procentdel og ikke et antal millisekunder.

Ændrer skalering af en undertekstfil, hvor længe hver tekstblok er på skærmen?

Ja, i samme forhold. Begge grænser i hver blok ganges med det samme forhold, så en linje på to sekunder bliver 1,6 sekunder ved 80 procent og tre sekunder ved 150 procent. Komprimering skubber derfor hver blok tættere på grænsen for læsehastighed, og strækning giver hver blok mere tid, end den havde.

Kan skalering få to undertekster til at overlappe?

Nej. Multiplikation med et positivt forhold er monoton, og afrunding til hele millisekunder bevarer det, så to tekstblokke, der ikke overlappede før, kan ikke bringes til at overlappe bagefter. Komprimering krymper mellemrummene mellem blokkene og kan bringe dem til at røre hinanden, hvilket nogle seere opfatter som flimren, men blokkene selv bliver i rækkefølge.

Hvad sker der med en tekstblok, der er for kort til den skalering, jeg valgte?

Den droppes, og antallet rapporteres. En blok på 20 ms skaleret til 1 procent får begge sine grænser rundet til det samme millisekund, og der er ikke noget at skrive på det punkt. At trække den ud til en minimumslængde ville sætte en usynlig blok i filen, mens siden påstod, at den havde overlevet – et dårligere svar end at fjerne den og sige det.

Bliver filens første undertekst siddende, hvor den er?

Kun hvis den starter på nul. Alt måles fra tidslinjens begyndelse, så en fil, hvis første blok åbner på 00:01:00, får den indledning skaleret med resten. Hvis det åbnende minut er en fast fortekstsekvens, der ikke må flytte sig, er det en konstant forskydning og ikke et forhold, du skal bruge.

Relaterede værktøjer