Gå til hovedindholdet
SubtitleMatrix

Find undertekster med omvendt tid

KvalitetskontrolIkke-monoton tidskode
Eller indsæt underteksttekst

Indstillinger

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.

En blok, der slutter før den begynder, er en tidskode, der ikke kan være sand: 00:00:03,000 --> 00:00:03,000 eller værre, en slutning der ligger før starten. Denne side rapporterer filer, der indeholdt en sådan, talt ud fra de reparationer, læseren måtte foretage, fordi en tidskode af den form slet ikke kan holdes i hukommelsen og erstattes med en rigtig, før noget andet sker. Det, du får tilbage, er en rapport, aldrig en ændret fil.

Derfor indleder rapporten med, hvad der gik tabt under læsningen, og viser først derefter fundet. En blok, hvis slutning ikke ligger efter dens start, får én millisekund, så resten af filen overhovedet kan læses, forhåndsvises og eksporteres; antallet af disse reparationer står i rapportens hoved, og fundet nedenunder siger én fejl uden et bloknummer, fordi reparationerne tælles op, mens filen læses, i stedet for at blive gemt i en liste. Begge linjer beskriver den samme ødelagte tidskode fra to sider, og derfor hører de i samme rapport og ikke i to.

Den fælde, siden måtte skrives uden om, er, at en lovlig blok på én millisekund ser nøjagtig ud som en repareret. Derfor ser kontrollen slet ikke på varigheder – den ser på registeret over reparationer – og en blok, der virkelig varer én millisekund, lades i fred. En negativ varighed og en varighed på nul er den samme fejl og tælles sammen. To formater accepteres slet ikke, og for en gangs skyld er grunden den samme på begge sider: LRC udleder hver sluttid fra det følgende tidsstempel, så et par dér kan aldrig komme ud baglæns, og ren tekst har slet ingen bloktider. At kontrollere et af dem ville give en ren rapport om et felt, formatet ikke har, og det er den ene slags svar, der er værre end intet svar.

Eksempler

En blok uden varighed

Undertekster

1
00:00:01,000 --> 00:00:02,000
Where were you?

2
00:00:03,000 --> 00:00:03,000
I was working late.

Hvad rapporten finder

Cues ending before they start — 1 found

Lost while reading: Timing × 1

Severity   Cues   Start   End   Measured
Error      —      —       —     1 items

En slutning lig med sin start. Læseren giver blokken én millisekund, så filen kan holdes, registrerer reparationen, og rapporten trykker begge halvdele: tablinjen i hovedet og én fejl nedenunder. Reparationen er beviset; millisekundet er kun den form, beviset antager.

En blok der virkelig varer én millisekund

Undertekster

1
00:00:01,000 --> 00:00:02,000
Where were you?

2
00:00:03,000 --> 00:00:03,001
I was working late.

Hvad rapporten finder

Cues ending before they start — Nothing found

Cues                2
Checks run          1
Lost while reading  Nothing

Skrevet i hånden som en blok på én millisekund og ikke rapporteret. Den beslutning former kontrollen: en repareret blok på nul længde kommer også ud som én millisekund, så en regel, der markerede korte varigheder her, ville kalde enhver fil med en ødelagt tidskode en fil fuld af umuligt korte blokke.

Slutningen ligger før starten

Undertekster

1
00:00:01,000 --> 00:00:02,000
Where were you?

2
00:00:05,000 --> 00:00:02,000
I was working late.

Hvad rapporten finder

Cues ending before they start — 1 found

Lost while reading: Timing × 1

Severity   Cues   Start   End   Measured
Error      —      —       —     1 items

Fem sekunder til to sekunder: samme fejl som tilfældet med nul længde, talt efter samme regel og rapporteret identisk. Intet i filen skrives om – de reparerede tider findes kun i læserens kopi, så resten af filen kan behandles, og de er ikke en rettelse, siden tilbyder.

Ofte stillede spørgsmål

Hvad tæller som en blok, der slutter før den begynder?

En sluttid, der ikke ligger efter starttiden: enten lig med den, som i 00:00:03,000 til 00:00:03,000, eller tidligere, som i 00:00:05,000 til 00:00:02,000. Begge er den samme fejl og tælles sammen, og begge tælles ud fra den reparation, læseren foretager, snarere end ud fra blokken, fordi en tidskode af den form ikke kan holdes i hukommelsen.

Hvorfor navngiver rapporten ikke de berørte blokke?

Fordi disse reparationer tælles op, mens filen læses, og ikke samles i en liste. Rapporten giver antallet – én fejl, ét element i hovedets tablinje – og de to halvdele er den samme kendsgerning set fra hovedet og fra fundene. Hvis du skal finde den præcise blok, må du søge i filen efter dens tidskoder i stedet for efter et bloknummer.

Er en blok på én millisekund et problem?

Ikke her, og det er med vilje. En håndskrevet blok på én millisekund er lovlig og rapporteres ikke; det, der rapporteres, er en tidskode, der måtte repareres, og som bagefter tilfældigvis gemmes som én millisekund. At kontrollere varigheder i stedet for reparationer ville markere enhver fil med en blok på nul længde som en fil fuld af umuligt korte blokke, og det er det forkerte fund to gange.

Retter denne side de tidskoder, den finder?

Nej. De reparerede tider findes kun inde i browseren, så resten af filen kan læses og rapporteres. Den fil, du hentede eller trak ind, er uændret, og der er ingen måde at gemme den reparerede version fra denne side – at erstatte en ødelagt tidskode er en operation med en undertekstfil som resultat, ikke en kontrol.

Hvilke undertekstformater kan kontrolleres for blokke, der slutter før de begynder?

Ti af de tolv: SRT, WebVTT, ASS, SSA, SBV, SMI, MicroDVD, TTML, JSON og CSV. To mangler, og ingen af dem er en forglemmelse. LRC gemmer én tid pr. linje, og læseren udleder hver slutning fra det næste tidsstempel, så et par dér kan aldrig være baglæns – kontrollen ville dømme et felt, formatet ikke har. Ren tekst har slet ingen bloktider. Hvis din fil er i et af de to, skal den konverteres først.

Kommer disse ødelagte tidskoder fra bestemte steder?

De er næsten altid produceret snarere end indtastet. En billedhastighedskonvertering, der afrunder den forkerte vej, en forskydning anvendt to gange på samme blok, en regnearkseksport, hvor slutkolonnen blev ladt tom og læst som nul, og en undertekst udtrukket fra en timed-text-fil med en markør, der ikke havde nogen varighed til at begynde med.

Kan flere filer kontrolleres i én kørsel?

Ja. Slip så mange ind, du vil, og de læses efter hinanden, hver med sin egen rapport, og rapporterne hentes samlet som en zip. Køen viser fremdriften pr. fil, kørslen kan afbrydes undervejs, og ingen fil uploades på noget tidspunkt.

Relaterede værktøjer