Перейти к содержанию

Исправление перекрытия субтитров

Найдите и исправьте перекрывающиеся, недействительные или слишком короткие тайм-коды в файлах субтитров SRT и WebVTT.

Входные данные
Выходные данные

Исправление перекрытия субтитров

Файл субтитров, экспортированный из редактора или автоматически сгенерированный с помощью инструмента транскрипции, часто заканчивается тем, что время технически анализируется, но никогда не воспроизводится чисто: время окончания одной реплики оказывается раньше ее начала, две реплики перекрываются, поэтому игроку приходится угадывать, какую из них показать, или строка мигает на экране на долю секунды, потому что ее сосед почти не оставил ей места. Этот инструмент сканирует каждую реплику в файле SRT или WebVTT по порядку и помечает именно эти четыре проблемы: неверный тайм-код конца перед началом, перекрытие с предыдущей репликой, промежуток между репликами, который уже, чем хотелось бы, и продолжительность реплики короче, чем то, что зритель может фактически прочитать.

Выбирайте, как реагировать. Отчет только оставляет файл нетронутым и перечисляет все обнаруженные данные вместе со старым и новым тайм-кодом. Обрезать конец более раннего вызова укорачивает предыдущий вызов ровно настолько, чтобы очистить следующий — обычный выбор, поскольку он никогда не перемещает время начала строки. При сдвиге позже начала вызова следующий вызов перемещается вперед, сохраняя его продолжительность. Минимальный интервал и минимальная продолжительность настраиваются в миллисекундах, по умолчанию они составляют 80 мс и 700 мс — общие рекомендации по созданию субтитров, а не произвольные числа.

Текст метки и нумерация остаются такими же, какими они были; перемещаются только тайм-коды, в которых произошла ошибка. По умолчанию выходной формат соответствует входному — десятичные запятые остаются SRT, десятичные точки и заголовок WEBVTT остаются WebVTT — или принудительное преобразование в любом случае. Допускаются окончания строк CRLF и LF.

Все работает локально в вашем браузере. Файл субтитров для неизданного эпизода, черновой версии клиента или вашей собственной записи анализируется, проверяется и восстанавливается на вашем устройстве — и никогда никуда не загружается.

FAQ

Что именно считается перекрывающимся или недействительным сигналом?
Четыре вещи: реплика, время окончания которой совпадает с ее собственным началом или раньше, реплика, которая начинается до завершения предыдущей, промежуток между двумя репликами уже, чем установленный вами минимум, и реплика, отображаемая меньше минимальной продолжительности.
В чем разница между двумя режимами исправления?
«Обрезать конец более раннего вызова» сокращает сигнал, который был первым, поэтому время начала следующего вызова никогда не затрагивается. «Сдвинуть начало более позднего вызова» вместо этого перемещает следующий вызов вперед — как его начало, так и конец, поэтому его длина не изменяется. Отчет только не вносит изменений и просто перечисляет то, что нашел.
Работает ли он с WebVTT так же, как и с SRT?
Да. Он считывает как тайм-коды SRT, разделенные запятыми, так и тайм-коды WebVTT, разделенные точками, включая заголовок WEBVTT и блоки ПРИМЕЧАНИЕ/STYLE, и может конвертировать между двумя форматами на выходе.
Будет ли он перенумеровывать мои реплики или изменять текст?
Нет. Номера меток (или идентификаторы WebVTT) и сам текст субтитров копируются точно так же, как и были — корректируются только тайм-коды, связанные с обнаруженной проблемой.
Загружен ли где-нибудь мой файл субтитров?
Нет. Вся проверка и исправление выполняются в вашем браузере; файл никогда не покидает ваше устройство.