v0.1Latest
MIDI Scale Quantize
MIDI Scale Quantize
Snaps incoming MIDI notes to the nearest pitch within a chosen root and scale, keeping performances in key. Out-of-scale notes are shifted to the closest allowed degree, so improvised or randomized input always lands on musical pitches. Use it downstream of randomizers, arpeggiators, or loose playing to enforce a tonal center.

Inputs
MIDI In
- ID:
midi - Kind:
midi - Rate:
event - Coercion: Forbidden
- Description: MIDI message input
Scale
- ID:
scaleContext - Kind:
scale - Rate:
event - Coercion: Forbidden
- Description: Optional connected Scale value that overrides the authored Root and Scale parameters.
Outputs
MIDI Out
- ID:
midi - Kind:
midi - Rate:
event - Coercion: Forbidden
- Description: MIDI message output
Parameters
Root
- ID:
root - Type:
enum - Control:
select - Range or Options: Auto (
auto), C (C), C♯ (C#), D (D), D♯ (D#), E (E), F (F), F♯ (F#), G (G), G♯ (G#), A (A), A♯ (A#), B (B) - Default: C (
C)
Scale
- ID:
scale - Type:
enum - Control:
select - Range or Options: Chromatic (
chromatic), Major (major), Minor (minor), Pentatonic (pentatonic), Blues (blues), Dorian (dorian), Mixolydian (mixolydian) - Default: Major (
major)
Notes
- Canonical ID:
midi.scaleQuantize - Category:
midi - Runtime Surface: midi
- Runtime Targets:
control-main-thread - JUCE Early Access: Supported
- Early Access Note: Native-supported in the plugin for the current catalog/runtime support contract.