Hi all,
I was wondering if there has been any effort in developing OpenAL objects for Pd?
The 3D spatialization features of OpenAL are quite interesting to our group, and we are thinking of ways to direct Pd audio signals to an OpenAL output engine. I thought I'd ask first if anyone has tried anything of this sort before?
There should also be some interaction with Gem in this case - because OpenAL is heavily influenced (in terms of syntax and model) by OpenGL, and users would probably like to use the two together. For example, we are creating a virtual 3D world where sound objects are graphically represented with Gem, and hence their audio would be spatialized in the same 3D coordinate system.
The first fundamental obstacle that we see is that of resource management. ie, which engine should have access to the soundcard drivers?
OpenAL has sources, and listeners. For sources, we can simply stream a Pd audio signal into an OpenAL buffer queue. This should be easy since these buffers live in regular memory. But listeners are a function of the soundcard, channel specifications, and speaker setup. This is more low level and might conflict with Pd.
Any thoughts? ...thanks in advance for any comments!
Cheers, -Mike
Some references: Full user-guide: http://www.openal.org/openal_webstf/specs-annote/oalspecs-annote.pdf OpenAL explained: http://www.linuxdevcenter.com/pub/a/linux/2000/10/13/oa_openal.html