You are not logged in.

#1 2010-01-27 21:14:31

Orim
Member
Registered: 2009-12-10
Posts: 61

Alsa surround device occupied

Hi there.

I have a problem with alsa surround sound, yeah I know I'm the first one with such a problem wink

When a program uses the alsa surround51 device no other program has access to it.
For example: When I listen to music in gmusicbrowser the smplayer can't play movies in
surround sound, only stereo. Smplayer will produce this error message:

'[AO_ALSA] alsa-lib: pcm_hw.c:1291:(snd_pcm_hw_open) open /dev/snd/pcmC0D0p failed: Device or resource busy'
'[AO_ALSA] Playback open error: Device or resource busy'
'Failed to initialize audio driver 'alsa''
'Could not open/initialize audio device -> no sound.'
'Audio: no sound'

And when smplayer is running gmusicbrowser can't play any music producing this error:

Playing error: Could not open audio device for playback.
Device is being used by another application...

Sometimes even Pidgin can't play its notification sounds when some other program is using the sound device...

So what's the problem here? I don't believe I can only play one sound at a time. And I think
it worked before... Any ideas or should I give some more information?

Offline

#2 2010-01-28 07:06:54

brebs
Member
Registered: 2007-04-03
Posts: 3,742

Re: Alsa surround device occupied

Use the fuser command, because the obvious first thing to check is that nothing is outputting to OSS rather than ALSA.

Offline

#3 2010-01-28 09:03:22

Orim
Member
Registered: 2009-12-10
Posts: 61

Re: Alsa surround device occupied

Thanks, but that's not it, I think.
fuser -v /dev/dsp* reports:

Specified filename /dev/dsp* does not exist.

So all my processes are using /dev/snd* apparently.

Offline

#4 2010-09-06 14:29:35

burthen
Member
Registered: 2010-09-06
Posts: 4

Re: Alsa surround device occupied

I have the same problem.

When speaker-test -Dsurround51 -c6 is running:

Playback device is surround51
Stream parameters are 48000Hz, S16_LE, 6 channels
...
Playback open error: -16,Device or resource busy

And fuser reports:

$ fuser -v /dev/snd/* /dev/dsp*
                     USER        PID ACCESS COMMAND
/dev/snd/controlC0:  burthen    1963 F.... kmix
/dev/snd/pcmC0D0p:   burthen    1828 F...m knotify4
/dev/snd/timer:      burthen    1828 f.... knotify4

I've killed all the processes using /dev/snd and then invoked speaker-test again:

Playback device is surround51
...
Periods = 4
was set period_size = 1088
was set buffer_size = 5440
 0 - Front Left
 4 - Center
 1 - Front Right
 3 - Rear Right
 2 - Rear Left
 5 - LFE

So it really seems that only one program can use the sound device at a time. And I don't know how it can be changed.

Another problem is that I hear only Front Left and Front Right channels, and center speaker is related to FL, woofer is related to FR at that. But probably there is another reason for that.

Offline

#5 2010-09-13 18:06:46

burthen
Member
Registered: 2010-09-06
Posts: 4

Re: Alsa surround device occupied

What's the problem all the same? smile
No one has an idea about?

Offline

#6 2010-09-13 19:40:44

mukl
Member
From: Vienna, Austria
Registered: 2008-01-30
Posts: 53

Re: Alsa surround device occupied

Maybe u got to create a "dmixer" for this purpose.
U can do this by writing a /etc/asound.conf or ~/.asoundrc

It's long time ago since i played with these things, coz my cards are working out of the box. So this is just a suggestion. Hope it helps.

Offline

#7 2010-09-13 23:45:06

brebs
Member
Registered: 2007-04-03
Posts: 3,742

Re: Alsa surround device occupied

Try my config from thread.

Offline

#8 2010-09-15 18:58:07

burthen
Member
Registered: 2010-09-06
Posts: 4

Re: Alsa surround device occupied

mukl, brebs,
thanks for your support, but there are still some troubles.

I've tried your config, brebs, and this config from the thread as my ~/.asoundrc.
After restarting alsa I got an error from mplayer:

MPlayer SVN-r32025-4.5.1 (C) 2000-2010 MPlayer Team
159 audio & 347 video codecs
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing Living for tomorrow.mp3.
Audio only file format detected.
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3)
==========================================================================
[AO_ALSA] alsa-lib: pcm_ladspa.c:1502:(snd_pcm_ladspa_add_plugin) Unable to find or load plugin '(null)' ID 1098, path '/usr/lib/ladspa'
[AO_ALSA] Playback open error: No such file or directory
Failed to initialize audio driver 'alsa'
Could not open/initialize audio device -> no sound.
Audio: no sound
Video: no video

I thought I need to download some libs for ladspa. I just installed ladspa, swh-plugins, liblrdf.
Then I had another error:

[AO_ALSA] alsa-lib: pcm_rate.c:1400:(snd_pcm_rate_open) Cannot find rate converter

MPlayer interrupted by signal 11 in module: ao2_init
- MPlayer crashed by bad usage of CPU/FPU/RAM.
  Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and
  disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash.

And no sound at all:

$ aplay /usr/share/sounds/alsa/Front_Center.wav 
ALSA lib pcm_rate.c:1400:(snd_pcm_rate_open) Cannot find rate converter
Segmentation fault

So now it's brilliant -)

Offline

#9 2010-09-15 19:02:36

brebs
Member
Registered: 2007-04-03
Posts: 3,742

Re: Alsa surround device occupied

burthen wrote:

Cannot find rate converter

So, read my config file, and see the answer as a comment inside it:

# If get error "Cannot find rate converter", then install libsamplerate and alsa-plugins

Last edited by brebs (2010-09-15 19:03:21)

Offline

#10 2010-09-15 20:31:20

burthen
Member
Registered: 2010-09-06
Posts: 4

Re: Alsa surround device occupied

Thanks, there wasn't alsa-plugins.
After installing, new errors contain 'ALSA lib pcm_params.c:2150:(snd1_pcm_hw_refine_slave) Slave PCM not usable'.
I've compiled the blop and taken this ~/.asoundrc (from the thread).

Now I here the sound, thank you. 

Unfortunately, it's still not 5.1 (I mean only 2 from 6 outputs are audible with 'speaker-test -D surround51 -c 6 -t wav', the same with -D plug:dmix).

When testing 'speaker-test -D upmix_20to51 -c 2 -t wav'
there was fail with hwparams again:

ALSA lib pcm_params.c:2150:(snd1_pcm_hw_refine_slave) Slave PCM not usable
ALSA lib pcm_params.c:2150:(snd1_pcm_hw_refine_slave) Slave PCM not usable
Broken configuration for playback: no configurations available: Invalid argument
Setting of hwparams failed: Invalid argument

Last edited by burthen (2010-09-15 20:33:54)

Offline

Board footer

Powered by FluxBB