Substitua o canal por áudio usando arquivos de áudio externos
Um método é usar o filtro aderir :
ffmpeg -i input.mkv -i audio1.ac3 -i audio2.ac3 -filter_complex "[0:a:0][1:a]join=inputs=2:channel_layout=5.1:map=0.0-FL|0.1-FR|1.0-FC|0.3-LFE|0.4-BL|0.5-BR[a0];[0:a:1][2:a]join=inputs=2:channel_layout=5.1:map=0.0-FL|0.1-FR|1.0-FC|0.3-LFE|0.4-BL|0.5-BR[a1]" -map 0:v -map "[a0]" -map "[a1]" -c:v copy -c:a flac output.mkv
Eu fiz algumas suposições sobre o pedido do canal. Você pode ter que ajustar. Veja ffmpeg -layouts
para informações de layout do canal.
Preserve as tags de metadados
Na documentação (na opção -map_metadata
):
By default, global metadata is copied from the first input file, per-stream and per-chapter metadata is copied along with streams/chapters.
Você não forneceu nenhuma informação detalhada sobre seus arquivos ou os metadados (a saída completa de ffmpeg -i input.mkv -i audio1.ac3 -i audio2.ac3
teria sido suficiente), portanto, assumirei que o comportamento padrão funcione.
Sem perda de qualidade
A filtragem requer recodificação, portanto, um formato sem perdas (flac) é usado no exemplo.