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
i use OPenAL with Vega/Creator. It's baby steps it does very basic stuff at its current implementation
On Feb 28, 2005, at 2:39 PM, Mike Wozniewski wrote:
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
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
hi,
i did a very basic proof-of-concept implementation about two years ago. the problem i did not get around back then was regular audio dropouts. this was because i did an openal object rather than trying to replace the portaudio stuff of pd. as buffering did not really work i had a constant frequency of dropouts.
generally i have the impression that the sound quality of the openal spatialisation is not at all comparable to what the people at iem do, but it is still good enough for a lot of fun stuff.
the code i've developed is not worth anything - it just proves that you would have to implement openal integration on portaudio level rather than as a plain object.
lg martin
On Feb 28, 2005, at 20:39, Mike Wozniewski wrote:
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
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list