OpenAL device, buffer and context relationship

Posted by Markus on Stack Overflow See other posts from Stack Overflow or by Markus
Published on 2010-06-02T18:42:56Z Indexed on 2010/06/02 19:34 UTC
Read the original article Hit count: 239

Filed under:
|
|

I'm trying to create an object oriented model to wrap OpenAL and have a little problem understanding the devices, buffers and contexts.

From what I can see in the Programmer's Guide, there are multiple devices, each of which can have multiple contexts as well as multiple buffers. Each context has a listener, and the alListener*() functions all operate on the listener of the active context. (Meaning that I have to make another context active first if I wanted to change it's listener, if I got that right.) So far, so good. What irritates me though is that I need to pass a device to the alcCreateContext() function, but none to alGenBuffers().

How does this work then? When I open multiple devices, on which device are the buffers created? Are the buffers shared between all devices? What happens to the buffers if I close all open devices?

(Or is there something I missed?)

© Stack Overflow or respective owner

Related posts about audio

Related posts about sound