Estou executando nixos em um Lenovo x220t. Ao iniciar ele encontra os alto-falantes analógicos e mostra apenas eles no alsamixer (ou pavucontrol). No entanto, quando conectado a um monitor/TV HDMI, posso reproduzir som através dos alto-falantes, por exemplo, por speaker-test -c 2 -D hw:0,3
.
Com um pouco de pesquisa pela internet cheguei a este script,
pcm.!default{
type plug
slave.pcm "hdmivol"
}
pcm.hdmi-playback{
type hw
card 0
device 3
}
pcm.hdmivol{
type softvol
slave.pcm "hdmi-playback"
control {
name "Master"
card 0
}
}
que, se chamado, ~/.asoundrc
emitirá som pela minha TV/monitor HDMI. Mas para mudar o pacote para o meu laptop, preciso renomear o script, sair e fazer login novamente.
Obviamente as coisas funcionam, mas não entendo: 1. Por que posso ver e usar todos os dispositivos diretamente (por exemplo, com o teste de alto-falante), mas alsamixer e pulseaudio não os "vêem"? 2. Alguém pode fornecer algumas dicas sobre a estrutura do asoundrc. Não fiz muito progresso com o manual e não entendo por que esse script tem três versões do dispositivo referindo-se uma à outra. E suspeito que exista uma maneira de especificar um alias para hw:0,0 e hw:0,3 que me permita alterná-los sem precisar sair e fazer login.
Desde já, obrigado.