top of page

What the hell is a "LinearMapper"?


I've been met with some confusion lately regarding my recent Max for Live project, "LinearMapper". This post is a comprehensive explanation of what it does and why it has a lot of potential for live improvisational electronic music.



Within Ableton, you can make custom synthesizers, audio effects, and MIDI effects using Max for Live. Max is a visual programming language for audio and other things.


The LinearMapper device is a Max for Live audio effect, although it makes no changes to the audio signal that it passes through. It is designed this way so that it can be placed on any type of track within Ableton, whereas a MIDI effect would only be able to be placed on a MIDI track. LinearMapper instead controls the parameters of other devices in the user's Live set.


A parameter, as it relates to audio synthesis and music production, is a particular variable aspect of any given track or device within a digital audio workstation. Parameters are interacted with via sliders, buttons, knobs, or any sort of user interface that controls the change of a number. Here's some examples of parameters:

  • The volume or panning of a track

  • The frequency or Q value of an EQ band

  • The dry/wet setting on an audio effect

Almost any sort of number value that you can control within a digital audio workstation is a parameter. Within Ableton Live, parameters can be controlled through a number of ways besides direct, manual interaction, such as automation, MIDI mapping, or remote control through another device, such as the LinearMapper.


You may be familiar with devices within Ableton such as the LFO and Shaper. These Max for Live devices work using a similar functionality as LinearMapper, which allows them to remotely control a parameter external to the device. In this example, the LFO, or low frequency oscillator, is applying a sine wave function to the frequency parameter of an EQ band.



Devices such as the LFO are very useful tools. But they control parameters with a single, repeating mathematical (or random) function. This is where LinearMapper differs.


LinearMapper has ten "bands", or controlling parameters, that the user can control using an XY pad. Each band moves independently as you control the XY pad. The device contains a neural network that performs linear regression to take user-defined sets of x,y coordinates paired with values for each of the ten bands, and interpolate linearly between them.


Here is a step-by-step explanation and video:


  1. Choose values for each of the ten bands and move the x-y cursor to where you would like this set of values to correlate on the x-y pad.

  2. Hit "add coordinate", and continue to add more coordinates until you are satisfied.

  3. Switch to predicting mode and fit the data adequately (press the button a couple times)

  4. Drag the x-y cursor around.

(Note: I just haphazardly assigned each parameter to the EQ for visual purposes. I don't recommend doing this.)


Okay, so what does this actually mean in practice?


By mapping each of the ten bands to different parameters on synthesizers, audio effects, and midi effects within a set, we can linearly interpolate between different "soundscapes" of the user's design. This is much more organic, and a bit less predictable, than simply mapping an x-y pad to a couple parameters. With multiple instances of LinearMapper, you can create organic, shifting soundscapes that morph at your fingertips.


Here it is, working in my project, "spider dreams". Two instances of LinearMapper are controlling many different parameters relating to the drums and synths. Each XY pad is controlled with two faders on my MIDI controller.



I want to emphasize that the LinearMapper device does not magically create sounds like this; again, it doesn't create sound itself at all. It is up to the artist to carefully choose each parameter, scale it to the correct range, and create a data set that changes in an interesting way. You also obviously have to create the rest of the Live set, clips, etc.


I am very excited about the avenues of live performance this opens up for me. Up until this point, the kind of highly produced music I like to make seemed impossible to naturally format for a live setting. I hope to see other people use it as well.


Note: The version of LinearMapper I show in these demonstration materials is LinearMapper 1.1, which has a couple new quality of life features, including saving and loading coordinates. I will make this version publicly available soon.






Comments


bottom of page