Не спешите удалять субтитры и качать заново: кракозябры и рассинхрон SRT лечатся
Субтитры, перешедшие с рук с форумов и файловых хранилищ, открываются сплошными вопросительными знаками; когда китайский наконец проявляется, чем дальше смотришь, тем сильнее уплывает. Видео в порядке, файл на месте, а вместе не сходятся — большинство этих болячек SRT не в плеере, а в самом файле: кодировку прочли неверно, строку таймингов записали с ошибкой, и у каждой болячки свое лечение.
Если SRT капризничает, сначала откройте файл и отделите кракозябры от рассинхрона таймингов
Диагностируйте в Блокноте: строки текста не читаются — болезнь кодировки; текст читается, но не попадает в такт — болезнь таймингов, дороги разные.SRT — текстовый формат со структурой из четырех слоев: по общепринятым соглашениям формата SubRip каждый субтитр состоит из строки номера, строки таймингов и одной или нескольких строк текста, между блоками — пустая строка. Строка таймингов пишется как «часы:минуты:секунды,миллисекунды --> часы:минуты:секунды,миллисекунды» и есть скелет всего файла — все точки обрыва, которые предстоит чинить, лежат в этой строке и в разделяющей пустой. Сначала определите направление, тогда усилия не уйдут не туда.
Корень кракозябр — кодировку прочли неверно; пересохранение в UTF-8 чаще всего спасает
При кракозябрах байты в файле не испорчены — испорчено чтение: плеер взял не ту кодовую страницу, и китайский превратился в винегрет.Два типичных вида: строка целиком превращается в кашу из символов с латиницей — контент UTF-8 читают как однобайтовую кодировку; страница вопросительных знаков или квадратиков — обычно ошибка в обратную сторону. Сам формат SRT кодировку не предписывает; старые инструменты сохраняли в локальной кодировке (GBK на китайских системах), которая рассыпается в среде, читающей по умолчанию UTF-8. Лечение в Блокноте за два шага: откройте файл и при «сохранить как» вручную выберите кодировку UTF-8. В Windows лучше выбирать UTF-8 с BOM — официальный FAQ Unicode поясняет, что BOM существует именно чтобы помочь читающей программе опознать кодировку. Две ловушки обходим заодно: не сохраняйте субтитры в Word — он втиснет в файл разметку верстки, структура умрет сразу; и кодировку выбирайте вручную, потому что по умолчанию старые системы ставят ANSI, а не UTF-8.
Рассинхрон бывает двух видов: ровный сдвиг — это смещение, растущий уход — дрейф
Сверьтесь один раз в начале, потом в середине и в конце — одинаковый сдвиг от начала до конца это смещение, растущий — дрейф, лечение совершенно разное.Смещение обычен при несовпадении версий субтитров и видео: у того же фильма вырезали рекламную заставку, и субтитры отстают на фиксированную величину. Здесь сначала спасает регулировка задержки субтитров в плеере; чтобы починить файл, сдвиньте всю шкалу одним махом open-source инструментом вроде Subtitle Edit — десятки строк таймингов руками не трогаем. Дрейф — когда начало точно, а конец уходит секунд на десять и больше, обычно из-за несовпадения версий частоты кадров — привычный переход фильмов между 23.976 и 25 fps, или ускоренное видео. Дрейф руками не вылечить: пересчитайте по пропорции, взяв две известные точки совпадения за опору, и пусть инструмент линейно отмасштабирует всю ось.
Стрелка, запятая, пустая строка: три частые точки обрыва на строке таймингов, срастаются массовой заменой
Все три точки обрыва лечатся поиском и заменой в Блокноте — при условии, что вы знаете, как каждая выглядит правильно.
- Стрелка записана неверно: стрелка в середине строки таймингов — всегда два дефиса плюс знак «больше»; при передаче из рук в руки часто превращается в китайское тире со стрелкой или теряет символ — верните заменой к стандартному виду;
- Запятая стала точкой: разделитель миллисекунд по правилам формата — английская запятая; отдельные программы экспортируют точку, и строгие плееры отклоняют всю строку таймингов;
- Потеряна пустая строка: блоки разделяются одной пустой строкой; если копипаст ее съел, плеер склеит два субтитра в один скачущий.
После ремонта сделайте выборочную проверку: в начале, середине и конце возьмите по одному блоку и сверьте момент показа с видео. Массовая замена правит форму, выборочная проверка подтверждает результат — сделаны оба шага, значит ремонт завершен.

