PalmtopTiger/Re_Sync

Automatic synchronization of subtitles with video

★ 0Forks 0C++GitHub ↗Compare

README

Re_Sync

Подгонка тайминга по подходящему варианту субтитров.

Распространяется на условиях лицензии GPLv3.

Эта программа распространяется бесплатно по принципу "как есть". При этом не предусматривается никаких гарантий, явных или подразумеваемых. Вы используете её на свой собственный риск. Автор не несёт ответственности за потери данных, повреждения, потери прибыли или любые другие виды потерь, связанные с использованием (правильным или неправильным) этой программы.

Помните, она может съесть вашу собаку!

Описание

Программа предназначена для автоматической подстройки требуемого варианта субтитров к видеофайлу. Для работы программы требуются двое субтитров: субтитры, содержащие требуемый вариант перевода, но не подходящие к заданному видеофайлу (далее именуемые «синхронизируемые»), и субтитры, содержащие подходящий к заданному видеофайлу тайминг, но не устраивающие зрителя по какому-либо критерию, будь то качество или знание языка.

Ключевой особенностью является то, что совпадение числа фраз не требуется.

Программа поможет, когда есть:

  • другой, подходящий по таймингу перевод;
  • старая версия этого же перевода с подогнанным ранее таймингом;
  • вложенные субтитры*;
  • закодированные в видео субтитры**.

Программа также будет полезна для фансаберов, которым приходится поддерживать в актуальном состоянии переводы для нескольких релизов. Можно смело вносить изменения в перевод (включая добавление и удаление фраз) и затем просто натравить программу и получить тайминг для другого релиза из старой версии.

* Вытащить такие субтитры можно:

** Тайминг для таких субтитров можно выдрать программами вроде AVISubDetector и VideoSubFinder, но зачастую быстрее подогнать руками.

Возможности программы

  1. Синхронизация субтитров в полностью автоматическом режиме с параметрами по умолчанию;
  2. Синхронизация субтитров с ручной настройкой всех параметров алгоритма;
  3. Фильтры комментариев от авторов перевода;
  4. Фильтры лирики;
  5. Вывод внутреннего представления субтитров в виде графика.

Поддерживаемые форматы субтитров:

  • SRT;
  • SSA;
  • ASS.

Внимание! Программа предъявляет жёсткие требования к соблюдению спецификаций форматов входных файлов! Это означает, что файлы с ошибками читаться не будут!

Поддерживаемые кодировки файлов:

  • ANSI;
  • UTF-8;
  • UTF-16.

Использование программы

Наберите "Re_Sync --help" в командной строке для получения списка доступных команд.

Алгоритм работы

Вначале отбрасываются фразы, которые могут являться комментариями от авторов. Затем фразы обоих скриптов собираются в группы. Группа – набор фраз, расстояние между которыми меньше заданного порогового значения. На серию таких групп получается около 15. Распределение групп для разных скриптов будет примерно одинаковым, поэтому дальше остается только выделить совпадающие подпоследовательности групп и подобрать наилучший вариант их сопоставления.

Информация для самостоятельной сборки

  • Для сборки под Windows требуется MSVC >= 2010 и boost.

  • Для сборки под UNIX-системы требуется GCC >= 4 и boost. Вариант для Linux пока не поддерживает файлы в кодировке UTF-16.

Contributors

PalmtopTiger

Issues