Fusión de video y audio, con recodificación de audio
Vea este ejemplo, tomado de esta entrada de blog pero actualizado para una sintaxis más reciente. Debería ser algo así como:
ffmpeg -i video.mp4 -i audio.wav \
-c:v copy -c:a aac -strict experimental output.mp4
Aquí, asumimos que el archivo de video no contiene ningún flujo de audio todavía, y que quieres tener el mismo formato de salida (aquí, MP4) que el formato de entrada.
El comando anterior transcodifica el audio, ya que los MP4 no pueden llevar flujos de audio PCM. Puedes usar cualquier otro códec de audio que desees si lo deseas. Vea la AAC Encoding Guide para más información.
Si su flujo de audio o video es más largo, puede agregar la opción -shortest
para que ffmpeg deje de codificar una vez que un archivo termine.
Copiar el audio sin recodificar
Si tu contenedor de salida puede manejar (casi) cualquier códec - como MKV - entonces puedes simplemente copiar ambos flujos de audio y video:
ffmpeg -i video.mp4 -i audio.wav -c copy output.mkv
Reemplazar el flujo de audio
Si su vídeo de entrada ya contiene audio, y quiere reemplazarlo, necesita decirle a ffmpeg qué flujo de audio debe 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
El map
opción hace que ffmpeg sólo use el primer flujo de vídeo de la primera entrada y el primer flujo de audio de la segunda entrada para el archivo de salida.