[Openal] Max number of sources (and legit id values) foreachOpenALimplementation

Daniel PEACOCK dpeacock at creativelabs.com
Thu Jul 23 09:25:22 PDT 2009





Hi Jason,

I would interpret the parameters as "hints" when you are passing them in to
alcCreateContext - because you might not get what you are asking for.  When
you get the values back with alcGetIntegerv I would  expect them to reflect
actual available resources though.

e.g If I requested 1 stereo source, and get back 1 Stereo and 62 Monos (==
64 hardware voices), this would mean I could create 63 Sources and expect
to play 1 stereo and 62 monos simultaneously.   Attempting to play 2
stereos and 61 monos on the 64 Sources would not be guaranteed to work (and
wouldn't on hardware).

If I needed two stereo sources - perhaps to do enable cross-fades of a
stereo music track - then I should request 2 stereos at context creation
time.   In the example above I would expect to get back 2 stereos and 60
monos - and be allowed to generate a maximum of 62 Sources.

Dan
Creative Labs (UK) Ltd.

Notice
The information in this message is confidential and may be legally
privileged.  It is intended solely for the addressee.  Access to this
message by anyone else is unauthorized.  If you are not the intended
recipient,  any disclosure,  copying or distribution of the message,  or
any action taken by you in reliance on it,  is prohibited and may be
unlawful.  If you have received this message in error,  please delete it
and contact the sender immediately.  Thank you.

Creative Labs UK Ltd company number 2658256 registered in England and Wales
at Belmont Road, Belmont Place, Maidenhead, Berkshire, SL6 6TB



                                                                           
             Jason Daly                                                    
             <jdaly at ist.ucf.ed                                             
             u>                                                         To 
                                       Daniel PEACOCK                      
             07/23/2009 05:10          <dpeacock at creativelabs.com>         
             PM                                                         cc 
                                       Chris Robinson                      
                                       <chris.kcat at gmail.com>,             
                                       "openal at opensource.creative.com"    
                                       <openal at opensource.creative.com>    
                                                                   Subject 
                                       Re: [Openal] Max number of sources  
                                       (and legit id values)               
                                       foreachOpenALimplementation         
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




Daniel PEACOCK wrote:


      Hi All,

      The original motivation for having the ALC_MONO_SOURCES and
      ALC_STEREO_SOURCES hints was due to the fact that an OpenAL Source
      that can be used to play buffers that could have anywhere between 1
      and 8 (maybe even more) channels of data. For software mixers this is
      no big deal - but for hardware devices that require one voice per
      channel (e.g Stereo requires 2 voices) it is a big problem. If you
      are running on a hardware device with 128 voices then generating 128
      sources and using them to play 128 mono buffers is OK - but you can't
      use them to play 128 Stereo buffers.



Yeah, I understand that.  The only thing I wasn't clear on was what you get
back when you call alcGetIntegerv with ALC_MONO_SOURCES or
ALC_STEREO_SOURCES.  The spec calls these "hints", so it's not really clear
on what you will get back (unless I'm missing something again).

If I were writing an implementation, I could argue that you should only get
your hint values back, but it sounds like the intent is that it should
return the number of sources actually available.

--"J"
ForwardSourceID:NT0006E15E



More information about the Openal mailing list