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!
Nenhum comentário foi encontrado.