HoaLibrary

Pierre Guillot's icon

Hi,

The CICM is pleased to share the HoaLibrary. Hoa Library is a collection of C++ classes and MAX/MSP objects destined to high order ambisonic sound reproduction. It‘s totally free and made availlable by CICM, a research center bi-localized between Paris 8 University and the MSH. The library is available for OSX and Windows on the HoaLibrary website :

Feedback are welcome.

Anne Sèdes
Alain Bonardi
Julien Colafrancesco
Pierre Guillot
Eliott Paris

vichug's icon

hhmmm
this might be something i need.
how does it compare to existing things, like the Jamoma package ambisonics things and ICST ambisonics tools and Ircam Spatialisateur ?

edti : i forgot to say thanks. Thanks a lot !

Vjacobs's icon

Looks amazing, thanks for making and sharing this! I will test this soon...

spectro's icon

This looks like a cool ( and timely for me) Ambisonic tool set. I look forward to checking it out in more detail. And the Binaural 'virtuarlizer' is a nice bonus for those of us with limited speaker rigs. Thanks.

Pierre Guillot's icon

Thanks everybody,
I can't list all the differences between the ICST, IRCAM, etc... and the HoaLibrary.
Our main goal is to create a library for musicians that allows you to create sound fields and play easily with the circular harmonics. That why we've elaborate the hoa.plug~ object and and ambisonics effects like the hoa.wider~, hoa.grain~, etc... There're also ambisonics UI objects, we hope that it could help people to understand the circular harmonics. For people who knows well ambisonics, we've made objects like the projector and recomposer that discretize the ambisonic soundfield into an array of virtual loudspeakers.
The library is a for 2 dimension array of loudspeaker because most of the people have only access to this loudspeaker configuration. The binaural has been elaborated for those who don't have a least 3 loudspeakers or want to work in a cafe... like me. We're working on externals that allows to use this library on systems like 5.1 or 7.1without too much distortions. We also want to create a 3 D version but it's not one of our main goal.
The library is free and open source, we think that it's important for electroacoustic music and research.
I think we can't explain all the library on this forum, for more informations you should look at the website. We hope that you enjoy it. If you have any suggestion, we will be pleased to know it.

Cheers

eliott paris's icon

Hi everbody,
The CICM is pleased to announce the release of the HoaLibrary version 1.1 :

- 4 new graphic user interface tools.
- an ambisonics reverb convolution.
- a stereo decoder
- a lot of new effects
- and more...

You can download it in our website.
Currently for Mac users only, but windows version is comming soon...

and feedback are still welcome.

eliott paris's icon

HoaLibrary version 1.1 now available for windows ...

5200.HoaLibraryv1.1.png
png
pukulsesuatu's icon

Thanks alots

samfm1163's icon

This is amazing. I downloaded it and can't figure out why the binaural object isn't reading the hrtf library. If there are any obvious answers, I would much appreciate it.

eliott paris's icon

@SAMFM1163
In the current version of the library (mac 1.2 / win 1.1), the hoa.binaural~ object need to have hrtf library installed in the right path to work.

from the README.txt :
mac : The "HrtfDatabase" folder must be put in "/Library/Application Support/CicmLibrary/"
win : The "HrtfDatabase" folder must be put in "C:/ProgramData/CicmLibrary/"
If the "CicmLibrary" folder don't exist please create it.

----------------

This will change in the next release (version 1.3) ..comming as soon as possible :
- hoa.decoder~ will support standard ambisonics decoder mode, binaural mode (with HrtfDatabase embed), irregular configuration mode[...]

Cheers

samfm1163's icon

Ah, very cool. For some reason the automatic installer wasn't installing the hrtf library folder. I found it in the manual installer. Again, thank you. This just made it so much easier for me and my friend who are collaborating and experimenting with a set up that we put together. Instead of catching a bus to Cincinnati every time I want to try something, I can send him a binaural sketch! At least thats my goal.

Cheers

maggey pain's icon

I was getting the Hrtf library not loading error as well.

With the 1.2 Mac auto-install it seems like the HrtfDatabase folder is getting installed to the user Library folder (~/Library/...) instead of the global Library folder (/Library/...). Happened to me on 10.6.8 and 10.8.4. Once I moved it to the correct Library the Hrtf database loaded fine.

Federico Rodriguez-Jimenez's icon

Hi,

I'm working on Windows and I have the same problem with the binaural~ object. I followed the procedure recomended, but still, binaural~ doesn't work and i keep receiving a message on the max window saying "HRTF Database not loaded". How can I load it?

Thanks.

Pierre Guillot's icon

Hi,

I need more informations. Do you use Max 5 or 6, 32bits or 64bits ? Which version of the Hoa Library ? We have recently updated the Hoa Library (version 1.3.1). If you use Max 6, you can use it. With the last version, the HRTFS folder must be in the objects folder.

Best,

Pierre

Julien Bayle's icon

Hello Pierre, Elliott,
What should you do for summing signals at final stage output ?

Here my concern:
- I have 6 sources, each one going through its proper chain
- each chain are encoded, processed, and have to be decoded to 31 speakers

The basic idea would be to sum each harmo into each decoder input, but I'm afraid of signals clipping.
So the second idea would be to use limiters (in harmo domain or in planewave domain? with a projector ?)

Let me know.

Graham Wakefield's icon

My guess is that, if they are all encoded with the same flavour/weights etc., you should be able to sum in the harmonic domain. To apply a limiter, you'd want the same gain value applied to each channel of the harmonic domain. I would guess using the W channel as the source signal to track makes most sense.

Julien Bayle's icon

Hi Graham and thanks for your answer.
You mean what by "W channel" ?
same flavour/weight ?

3dSum.png
png
Pierre Guillot's icon

If your signals don't exceed -1 and 1, you shouldn't have any clipping problem. The W channel is the first harmonic [0, 0] but the weight relation between this harmonic and the others is broken after the effects (grain~, ringmod~, etc.).
One tip: you don't have to use an encoder before the granulation, you can directly use hoa.syn.grain~.

Julien Bayle's icon

Hi Pierre and thanks a lot for your answer.

reformulating in order to check if I understood:
if all my source signals are not exceeding -1 1, whatever I do after that (encoding, fx) I can re-sum harmonics at the final stage and it won't clip?

Pierre Guillot's icon

Not really. If you encode 6 white noise at the same position or if your fx is a gain that multiply the signal by 100, there will be a problem. But if your sources are "homogeneous" and the fxs don't increase the gain, it should be ok.

Julien Bayle's icon

Ok Pierre.
So I'll have problems.

The idea is really : I want to be able to completely alter the sound in any positions and to put all sounds in that corner of the space or at the opposite etc.

Would it be right to put ... a limiter on each harmonics output ?
If yes, where would you do that ? before the decoder ? or between the decoder and the hoa.dac~ ?

(sorry if it sounds weird but I really want to be able to use the space itself as a way of altering the sound so I really need to do that)

Miguel Arranz's icon

That's fantastic, thanks a lot!