Dosya bozulmadı, okuma yanlış
Altyazı dosyasında baytlar durur. Baytları karaktere çevirmek için hangi kodlamayla yazıldığını bilmek gerekir — bu adım yanlış seçilirse çıkan şey bozuk karakterdir. Dosyanın kendisi tek bir bayt kaybetmemiştir; başka bir kodlamayla bir kez daha okunduğunda karakterler geri gelir.
Bu yüzden bozukluk iki ayrı iştir: özgün kodlamayı tanımak ve oynatıcının tanıyabileceği kodlamada kaydetmek. İlki deneme okuma ve puanlamayla, ikincisi farklı kaydetmekle çözülür. İkisi farklı sorunları onarır.
Beş görünüm, beş neden
Bozukluk rastgele oluşmaz; görünümü nedeni doğrudan ele verir:
- Kümeler hâlinde aksanlı harfler (`ä½ å¥½`): UTF-8'deki metin tek baytlık kodlamayla okunmuş — UTF-8'de bir karakter üç bayttır, tek bayt okumak her baytı ayrı bir harf sayar
- Ardışık karakterler ama tek yaygın karakter yok: UTF-8 GBK gibi okunmuş — iki bayt bir arada yeniden eşleşir ve hep nadide karakterler çıkar
- Bir sürü para birimi ve matematik simgesi: baytlar simge bölgesine düşmüş, genelde Mac Roman veya Latin-1 ailesiyle okunmuş
- Kontrol karakterleri karışmış: baytlar görünmez kontrol bölgesine düşmüş, ekranda boşluk veya kutu olarak görünür
- Kutulu soru işareti `�`: bu bir yedek karakter, bozukluk değil — burada bir karakter vardı ama okunurken kayboldu demektir

Yedek karakter neden onarılamaz
Yedek karakter kritik sınır çizgisidir. `�` görünmesi, daha önceki bir adımda (genelde bir program dosyayı bir kez okuyup bir kez kaydettiğinde) baytların çoktan atıldığı anlamına gelir; atılan kısmın hiçbir kaydı yoktur. Bu noktada geriye çıkarımın dayanağı kalmaz — kimse onaramaz.
Bu yüzden onarım sayfası iki durumu ayrı ele alır: dosya yüklenirken özgün baytlar duruyor, kodlamalar tek tek denenebilir; yapıştırılan içerikte yedek karakter çıkmışsa onarılamaz, lütfen özgün dosyayı yükle der.
Tersi bir durum da var: içerik tamamen normal okunuyor ama oynatıcıda hâlâ bozuk. Bu dosyanın hatası değil, oynatıcı kodlamayı yanlış seçmiştir. Dosyayı değiştirmek işe yaramaz; BOM'lu UTF-8 veya GBK olarak kaydedilmiş bir kopyayı ona vermek yeter.

Onarırken ne karşılaştırılıyor
Araç her olası kodlamayı tek tek dener, sonra her sonuca puan verir: yaygın karakter oranı, ardışık aksan var mı, ardışık simge var mı, karakterler ardışık nadide mi. En yüksek puanlı olan en üste çıkar.
Puan belirgin biçimde iyiyse önerilir — sana bu dosya normal okunuyor demeyi, zorlama bir sonuçla idare etmeye yeğler. Üst üste iki kez yanlış işlem görmüş dosyalarda ilk birkaç adayda bir katman daha geriye çıkarım yapılır.

Doğru kodlamada kaydetmek işi bitirir
Onarılan metni oynatıcının tanıyabileceği kodlamada kaydetmek gerekir. Windows'taki oynatıcılar kodlamayı genelde BOM'dan tanır, BOM'lu UTF-8 kaydetmek en kolayıdır; eski cihazlar veya yerel oynatıcılar GBK tanır. Seçilebilir kodlamalar: UTF-8, UTF-8 (BOM'lu), GBK, Big5, Shift_JIS, EUC-KR; sığmazsa başka bir kodlamaya geçmen istenir (örneğin GBK Koreceyi taşıyamaz).

İlgili araçlar ve kılavuzlar
Tam işlem için Bozuk karakter onarımı nasıl kullanılır; SRT dosyasında ne yazdığı için SRT dosyasında ne yazıyor; kodlaması normal ama içeriği kirliyse (filigran, reklam, işitme engelli açıklamaları) Altyazı temizleme.