Estou executando nixos em um x220t da Lenovo. Quando ele inicia, ele encontra os alto-falantes analógicos e os mostra apenas em alsamixer (ou pavucontrol). No entanto, quando ligado a um monitor / tv hdmi, posso reproduzir som através dos altifalantes, e. por speaker-test -c 2 -D hw:0,3
.
Com um pouco de trollagem pela internet, cheguei a este roteiro,
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
, executará som através da minha tv / monitor HDMI. Mas para mudar o pacote para o meu laptop eu tenho que renomear o script e sair e entrar novamente.
Obviamente, as coisas funcionam, mas eu não entendo: 1. Por que posso ver e usar todos os dispositivos diretamente (por exemplo, com o teste de alto-falante), mas o alsamixer e o pulseaudio não os "vêem"? 2. Alguém pode fornecer alguma visão sobre a estrutura do asoundrc. Eu não fiz muito progresso com o manual, e não estou claro porque esse script tem três versões do dispositivo referindo-se umas às outras. E eu suspeito que existe uma maneira de especificar um alias para hw: 0,0 e hw: 0,3 que me permita alterná-los sem precisar fazer logout e login.
Obrigado antecipadamente.