Spatial Audio is hot! There is a bunch of academic research and open source software implementing higher order Ambisonics. These are my notes, with some comparisons of DSP + programming platforms I have evaluated.

ChucK

A strongly timed strongly typed language built upon the RtAudio C++ library. All code executes in a virtual machine and is sample accurate.

Pros

  • Small C++ codebase
  • Compiles quickly and easily on Linux
  • Runs in a web browser
  • Runs on mobile devices
  • Has plugin system
  • Runs in video game engines
  • AI Stuff!

Cons

  • Ambisonic plugins are slim to none
  • C++ codebase
  • The virtual machine is 4400 lines of C++, written in 2002

SuperCollider

A DSP engine and object oriented programming language for sound synthesis.

Pros

Cons

Pyo

A framework for DSP implemented in Python. It has a Binaural generator that looks pretty simple. Has an advantage of being implemented in the same language as the GenAI text-to-speech I’m looking to use.

Pros

  • The Binuaral encoder/decoder does all the HRTF stuff internally
  • The example code works first try
  • Integrates with the TTS stuff I already know
  • Built in GUI classes
  • Could integrate something in TouchDesigner to do OSC for x/y/z + distance

Cons

  • JACK audio output not built into wheel, requires a custom build
  • Python isn’t gonna run on a phone or a watch
  • Pyo uses wxPython which is…interesting