Início
» Dicas para PC
»
Reduza a distorção de áudio no Ubuntu 24.04 com ajustes específicos no ALSA.
Reduza a distorção de áudio no Ubuntu 24.04 com ajustes específicos no ALSA.
Comece diminuindo o ganho de reprodução e verificando se a distorção afeta todos os aplicativos. No Ubuntu 24.04 Desktop, o PipeWire normalmente fica entre os aplicativos e o dispositivo de som, portanto, um ajuste no ALSA só é útil quando resolve a causa: use o mixer para distorção, um ALSA plugPCM para um aplicativo que usa ALSA diretamente e apresenta incompatibilidade de formato, ou um teste de economia de energia para estalos após o período ocioso. Evite substituir a configuração padrão do ALSA em todo o sistema como primeiro passo.
A distorção vem de um aplicativo específico ou de todo o sistema?
Essa distinção determina qual configuração é relevante. Um navegador com som ruim, enquanto alertas do sistema e outro reprodutor soam limpos, indica um problema com o aplicativo, seu nível de fluxo ou a saída selecionada. A distorção em qualquer aplicativo pode ser causada por ganho de reprodução excessivo, pelo dispositivo ou cabo, por um driver ou por uma transição de energia. As configurações do ALSA não corrigem um alto-falante danificado ou uma conexão física ruim.
Reproduza o mesmo pequeno trecho de áudio em dois aplicativos diferentes, usando a mesma saída. Abaixe o volume do aplicativo e o nível de saída do Ubuntu antes de testar; um sinal digital distorcido na entrada não pode ser reparado posteriormente apenas com a troca de um mixer de hardware.
Abra um terminal e execute `sudo apt-get` pactl infoe wpctl status`sudo apt-get`. Esses comandos mostram o servidor de áudio ativo e os objetos PipeWire disponíveis quando essas ferramentas estão instaladas. O plano de teste de áudio da área de trabalho do Ubuntu documenta o PipeWire como o servidor de som da área de trabalho. Se a sua instalação foi personalizada, use a saída desses comandos em vez de assumir o caminho de áudio padrão.
Execute o comando aplay -lpara listar o hardware de reprodução ALSA. Se o problema ocorrer apenas com um fone de ouvido, alto-falante, dock ou cabo, reconecte ou troque a conexão antes de alterar a configuração.
Saída ilustrativa do terminal mostrando o PipeWire como servidor de áudio e o comando `aplay` listando os dispositivos de reprodução.
Será que o ganho de reprodução está causando distorção?
Sim. Quando o som ficar estridente, com ruído ou distorcido em picos de volume, reduza o ganho antes de adicionar qualquer configuração. Vários controles de volume podem ser sobrepostos: o do aplicativo, o da saída do computador e os controles de hardware, como Master, PCM ou Speaker. Os nomes variam de acordo com o dispositivo de áudio, portanto, altere um controle de reprodução relevante por vez e ouça novamente.
Instale o utilitário de mixagem, se necessário, com sudo apt install alsa-utils.
Execute o comando alsamixer. Pressione F6para selecionar a placa de som e, em seguida, F3para exibir os controles de reprodução. Use as teclas de seta para selecionar o controle Master, PCM ou Speaker. O alsamixermanual do Ubuntu Noble documenta essas visualizações de placa e reprodução.
Reduza também o volume de saída do aplicativo e da área de trabalho para um nível moderado. Não aumente o controle acima de 100% para compensar uma fonte de áudio baixa; aumentar o volume pode piorar a distorção. Mic BoostEste é um controle de captura e não corrige a reprodução.
Faça o teste com a mesma passagem de áudio após cada ajuste. Se diminuir um determinado controle de hardware eliminar a distorção, mantenha esse controle abaixo do nível em que a aspereza retorna. Não existe uma porcentagem "correta" universal: os controles da placa de som e a sensibilidade dos alto-falantes variam.
Visualização ilustrativa da reprodução do alsamixer com os controles Master, PCM e Speaker mantidos abaixo do máximo.
O problema afeta apenas um aplicativo que abre o ALSA diretamente?
Experimente pluga conversão do ALSA antes de editar um dispositivo padrão. O plug-in pode converter o formato da amostra, a taxa de amostragem ou a contagem de canais para corresponder ao hardware. Isso é uma boa opção para programas legados ou de linha de comando que abrem o ALSA diretamente e falham ou apresentam problemas de áudio com um PCM bruto de hardware. Ele não altera o caminho usado pelos aplicativos PipeWire comuns.
Encontre os números do cartão e do dispositivo em aplay -l. Para um teste rápido, substitua o PCM de hardware exibido em sua máquina neste comando:
plughw:0,0Significa cartão 0, dispositivo 0; seus números podem ser diferentes. Se este teste de conversão parecer correto, enquanto um hw:0,0teste direto falhar, você pode definir um PCM nomeado em seu arquivo de configuração do usuário ~/.asoundrc.
pcm.converted {
type plug
slave.pcm "hw:0,0"
}
Substitua hw:0,0pelo dispositivo que você identificou. Selecione-o convertedno aplicativo compatível com ALSA ou teste-o com speaker-test -D converted -c 2 -t sine -f 440 -l 1. Faça um backup de um arquivo existente antes de editá-lo. A referência do plug-in PCM~/.asoundrc do projeto ALSA descreve a conversão, e seu guia asoundrc documenta a configuração do usuário e do sistema. Evite copiar esta definição para , a menos que você pretenda substituir especificamente o padrão do ALSA para todos os clientes ALSA; isso pode afetar outros dispositivos ou o roteamento da área de trabalho.pcm.!default
Trecho ilustrativo do arquivo ~/.asoundrc definindo um PCM de plug-in ALSA nomeado para um dispositivo de hardware selecionado.
O estalo ocorre apenas após o silêncio ou quando a reprodução é retomada?
Esse padrão pode indicar economia de energia do codec HDA, em vez de distorção. Teste a configuração temporariamente apenas se o snd_hda_inteldriver e o parâmetro existirem. Primeiro, verifique o valor atual:
Se o arquivo existir, desative temporariamente o intervalo de economia de energia do codec até a reinicialização:
echo 0 | sudo tee /sys/module/snd_hda_intel/parameters/power_save
Reproduza o áudio, deixe-o ocioso por tempo suficiente para que o clique ocorra e retome a reprodução. A documentação de economia de energia ALSA do kernel descreve o parâmetro de economia de energia HDA e observa que as transições de energia podem produzir cliques audíveis em alguns hardwares. Desativar essa configuração pode consumir mais energia; não é uma solução geral para distorção durante a reprodução contínua.
Se o teste for útil e você quiser que a alteração seja permanente, crie /etc/modprobe.d/alsa-hda-powersave.confum arquivo contendo o caminho options snd_hda_intel power_save=0do sysfs e reinicie o sistema. Para desfazer a alteração, remova o arquivo e reinicie o sistema. Se o caminho do sysfs estiver ausente, ignore esta configuração: o driver pode não estar carregado ou seu dispositivo pode estar usando outro driver. Não crie um caminho ausente manualmente.
Visão ilustrativa do terminal mostrando um valor de economia de energia HDA mudando de 10 para 0 para um teste temporário.
Como posso confirmar se a correção está correta?
Reproduza a mesma passagem em um nível moderado no aplicativo original e em um segundo aplicativo. Verifique se os picos de ruído não estão mais presentes e, para um problema de clique ocioso, confirme se o áudio é retomado sem o clique. Se você adicionou um PCM ALSA nomeado, teste-o a partir do programa compatível com ALSA; um navegador ou outro cliente PipeWire pode não usar essa definição.
Se a distorção persistir em todos os aplicativos, saídas e níveis de reprodução razoáveis, reverta as configurações experimentais e investigue a conexão, o dispositivo ou o driver do kernel. O Ubuntu recomenda verificar os conectores e o dispositivo de som selecionado em busca de estalos. Reúna aplay -le, para áudio PCI, lspci -nnkenvie a saída ao buscar ajuda específica para o driver. Evite alterações arbitrárias no tamanho do buffer: alterações no buffer trocam latência por tolerância a subfluxo e devem ser feitas após a detecção de interrupções, não sendo usadas como uma solução genérica para distorção.