Починенные субтитры соедините с полным видео: чистую основу — из первоисточника, фильм сохраните загрузкой и записью
Субтитры готовы — не хватает фильма: основу берите чистой прямо из источника, фильм сохраняйте двумя дорогами — загрузкой и записью.
Шаг 1: Скачайте и установите VidBrowser
VidBrowser — настольный видеобраузер для просмотра и сохранения видео на Windows и Mac, со встроенными функциями загрузки и записи.

Шаг 2: Возьмите чистую основу через загрузчик субтитров YouTube
В левой навигации перейдите на страницу инструментов, откройте загрузчик субтитров YouTube, вставьте ссылку на видео — и SRT сохранен. Нативные дорожки субтитров YouTube имеют аккуратную кодировку, куда чище перешедших с рук файлов; проходка по инструменту в четыре шага — в статье про загрузку субтитров YouTube.


Шаг 3: Вернитесь на страницу видео и сохраните фильм кнопкой загрузки
Во время воспроизведения панель видеомедиатеки справа перечисляет записи с оранжевой кнопкой загрузки — один клик сохраняет как MP4, или сначала выберите разрешение, потом скачивайте.

Шаг 4: Контент без входа для загрузки дополните записью
Наведите мышь на видео — поверх появятся элементы управления записью: выберите скорость записи (1x в реальном времени, 2x или 4x закончит быстрее), нажмите «записать все» для целого видео, а кнопка записи слева стартует и останавливается когда угодно. После сохранения загляните в историю загрузок под иконкой часов в левой навигации; куда падают файлы и как их находить по времени — карта в статье про где лежат скачанные видео.
Итог
Если SRT забарахлил, сначала откройте файл и поставьте диагноз: кракозябры — кодировку прочли неверно, спасает пересохранение в UTF-8; не попадает в такт — разделите смещение и дрейф: первое сдвигается целиком один раз, второе пересчитывается по пропорции. Три точки обрыва — стрелка, запятая, пустая строка — после массовой замены проверяются по одному блоку в начале, середине и конце. Починив, доукомплектуйте фильмом: субтитры — несколько КБ, видео — сотни МБ, и только с обоими на руках контент целен.
Частые вопросы
После пересохранения в UTF-8 все равно кракозябры — что делать?
Две частые недоработки: пункт кодировки в диалоге «сохранить как» надо выбрать вручную — старые системы по умолчанию ставят ANSI, а не UTF-8; отдельные плееры читают своей кодировкой по умолчанию — задайте кодовую страницу один раз в настройках субтитров. А если в начале файла появились странные символы — не удаляйте: это маркер BOM, он как раз помогает плееру опознать кодировку.
У скачанных субтитров расширение .txt — они еще годятся?
Расширение на содержимое не влияет, переименуйте обратно в .srt. Перед переименованием проверьте структуру в Блокноте: файл с «номером + таймингами + текстом» — годный субтитр; если строки таймингов нет вовсе, это чистая расшифровка — ищите версию со шкалой времени.
Субтитры отстают на две секунды целиком — править построчно?
Нет. Сначала включите регулировку задержки субтитров в плеере — для разового просмотра хватит; чтобы починить файл, сдвиньте один раз в Subtitle Edit. Построчная правка медленна и плодит новые ошибки; пропорциональный пересчет по-настоящему нужен дрейфу — когда начало точно, а конец уходит больше чем на десять секунд.



