Файл не пошкоджений, читання неправильне
У файлі субтитрів лежать байти. Щоб перетворити байти на символи, треба знати, в якому кодуванні їх записано — вибереш неправильно, вийдуть кракозябри. Сам файл не втратив жодного байта; прочитаєш його іншим кодуванням, і символи повернуться.
Отже кракозябри — це дві речі: розпізнати початкове кодування і зберегти в кодуванні, яке програвач розпізнає. Перше робить пробне читання з оцінкою, друге — збереження як.
П'ять виглядів, п'ять причин
Кракозябри не виникають випадково; їхній вигляд одразу видає причину:
- Ряди літер з діакритикою (`ä½ å¥½`): текст у UTF-8 прочитали як кодування по одному байту — у UTF-8 символ це три байти, при читанні по одному байту кожен байт стає окремою літерою
- Символи суцільно, але жодного звичного: UTF-8 прочитали як GBK — по два байти знову спаровуються, і виходять самі рідкісні символи
- Повно символів валют і математичних символів: байти потрапили в область символів, часто при читанні як Mac Roman або родина Latin-1
- Вплелися керуючі символи: байти потрапили в невидиму керуючу область, на екрані порожнеча або квадрат
- Квадратний знак питання `�`: це символ-замінник, не кракозябри — він означає, що тут був символ, який при читанні вже зник

Чому символ-замінник не можна виправити
Символ-замінник — ключова межа. Якщо видно `�`, байти викинули ще на ранішому кроці (зазвичай якась програма один раз прочитала файл і один раз зберегла); від викинутої частини не лишилося жодного сліду. Зворотний висновок тоді не має опори — ніхто це не виправить.
Тому сторінка виправлення розділяє два випадки: при завантаженні початкові байти ще є і кожне кодування можна перепробувати по черзі; якщо у вставленому тексті вже є символ-замінник, кажуть прямо, що це не виправляється і треба завантажити початковий файл.
Є і зворотна ситуація: вміст читається цілком нормально, а в програвачі все одно кракозябри. Це не помилка файлу, а програвач вибрав неправильне кодування. Зміна файлу не допоможе; дай йому копію, збережену як UTF-8 з BOM або GBK.

Що порівнюють при виправленні
Інструмент перепробовує кожне можливе кодування по черзі й потім дає кожному результату оцінку: скільки звичних символів, чи є ряди діакритики, чи є ряди символів, чи йдуть символи суцільно рідкісні. Найвища оцінка — зверху.
Якщо оцінка не суттєво краща, нічого не рекомендується — краще сказати, що цей файл читається нормально, ніж відбутися натягнутим результатом. У файлів, оброблених неправильно двічі, робиться ще один крок зворотного висновку.

Збереження в правильному кодуванні завершує справу
Виправлений текст треба ще зберегти в кодуванні, яке програвач розпізнає. Програвачі у Windows розпізнають кодування зазвичай за BOM, тому UTF-8 з BOM зберегти найпростіше; старі пристрої й локальні програвачі розпізнають GBK. Кодування на вибір: UTF-8, UTF-8 (з BOM), GBK, Big5, Shift_JIS, EUC-KR; якщо не вміщається — попросить вибрати інше.

Пов'язані інструменти та посібники
Повний порядок дій у Як користуватися виправленням кракозябрів; що саме лежить у файлі SRT — у Що лежить у файлі SRT; якщо кодування нормальне, але вміст брудний (водяний знак, реклама, позначки для глухих), використай Очищення субтитрів.