[Openal] queing buffers vs attaching static buffers
wmiAL at windwardmark.net
Thu Jun 30 07:29:30 PDT 2005
I recall that back in the OpenAL 1.0 spec you were supposed to determine
whether a source would be for a static buffer or for streaming something
from queued buffers. From what I read, once you queued buffers on a
source you couldn't later attach a static buffer and if you attached a
static buffer, you couldn't later queue buffers on that source. Will
this still be the case in OpenAL 1.1.
I see that there is now an AL_SOURCE_TYPE property which claims that you
can attach the NULL buffer to set the source back to an undetermined
state and then switch the state. Does this actually work? Has anyone
tested using one source to switch back and forth between streaming
buffers and using a static buffer?
If this does work, am I correct in thinking that when switching from
static to streaming and from streaming to static, I should first call
alSourcei(AL_BUFFER, NULL)? When switching from streaming to static, do
I need to unqueue all buffers? Do I need to do anything else to clean
it up, or will attaching the NULL buffer and then attaching the buffer I
want properly clean everything? If I later switch back to it being a
streaming source, do I need to worry about any initialization?
More information about the Openal