Un fichier de sous-titres est du texte brut, mais rien à l’intérieur n’indique dans quel alphabet lire ses octets. Avant la généralisation de l’UTF-8, chaque langue avait sa page de codes Windows : Windows-1252 (proche de l’ISO-8859-1) pour le français, Windows-1256 pour l’arabe. Une grande partie des sous-titres des anciens sites francophones et arabophones, ou extraits de DVD, sont encore enregistrés ainsi.
Quand le lecteur se trompe de page de codes, chaque octet est traduit par la mauvaise lettre. Un « é » enregistré en Windows-1252 puis lu comme de l’UTF-8 devient un losange noir avec un point d’interrogation (�), voire un simple « ? » sur certains téléviseurs. Côté arabe, السلام عليكم en Windows-1256 lu comme du texte occidental donne ÇáÓáÇã Úáíßã.
Le double encodage est l’autre grand classique : quelqu’un a ouvert un fichier UTF-8 avec la mauvaise page de codes, puis l’a réenregistré. Le dégât est alors inscrit dans le fichier : « é » et « è » au lieu de é et è, ou « ال » au lieu de l’arabe. filetidy reconnaît ce schéma, l’inverse et l’indique par « Texte illisible réparé » sur la ligne du fichier.
Seuls les octets du texte sont réencodés. Les horaires, les retours à la ligne, les codes de style et le nom du fichier ne bougent pas : le sous-titre corrigé se range à côté de la vidéo et est chargé exactement comme avant.
- Anciens encodages du français
- Windows-1252, ISO-8859-1, ISO-8859-15 (avec le signe €)
- Anciens encodages de l’arabe
- Windows-1256 (le plus courant) et ISO-8859-6
- Résultat
- UTF-8, même nom et même extension
- BOM
- 3 octets (EF BB BF) en tout début de fichier, activé par défaut ici
- Fichiers acceptés
- SRT, VTT, ASS/SSA, SUB (MicroDVD texte) et TXT
- Symptômes typiques
- é, è, �, points d’interrogation, ÇáÓáÇã ou petits carrés vides