Bug 420991 - openal does not work with pulseaudio + fix
Summary: openal does not work with pulseaudio + fix
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: openal
Version: 8
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Andreas Bierfert
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 343911
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-12-12 06:33 UTC by Hans de Goede
Modified: 2009-09-21 20:58 UTC (History)
2 users (show)

Fixed In Version: 0.0.9-0.13.20060204cvs.fc8
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-12-20 20:06:15 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Hans de Goede 2007-12-12 06:33:59 UTC
By default openal does not work with pulseaudio as openal defaults to oss and
thus wants exclusive access to the device.

Changing the default device to alsa doesn't help as alsa's pulse plugin does not
seem to want to play with openal.

The solution (workaround) is to make the default output device SDL, this can be
done by patching the source, or by shipping an /etc/openalrc with this single
line in it:
(define devices '(sdl))

Note that doing something similar for F-7 but then setting the default to alsa
instead of sdl (no pulse in F-7) will fix bug 409751.

BTW, do you wamt me te become a co-maintainer for openal?

Comment 1 Andreas Bierfert 2007-12-12 17:27:11 UTC
Thanks for the report. Sure why would I not want you as a co-maintainer? :)

Comment 2 Hans de Goede 2007-12-12 18:36:12 UTC
Ok, I've requested the necessary rights in pkgdb and while I was at it I've also
requested the necesarry rights for freealut.

Shall I take a stab at fixing this? I prefer fixing this by modifying the
default cfg file, is that ok?


Comment 3 Fedora Update System 2007-12-12 19:55:17 UTC
openal-0.0.9-0.12.20060204cvs.fc8 has been pushed to the Fedora 8 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update openal'

Comment 4 Callum Lerwick 2007-12-14 23:54:03 UTC
There's a problem. OpenAL dlopen()s libSDL.so, which will fail if you do not
have SDL-devel installed. It will fall back on OSS.

I don't know what the preferred method to fix this is. Just make it dlopen()
libSDL-1.2.so.0 instead?

Comment 5 Hans de Goede 2007-12-15 07:44:42 UTC
(In reply to comment #4)
> There's a problem. OpenAL dlopen()s libSDL.so, which will fail if you do not
> have SDL-devel installed. It will fall back on OSS.
> 
> I don't know what the preferred method to fix this is. Just make it dlopen()
> libSDL-1.2.so.0 instead?

Yes, Requiring a -devel is a no no. Andreas will you fix this, or shall I?

Note we should add a requires on libSDL-1.2.so.0 then too, %ifarched todo the
right thing for multilib.

Atleast until openal starts directly supporting pulse.


Comment 6 Andreas Bierfert 2007-12-15 08:51:03 UTC
Well, this is somewhat related to the esd bug. I will change the build to
directly require sdl instead of via dlopen(). This way it will work (however it
will pull in sdl then but since we set default output to it anyway that imho is
the right thing to to atm).

Comment 7 Fedora Update System 2007-12-15 17:47:05 UTC
openal-0.0.9-0.13.20060204cvs.fc8 has been pushed to the Fedora 8 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update openal'

Comment 8 drago01 2007-12-20 14:37:34 UTC
any reason why we use SDL here instead of esd directly?
(define devices '(esd)) 
seems to work fine for me and we don't add an extra layer. (but we would still
need a way to make it work when PA is not enabled/installed)

Comment 9 Fedora Update System 2007-12-20 20:06:11 UTC
openal-0.0.9-0.13.20060204cvs.fc8 has been pushed to the Fedora 8 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 10 Callum Lerwick 2007-12-20 21:08:25 UTC
We use SDL because that's what Pulse upstream suggests? Also, SDL-1.2.12
actually has native Pulse support. I linked this bug to 343911, take a look.


Note You need to log in before you can comment on or make changes to this bug.