Definir o dispositivo de som padrão

sábado, 20 de fevereiro de 2010

Olá!

Esse post é uma continuação do anterior: Trocar o servidor de som de Pulse para Alsa.

Como eu comentei no final do post, o som estava funcionando, mas eu estava sem som no Flash. Já havia reinstalado, tentado com versões anteriores e nada.

Descobri que o problema era mais simples do que parecia. O que acontece é que o Flash utiliza a primeira placa de som reconhecida pelo sistema para exibir o som e, a minha placa PCI estava na segunda posição.  Ou seja, o Flash tinha som, mas o som saía na placa Onboard e não na placa PCI, que era o que eu queria.

Investiguei e descobri que esse é um problema meio comum para os usuários de placas de Som PCI. Então vamos a dica de como resolver:

A primeira coisa a fazer é descobrir qual o ID da posição que a sua placa de som está ocupando no momento. Vá no Menu: Sistema -> Preferencias -> Gerenciador de sistemas de multimidia.


Estão vendo como o Pipeline está informando device="hw,1,0"? Isso quer dizer que a minha placa estava na Posição ID 01, enquanto o padrão é ID 00.
O mesmo também pode ser descoberto ao digitarmos em um terminal:
cat /proc/asound/cards

Agora vamos corrigir isso. Em um terminal digite:
sudo gedit /etc/modprobe.d/alsa-base.conf

Esse arquivo contém informações para o sistema que cuida do hardware manipular suas placas de som. Ao final do arquivo, eu adicionei:
options snd-hda-intel index=-2
options snd-cs46xx index=-1

Isso irá fazer com que o sistema atribua o ID 01 (index=-2) para a placa Onboard (hda-intel) e o ID 00 (index=-1) para a minha placa de som PCI.
O que vocês irão precisar descobrir é como se chama o módulo da placa de vocês. Vocês podem descobrir isso no site do Alsa. Navegem pelo nome do fabricante e modelo da placa. Na página do modelo é informado o nome do módulo (no meu caso snd-cs46xx).
Salvem o arquivo e reiniciem o PC. 

Após o reboot, abram novamente o gstreamer-properties:

 Notem como agora ela é o Hardware default ID00. E é isso o que precisamos. Vamos testar?  Abra o terminal e digite:

speaker-test

Se você estiver ouvindo um chiado saindo da caixa de som/fone de ouvido deu certo! Esse programa envia ruído de estática para a saída de som padrão.


Com isso, vocês podem até ignorar o ultimo passo dado no post anterior, sobre configurar em cada player de multimidia qual saída de som utilizar. Porque agora você corrigiu a saída padrão, e não precisa mais disso ;)

Fontes: http://ubuntuforums.org/showthread.php?t=429777 , https://help.ubuntu.com/community/SoundTroubleshooting

2 comentários:

Anônimo disse...

Ola. A dica parece muito boa, mas meu problema é que nao roda a placa de som PCI no navegador. Ou seja.. a placa padrao é a que eu quero mesmo (off board), sai som nos players.. etc.. mas nao roda os videos flash tipo youtube.. ou tudo que exija flash player pelo navegador internet... Utilizo ubuntu 10.4 e minha placa mae é uma a8vdeluxe asus. A placa de som off é uma C-Media Electronics Inc CM8738. Aguardo..

Anônimo disse...

Muito obrigado pela dica! Consegui fazer funcionar a minha placa C-Media CM8738. A única diferença é que ao invés de usar o -1 para o principal, tive que usar o 0 e no lugar de -2 foi 1. Linha que coloquei no alsa-base.conf:

options snd-cmipci index=0

snd-cmipci é a CM8738.

Infelizmenete, sempre que ligo o computador, sou obrigado a entrar no terminal como root e dar um alsa force-reload:

# alsa-force reload
Vou procurar uma maneira de melhorar isso.
No meu caso funciona em vídeos flash também.