Software and APIs: Difference between revisions

From Sofaconventions
Jump to navigation Jump to search
Content deleted Content added
Line 3: Line 3:
An application-programming interface (API) for Matlab and Octave.
An application-programming interface (API) for Matlab and Octave.


The releases are provided at [https://sourceforge.net/projects/sofacoustics/ Sourceforge].
The releases are provided at [https://sourceforge.net/projects/sofacoustics/ Sourceforge]. The sources are stored at [https://github.com/sofacoustics/sofa github]

The sources are stored at [https://github.com/sofacoustics/sofa github]


If you have questions about this API, please send an email to the [mailto:sofacoustics-devel@lists.sourceforge.net mailing list]. You don't have to be a member of the mailing list to send a message to the list moderator.
If you have questions about this API, please send an email to the [mailto:sofacoustics-devel@lists.sourceforge.net mailing list]. You don't have to be a member of the mailing list to send a message to the list moderator.

Revision as of 15:49, 24 May 2017

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

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: Demo of a SOFA-based audio engine in C++

SOFAlizer is a simple demo of an audio engine as a plugin for the VLC-Player.

Currently, Windows binaries of the VLC-Player 2.1 compiled with the SOFAlizer plugin are available. In order to use SOFAlizer:

  • Download the official VLC 2.1 from here and install on your machine
  • Download the SOFAlizer 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

The source code is available here. The file sofalizer.c can serve as an example of how to load SOFA files in C++.

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.

Spat

Spat is a software suite for spatialization of sound signals in real-time intended for musical creation, postproduction, and live performances made by IRCAM. It supports SOFA for binaural rendering.

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.

libmysofa

Libmysofa is a light weight C-library to read SOFA files.

It hardly has any library dependencies and is suitable for embedded devices.

In addition, it normalizes the input data and provides a function to look up and to interpolate the FIR filters for a given orientation.