Skip to content

Implementing a Custom Decoder

Mark Slee edited this page Apr 19, 2018 · 12 revisions

The E4L Master Bus supports loading any max patcher with 16 inputs and 16 outputs as a custom decoder. If you have a unique multi-channel speaker setup, you can write your own Max patch and load it as a decoder.

Reference decoders are located at: https://github.com/EnvelopSound/EnvelopForLive/tree/master/patchers/decoder

For an extremely basic reference on the structure of a decoder patch, consult the e4l.decoder.example patch file.

The 16 in~ objects receive Ambisonics-domain spatial audio in AmbiX format (ACN channel ordering with SN3D weighting). The 16 out~ objects can output whatever type of decoded or transformed audio you like.

For an example of a very straightforward single-plane decoder, look at the e4l.decoder.octo patch, which decodes 8 channels of audio using the ambidecode~ object and the e4l.ambidecode.angles abstraction to specify the radial positions.

Note that decoder patches should not use the adc~ or dac~ objects. The decoder runs inside the E4L Master Bus device and uses Ableton's Max for Live plugin routing.

Envelop is a nonprofit organization that amplifies the unifying power of music through immersive listening spaces, events, and open-source spatial audio software.

Clone this wiki locally