Tive este problema com a placa de som "on-board" VIA VT82C686 da placa-mãe ASUS CUV4X rev 1.03, que utiliza o driver alsa snd-via82xx, do kernel 2.6.26-2-486, S.O.
Debian 5.0.7 "Lenny".
ATENÇÃO: pode ser que sua versão de S.O., kernel e hardware sejam diferentes das acima especificadas, portanto, se este for o caso, esta dica pode não funcionar para resolver o seu problema! Neste caso, recorra aos fóruns ou documentação de sua distribuição específica; ou ainda, da versão do ALSA que você está usando.
Após muito pesquisar na Internet, em vários fóruns, sem encontrar resposta satisfatória e até mesmo instalar um novo kernel (2.6.26-2-686) sem resolver o problema, constatei que este, no meu caso, era mais simples e banal do que poderia imaginar: a aplicação (no caso o Alsamixer) simplesmente não estava conseguindo identificar a placa de som corretamente. Como descobri isso?
Bem, primeiramente, consultando o arquivo
/proc/asound/cards, com:
Comando 1:
cat /proc/asound/cards
1 [rev20 ]: VIA686A - VIA 82C686A/B rev20
VIA 82C686A/B rev20 with AD1881A at 0xb800, irq 10
Esta informação é muito importante, pois significa que o
ALSA está detectando a placa de som instalada. Entretanto, e aqui está o problema, por "algum motivo" a ela foi atribuído o "card number" ou número da placa "1", que se vê no início da primeira linha e não "0", como seria de se esperar, já que é a única placa de som detectada pelo sistema.
Resolvi temporariamente o problema da seguinte forma:
Comando 2:
alsamixer -c 1
O que simplesmente diz à aplicação (no caso o Alsamixer) a placa que queremos usar, através do parâmetro "-c 1". Como em, praticamente, tudo no
Linux (e Unix!) existe uma outra forma de fazer isso, informando ao ALSA qual é a placa que você quer que fique como padrão, o que faz mais sentido do que ficar toda hora informando às aplicações qual é a placa que você quer usar.
Primeiramente, precisaremos saber como o ALSA identifica os nomes das placas disponíveis no sistema, através do comando:
Comando 3:
asoundconf list
Names of available sound cards:
rev20
Pela saída do comando acima, ficamos sabendo que o ALSA identifica a placa com o nome "rev20"; portanto é este o nome que iremos usar:
Comando 4:
asoundconf set-default-card "rev20"
Caso você se engane quanto ao nome da placa que deve ser a padrão, bastará dar o seguinte comando:
Comando 5:
asoundconf reset-default-card
E repetir o Comando 4 acima com o nome correto da placa.
Finalmente, existe ainda uma forma de mudar o número identificador da placa no ALSA através do UDEV, mas como é um procedimento bem mais complexo, sugiro aos interessados a leitura do seguinte tópico, em:
Conclusão
Bem, espero que esta dica ajude quem estiver precisando, mas lembre-se sempre de testar qualquer procedimento experimental em uma máquina reservada para testes, que não esteja "em produção".
Sempre fazer "backup" em um dispositivo de armazenamento à parte, de seus dados mais importantes, antes de quaisquer testes !
Por ora é só, muito grato pela atenção e até a próxima!
Nenhum comentário foi encontrado.