No meu caso, o fone de ouvido aparece na lista de portas do "Built-in Analogue Stereo" e eu posso selecioná-lo no pavucontrol para permitir que o cancelamento de eco o use.
Para o seu caso, acho que você pode precisar apontar explicitamente o cancelamento de eco para a fonte externa. Você pode especificar o argumento "source_master" para o módulo de acordo com a documentação aqui .
Portanto, descubra o nome da fonte externa pactl list sources | less
e, em seguida, pesquise o dispositivo externo necessário, por exemplo. "Adaptador de Áudio Analógico Mono" como acima (pode haver entradas para dispositivos de monitor para que, como a descrição mostrará, pule essas entradas; o dispositivo real terá o prefixo "alsa_input." No nome). Obtenha o nome do dispositivo externo necessário e adicione à linha em /etc/pulse/default.pa
:
load-module module-echo-cancel source_name=echosource aec_method=webrtc source_master=alsa_input.pci-0000_00_1b.0.analog-stereo
(mude o nome no source_master como encontrado antes). Eu não consegui encontrar uma maneira de mudar isso para o microfone interno ou de volta para o microfone externo dinamicamente além de descarregar + carregar o módulo novamente usando pactl / pacmd.
BTW, no meu caso o cancelamento de ruído leva alguns segundos para ter efeito e os primeiros segundos no Skype têm ruído que suaviza rapidamente.