mapear com base no tipo específico de fluxo

0

Considere o seguinte arquivo

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'infile.mp4':
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1038
Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 386 kb/s
Stream #0:2(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 124 kb/s

Eu gostaria de executar um comando que usa o vídeo e apenas o áudio estéreo. Com este arquivo em particular eu poderia simplesmente rodar

ffmpeg -i infile.mp4 -c copy -map v -map :2 outfile.mp4

No entanto, isso não funcionará se os fluxos de áudio forem trocados. Como posso eu saber FFmpeg para usar apenas o áudio de 2 canais?

    
por Steven Penny 01.06.2014 / 18:55

1 resposta

0
ffprobe -v 0 -of csv -show_streams infile.mp4 | awk '/stereo/, $0 = ":" $2' FS=,

Resultado

:2
    
por 01.06.2014 / 20:04

Tags