alsa-xmms-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Alsa-xmms-user] plugin + dmix success, sort of


From: Steve Leung
Subject: [Alsa-xmms-user] plugin + dmix success, sort of
Date: Wed, 11 Jun 2003 23:28:03 -0600 (MDT)

Well, if anyone's listening, I managed to get alsa-xmms 0.9.11 working
with dmix, but it's kind of ugly.  I'm using alsa-lib 0.9.3.

First, I have everything going through dmix by default in my .asoundrc,
like this:

pcm.!default {
        type plug
        slave.pcm "dmix"
}

Settings for alsa-xmms:

  User-defined Device: default
  User-defined Mixer Device: PCM   (Master also works)
  Mmap mode: off

When I first tried these settings, I got sound out of xmms, but as soon as
I closed and reopened the audio device (by stopping and restarting the
song) alsa-xmms hung at snd_pcm_open.  I tried just stopping xmms and
running fuser on the alsa pcm playback device, and got this:

% fuser /dev/snd/pcmC0D0p
/dev/snd/pcmC0D0p:    1506m  1507m  1508m  1511m

Each of these processes is an xmms thread.  From what I can tell, it seems
that snd_pcm_close is not releasing some of the mmaps on the sound device,
which deadlocks alsa-xmms when it goes to reopen the sound device.

I hacked alsa-xmms so that it opens the device once and never closes it.
That fixes the hang, but it's obviously not a good solution.

When I comment everything out of my .asoundrc and retry this test,
snd_pcm_close works as expected and fuser doesn't show anyone grabbing the
sound device anymore.

Any thoughts on how to fix this?  Is this an ALSA problem, or a plugin
problem?

By the way, when mmap mode is on and dmix is enabled by default, I get no
sound.  I think this is acceptable since even aplay does the same thing
(no sound) when I use it's -M (mmap) switch with dmix.

Thanks for any help..

Steve





reply via email to

[Prev in Thread] Current Thread [Next in Thread]