Перейти к содержанию
КолРайт Открыть KolWrite

Субтитры

Почему сбиваются субтитры с письмом справа налево и как их починить

В субтитрах на иврите или арабском могут стоять правильные слова, но на экране строка все равно разваливается. Точка улетает в другой конец, число переворачивается, а английское имя делит фразу пополам. Причина у этих сбоев всегда одна, и ее можно исправить.

KolWrite 6 мин чтения

Окно экспорта с выбором формата, именами спикеров и таймкодами.
Субтитры и текстовая расшифровка скачиваются из одного окна экспорта.

Краткие выводы

  • В файлах субтитров хранится обычный текст. Строки на экране рисует видеоплеер, поэтому один и тот же файл SRT в одной программе выглядит нормально, а в другой съезжает.
  • У знаков препинания и цифр нет своего направления письма. Они подстраиваются под соседние буквы и перескакивают, когда строка заканчивается английским словом.
  • Сохраняйте субтитры только в кодировке UTF-8. В других кодировках буквы иврита и арабского превращаются в знаки вопроса или кракозябры.
  • Проверяйте готовый файл в том плеере, где его будут смотреть зрители, а сам текст правьте еще до экспорта.
  • Если площадка не умеет нормально показывать внешний файл субтитров, вшейте их прямо в кадр при рендере видео.

Почему знаки препинания оказываются не с той стороны?

На иврите и арабском пишут справа налево, а вот числа и латинские буквы внутри такой строки все равно читаются слева направо. Чтобы собрать смешанную строку, все программы пользуются одним стандартом, двунаправленным алгоритмом Unicode (Unicode Bidirectional Algorithm). У букв направление задано жестко. Пробелы, запятые, точки, кавычки и скобки нейтральны, поэтому они берут направление у соседних букв.1

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

Какие поломки встречаются чаще всего?

Чаще всего знаки препинания улетают в другой конец строки. Обычно это случается после английских слов, цифр или закрывающей скобки. Вторая беда: числа со знаком процента или валюты меняются местами. Третья: диапазоны чисел и таймкоды вроде 10:30 нормально читаются на одной строке, но переворачиваются, если разбить их на две.

Четвертая проблема возникает, когда в тексте смешиваются разные алфавиты. Английское имя посреди фразы на иврите само по себе выглядит нормально, но может поменять местами слова вокруг себя. Точно так же ведут себя описания звуков в квадратных скобках, имена спикеров с двоеточием и значки музыкальных нот, потому что из-за них на краю строки оказываются нейтральные символы.

Как поправить строку субтитров перед экспортом

Сначала попробуйте изменить саму формулировку. Если в конце строки оказалось английское слово, поменяйте порядок слов так, чтобы она заканчивалась ивритом или арабским, либо уберите знак препинания от латиницы. Часто хватает мелкой правки, например добавить слово на иврите после названия бренда, и отображение выравнивается сразу во всех плеерах.

Если менять текст нельзя, поставьте невидимый символ Unicode, который задает направление письма. Он прямо указывает программе, в какую сторону развернуть нейтральный знак. Поставьте маркер письма справа налево в самом конце строки, сразу за точкой, и он привяжет пунктуацию к основному тексту. Консорциум W3C советует делать так на веб-страницах, и в файлах субтитров этот прием работает точно так же.2

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

Влияют ли формат файла и кодировка?

Да, и прежде всего кодировка. Всегда сохраняйте файл в UTF-8. Если в файле SRT на иврите или арабском вместо букв вылезли вопросы или кракозябры, его почти наверняка сохранили или открыли в старой кодировке. Откройте его заново как UTF-8 или еще раз экспортируйте из редактора субтитров.

В файле SRT лежат только текст и таймкоды. Формат VTT создавали для веба по спецификации W3C, и в нем можно дополнительно задавать положение и стиль строк. Но двунаправленный текст оба формата обрабатывают по одним и тем же правилам, поэтому все способы из этой статьи работают и в SRT, и в VTT.3

KolWrite экспортирует файлы SRT и VTT из отредактированной расшифровки с правильным направлением письма справа налево для иврита и арабского. Сначала поправьте текст в самой расшифровке, а потом выгружайте файл, чтобы все исправления сразу попали в экспорт.

Как проверить готовый файл

Откройте готовый файл именно в том плеере, где ролик будут смотреть зрители: в соцсети, веб-плеере, галерее телефона или на таймлайне монтажной программы. Разные плееры выводят текст справа налево по-своему. Файл, который ровно лег в одном приложении, для другого иногда приходится чуть подправить.

Внимательнее всего проверяйте три места, где верстка слетает чаще всего: строки с английским словом на конце, строки с цифрами или символами и фразы, разбитые на две строки. Смотрите видео со звуком. Бывает, что на глаз строка выглядит нормально, но уже разошлась с речью в кадре.

