Gå till huvudinnehållet
SubtitleMatrix

Förskjut undertexter med tidskod

TidsanpassningFörskjut med fast offset
Eller klistra in undertexttext

Inställningar

Skriv beloppet att flytta som ett klockslag: 00:00:02,500 är två och en halv sekund senare, -00:00:02,500 är två och en halv sekund tidigare. Snabbare att läsa av från en referensvideo än ett antal millisekunder. Lämna tomt på sidor som i stället frågar efter millisekunder.

Vilken bildfrekvens tiderna räknas i. På formatsidorna är det här vad MicroDVD behöver, eftersom formatet lagrar tider som bildnummer. På bildfrekvenssidorna är det den frekvens som filens tider byggdes för – den version som undertexterna gjordes för – och sidans andra fält tar frekvensen för den video du ska använda dem med. 23,976, 24, 25, 29,97, 30, 50, 59,94 och 60 är de vanligaste. Blir det fel förskjuts hela tidslinjen, och på bildfrekvenssidorna förskjuts den med ett förhållande i stället för med ett fast belopp.

Den här sidan förskjuter en undertextfil med en tidskod i stället för ett antal millisekunder. Skriv 00:00:02,500 och varje textblock flyttas två och en halv sekund framåt; skriv −00:00:01,000 och varje block flyttas en sekund bakåt. Båda kanterna i varje block flyttas lika mycket, så varje block behåller sin längd – skillnaden mot millisekundssidan är bara hur du uttrycker förskjutningen.

Den finns här på grund av var talet kommer ifrån. När du matchar en undertextfil mot en referens – en ny förtext, en insatt reklam, en annan tidslinje där du kan läsa av en position – är det du har i handen ett par tidpunkter, och förskjutningen är skillnaden mellan dem. Att skriva den skillnaden som en tidskod är ett steg kortare än att räkna om den till millisekunder i huvudet, och det är i omräkningen felen sitter: 00:01:30,000 är nittiotusen millisekunder, inte nio tusen.

Förskjutningen läses som ett klockvärde och tillämpas på tidslinjen som helhet. Ett block som skulle skjutas före filens början får starten låst till 00:00:00 medan slutet fortsätter flyttas, så just det blocket blir kortare; ett block vars slut skulle hamna på eller före noll tas bort. En fil med förskjutningen noll, eller med en förskjutning som inte gick att läsa, kommer tillbaka byte för byte.

SRT, WebVTT, ASS, SSA, SBV, SAMI, MicroDVD, TTML, JSON och CSV läses som det format de faktiskt är, inte som filändelsen antyder. Ren text och LRC tas inte emot, eftersom ingen av dem lagrar någon sluttid och det skulle inte finnas något för förskjutningen att flytta. MicroDVD:s bildnummer tolkas med bildfrekvensen i rutan, där 25 fps är standard. Inget lämnar din dator, och en hel säsong går genom kön i en enda körning.

Exempel

Skjut en fil två och en halv sekund framåt

Indata

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

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

Resultat

1
00:00:03,500 --> 00:00:05,500
Hello there.

2
00:00:08,000 --> 00:00:10,500
Second line.

Exakt samma resultat som att ge millisekundssidan förskjutningen 2500 – båda kanterna i varje block flyttas och ingen längd ändras.

Dra en fil bakåt med ett minustecken

Indata

1
00:00:01,000 --> 00:00:02,000
The first one starts too early.

2
00:00:05,000 --> 00:00:08,000
This one is fine.

Resultat

1
00:00:00,000 --> 00:00:00,500
The first one starts too early.

2
00:00:03,500 --> 00:00:06,500
This one is fine.

Första blocket skulle börja på −500 ms, så dess start låses till noll och bara den kansten flyttas. Blocket blir 500 ms långt i stället för 1000. Det andra blocket flyttas helt, från 5,000–8,000 till 3,500–6,500.

En tidskod i WebVTT-stil med punkt

Indata

1
00:00:01,000 --> 00:00:02,000
Dot instead of comma.

Resultat

1
00:00:03,500 --> 00:00:04,500
Dot instead of comma.

0:00:02.500 läses som 00:00:02,500. Både punkt och komma före millisekunderna godtas, liksom en ensiffrig timme – tidskoder kommer från verktyg som inte är överens om någondera.

Vanliga frågor

Hur skriver jag en tidskodsförskjutning som flyttar undertexterna bakåt?

Sätt ett minustecken framför tidskoden: −00:00:02,500 betyder två och en halv sekund tidigare. Utan tecknet skjuter samma siffror filen framåt, så tecknet är hela skillnaden mellan riktningarna och det finns ingen separat växel för det.

Varför finns det en tidskodsruta här i stället för en millisekundsruta?

Därför att förskjutningen oftast kommer från två klockavläsningar i stället för från ett tal någon mätte. Matchar du en fil mot en referens har du ett par tidpunkter och förskjutningen är deras skillnad, alltså en tidskod. Millisekundssidan finns kvar för när du redan har talet, och båda ger identiskt resultat för samma förskjutning.

Kan jag använda punkt i stället för komma före millisekunderna?

Ja, och du kan också skriva en ensiffrig timme. 00:00:02,500, 00:00:02.500 och 0:00:02.50 landar alla på samma 2500 millisekunder, eftersom undertextformat inte är överens om avskiljaren och det inte finns någon anledning att tvinga dig att översätta innan du skriver. Bråkdelen läses efter hur många siffror du skriver, så .5 och .500 är båda en halv sekund.

Vad händer om jag skriver något som sidan inte kan läsa som tidskod?

Förskjutningen ignoreras och filen kommer tillbaka oförändrad. Det är den försiktiga halvan av beteendet – inget gissas och inget godtyckligt tal sätts in – men det är också tyst, så fältets egen hjälptext anger de godtagna formerna i stället för att låta dig upptäcka dem. Ett bart tal som 2500 är ingen tidskod och hör hemma på millisekundssidan.

Flyttar en tidskodsförskjutning båda kanterna i varje textblock?

Ja. Varje start och varje slut flyttas lika mycket, så ingen längd ändras och inget block ändrar position i förhållande till de andra. Behöver du ändra hur länge undertexterna ligger kvar på skärmen är det sidorna för starttider och sluttider var för sig som gäller.

Relaterade verktyg