I’d like to announce the release of a new addon for openFrameworks: ofxHoa.
It’s a wrapper for the High Order Ambisonics Library and allows to spatialize sound in multiple speakers in 2d or 3d. More information on the library and the ambisonics model maybe found in the site of the project http://www.mshparisnord.fr/hoalibrary/
For the moment we only support mac Os X, but we hope to support linux and windows in the future as we do with the other versions of the library.
We hope you’ll enjoy and we’re glad to answer any questions regarding this library, but please try to post your questions in github, as I’m the only person in the team that’s in the oF forum =)
First, you’d need to get an external sound player for oF. ofSoundPlayer works on it’s own separte thread, so we don’t have access to it’s samples.
Second, we use the ACN standard: http://ambisonics.ch/standards/channels/ (WYZX)
The B format uses WXYZ, with maybe a 1/sqrt(2) weight for W.
so you’d may need to multiple W by sqrt(2) and swap a bit the channel order then pass it directly to the decoder.
If you’ve done it in max, it should work the same way in oF. Glad you like it!
I haven’t worked in this project in a long time and I don’t know which
state it’s in.
As far as I know it was never tested in windows, but there’s nothing in the
code that’s platform specific.
I don’t have a computer with windows that I can use to debug, but I’ll have
a look in the project as a whole
in the weekend.
Thank you @cabral1349 !
I was able to put everything to work, just got the reversed Y axis and a source spatialized in relation to the top left corner of your screen lol trying to reverse the coordinate system, there is no easy function in the lib to rotate (that I’d understand until now)
Hello @cabral1349 yes that is actually the way I managed to workaround the reversed field (couldnt code a really nice solution yet but I can see the encoder rotates). This is an interesting lib and I hope that with time it is maintained again. As I said in the other post I am trying to program a software for a really irregular room (rectangular). I would need to program an adaptive decoder to whatever outputs it has.
Regarding spatial audio, have you worked with the built in FMOD engine? The main problem I found in the api is that I can’t acess the outputs, well at least I dont know how to. Just as you’ve done here in the good ambisonics tradition (order_n*2+1). I’ve been also working with the https://github.com/kasparsj/ofxFmod3DSoundPlayer do you have any insights on how to solve this? The real magic would be just to adapt ofFmodSoundPlayer to any output number. You think it is possible without too much hack?
I guess the question goes to both libraries lol
Thanks in advance