ffmpeg: Escolha somente o fluxo de AUDIO por metadados

0

Eu tenho um arquivo MP4 que contém dois fluxos de áudio com tags de idioma ger e fre . O único fluxo de vídeo que ele contém é marcado como eng .

A documentação do ffmpeg cita:

To pick the English audio stream:

ffmpeg -i INPUT -map 0:m:language:eng OUTPUT

No meu caso, isso não funciona. Em vez disso, ele emitirá o único fluxo com a tag eng (que é um fluxo de vídeo). Isso é consistente com: link

No entanto, existe uma opção para especificar os dois

  • o tipo de fluxo ( v , a , ...)
  • e fornecem uma tag de metadados (por exemplo, language:eng )

para o mesmo parâmetro -map ?

    
por Jack Miller 05.08.2017 / 12:27

1 resposta

0

Não é diretamente possível. O analisador para isso não conta para um segundo qualificador. Solução alternativa é usar um pipe

ffmpeg -i IN -map 0:a -c copy -f nut - | ffmpeg -i - -c copy -map 0:m:language:eng OUT
    
por 05.08.2017 / 13:28