OpenAL Soft may trigger a hang and require PulseAudio restart, using ALSA for output and the pulse plugin.

Bug #281475 reported by NY00123 on 2008-10-10
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
openal-soft (Ubuntu)
Undecided
Unassigned

Bug Description

In case an OpenAL application is being run and the following conditions are met:
* OpenAL Soft is configured to use an ALSA device.
* Using this device, the output is expected to get redirected to PulseAudio.

On quit, the application may hang, at least for about 30 seconds.
In that case, OpenAL wouldn't be shut down probably, and a restart to PulseAudio will be required.

* Tested with the following lesson1 sample:
http://www.devmaster.net/articles/openal-tutorials/lesson1.php
* Direct link to Linux sample source:
http://www.devmaster.net/articles/openal-tutorials/lesson1_linux.tar.bz2

* Compilation:
1. Type "make". All relevant development files and tools are required (OpenAL, GNU g++, GNU Make)
2. Workaround to a possible error regarding undefined symbols (after typing make):
g++ -o lesson1 main.o -lopenal -lalut

Now try typing ./lesson1 and press 'q' to quit; Multiple times.
At some point, the hang explained above would occur.

A few notes to add:
* The hang is not reproduced when OpenAL Soft is configured to use an OSS device.
* It is also not reproduced when OpenAL Soft is configured to use the ALSA device hw:0.
* It's reproduced with the default and pulse ALSA devices.

NY00123 (ny00) wrote :

** Reproduced on Ubuntu 8.10 beta.

Luke Yelavich (themuso) wrote :

Have you tried setting the alsa device in /etc/openal/alsoft.conf to pulse and tested to see if that made any difference?

NY00123 (ny00) wrote :

I've tried setting the ALSA device in ~/.alsoftrc to pulse, with no success.

Maybe I should noted that I've made a few changes for 6-channels setup.
However, even after renaming ~/.pulse and ~/.alsoftrc to other names, and restarting PulseAudio,
the hang could still be reproduced.

* It should be noted that when I told OpenAL Soft to use OSS, I actually used a wrapper like aoss or padsp.
As a side note, aoss may do the job if you want surround sound.
It may not work with 32-bit applications on 64-bit Ubuntu, though (as libaoss is missing from ia32-libs).

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers