We are currently migrating Bugzilla to GitHub issues.
Any changes made to the bug tracker now will be lost, so please do not post new bugs or make changes to them.
When we're done, all bug URLs will redirect to their equivalent location on the new bug tracker.

Bug 834 - Audio system isn't choosing ALSA unless forced.
Summary: Audio system isn't choosing ALSA unless forced.
Status: RESOLVED FIXED
Alias: None
Product: SDL
Classification: Unclassified
Component: audio (show other bugs)
Version: HG 2.0
Hardware: x86 Linux
: P1 normal
Assignee: Ryan C. Gordon
QA Contact: Sam Lantinga
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-10-09 23:28 UTC by Ryan C. Gordon
Modified: 2010-01-25 22:00 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ryan C. Gordon 2009-10-09 23:28:05 UTC
For some reason, I'm getting OSS on 1.3 even though ALSA is functional. If I force ALSA with the SDL_AUDIODRIVER=alsa environment variable, it works. Even though it ranks higher in the priority list in 1.3, it seems to get skipped by the default codepath.

--ryan.
Comment 1 Ryan C. Gordon 2009-10-09 23:28:28 UTC
Taking bug, but probably won't look at this until 1.2.14 ships.

--ryan.
Comment 2 Ryan C. Gordon 2009-12-15 22:33:06 UTC
Bumping priority on a set of bugs.

--ryan.
Comment 3 Ryan C. Gordon 2010-01-10 11:14:22 UTC
ALSA_Init() in src/audio/alsa/SDL_alsa_audio.c has this:

    return 1;   /* !!! FIXME: return 2 once device enum is implemented. */

So it successfully inits both PulseAudio and ALSA, but neither can guarantee an actual device will be available, so it's favoring OSS, which can.

This just needs to be filled in.

--ryan.
Comment 4 Ryan C. Gordon 2010-01-10 11:20:31 UTC
> This just needs to be filled in.

Actually, thinking about this more, I might remove this functionality. It probably doesn't make sense to skip a good driver that can't report available hardware up front for a shitty driver that can.

(or if not "shitty," at least "unexpected.")

My original idea was that maybe something like esound's libraries are installed, but there's no sound server, so we could make a decision to skip this audio target during SDL_Init()...but in practice, we maybe don't want to do this.

I'll think on it some more.

--ryan.
Comment 5 Ryan C. Gordon 2010-01-25 22:00:54 UTC
Fixed in svn revision #5542.

--ryan.