Хардсаб, или Вшиваем субтитры в видеофайл
Вшитые субтитры, или "хардсаб" - это метод наложения субтитров, при котором они предварительно (то есть до начала просмотра) вклеиваются в само видеоизображение и после этого никаким образом не могут быть из него удалены. В отличие от него внешние субтитры, или "софтсаб" - это метод наложения субтитров на картинку в момент воспроизведения, при этом сами субтитры хранятся в отдельном файле (или в отдельном потоке видеофайла).
Первое, что следует решить, прежде чем приниматься за хардсаб: а оно вам нужно? Чаще всего проблемы, связанные с воспроизведением внешних субтиров, в конечном итоге удается решить, даже если вы смотрите видео не на компьютере, а на "железном" плеере: если он не поддерживает субтитры, попробуйте обновить прошивку - возможно, производитель устройства уже позаботился об этом.
Но всё же иногда возникают случаи, когда без хардсаба не обойтись: когда плеер старый, перепрошивке не подлежит и вообще снят с производства, или вы закачиваете кино на свой "айпод", мобильный телефон или микроволновую печь...
Лично у меня отношение к хардсабу скорее отрицательное, чем положительное, но пользователи упорно продолжают задавать вопросы, и поэтому я счел за благо лучше написать и выложить на сайт данную статью, чтобы избавиться от этой темы раз и навсегда.
Итак, поскольку при хардсабе субтитры вшиваются непосредственно в видеозображение, без пережатия видеопотока обойтись невозможно. Следовательно, я не слишком ошибусь, если скажу, что его качество при этом совершенно однозначно пострадает. Насколько - это уже вопрос вашего умения.
Что нам понадобится для лабораторной работы:
1. видеофильм в формате AVI, MPEG (или VOB) или в любом другом формате, пригодном для пережатия;
2. синхронизированные с ним субтитры (о синхронизации читайте здесь);
3. VirtualDubMod;
4. VSFilter.
Подготовка
Установите VirtualDubMod.
Распакуйте архив с VSFilter. Не знаю, как будет дальше, но на момент написания этой статьи он поставлялся в виде архива .7z (можно распаковать WinRar'ом) и содержал две версии VSFilter.dll, в каталогах Release и Release Unicode. Нас интересует версия для Юникода.
Переименуйте файл VSFilter.dll в VSFilter.vdf и перенесите его в каталог Program Files\VirtualDubMod\plugins\
Наложение субтитров
Запускаем VirtualDubMod. Выбираем меню "File" > "Open video file...".
Открываем видео файл.
Все сообщения относительно заголовков VBR игнорируем.
В меню "Video" выбираем "Full Processing Mode".
В окне "Video" > "Compression" выбираем кодек DivX:
Нажимаем кнопку "Configure":
В меню Video выбираем Full Processing Mode
У вас картинка может отличаться от приведенной (потому что в разных версиях DivX элементы управления расположены и называются по-разному). Ваша задача - найти и выставить кодирование в один проход ("1-pass" или "Single Pass") и битрейт в районе 900...1300. Чем выше битрейт, тем выше будет качество видео и тем больше размер файла.
Нажмите "OK" и опять "OK".
При необходимости можно также задать параметры кодирования аудио в меню "Audio" > "Stream List" и другие параметры. Кстати, существует также и двухпроходное кодирование, которое позволяет при том же битрейте получить качество на порядо выше, чем при однопроходном. Но я специально не буду на этом подробно останавливаться, так как наша статья не об этом, а желающие могут прочитать всё это в дюжине других мест.
Теперь выбираем "Video" > "Filters" и (после всех остальных фильтров!) добавляем фильтр "TextSub" (это, собственно, и есть наш переименованный VSFilter.dll):
Добавляем фильтр TextSub
Дальше нам предлагают выбрать файл субтитров:
Выбираем субтитры
Обратите внимание, что этот фильтр поддерживает. Во-первых, уйму разных форматов субтитров, включая SSA/ASS, SMI, и другие. В числе прочих и имеющийся у нас SRT. Во вторых, большой список различных кодировок, которые, насколько я понимаю, нужны для тех случаев, когда в системе проставлена локаль, отличная от кодировки субтитров. Выберем свою кодировку (RUSSIAN).
Нажимаем "ОК".
Теперь можно произвести кодирование ("File" > "Save as..."), чтобы получить видео со вшитыми субтитрами. Ну а дальше вы знаете, что с ним делать - в железный плеер, айпод, микроволновку...