Software and APIs

From Sofaconventions
Revision as of 13:23, 8 September 2016 by Petibub (talk | contribs) (SOFAlizer descirpition)
Jump to navigation Jump to search

API for Matlab/Octave

An application-programming interface (API) for Matlab and Octave.

The releases are provided at Sourceforge.

The sources are stored at github

Note:

  • The last stable version 0.4.3 does not fully support the recently published standard AES69-2015.
  • The full support of AES69-2015 is provided with the version 1.0, which is now in the stage of being a release candidate 2 (1.0RC2).


If you have questions about this API, please send an email to the mailing list. You don't have to be a member of the mailing list to send a message to the list moderator.


API for C++

An API for C++ is available online. The version 1.0 is in accordance with the AES69-2015 standard.

The sources are stored at github


If you have questions about this API, please send an email to the mailing list. You don't have to be a member of the mailing list to send a message to the list moderator.


SOFAlizer: Example of loading SOFA files in C++

We have a draft source code for a plug-in called SOFAlizer for the VLC-Player. This plug-in is not available within the official release of the VLC-Player yet (but we work on that ;-) ).

The file sofalizer.c can serve as an example of how to load SOFA files in C++.

Windows binaries of the VLC-Player 2.1 compiled with the SOFAlizer plug-in are available. In order to use SOFAlizer:

  • Download the official VLC 2.1 from here and install on your machine
  • Download the SOFAlized-VLC from here, unzip, and copy over your VLC installation
  • Start VLC
  • Goto Tools, Preferences, check "Show settings: All"
  • In the left panel, for Audio/Filters, check "SOFAlizer"
  • In the left panel, for Audio/Filters/SOFAlizer, select at SOFA file 1,2,3 up to three SOFA files
  • Click on Save
  • Goto Tools/Effects and Filters, in that panel, select "SOFAlizer"
  • Enable SOFAlizer
  • Load a audio/video file, enjoy

WaveCloud-M

WaveCloud-M is Matlab-oriented room simulator. Beginning with version 1.0, WaveCloud-M can use HRTFs saved in SOFA to render binaural signals.


HDF5View

SOFA files are based on netCDF-4. NetCDF is based on HDF5. HDFView is a generic viewer for HDF5 files running in Java.

Thus, SOFA files can be loaded and edited in the HDFView.