Когда лучше вшить субтитры в видео

Если площадка криво показывает внешние файлы субтитров или вам нужно точно зафиксировать шрифт и положение текста на экране, вшейте субтитры прямо в видео. Буквы станут частью картинки, и на любом устройстве верстка будет выглядеть одинаково. Расплата за это понятная: зритель не сможет выключить субтитры, сделать их крупнее или переключить язык.

Удобнее всего сразу готовить оба варианта. Чистый файл SRT или VTT пойдет на площадки, где нормально работают скрытые субтитры, а ролик со вшитым текстом пригодится для всех остальных. В KolWrite оба формата выгружаются из одной и той же расшифровки, так что вычитывать текст придется всего один раз.

Частые вопросы

Почему в субтитрах на иврите точка оказывается слева?

Скорее всего, в конце строки стоят английские буквы или число. У знаков препинания нет своего направления письма, они подстраиваются под соседние символы. Перепишите фразу так, чтобы в конце стояло слово на иврите, или поставьте после точки маркер письма справа налево.

В какой кодировке сохранять файлы SRT на иврите и арабском?

Сохраняйте в UTF-8. Старые кодировки не вмещают все буквы иврита и арабского алфавита и часто подменяют их знаками вопроса или нечитаемыми символами.

Правда ли, что для языков с письмом справа налево формат VTT лучше, чем SRT?

С направлением письма оба формата работают одинаково, по одним и тем же правилам Unicode. В VTT можно дополнительно настроить положение и оформление строк, поэтому выбор зависит только от того, где вы будете крутить видео.

Можно ли поправить порядок знаков препинания прямо в видеоплеере?

Обычно нет. Плеер просто показывает тот текст, который ему дали. Надежнее поправить сам текст субтитров, а потом проверить готовый файл в нужном плеере.

Спасают ли вшитые субтитры от проблем с версткой?

Да, потому что при экспорте текст впекается прямо в кадры видео. Но перед рендером верстку все равно нужно вычитать глазами, а зрители потом не смогут отключить такие субтитры.

Источники и дополнительная литература

  1. 1Unicode Consortium, UAX #9: Unicode Bidirectional Algorithm
  2. 2W3C Internationalization, Inline markup and bidirectional text in HTML
  3. 3W3C, WebVTT: The Web Video Text Tracks Format

Все руководства и исследования

Читать далее

Окно экспорта с выбором формата, именами спикеров и таймкодами.

Субтитры

Вшитые или скрытые субтитры: как выбрать подходящий формат

Субтитры можно встроить прямо в видеоряд или приложить отдельной дорожкой. От этого зависит, кто сможет их прочитать, как вы будете исправлять опечатки и на каких площадках ролик заработает.

6 мин чтения

Окно экспорта с выбором формата, именами спикеров и таймкодами.

Субтитры

SRT или VTT: какой формат субтитров выбрать?

Оба формата хранят обычный текст, где реплики привязаны к таймкодам. На первый взгляд файлы почти одинаковые, но в работе ведут себя по-разному. Разница заметна в веб-плеерах, при настройке внешнего вида текста и при чтении файла самой программой.

6 мин чтения

Окно экспорта с выбором формата, именами спикеров и таймкодами.

Субтитры

Правила оформления субтитров: длина строки, скорость чтения и тайминг

Хорошие субтитры читаются без усилий. Секрет в нескольких точных правилах: делать строки короткими, оставлять их на экране достаточно долго и переносить фразы по смыслу. Разберем эти рабочие стандарты и логику за ними.

5 мин чтения

Окно экспорта с выбором формата, именами спикеров и таймкодами.

Субтитры

Временные метки и тайм-коды: как записывается время в расшифровках и субтитрах

Временная метка показывает, в какой момент записи прозвучала фраза. Если понимать формат и точность меток, а также причины их смещения, будет проще проверять цитаты, монтировать видео и поправлять сбившиеся субтитры.

6 мин чтения

Окно экспорта с выбором формата, именами спикеров и таймкодами.

Видео

Как превратить видеофайл в текст и субтитры

Видео состоит в основном из картинки, но вся речь записана в звуковой дорожке. Получить из файла MP4 или MOV проверенную расшифровку и файл субтитров можно в несколько шагов, а быстрая проверка в самом начале избавит от большинства проблем.

6 мин чтения

Окно экспорта с выбором формата, именами спикеров и таймкодами.

Видео

Как расшифровать видео с YouTube и загрузить в него субтитры

Расшифровка позволяет искать нужные места в видео, цитировать спикера и смотреть ролик без звука. То, как именно ее получить, зависит от двух вещей: кому принадлежит видео и сохранился ли у вас исходный файл.

6 мин чтения