Habilitando supressão de ruído no PulseAudio

Publicado por Luís Fernando C. Cavalheiro em 02/05/2016

[ Hits: 23.282 ]

Blog: https://github.com/lcavalheiro/

 


Habilitando supressão de ruído no PulseAudio



Salgadinhos e docinhos do Viva o Linux, aqui começa mais uma Dica do Dino® trazendo para todos vocês informações da época em que o Sistema Solar era apenas um disco de poeira cósmica (provavelmente antes do Maradona passar por lá e acabar com todo o pó). Hoje vamos a mais uma dica sobre o PulseAudio, seguindo uma dica que recebi na mailing list do programa enviada pelo próprio pai do demônio.

Basicamente, quem tentou usar um microfone decente numa placa de áudio onboard notou a quantidade de ruído branco (aka "chiado tipo rádio AM") que é introduzido no sinal de mic in. No Windows é comum ter algum botãozinho em algum lugar escondido no meio de algum bloatware chamado "redução de ruído", que faz o trabalho de limpar o sinal de mic in do ruído branco e deixar a voz limpa como bumbum de nenê.

No GNU/Linux, porém, a coisa não é tão simples assim. Caso você esteja trabalhando com ALSA puro, se prepare para uma pajelança homérica que vai tomar uma semana da sua vida. Com o PulseAudio, tudo que você precisa é de um terminal e um comando:

pactl load-module module-echo-cancel aec_method=webrtc sink_properties=device.description="Noise_Reduction"

..., que irá carregar o módulo de cancelamento de eco (também conhecido como supressão de ruído) e escolher o filtro webrtc para fazer a supressão do ruído branco da parada. Caso o webrtc não esteja disponível em seu computador, substitua por speex que a coisa vai.

Acontece que ninguém precisa que o próprio Lennart diga isso pra você. A minha grande raiva com a supressão de ruído do PulseAudio era a mania detestável que o filho de político (nota: nunca ofenda uma prostituta, elas prestam serviços essenciais para a estabilidade da sociedade humana) tem de ficar realizando auto-ajuste do volume do microfone. Minha voz é esganiçada e irregular (um problema comum a vários professores da Educação Básica), o que faz o volume ficar que nem um doido aumentando e diminuindo. O pulo do gato é fazer com que o volume pare com essa mania desgracenta de se auto-ajustar. E a solução é simples de dar raiva. Poettering sugeriu modificar ligeiramente o comando acima para:

pactl load-module module-echo-cancel aec_method=webrtc sink_properties=device.description="Noise_Reduction" aec_args="analog_gain_control=0\ digital_gain_control=0"

Com isso eu consigo ter a supressão de ruído e o PulseAudio não se mete a auto-ajustar o volume de mic in. E com essa eu me despeço desejando a vocês compilações longas e prósperas!

Outras dicas deste autor

Plugin Pipelight no Fedora 20

Fontes da Microsoft no Slackware

Extraindo referências de artigos acadêmicos ou científicos de arquivo .pdf para .txt

Fazendo o Steam funcionar no openSUSE Leap 15.0

Steam for Linux no Slackware usando SlackBuild de AlienBOB

Leitura recomendada

Rodando programas 32 bits no Slackware64

Balanceando consultas de DNS no /etc/resolv.conf

Entendendo o tal do LOAD AVERAGE

Múltiplo-boot: Fedora + openSUSE + Slackware (partição estendida) e Windows 8 (partição NTFS)

Instalação padrão do Asterisk

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts