Software » Max/MSP

Multislider Envelope

Using a multislider to control an envelope.

Max's [function] object is useful for envelopes, but it can be a pain to work with. Sometimes you just want to swipe your mouse across the screen and get an envelope. Multislider is great for this. Here's a simple example of how to do it.

  1. Copy the text in this box (it's the patcher source code)
  2. In Max's menu, go to File → New from Clipboard
  3. Lock the patcher to interact with it

Patcher breakdown

Working backwards from the audio output at the bottom:

Trigger Objects

If you're new to Max, those [t ...] objects are important. They are [trigger] objects that control the flow of the patcher. They can also do basic conversion, such as converting any message into a bang message. Take the time to understand what they are doing. Check out the Max help file if needed.

For example, the [t b l] below the multislider sends the list (l) of values through the iter loop where they are stored in [zl group]. Once the list has been processed, [t b l] sends a bang (b) message out its left outlet, which triggers [zl group] to update [zl reg]. Without [t b l] and [zl group], connecting the [append 15] directly into [zl reg] would cause the value,time pairs to arrive separately (because [iter] breaks them up and sends them out 1 by 1 in a loop), and each pair would overwrite the previous one. You'd end up with a single pair element with the final value of 0.

Learning these signal flow structures will help you build more complex patchers.