FFT-based binaural panner


    The FFT-based binaural panner is not an external, but rather a project that consists of a couple of Max patches and 43 pairs of HRTF-subject files to be read by jit.matrix~.
    It was created in 2011 as part of a thesis on the possibilities of binaural synthesis in combination with head-tracking, in an aesthetic/experience-oriented context. In the thesis project, the FFT-based binaural panner is a small, but essential, part of a larger construction in Max, involving sensor-based head-tracking, room simulation, configurable sound- and listener positions etc..
    The project is inspired by other Max projects such as Head in Space (http://sites.google.com/site/dariopizzamiglio/projects/head-in-space) and Binaural Tools (http://www.ece.ucdavis.edu/binaural/binaural_tools.html). The FFT-based binaural panner was created to reduce the substantial load on the cpu that comes with convolution in the time-domain. It uses pfft~ to perform an equivalent but 'cheaper' mutliplying process in the frequency-domain.
    The panner uses the impulse responses from the CIPIC HRTF database (http://interface.cipic.ucdavis.edu/sound/hrtf.html) but in a frequency-domain and interpolated version.
    The project also includes a HRTFSubjectMatcher sub patch, which relies on a java external ('HRTFSubjectMatcher.class'). The HRTFSubjectMatcher tries to match the entered listener measurements with the subjects in the CIPIC database. However it must be mentioned that it is by no means scientifically valid, but might serve at a rudimentary tool for selecting an appropriate HRTF file set.
    Best regards Jakob Hougaard Andersen

    • michel8's icon
      michel8's icon
      michel8
      Apr 15 2018 | 5:54 pm
      Great Panner, at OSX Max 64bit it works perfectly for virtual sound psitioning! I will use it with Oculus.
      But on Windows 10 64bit and Max7.5.3 64bit, im struggling with folowing Java error! The Java 3D which Marte Roel recommended is off. So I install also the java3d-1_5_1-windows-i586 at http://www.oracle.com/technetwork/articles/javase/index-jsp-138252.html Waht could I do to get it run on Windows?? Thanks!
      Max Console: mxj: could not find Java 2 Runtime Environment. Error loading: (mxj) mxj_platform_init failed. Could not initialize the Java Runtime Environment. Please check your Java installation. http://java.sun.com Unable to create JVM
      The Java version at Command Prompt give me: java version "10" 2018-03-20 Java(TM) SE Runtime Environment 18.3 (build 10+46) Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10+46, mixed mode)
      Share
    • michel8's icon
      michel8's icon
      michel8
      Apr 16 2018 | 7:13 pm
      Update: I find out that also the standart "mxj net.udp.send" wasn't running. After install the offline Java 64bit https://www.java.com/en/download/manual.jsp i" mxj net.udp.send" was working. But the fft-panner still not! I try also with Max6 where its the same.
      Now the Max Consol shows diffrent. The bold one is the error message: MXJ System CLASSPATH: C:\Program Files\Cycling '74\Max 7\resources\packages\max-mxj\java-classes\lib\jitter.jar C:\Program Files\Cycling '74\Max 7\resources\packages\max-mxj\java-classes\lib\jode-1.1.2-pre-embedded.jar C:\Program Files\Cycling '74\Max 7\resources\packages\max-mxj\java-classes\lib\max.jar IVirtual Machine boot MXJClassloader CLASSPATH: C:\Program Files\Cycling '74\Max 7\resources\packages\max-mxj\java-classes\classes\ C:\Program Files\Cycling '74\Max 7\resources\packages\max-mxj\java-classes\ Jitter Java support installed java.lang.NoClassDefFoundError: javax/vecmath/Tuple3f Caused by: java.lang.ClassNotFoundException: javax.vecmath.Tuple3f at com.cycling74.max.MXJClassLoaderImpl.lookupClassData(MXJClassLoaderImpl.java:219) at com.cycling74.max.MXJClassLoaderImpl.doLoadClass(MXJClassLoaderImpl.java:111) at com.cycling74.max.MXJClassLoaderImpl.loadClass(MXJClassLoaderImpl.java:89) at java.lang.ClassLoader.loadClass(Unknown Source) (mxj) unable to alloc instance of DirectionAndDistanceHandler HRTFSubjectMatcher: All values cleared Like you wrote, I put the 'DirectionAndDistanceHandler.class' and 'HRTFSubjectMatcher.class' in to the C:\Program Files\Cycling '74\Max 7\resources\packages\max-mxj\java-classes but no success! And unfortunatly the https://java3d.java.net site is close, so what can I do?
    • michel8's icon
      michel8's icon
      michel8
      Apr 16 2018 | 8:39 pm
      Update 2: After copy also the 'vecmath.jar' in to the C:\Program Files\Cycling '74\Max 7\resources\packages\max-mxj\java-classes it works at Win10 Max7 64bit! Hope its not a problem to copy a .jar from x86 to 64bit?
    • Mo Krates's icon
      Mo Krates's icon
      Mo Krates
      Jun 06 2018 | 3:13 pm
      where did you get the vecmath.jar file? because I have the same problem. Also "unable to alloc instance of DirectionAndDistanceHandler" error message
    • Jack Sheppard's icon
      Jack Sheppard's icon
      Jack Sheppard
      Feb 25 2020 | 2:36 pm
      Hello there, could anybody tell me if this thread is still active? I need some help getting this max patch started and could do with any help.
      Thank you