Gå til hovedindholdet
SubtitleMatrix

Konverter tegnkodning i undertekster

Tekst og formateringRet tegnkodning og BOM
Eller indsæt underteksttekst

Indstillinger

Dette ændrer bytes, ikke underteksterne. Hvert tegn i filen skrives i den tegnkodning, du vælger, så en afspiller eller et script, der insisterer på én tegnkodning, får en fil, den kan læse. UTF-8 er den, alt moderne forventer, og den, dette websted skriver overalt ellers. UTF-8 med BOM er de samme bytes med det tre-byte mærke foran. UTF-16 LE er det, Windows-programmer kalder Unicode, og er cirka dobbelt så stor. Windows-1252 er den ældre vesteuropæiske tegnkodning, én byte pr. tegn, og det er den, man skal være forsigtig med: den har ikke plads til kinesisk, japansk, koreansk, kyrillisk, græsk eller emoji, så hvert tegn, den ikke kan skrive, kommer ud som et spørgsmålstegn og tælles i rapporten ovenfor. Intet andet ved filen ændres.

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 fils tegnkodning er reglen, der gør dens tekst til byte, og det er den ene egenskab ved en undertekstfil, som ikke kan ses ved at se på den. Notepad, en browser, en broadcast-server og et tv skal alle have det fortalt eller gætte, og når de gætter forskelligt, ankommer teksten som symboler, der ikke tilhører noget sprog. Denne side skriver en fil ud i en tegnkodning, du navngiver, så læsesiden ikke har noget at gætte.

Standardvalget er at beholde det, filen ankom i, hvilket er det, du vil det meste af tiden: en handling som at flytte en undertekst i tid har ikke noget at gøre med at skrive tegnkodningen om, og en fil, der var UTF-16LE, da den kom ind, er stadig UTF-16LE, når den går ud. Skift kun denne indstilling, når noget foran dig navngiver en tegnkodning — en leveringsspecifikation, et værktøj der afviser en fil, en afspiller der viser de forkerte tegn — eller når du standardiserer en mappe med filer fra forskellige steder.

De fire valg på panelet er dem, der dukker op. UTF-8 er det, internettet og de fleste moderne værktøjer bruger, og det, enhver konverteringsside her skriver som standard. UTF-8 med et mærke er de samme byte med tre ekstra foran, til de Windows-programmer, der ser på åbningsbytene for at afgøre det. UTF-16LE er det, Windows-undertekstværktøjer kalder Unicode, og det gemmer hvert tegn som to byte, så filen kommer ud omtrent dobbelt så stor. Windows-1252 er den ældre vesteuropæiske tegnkodning, som stadig skrives af mange europæiske broadcast-værktøjer, og den kan rumme accenterne i vesteuropæiske sprog og intet andet.

Det sidste punkt er et tab, og det er grunden til, at siden rapporterer det, før du bekræfter. Gem japanske, kinesiske, kyrilliske eller græske undertekster som Windows-1252, og de tegn, der ikke har en byte i den tegnkodning, skrives som spørgsmålstegn — filen er ikke i stykker, de forkerte tegn er væk. Rapporten over arbejdsområdet tæller dem og siger hvor mange, og antallet kommer fra samme kodetabel, som koderen skriver med, så det tal, du læser, er det antal spørgsmålstegn, du får. Er antallet ikke nul, så vælg et andet mål.

De to ruder på siden kan se identiske ud, og det er forventet og ikke en fejl: en tegnkodning er en egenskab ved bytene, og ruterne rummer tegnene. Ændringen sker i det øjeblik, filen skrives, hvilket er når du downloader den. Rækken for hver fil siger, hvilken tegnkodning den blev læst som, og tilføjer en anden etiket, der navngiver den tegnkodning, den vil blive skrevet som, når de to er forskellige. Intet uploades, og arbejdet gøres i din browser.

Eksempler

En engelsk undertekstfil skrevet som UTF-8

Input

1
00:00:01,000 --> 00:00:02,000
The room is dark.

Resultat

1
00:00:01,000 --> 00:00:02,000
The room is dark.

Standardvalget og den tegnkodning, som alle andre sider her skriver. Outputtet er lig inputtet, fordi UTF-8 er det, filen allerede var. Det, dette tilfælde fastslår, er det negative: at vælge en tegnkodning normaliserer ikke noget andet ved filen, så en tekstblok mister ikke sine linjeskift, får et mærke eller ændrer sit tidsstempel, fordi du besøgte denne side.

