FFMPEG. Duas fontes dshow e uma saída. Combine comandos

0

O Office PC tem que registrar o que os operadores dizem aos clientes e, ao contrário, aos clientes para o operador. Eu tenho solução de baixo custo. Mas existe maneira de combinar esses dois comandos?

ffmpeg.exe -f dshow -i audio="Microfone MIC" - mede 2 m1.mp3

e

ffmpeg.exe -f dshow -i audio="Microfone StereoMix" - mede 2 m2.mp3

Além disso, é possível que a primeira fonte esteja sendo gravada para o canal esquerdo e a segunda para a direita do arquivo de saída final. Talvez haja algumas sugestões sobre opções adicionais também. Obrigado.

    
por TarasPro 17.10.2014 / 23:03

1 resposta

1

Mistura simples de entradas, ambas soarão em todos os canais

ffmpeg.exe -f dshow -i audio="Microphone MIC" -f dshow -i audio="Microphone StereoMix" -filter_complex "[0][1] amix [a];[a] volume=volume=2 [b]" -map "[b]" -threads 2 m1.mp3
O filtro

Volume foi adicionado, pois amix deixaria o volume de cada entrada para metade.

Se você precisar dividir cada entrada em um canal diferente, você pode usar join , mas se seus sons de entrada são estéreo, você deve mixá-los previamente em mono para evitar perder nada.

Supondo entradas mono, o resultado seria a primeira entrada à esquerda, a segunda à direita:

ffmpeg.exe -f dshow -i audio="Microphone MIC" -f dshow -i audio="Microphone StereoMix" -filter_complex "join=inputs=2:channel_layout=stereo:map=0.0-FL|1.0-FR" -threads 2 m2.mp3

Assumindo entradas estéreo, não é necessário ajustar o volume, pois cada canal para a mesma entrada deve ser um pouco semelhante:

ffmpeg.exe -f dshow -i audio="Microphone MIC" -f dshow -i audio="Microphone StereoMix" -filter_complex "[0]channelsplit=channel_layout=stereo[a][b];[1]channelsplit=channel_layout=stereo[c][d];[a][b]amix[e];[c][d]amix[f];[e][f]join=inputs=2:channel_layout=stereo:map=0.0-FL|1.0-FR[g]" -map "[g]" -threads 2 m3.mp3
    
por 18.10.2014 / 00:15