Я использую Ubuntu Vivid на своем ноутбуке, и я хочу перекомпилировать аудио и голос с задержкой звука. По сравнению с аудио фильм опоздал. Я демультиплексировал voice.aac и video.h264 из оригинального видео. Я знаю, что это возможно через редактирование aac, но этот файл не нуждается в каком-либо моде для aac. Просто хочу задержать звук.

1 ответ1

1

Опция -itsoffset должна делать то, что вы хотите:

-смещение смещения (вход)

Установите смещение времени ввода.

смещение должно быть спецификацией продолжительности времени, см. (ffmpeg-utils) раздел «Продолжительность времени» в руководстве ffmpeg-utils (1).

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

Так

$ ffmpeg -i video.h264 -itsoffset 1.0 -i voice.aac -map 0:a -map 1:v -c copy remuxed.mp4

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

Что будет лучше, если вы сделаете это, используя оригинальный файл:

 $ ffmpeg -i orig.mkv -itsoffset 1.0 -i orig.mkv -map 0:a -map 1:v -c copy remuxed.mkv

Это применяет задержку в 1 секунду (для опции -itsoffset) к input 0 , а задержку к input 1 . Параметры -map определяют, чтобы (задержанное) аудио со input 0 и (без задержки) видео со input 1 .

Надеюсь, это понятнее!


(Если вы хотите отложить видео, измените параметры -map :

 $ ffmpeg -i orig.mkv -itsoffset 1.0 -i orig.mkv -map 0:v -map 1:a -c copy remuxed.mkv

который указывает, что нужно взять отсроченное видео и непропущенное аудио)

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