como mesclar duas fontes de entrada de áudio usando avconv

6

Eu tento fazer screencast usando o avconv e estou enfrentando um problema. Eu finalmente consegui gravar tanto a saída do PC quanto a entrada do microfone, o problema é que eles não são mesclados no arquivo de saída. (Eu vi que eles são uma opção filter_complex amix = entradas, mas é só no lançamento antecipado)

Existe alguma outra maneira que eu possa mesclá-los (mesmo que seja pós-produção eu não me importo)

aqui a linha de comando que eu uso

avconv -f alsa -ac 2 -i pulse -f alsa -ac 2 -i hw:2,0 -filter_complex amix=inputs=2 -f x11grab -r 30 -s 1366x742 -i :0.0+1369,25 -map 0:0 -map 1:0 -map 2:0 -acodec flac -vcodec libx264 -preset:v superfast -crf 18 -threads 0 output.mkv
    
por eephyne 11.01.2013 / 18:14

1 resposta

1

Eu costumo fazer isso com ffmpeg , que tem filtros semelhantes, então talvez isso ajude você. Isso pressupõe captura de tela & áudio do pc em screen.avi , captura do microfone em mic.wav .

ffmpeg -i screen.avi -i mic.wav -filter_complex '[0:1][1:0]amix=inputs=2:duration=first[all_audio]' -map 0:0 -map '[all_audio]' -vcodec libx264 -crf 28 -preset slow -acodec mp3 out.avi

Acho que -map escolhe canais para ir para a saída, por isso, se eu estava depurando sua linha de comando original, acho que você deve perder -map 1:0 -map 2:0 (que está mapeando as entradas não mescladas em sua saída) e deve nomear saída do plugin amix (por exemplo para all_audio como no meu exemplo) e tem um -map '[all_audio]' (para mapear o áudio mesclado em sua saída). Mas eu não sei avconv .

    
por 16.07.2014 / 09:37