Pesquisei várias vezes e não consigo encontrar nenhuma explicação sobre o que "hw: 0,0" significa. Como determino o número da minha placa de áudio USB? O MPD exige que eu digite algo assim:
audio_output {
type "alsa"
name "Sound Card"
device "hw:0,0" # optional
format "44100:16:2" # optional
}
Se eu fizer "alsamixer -c 1", ele abrirá o controle de volume da placa USB, mas isso realmente não me ajuda.
Onde posso encontrar uma lista de nomes / números de dispositivos no meu sistema? Eles são resilientes a alterações de hardware? Se eu remover o cartão 2, o cartão 3 se tornará o cartão 2? Existem outras maneiras de identificar dispositivos? Onde posso encontrar documentação para isso?
Respostas:
A resposta de JohnT dá uma boa base. Vou seguir com como encontrar os dispositivos no seu sistema. Use "aplay -l" para obter uma lista dos dispositivos em seu sistema. O hw: X, Y vem desse mapeamento do seu hardware - nesse caso, X é o número do cartão , enquanto Y é o número do dispositivo .
Como esses são dispositivos USB que nem sempre recebem os mesmos números de dispositivos sempre que são conectados, o dispositivo hw: X, Y pode mudar. A resposta mais simples é, para um sistema de desktop, experimentar as ferramentas de configuração do GNOME / KDE / Xfce e verificar se elas são inteligentes o suficiente para captar as alterações.
A maneira complexa, se você não estiver fazendo isso com um sistema de desktop, fica ... interessante. Você pode se safar do uso de aliases de dispositivo em vez de "hw: X, Y" - é o que mostra a saída de "aplay -L". O "algo: CARD = FOO, DEV = Y" é o alias e provavelmente não será alterado entre diferentes plug-ins de dispositivo, onde o X em "hw: X, Y" pode. (Supondo que você esteja usando o mesmo dongle USB de cada vez.)
Portanto, seu comando aplay se tornaria "aplay -D front: CARD = CK804, DEV = 0 somefile.wav" e você poderá usar o mesmo nome de dispositivo no seu .asoundrc.
Se você precisar de algo mais estável em dispositivos de kernel reais de nível ainda mais baixo, o udev é o que você deseja - é o sistema que permite a conexão automática de dispositivos no sistema. Você pode escrever regras para o udev (e aqui está a página de manual ) que permitirá que os dispositivos obtenham o mesmo nome de dispositivo quando conectados.
fonte
aplay -L
, que não fornece a mesma saída queaplay -l
. sighsurround40:CARD=CK804,DEV=0
éhw:0,1
? Tanto quanto posso dizer, éhw:0,0
dado que se refereDEV=0
, mas em uma configuração diferente (4 canais em vez de 2 como emfront:CARD=CK804,DEV=0
).hw:0,0
especifica o dispositivo padrão, na placa de som padrão. Para acessar o primeiro dispositivo da sua segunda placa de som, você deve especificarhw:1,0
. Estes são especificados no seu.asoundrc
. Mais sobre tudo isso aqui .fonte