ffmpeg перекомпилирует видео и голос

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

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

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

Другие вопросы по тегам