LFO-based MIDI arpeggiator Max for Live device


An arpeggiator that generates MIDI notes at a selected rate, synchronized to Ableton Live's transport clock, by reading the values of 4 low-frequency oscillators at a triggered moment and assigning them to MIDI pitch, velocity, duration and gate, between the specified minimum and maximum target values.

The LFOs themselves can run at a rate syncronized with Live's transport or freely. The 4 LFOs can either be synchronized to all run at a same rate, or they can run at different rates, specified as multiples of the 'pitch' LFO rate.

Many different LFO shapes can be achieved using various easing functions (thanks to Gregory Taylor for Gen implementation of the AHEasing library).

Inspired by the classic "LFO → sample and hold → pitch" modular synth trick.