Gå til hovedindholdet
SubtitleMatrix

Stræk undertekster til at passe videoen

TidsjusteringSkalér hele tidslinjen
Eller indsæt underteksttekst

Indstillinger

Hvor lang videoen er, skrevet som millisekunder, sekunder eller en timecode (1500, 24m, 00:24:00,000 virker alle). Forholdet regnes ud fra filen selv: det sidste øjeblik, hvor en tekstblok er på skærmen, måles, og det er det, der strækkes eller presses til denne længde. Nyttigt, når du kender spilletiden for den version, du matcher, men ikke forholdet.

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.

Udfyld Mållængde for at køre.

Skriv, hvor lang videoen er, og denne side regner forholdet ud for dig. Længden af undertekstfilen måles fra filen selv – den største sluttid, der findes i den – og hver tidsangivelse ganges med målet divideret med den. Ingen procentdel at regne ud, og den sidste undertekst lander på videoens slutning i stedet for der, hvor den tilfældigvis stoppede.

Målingen bruger den største sluttid i filen og ikke slutningen af den sidste blok på listen. I virkelige filer er de to ofte forskellige: en fortællerstemme kan åbne tidligt og blive på skærmen gennem flere korte svar, så den blok, der slutter senest, er ikke den, der blev skrevet sidst. At måle med den forkerte giver et forhold, der er forkert med præcis så meget, som de to afviger – den slags fejl, der først dukker op i de sidste par minutter af en episode.

Målfeltet tager en længde i den form, du har den: millisekunder, sekunder og minutter med suffikset s eller m, eller en fuld tidskode. Den sidste mulighed er en længde og ikke et tidspunkt på tidslinjen, og derfor skriver du en varighed her og ikke en starttid.

Et kortere mål komprimerer filen i stedet for at strække den; der er ikke noget at skifte over, og en fil, der er for lang til sin video, er det samme problem i den anden retning. Alt måles fra nul, så en indledning før den første replik skaleres med resten – hvis forteksterne skal blive siddende, og kun slutningen skal flytte sig, er en konstant forskydning eller en topunkts-synkronisering det rigtige værktøj frem for et forhold.

SRT, WebVTT, ASS, SSA, SBV, SAMI, MicroDVD, TTML, JSON og CSV læses som det, de er, og ikke som filendelsen antyder. Ren tekst og LRC afvises, fordi ingen af dem gemmer en sluttid at måle filen med. Det hele kører i browserfanen, så en sæson kan gå gennem køen uden at en eneste byte forlader maskinen.

Eksempler

En fil på otte sekunder mod en video på ti

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,250 --> 00:00:03,750
Hello there.

2
00:00:06,250 --> 00:00:10,000
Second line.

Mållængden er sat til 00:00:10,000, så forholdet er 10 divideret med filens 8 sekunder – en og en kvart, uden at noget er regnet ud i hånden. Den sidste blok lander nu præcis på ti sekunder, fordi det er det tidspunkt, forholdet blev målt imod, mens den første blok flytter en fjerdedel af sin egen afstand fra nul.

En fil, der er for lang til sin video

Input

1
00:00:00,000 --> 00:00:10,000
A long opening line.

2
00:00:02,000 --> 00:00:03,000
Short.

3
00:00:04,000 --> 00:00:05,000
Also short.

Resultat

1
00:00:00,000 --> 00:00:06,000
A long opening line.

2
00:00:01,200 --> 00:00:01,800
Short.

3
00:00:02,400 --> 00:00:03,000
Also short.

Målet er sat til 6s mod en fil på ti sekunder, så dette er komprimeringsretningen, og forholdet er 0,6. Filen er ti sekunder lang, fordi den første blok slutter der, og ikke på grund af den sidst skrevne blok, hvis slutning kun ligger fem sekunder efter nul – at måle med den ville have givet et forhold på 1 og sendt filen direkte tilbage. Komprimering presser hver blok, så læsehastigheden stiger, uden at der er ændret et ord.

Indledningen flytter også med

Input

1
00:01:00,000 --> 00:01:02,000
Lead-in ends, speech starts.

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

Resultat

1
00:01:30,000 --> 00:01:33,000
Lead-in ends, speech starts.

2
00:03:00,000 --> 00:03:03,000
One minute in.

Målet er 3m3s mod en fil, hvis længste slutning er 2m2s, så forholdet er 1,5. Feltet tager minutter, og det tager også 183000 eller 00:03:03,000 – alle tre betyder det samme. Bemærk, at den første blok åbnede på et minut og nu åbner på halvandet: alt måles fra tidslinjens start, så den stille indledning strækkes sammen med dialogen.

Ofte stillede spørgsmål

Hvordan finder jeg ud af, hvor lang min undertekstfil er?

Siden måler den for dig: den tager den største sluttid, der findes i filen, og behandler den som filens længde. Du skal kun angive videoens længde. Vil du kende tallet, før du kører noget, ligger den sidste blok i en velformet fil normalt tæt på det, men en lang blok, der spænder over flere korte, gør de to forskellige.

Hvad hvis den mållængde, jeg skriver, er kortere end filen allerede er?

Filen komprimeres, ikke strækkes, og der skal ikke skiftes til en anden tilstand. En fil på 10 minutter med et mål på 6 minutter ganges med 0,6, så hver tekstblok beholder 60 procent af sin skærmtid. Det hæver læsehastigheden for hver linje, og det er værd at tjekke læsehastighedssiden, før du sender en komprimeret fil til en broadcaster.

Hvorfor flyttede den første undertekst, når jeg kun ville have slutningen til at passe?

Fordi forholdet anvendes på afstanden fra nul. En fil, hvis første linje åbner på et minut, åbner efter en strækning på 1,5 gange nu på halvandet minut, så den stille indledning strækkes sammen med dialogen. Hvis forteksterne er faste, og kun halen er forkert, er det ikke et forholdsproblem: brug en konstant forskydning eller en topunkts-synkronisering, der holder et valgt tidspunkt fast.

Kan jeg skrive mållængden i minutter i stedet for en tidskode?

Ja. Feltet accepterer et rent millisekundtal, en varighed som 90s eller 24m eller 1h2m og en fuld tidskode som 00:24:00,000 – alle fire betyder det samme, og ingen er mere rigtig end de andre. Brug den form, der matcher det, dit videoværktøj viser, for det er ved at skrive et tal om i en anden form, at afskrivningsfejlene opstår.

Underteksterne passer stadig ikke efter strækningen. Hvad kan der ellers være galt?

Hvis den ene ende af filen passer, men midten ikke gør, er filen blevet klippet, eller videoen er redigeret om, og en topunkts-synkronisering med begge de tidspunkter er det, der retter det. Hvis hver undertekst er lige meget for sen, er det en konstant forskydning, der hører på forskydningssiden. Hvis driften først viser sig efter en billedhastighedskonvertering, arbejder fps-siderne ud fra hastighederne selv i stedet for et målt forhold.

Hvad sker der, hvis jeg lader mållængden stå tom?

Kørslen starter ikke, og siden siger, at et påkrævet felt mangler. Det er med vilje: enhver standardværdi ville være en rigtig længde, så en fil, der blev smidt ind og kørt uden at læse feltet, ville komme lydløst strækket til noget, ingen havde valgt, uden at resultatet sagde det. Ved siden af knappen viser siden også den længde, den målte i filen, så du kan sammenligne, før du bekræfter.

Relaterede værktøjer