ffmpeg: Adicione uma nova faixa de áudio ao arquivo existente

2

Eu criei manualmente uma mixagem estéreo de algumas faixas 5.1 DTS. Agora, gostaria de adicionar a nova faixa de áudio ao arquivo de filme original, sem perder as faixas de áudio antigas.

Meu problema parece ser que ou eu perdi para entregar ffmpeg o mapeamento correto das faixas (o arquivo já tem duas faixas de áudio e vários subtis, que parecem contar também), para que eu receba o "Número de mapas de fluxo deve coincidir com o número de fluxos de saída "(citado da memória), ou eu mesmo geht o conceito de fluxo / mapa inteiro errado.

Existe alguma boa explicação para o que estou tentando fazer? Eu até li um texto inteiro sobre o tópico, a documentação no ffmpeg.org simplesmente não é útil nesse caso.

Para ser mais específico: quero saber se existe alguma maneira de fazer com que o ffmpeg exiba o mapeamento de fluxo real de um arquivo e como posso mesclar minha trilha estéreo nele?

Tudo o que encontrei até agora lida com vídeos silenciosos para substituir uma faixa de áudio, o que não é o que eu quero fazer.

    
por Aarkon 30.10.2016 / 09:40

1 resposta

4
ffmpeg -i input.mkv -i audio.dts -map 0 -map 1 -c copy output.mkv

O comportamento padrão seleção de fluxo escolhe apenas um fluxo por tipo de fluxo, portanto, nesse caso, você precisa usar -map para informar quais fluxos você deseja.

O índice do arquivo de entrada começa a contar a partir de 0, portanto, usar -map 0 escolherá todos os fluxos da primeira entrada ( input.mkv ) e -map 1 escolherá todos os fluxos da segunda entrada ( audio.dts ). / p>

O resultado é que output.mkv conterá todos os fluxos de ambas as entradas. Usar -c copy transmitir cópia dos fluxos, para que eles sejam simplesmente re-alterados sem recodificação adicional.

    
por 30.10.2016 / 20:58