Over the past few days I’ve been looking into how to make JS audio effect plugins for the Reaper DAW program. JS is a scripting language which is compiled on the fly and allows you to modify and/or generate audio and MIDI, as well as draw custom vector based UI and analysis displays. JS effects are simple text files, which when loaded in REAPER become full featured plug-ins.
JS plugins are simple and fast to develop, and I have made a bunch for processing of ambisonic sound field recordings:
- YAW rotation (around the up axis)
- PITCH rotation (around the right axis)
- ROLL rotation (around the front axis)
- 1st order encoding of mono source
- 1st order encoding of stereo source (treated as two mono sources)
- 1st order super stereo encoding (I still need to apply 90 degree phase offsets to signals in order to complete this one)
I’ve set up a GitHub repository where you can grab the code/plugins and follow further development.