Samme fil skrevet som UTF-16LE

Input

1
00:00:01,000 --> 00:00:02,000
The room is dark.

Resultat

1
00:00:01,000 --> 00:00:02,000
The room is dark.

Windows-undertekstprogrammer kalder dette Unicode, og det er den tegnkodning, der gør den største synlige forskel for filen: hvert tegn bliver to byte, et mærke sættes foran, og resultatet er omtrent dobbelt så stort. Intet af det er synligt i disse ruder, fordi de rummer tegn — filens størrelse i din filhåndtering og dens tegnkodning i din editor er der, forskellen viser sig.

Japanske undertekster skrevet som Windows-1252

Input

1
00:00:01,000 --> 00:00:02,000
こんにちは

Resultat

1
00:00:01,000 --> 00:00:02,000
こんにちは

Fem kana og en tegnkodning uden plads til nogen af dem, så tabsrapporten for denne kørsel tæller fem tegn, der bliver spørgsmålstegn. Ruderne viser stadig kanaene, fordi udskiftningen sker, når filen skrives, og ikke når den læses. Den opdeling er bevidst: du får at se, hvad filen siger, og i rapporten, hvad du ville give afkald på ved at skrive den sådan.

Ofte stillede spørgsmål

Hvad er forskellen mellem en undertekstfils tegnkodning og dens format?

Formatet er, hvordan filen organiserer tekstbloknumre, tidsstempler og tekst — SRT, WebVTT, ASS og så videre — og det er noget, du kan læse. Tegnkodningen er, hvordan de tegn bliver til byte, og den er usynlig: samme SRT-fil kan være gemt som UTF-8, UTF-16 eller Windows-1252 og se identisk ud i enhver editor. Denne side ændrer det andet og lader det første være; konverteringssiderne ændrer det første.

Hvad sker der med tegn, som målets tegnkodning ikke kan gengive?

De skrives som spørgsmålstegn, og siden fortæller dig hvor mange, før du downloader. Windows-1252 dækker vesteuropæiske bogstaver og har ingen byte til japansk, kinesisk, koreansk, kyrillisk, græsk eller emoji, så de tegn kan ikke overleve den i nogen form — der er ingen fejl og ingen erstatning, der bevarer meningen. Antallet i tabsrapporten er antallet af spørgsmålstegn i den fil, du ville få, beregnet ud fra samme tabel, som skriveren bruger.

Hvorfor ser de to ruder ens ud, når jeg konverterer tegnkodningen i en SRT-fil?

Fordi ruderne rummer tegn, og valget handler om byte. Tekst er tekst; om hvert tegn fylder én, to eller tre byte, afgøres når filen skrives, på downloadtidspunktet. Rækken i køen navngiver den tegnkodning, hver fil blev læst som, og tilføjer en anden etiket, når den tegnkodning, den skal skrives som, er forskellig, og din egen editor vil rapportere tegnkodningen i den fil, du gemte.

Hvilken tegnkodning skal jeg vælge til en undertekstfil, jeg skal levere?

UTF-8, medmindre noget i specifikationen siger andet, og det gør specifikationen som regel. Windows-1252 er almindelig i europæiske broadcast-leverancer og er kun sikker for vesteuropæisk tekst; UTF-16LE er det, et Windows-only-authoringværktøj kan kræve. Var filen allerede i en passende tegnkodning, beholder standardvalget den, hvilket er det sikreste svar af alle, når intet er gået galt.

Bliver min undertekstfil dobbelt så stor, hvis jeg vælger UTF-16?

Ja, stort set. Hvert tegn gemmes som to byte, så en engelsk undertekstfil på 20 KB bliver omkring 40 KB, og et almindeligt kompressionstrin bagefter fjerner meget af forskellen. Mærket foran tilføjer to byte mere. Størrelsen er byttet for den egenskab, der gjorde UTF-16 almindelig på Windows: hvert tegn har samme bredde, hvilket ældre software fandt lettere at håndtere.

Hvorfor er der ingen UTF-16 big endian i listen over tegnkodninger?

Fordi ingen vælger den, og filer, der allerede er i den, håndteres alligevel. En fil, der ankommer som UTF-16 big endian, skrives tilbage som UTF-16 big endian under standardindstillingen, fordi at beholde inputtets tegnkodning er det, siden gør, når du ikke navngiver en. Listen rummer de fire mål, folk faktisk beder om; den underliggende skriver dækker big endian, så at beholde en fil, som den var, aldrig stiltiende ændrer den.

Relaterede værktøjer