Arpeggio

arpeggio plugin

Tempo-synced arpeggiator that sequences held notes in configurable patterns.

Source: examples/truce-example-arpeggio/.

#What it demonstrates

  • Tempo-synced MIDI processing using context.transport.tempo
  • Enum parameter (EnumParam<ArpPattern>) with dropdown widget
  • Stateful MIDI effect: tracks held notes, manages step counter and gate timing
  • Octave stacking and directional patterns (Up, Down, Up/Down, Random)

#Parameters

Name Range Unit Description
Rate 1 to 8 -- Note divisions (1=whole, 4=quarter, 8=eighth)
Gate 0.1 to 1.0 % Note length as fraction of step
Octaves 1 to 4 -- Octaves to stack above held notes
Pattern Up/Down/Up-Down/Random -- Arp direction

#Build and test

cargo build -p truce-example-arpeggio
cargo test -p truce-example-arpeggio