Bug 343911
Summary: | SDL and alsa-plugins-pulseaudio do not play along well | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Julian Sikorski <belegdol> |
Component: | alsa-plugins | Assignee: | Lennart Poettering <lpoetter> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | low | ||
Version: | rawhide | CC: | bnocera, cdhouch, ch.nolte, lpoetter, mohd.izhar.firdaus, seg, torsten, wtogami |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2008-04-07 20:59:30 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 439847 | ||
Bug Blocks: | 235706, 420991 |
Description
Julian Sikorski
2007-10-20 16:17:11 UTC
I'm getting this problem too rebuilt the rpms using upstream 1.0.15 tarball doesnt give any hope either Confirming the problem still exists as of 10/24/07 rawhide We added a workaround to SDL_mixer. [root@newcaprica ~]# cat /etc/profile.d/SDL_pulseaudio_hack.sh # Temporary hack until SDL directly supports pulseaudio export SDL_AUDIODRIVER=esd lennart will eventually implement direct pulseaudio for SDL so we can remove this hack. For now, this will make SDL apps work out of the box. Keeping bug open, and reassigning to lennart. As this bug affects all SDL applications (and as I also had a hard time finding this out): What is the current state of this? IMHO at least the workaround should be pushed out into the stable tree until a working solution is available. This shipped in F8 as SDL_mixer-1.2.8-4.fc8. Unfortunately, it has the side-effect of breaking SDL sound if you kill pulseaudio. We opted for this because it at least made sound work by default. Lennart assured us that he would write a proper fix (SDL direct to pulseaudio support) before F9. When it happens, we can issue that as a F8 update and remove this hack. May I ask why the fix is in SDL_mixer, which is not required by many apps, and not in SDL package itself? At the time we checks dependencies of a number of SDL using games and found that SDL_mixer was the most common dependency. Was this incorrect? Sigh... I'm not saying it's incorrect. But, SDL is required by every single SDL application, including the minority of those not requiring the mixer. Seeing that you brought that up on f-d-l, I am asking once again: why SDL_mixer? If there is at least one app not requiring it, it will stay broken. SDL would be a much better choice IMO. Julian, are you going ahead with the updated hack in SDL and removal from SDL_mixer in F-8? Is the ACL open? I can do that if you wish. News flash, SDL actually supports native Pulseaudio but we're not building it: --- SDL.spec 2007-11-06 10:18:15.000000000 -0600 +++ SDL.spec 2007-12-13 17:25:16.000000000 -0600 @@ -19,6 +19,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-root BuildRequires: arts-devel audiofile-devel BuildRequires: esound-devel alsa-lib-devel +BuildRequires: pulseaudio-libs-devel BuildRequires: libXext-devel libX11-devel BuildRequires: libGL-devel libGLU-devel BuildRequires: libXrender-devel libXrandr-devel gettext-devel @@ -73,6 +74,7 @@ --enable-dlopen \ --enable-arts-shared \ --enable-esd-shared \ + --enable-pulseaudio-shared \ --enable-alsa \ --disable-rpath make %{?_smp_mflags} We really ought to at least build it in, even if its not default, so it can get some testing. It seems to work fine with OpenAL, but there's a problem with quake3, it runs its audio engine at 22050khz which doesn't seem to be working right, it stutters constantly. > + --enable-pulseaudio-shared \
If we build it this way, it wont be possible to uninstall pulseaudio anymore?
Uhhh. -shared means its supposed to dlopen() it: --enable-pulseaudio use PulseAudio [default=yes] --enable-pulseaudio-shared dynamically load PulseAudio support [default=yes] But it doesn't seem to work: $ ldd /usr/lib/libSDL-1.2.so.0 [...] libpulse-simple.so.0 => /usr/lib/libpulse-simple.so.0 (0x00501000) libpulse.so.0 => /usr/lib/libpulse.so.0 (0x006bf000) [...] Still, this should only pull in pulseaudio-libs, and not the entirety of Pulseaudio, which is not something Fedora has been shy of doing elsewhere. https://admin.fedoraproject.org/updates/F8/pending/SDL_mixer-1.2.8-6.fc8,SDL-1.2.12-4.fc8 Please test this and report there. SDL_mixer-1.2.8-6.fc8, SDL-1.2.12-4.fc8 has been pushed to the Fedora 8 stable repository. If problems still persist, please make note of it in this bug report. SDL_pulseaudio_hack.sh incorrectly assumes that PulseAudio is installed. Every time I open a shell I get the following error: /etc/profile.d/SDL_pulseaudio_hack.sh:3: no matches found: /usr/lib*/alsa-lib/libasound_module_pcm_pulse.so yum provides libasound_module_pcm_pulse.so reports that: alsa-plugins-pulseaudio.ppc : Alsa to PulseAudio backend I have SDL-1.2.12-5.fc8 installed but not alsa-plugins-pulseaudio. As a result, I get the error message every time a shell starts. I'm not seeing that error message when testing this. What is your shell? (In reply to comment #17) > SDL_pulseaudio_hack.sh incorrectly assumes that PulseAudio is installed. Every > time I open a shell I get the following error: > > /etc/profile.d/SDL_pulseaudio_hack.sh:3: no matches found: > /usr/lib*/alsa-lib/libasound_module_pcm_pulse.so > Known problem when using zsh, see bug 426579, which is already fixed btw, a simple yum update should fix your problem. My patch for this in #439847 The patch in 439847 has been pushed into rawhide now. |