Как добавить несколько файлов «.ass» в качестве мягких субтитров с помощью FFmpeg: пошаговое руководство

Как добавить несколько файлов с субтитрами в формате .ass в видео с помощью FFmpeg

Если вы работаете с видео и хотите добавить несколько файлов субтитров формата .ass как мягкие (soft) субтитры, программа FFmpeg — отличный инструмент для этой задачи. В этой статье мы расскажем, как правильно встроить несколько файлов субтитров .ass в одно видео, сохранив их отдельно как переключаемые дорожки.

Что такое мягкие субтитры и зачем их использовать

Мягкие субтитры (soft subtitles) — это субтитры, которые не вшиваются непосредственно в видео, а добавляются как отдельные дорожки. Это дает возможность пользователю выбирать, показывать их или нет, менять язык или отключать субтитры вовсе. В формате .ass (Advanced SubStation Alpha) субтитры имеют более продвинутые возможности по стилю, позиционированию и анимации, что делает их популярными для профессионального использования.

Подготовка файлов для добавления

Для начала убедитесь, что у вас есть видеофайл и несколько файлов субтитров в формате .ass. Допустим, ваш видеофайл называется video.mkv, а субтитры — subs1.ass и subs2.ass.

Основная команда FFmpeg для добавления нескольких файлов .ass

Чтобы добавить несколько файлов субтитров в видео как отдельные дорожки, используйте следующую команду:

bash
ffmpeg -i video.mkv -i subs1.ass -i subs2.ass \
-map 0:v -map 0:a -map 1 -map 2 \
-c:v copy -c:a copy -c:s ass \
output.mkv

Разбор команды:

  • -i video.mkv — входное видео.
  • -i subs1.ass и -i subs2.ass — входные файлы субтитров.
  • -map — указывает, какие дорожки копировать в выходной файл:
    • -map 0:v — видео из первого файла.
    • -map 0:a — аудио из первого файла.
    • -map 1 — весь контент второго входного файла (первый файл субтитров).
    • -map 2 — весь контент третьего входного файла (второй файл субтитров).
  • -c:v copy и -c:a copy — копирование видео и аудио без перекодирования.
  • -c:s ass — кодирование субтитров в формате ASS (оставить как есть).
  • output.mkv — имя выходного файла.

Добавление настроек языка и названия субтитров

Для улучшения удобства использования медиаплеерами, стоит добавить параметры к дорожкам субтитров, такие как язык и название:

bash
ffmpeg -i video.mkv -i subs1.ass -i subs2.ass \
-map 0:v -map 0:a -map 1 -map 2 \
-c:v copy -c:a copy -c:s ass \
-metadata:s:s:0 language=eng \
-metadata:s:s:0 title="English Subtitles" \
-metadata:s:s:1 language=rus \
-metadata:s:s:1 title="Русские субтитры" \
output.mkv

Где:

  • -metadata:s:s:0 — метаданные для первой субтитровой дорожки (первая после аудио и видео).
  • -metadata:s:s:1 — для второй субтитровой дорожки.
  • language — язык субтитров по коду ISO 639-2.
  • title — удобочитаемое название субтитров.

Советы по работе с несколькими субтитрами в FFmpeg

  1. Порядок подключения — порядка при помощи опции -map важно, чтобы правильно сопоставить аудио, видео и субтитры.
  2. Кодирование субтитров — многие контейнеры поддерживают формат ASS, поэтому -c:s ass подходит для сохранения функциональности.
  3. Проверьте поддержку плеера — убедитесь, что ваш медиа проигрыватель поддерживает отображение субтитров в вашем формате контейнера (MKV поддерживает мягкие субтитры хорошо).

Заключение

Добавление нескольких .ass файлов субтитров в видео с помощью FFmpeg — задача, выполнимая за пару команд. Такой подход позволяет создавать удобные видеозаписи с переключаемыми и многоязычными субтитрами, повышая уровень удобства для пользователей. Не забывайте указывать метаданные для лучшего отображения и поиска среди субтитров.

Используйте приведенные примеры команд, чтобы быстро и качественно интегрировать ваши субтитры в видео!

Источник

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *