2

поэтому у меня есть видео (может быть MKV или MP4) с несколькими звуковыми дорожками и несколькими субтитрами (на разных языках).

Я хочу сделать ремукс в новом видео и:

  1. выбирая только 1 или 2 звуковых дорожки
  2. выбирая только 1 или 2 дорожки субтитров
  3. сделать 1 звуковую дорожку и 1 дорожку субтитров (если доступно) по умолчанию, чтобы они автоматически выбирались при воспроизведении видео с использованием VLC.

Я искал в сети, но не могу найти то, что я ищу. Я также посмотрел на "man ffmpeg". Я думаю, что мне, возможно, придется использовать параметр -map, но приведенные примеры, похоже, ограничены копированием только аудио.

Большое спасибо! :)

1 ответ1

2

Предположим, что на вашем входе есть 3 звуковых дорожки и дорожки субтитров вместе с видео дорожкой, а затем для мультиплексирования видео, 2-й звуковой дорожки и 1-й + 3-й дорожки субтитров вы должны использовать

ffmpeg -i in.mkv -c copy -map 0:v -map 0:a:1 -map 0:s:0 -map 0:s:2 out.mkv

FFmpeg, afaik, не устанавливает должным образом флаги по умолчанию для потоков, поэтому лучше всего сначала смутить нужный трек по умолчанию. Предположим, что в приведенном выше примере вы хотите, чтобы 3-й поток субтитров был по умолчанию, тогда вы бы использовали

ffmpeg -i in.mkv -c copy -map 0:v -map 0:a:1 -map 0:s:2 -map 0:s:0 out.mkv

(Порядок аргументов карты устанавливает порядок потоков в выходных данных)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .