Fusão de vídeo e áudio, com recodificação de áudio
Veja este exemplo, retirado de esta entrada no blog mas actualizado para uma sintaxe mais recente. Deve ser algo para o efeito de:
ffmpeg -i video.mp4 -i audio.wav \
-c:v copy -c:a aac -strict experimental output.mp4
Aqui, assumimos que o ficheiro de vídeo ainda não contém nenhum fluxo de áudio, e que pretende ter o mesmo formato de saída (aqui, MP4) que o formato de entrada.
O comando acima transcodifica o áudio, uma vez que os MP4s não podem transportar fluxos de áudio PCM. Pode utilizar qualquer outro codec de áudio desejado, se desejar. Veja o Guia de Codificação AAC para mais informações.
Se o seu fluxo de áudio ou vídeo for mais longo, pode adicionar a opção -shortest
para que o ffmpeg deixe de codificar assim que um ficheiro termine.
Copiar o áudio sem recodificar
Se o seu contentor de saída pode tratar (quase) qualquer codec - como o MKV - então pode simplesmente copiar ambos os fluxos de áudio e vídeo:
ffmpeg -i video.mp4 -i audio.wav -c copy output.mkv
Substituindo o fluxo de áudio
Se o seu vídeo de entrada já contém áudio, e pretende substitui-lo, precisa de dizer a ffmpeg qual o fluxo de áudio a tomar:
ffmpeg -i video.mp4 -i audio.wav \
-c:v copy -c:a aac -strict experimental \
-map 0:v:0 -map 1:a:0 output.mp4
A opção map
faz com que ffmpeg utilize apenas o primeiro fluxo de vídeo da primeira entrada e o primeiro fluxo de áudio da segunda entrada para o ficheiro de saída.