Recentemente, tive um problema em que iniciar um aplicativo que precisa de acesso ao meu microfone altera meu perfil de áudio configurado no pavucontrol de "Áudio Profissional" para outra coisa.
Isso acontece especificamente ao usar o Discord, por exemplo. Toda vez que entro em um canal, preciso entrar no pavucontrol, mudar o perfil de volta para "Pro Audio" e então tenho que configurar explicitamente minha entrada/saída no discord para esse dispositivo também. Definir a entrada/saída como "Padrão" no discord parece travar o servidor de áudio completamente.
Sou relativamente novo no mundo do áudio Linux, mas, até onde sei, o Discord está usando o PulseAudio, que tenho disponível com o pipewire-pulse (veja a configuração abaixo). Mas isso não deve alterar o perfil do dispositivo que estou executando, certo?
Quando verifico, pw-cli e <device-id> Profile
vejo que o perfil está de fato disponível, selecionado e também definido para salvar.
Qualquer conselho sobre como depurar/consertar isso é muito apreciado.
Estou usando o NixOS e meu dispositivo de áudio é um Focusrite Scarlett Solo 4ª geração.
Esta é minha configuração Nix em relação ao áudio:
configuration.nix
:
{ config, pkgs, ... }:
{
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa = {
enable = true;
support32Bit = true;
};
pulse.enable = true;
wireplumber.enable = true;
jack.enable = true;
extraConfig = {
pipewire."92-low-latency" = {
context.properties = {
default.clock.rate = 192000;
default.clock.allowed-rates = [ 44100 48000 88200 96000 176400 192000 ];
default.clock.quantum = 512;
default.clock.min-quantum = 32;
default.clock.max-quantum = 1024;
};
};
};
};
environment.systemPackages = with pkgs; [
pavucontrol
helvum
alsa-utils
];
}
easyeffects.nix
:
{ pkgs, config, ... }: {
services.easyeffects = {
enable = true;
preset = "default";
};
home.file = {
".config/easyeffects/output/default.json" = {
source = config.lib.file.mkOutOfStoreSymlink ../loose-configs/easyeffects/output/default.json;
};
};
}