[GUFSC] Problema de som comum no Gnu/Linux
Wagner Saback Dantas
wagners em das.ufsc.br
Quinta Junho 21 18:41:06 BRT 2007
Daniel, se você usa o driver OSS no seu sistema, você poderia usar o Alsa, que,
salvo engano, paraleliza a saída de som. Aqui em casa, o xmms toca com o
driver Alsa (Propriedades -> Aba "Plugins de E/S de Áudio", no campo de lista
"Plugin de saída").
Porém, esta não é a solução absoluta. Embora nas últimas versões de kernel
2.6.x (acho que na família 2.6 toda), a opção de OSS esteja como "obsoleta"
("deprecated"), há distribuições que ainda a habilitam e carregam os seus
módulos. Ou então, ainda acontece de haver módulos como o snd_pcm_oss, que
emula o OSS no Alsa (interessante uma coisa que percebi enquanto escrevia
este e-mail, o parâmetro "nonblock_open", poderia ser útil! Veja abaixo):
# modinfo snd_pcm_oss
filename: /lib/modules/2.6.13.2/kernel/sound/core/oss/snd-pcm-oss.ko
author: Jaroslav Kysela <perex em suse.cz>, Abramo Bagnara <abramo em alsa-project.org>
description: PCM OSS emulation for ALSA.
license: GPL
alias: sound-service-?-3
alias: sound-service-?-12
vermagic: 2.6.13.2 preempt K7 gcc-3.3
depends: snd-pcm,snd,snd-mixer-oss
parm: nonblock_open:Don't block opening busy PCM devices. (bool)
parm: adsp_map:PCM device number assigned to 2nd OSS device. (array of int)
parm: dsp_map:PCM device number assigned to 1st OSS device. (array of int)
Ademais, alguns (vários) softwares ainda usam OSS. O mplayer do
computador daqui de casa usa OSS por exemplo. Então, quando toco o mplayer
(OSS) e xmms (Alsa), o xmms não toca. Quando faço o inverso (primeiro o xmms
com Alsa, depois o mplayer com OSS), ambos tocam!
Como foi dito nesta thread, uma boa é usar um gerenciador de som. Mas, para
quem não usa (eu não uso por exemplo), é preciso apelar para soluções
caseiras, como a sua. :-) A minha é usar o comando "lsof" com um pipe para
alguma palavrinha chave, como "audio":
# lsof | grep audio
lsof: WARNING: can't stat() ext3 file system /dev/.static/dev
Output information may be incomplete.
xmms 7867 wagner mem REG 3,6 84640 457891
/usr/lib/libaudio.so.2.4
xmms 7867 wagner mem REG 3,6 55648 1113640
/usr/lib/xmms/Input/libcdaudio.so
xmms 7867 wagner mem REG 3,6 142408 460540
/usr/lib/libaudiofile.so.0.0.2
xmms 7875 wagner mem REG 3,6 84640 457891
/usr/lib/libaudio.so.2.4
xmms 7875 wagner mem REG 3,6 55648 1113640
/usr/lib/xmms/Input/libcdaudio.so
xmms 7875 wagner mem REG 3,6 142408 460540
/usr/lib/libaudiofile.so.0.0.2
Enfim, são sugestões...
[]'s
Wagner.
On Thu, Jun 21, 2007 at 10:29:43AM -0300, Daniel Martins wrote:
> De vez em quando o xmms diz que a placa está ocupada ou tem outro programa
> rodando e nem sempre se sabe o que está travando o som.
>
> Depois de buscar e não encontrar a solução fiz minha solução caseira
>
>
> 1) Rodei o mplayer em modo texto para ver o que estava prendendo
>
> $ mplayer /home/user/MinhaMusica.mp3
>
> Na saída teve um comentário
>
> ==========================================================================
> alsa-lib: pcm_hw.c:1242:(snd_pcm_hw_open) open /dev/snd/pcmC0D0p failed:
> Device or resource busy
>
>
> 2) com o dispositivo pcmC0D0p localizado procurei quem ocupava o som e eis a
> surpresa
>
>
> $ fuser -v /dev/snd/pcmC0D0p
>
> USER PID ACCESS COMMAND
> /dev/snd/pcmC0D0p: user 16261 F.... soffice
> user 16279 F.... soffice.bin
>
> 3) O staroffice ou openoffice de uma arquivo Word estava usando o som (não
> sei porque!) Logo salvei o texto e matei-o
>
>
>
> $ kill -9 16261
>
>
> 4) Pronto o xmms está vivo de novo !!
Mais detalhes sobre a lista de discussão GUFSC