No momento da escrita deste artigo, 100% dos usuários
Linux usam ALSA como padrão para acesso direto ao hardware, entre eles muitos sistemas usam PulseAudio como o servidor de som padrão, usando-o para lidar com toda a reprodução de som (players de mídia, alertas desktop, navegadores da web e muito mais).
Assim sendo o PulseAudio está sobre o ALSA, se você quer trabalhar com gravação vai ter alguns problemas com o JACK e o PulseAudio. A razão destes problemas é porque o JACK e o PulseAudio entram em conflito, já que os dois querem acessar o ALSA ao mesmo tempo. Assim quando o JACK entra ele derruba o Pulse e todas as aplicações usadas pelo Pulse ficam em silêncio.
Só que o Pulse uma vez derrubado tenta entrar novamente, porém não consegue porque a prioridade do JACK é maior então ele fica esperando o JACK terminar.
Quando o JACK termina o Pulse entra, mas ele está em silêncio porque perdeu a conexão dos aplicativos... aí você vai no controle do volume e lá está o Pulse como se estivesse tudo normal, porém na sua caixa de som não sai áudio...
Isso foi um dos motivos pelo qual por muito tempo eu evitei usar um excelente programa chamado
Ardour, de quem inda vou falar mais sobre. Toda vez que eu o usava, todas as outras aplicações ficavam sem áudio até eu reiniciar o computador... era frustrante.
Assim é a realidade do áudio no
GNU/Linux por padrão, JACK e Pulse lutando por uma vaga no ALSA.
O ideal depende de qual hardware você tem e o que você quer fazer.
Se você é um profissional de áudio, tem mais de uma placa de áudio no seu computador. Se você não tem mais de uma placa de áudio, não é um profissional de áudio. :)
Nesse caso você sabe qual é a placa que vai usar para gravação e a placa in-board fica para os demais programas. Então vamos usar a seguinte configuração:
No caso de você ser amador, curioso, hobbista, ou um usuário normal e só tem uma placa de áudio mas quer se sentir como um profissional e aprender a fazer mágica com som, pode usar o PulseAudio conectado ao JACK:
Se procurar tutoriais na internet de como configurar esses cenários vai encontrar muitas maneiras diferentes de fazer a mesma coisa. Tem tantas maneiras de fazer isso que fica até confuso. Portanto, antes de explicar como fazer isso, me permitam explicar o porquê dessa montanha de maneiras de como atingir o mesmo resultado e alguns dos erros comuns que muita gente comete ao configurar o áudio do seu sistema.
GNU/Linux está em desenvolvimento constante e ao contrário do Mac/Windows, você tem um manual para cada aplicação e ao fazer uma atualização da aplicação a documentação também é atualizada, porém existem os fóruns e web sites como o VOL que mantém online as maneiras antigas de atingir um resultado. Assim, é sua a responsabilidade de checar a data da publicação do artigo, tutorial etc. Se você está lendo esse artigo em 2020, provavelmente não deve seguir essa publicação à risca. O artigo pode ser excelente na época, mas em 3 anos é arriscado seguir...
Não siga tutoriais que ensinam...
1. Incluir seu usuário no grupo áudio se você tem múltiplo usuários
Se você incluir o usuário Cebolinha no grupo áudio e se Cebolinha estiver gravando e sair por um momento, bloqueando a tela, quando Mônica vem logar no usuário dela, ela não vai conseguir usar nada que exige áudio porque o usuário Cebolinha está usando o áudio.
2. Usar um "model" diferente no ALSA
Muitos tutoriais dizem para você carregar os módulos do driver para HDA Intel modificando
/etc/modprobe.d/alsa-base.conf e mudando a linha "options snd-hda-intel model=[alguma coisa]".
Onde "Alguma coisa" seria o valor qualquer que você encontra em um arquivo, especialmente se você colocar "model=generic".
É uma solução se você tem uma placa HDA Intel e tem problemas com o fone de ouvido ou o microfone, essa solução é para o Ubuntu, até onde eu sei use o hda-jack-retask.
3. Atualizar o ALSA seguindo um blog qualquer
Talvez você não saiba disso, mas 95% do código do ALSA está embutido no kernel do Linux e ele segue os updates do kernel, então se você digitar no terminal:
cat /proc/asound/version
E vê algo antigo, isso pode ser um falso alerta porque se você faz um upgrade do kernel, ALSA vai ser atualizado. Se você atualizar o ALSA somente, você pode ter problemas porque os módulos vão se corresponder com ALSA novo, mas o kernel vai responder com código antigo (In a nutshell).
4. Desinstalar o PulseAudio
É estranho muitas distros terem o PulseAudio como padrão, porque os próprios desenvolvedores do Pulse não recomendam usar como padrão, já que Canonical, Red Hat e cia decidiram fazer isso, eles ligaram o Pulse como dependência em tudo o que você imagina de aplicações de mídia. Ou seja, se você desinstalar o Pulse vai estragar as dependências de aplicações e acabar com pacotes quebrados... Se você definitivamente quer usar o JACK sozinho, na próxima página eu explico como fazer.
5. Trocar o ALSA pelo OSS
A única razão pela qual encontramos muitos pacotes e aplicações que tem suporte para OSS é porque os desenvolvedores mantêm para compatibilidade, OSS é antigo e obsoleto, não troque o ALSA por ele.