Skip to content
A collection of spatial audio related VST audio plug-ins; including: Ambisonic encoders/decoders/visualisers, and basic loudspeaker/headphone panners.
C++ Makefile C Objective-C++ R Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
SDKs edited README; Added multiple decoding options to AmbiBIN; Mar 17, 2019
audio_plugins
.gitignore
LICENSE Initial commit Feb 16, 2018
McCormackPolitis2019SpartaCompass.pdf Added pdf of sparta+compass paper; Mar 20, 2019
README.md Update README.md Jun 7, 2019
sparta_screenshot.png

README.md

SPARTA

SPatial Audio Real-Time Applications (SPARTA). A collection of VST audio plug-ins for spatial audio production, reproduction and visualisation.

The Plug-ins

This repository contains the following VST plug-ins:

  • AmbiBIN - A binaural ambisonic decoder (up to 7th order) with a built-in SOFA loader and head-tracking support via OSC messages. Includes: Least-Squares (LS), spatial re-sampling (SPR), time-alignment (TA), and magnitude least-squares (Mag-LS) decoding options.
  • AmbiDEC - A frequency-dependent loudspeaker ambisonic decoder (up to 7th order) with user specifiable loudspeaker directions (up to 64), which may be optionally imported via JSON configuration files. Includes: All-Round (AllRAD), Energy-Preserving (EPAD), Spatial (SAD), and Mode-Matching (MMD) ambisonic decoding options. The loudspeaker signals may also be binauralised for headphone playback.
  • AmbiDRC - A frequency-dependent dynamic range compressor for ambisonic signals (up to 7th order).
  • AmbiENC - An ambisonic encoder/panner (up to 7th order), with support for up to 64 input channels; the directions for which may also be imported via JSON configuration files.
  • Array2SH - A microphone array spatial encoder (up to 7th order), with presets for several commercially available A-format and higher-order microphone arrays. The plug-in can also present objective evaluation metrics for the currently selected configuration.
  • Beamformer - A spherical harmonic domain beamforming plug-in with multiple beamforming strategies (up to 64 output beams).
  • Binauraliser - A binaural panner (up to 64 input channels) with a built-in SOFA loader and head-tracking support via OSC messages.
  • DirASS - A sound-field visualiser based on re-assigning the energy of beamformers. This re-assigment is based on DoA estimates extracted from "spatially-constrained" regions, which are centred around each beamformer look-direction.
  • Panner - A frequency-dependent 3-D panner using the VBAP method (up to 64 inputs and outputs).
  • PowerMap - A sound-field visualisation plug-in based on ambisonic signals as input (up to 7th order), with PWD/MVDR/MUSIC/Min-Norm options.
  • Rotator - A flexible ambisonic rotator (up to 7th order) with head-tracking support via OSC messages.
  • SLDoA - A frequency-dependent sound-field visualiser (up to 7th order), based on depicting the direction-of-arrival (DoA) estimates derived from spatially localised active-intensity vectors. The low frequency estimates are shown with blue icons, mid-frequencies with green, and high-frequencies with red.

Getting Started

These instructions will help you compile the individual VST audio plug-ins. Alternatively, they can be downloaded from here:

  • Pre-built - for Windows (64-bit), Mac OSX (10.10 or higher), and Linux (x86_64)

Prerequisites

To compile the plugins yourself, the following SDKs and frameworks must be placed in the 'SDKs' folder like so

SDKs/modules
SDKs/Spatial_Audio_Framework
SDKs/VST2_SDK

And can be obtained from:

You must also install a custom Intel MKL .dll/.dylib in a system path folder. More details on this can be found here. However, Mac users may elect to remove the "SAF_USE_INTEL_MKL" flag in the global pre-precessor definitions, in order to get around this requirement; albeit, at the expense of a reduction in performance.

Installing

Visual Studio (2015/2017) solutions, X-code project files, and Linux Makefiles are included in:

audio_plugins/_SPARTA_X_/make/

To generate project files for other IDEs, you can open and configure the included .jucer files with JUCE's Projucer App accordingly.

Authors

  • Leo McCormack - C/C++ programmer and DSP researcher (contact: leo.mccormack@aalto.fi)
  • Symeon Delikaris-Manias - DSP researcher
  • Archontis Politis - DSP researcher
  • Ville Pulkki - DSP researcher

License

This project is licensed under the GPLv3 License - see the LICENSE file for details

You can’t perform that action at this time.