A linha de comando básica do FFmpeg para seu uso requerido é
ffmpeg -i video.mp4 -i audio.wav -map 0 -map 1:a -c:v copy -c:a:0 copy -c:a:1 aac video-new.mp4
-map 0
significa incluir todos os fluxos da primeira entrada - o índice FFmpeg começa no zero. Da mesma forma, map 1:a
significa incluir todos os fluxos de áudio da segunda entrada. -map 1
teria sido suficiente, pois os arquivos WAV contêm apenas fluxos de áudio.
-c:v copy
significa que todo e qualquer fluxo de vídeo incluído na saída deve ser copiado, portanto, não é necessário codificar novamente.
-c:a:0 copy
significa que o primeiro fluxo de áudio na saída também deve ser copiado. A ordem dos fluxos de saída aqui é decidida pela ordem dos argumentos do mapa. Como -map 0
é colocado primeiro, os fluxos de áudio e vídeo desse arquivo serão empilhados primeiro na saída. Assim, o primeiro fluxo de áudio na saída será aquele da primeira entrada, ou seja, video.mp4
-c:a:1 aac
significa codificar o segundo fluxo de áudio na saída com o codificador AAC (nativo).
No Windows, você pode usar o front-end GUI Avanti para realizar operações em lote. Leia o link para instruções de configuração - bastante simples.
Suas principais configurações da janela da GUI devem ficar assim:
Depoisdeexecutarumúnicotrabalhonajanelaprincipal,vocêpodecarregaroGerenciadordecontroledetarefas,disponívelnomenususpensoaoclicarnoíconenocantosuperioresquerdo.
Issodeveficarassim:
Para cada par correspondente de vídeo / áudio adicionado, desmarque o arquivo de áudio para que o Avanti saiba que faz parte do mesmo trabalho que a entrada de vídeo acima dele. Selecione seu caminho de destino (4º ícone no topo da esquerda) para ser diferente da pasta que contém seus arquivos de origem. Avanti terá o nome do arquivo de saída da mesma forma que a primeira entrada (o vídeo), então você terá uma surpresa desagradável se não cuidar disso.
Isso praticamente cobre isso.