FFMPEG Directshow Múltipla Captura de Áudio

0

É possível capturar vários dispositivos de áudio usando ffmpeg dshow? Eu estou tentando capturar minha área de trabalho usando gdigrab junto com mic e áudio de alto-falante usando dshow. Eu tentei usar o seguinte comando, mas não funciona:

ffmpeg -f dshow -i audio="Stereo Mix (Realtek High Definition Audio)" -f dshow -i audio="Microphone Array (Creative VF0800)" -f gdigrab -framerate 10 -video_size 1920x1080 -draw_mouse 1 -i desktop screen.avi

Ele captura somente o áudio do primeiro dispositivo de áudio mencionado. Estou faltando algumas opções no comando acima?

    
por putuyuwono 17.05.2017 / 11:05

2 respostas

0

Finalmente, descobri que preciso mesclar os dois fluxos de áudio. Eu usei amerge para combinar esses dois fluxos em um e mapeá-los para a saída. Aqui está um script totalmente funcional que é capaz de fazer a tarefa que eu quero.

ffmpeg -f dshow -i audio="Stereo Mix (Realtek High Definition Audio)" -f dshow -i audio="Microphone Array (Creative VF0800)" -f gdigrab -framerate 10 -video_size 1920x1080 -draw_mouse 1 -i desktop -filter_complex "[0:a][1:a]amerge=inputs=2[a]" -map 2 -map "[a]" screen.avi
    
por 18.05.2017 / 04:00
0

Nesse caso, você precisa mapear expressamente todos os fluxos necessários, já que o mapeamento automático selecionará apenas um fluxo de áudio. Então,

ffmpeg -f dshow -i audio="Stereo Mix (Realtek High Definition Audio)"
       -f dshow -i audio="Microphone Array (Creative VF0800)"
       -f gdigrab -framerate 10 -video_size 1920x1080 -draw_mouse 1 -i desktop
       -map 2 -map 0 -map 1 screen.avi
    
por 17.05.2017 / 11:26