[Openal] alcGetProcAddress question

Chris Robinson chris.kcat at gmail.com
Mon May 14 16:48:50 PDT 2007


On Monday 14 May 2007 02:44:51 pm you wrote:
> Daniel PEACOCK wrote:
> > Regarding OpenAL routing ... what would the possibility be of creating
> > something similar for the Mac and Linux platforms?  Do either of these
> > platforms allow multiple AL devices to co-exist?   If so, how does that
> > work ?
>
> I can't speak for Mac, but the SI  has multiple backends that can all be
> active at the same time, so you could have an ALSA device, an OSS
> device, and an ESD device all active at the same time (at least in
> theory, I don't know if it's ever been tested).  I don't believe you can
> currently use multiple devices from the same backend together

The way the OSS and ALSA backend are set, there's no problem with opening 
multiple devices of the same backend, as long as the card supports it. So if 
you have a sound card with only one hardware voice, you'll only be able to 
open up one OSS or ALSA device, unless you're using something like dmix 
(ALSA's built-in mixer). Though if you have multiple hardware voices, there 
shouldn't be any problem opening up multiple devices of the same, or 
different, backends. Other backends may be different, though.. eg. it appears 
the Darwin backend uses some globals, so I don't think it's a gaurantee (yet, 
at least).

However, and this is a big however, the SI's mixer code is not designed to 
handle multiple open devices (same or different). It basically just mixes all 
sources, then feeds it out to the device of the current context, whichever it 
happens to be (and if there's no current context, it doesn't feed it out to 
anything). I'm planning to work on and fix this, though.


More information about the Openal mailing list