FFMPEG Объединение видео со звуком с аудиофайлом mp3 выводит звук несинхронно

Пример для дальнейшего объяснения: я записываю видео, поющее в то же время, когда певец поет в песне. Итак, у меня есть видеофайл (я пою) и аудиофайл (песня).

Я попробовал эту простую команду:

-i $video-i $audio-c copy -map 0:0 -map 1:0 -shortest output.mp4

Но он дает вывод с отключенным звуком видео (мой голос отключен).

И я хочу что-то более продвинутое, чтобы контролировать громкость каждого звука и добавить фильтр, чтобы выходной звук звучал так, как будто он был записан в студии ... поэтому после долгого поиска в документации и подобных вопросов я составил эту команду здесь ..

-i $video -i $audio -filter_complex "[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.8[a1]; [1:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=4[a2]; [a1][a2]amerge,pan=stereo|c0<c0+c2|c1<c1+c3[out]" -map 1:v -map [out] -c:v copy -c:a libmp3lame -shortest output.mp4

Это дает видеовыход с рассинхронизированным звуком. (мой голос не соответствует певцу).

Любая помощь могла бы быть полезна!


person Mahmoud Eidarous    schedule 23.02.2021    source источник
comment
Отвечает ли это на ваш вопрос? Как добавить новый звук (без микширования) в видео с помощью ffmpeg?   -  person Hernán Alarcón    schedule 23.02.2021