edit_midi_notes
Modify existing MIDI notes in REAPER to quantize, transpose, humanize, set velocities, or develop motifs while filters preserve unselected notes.
Instructions
Edits existing MIDI notes: quantize (with swing), humanize, transpose, snap to a scale, set or ramp velocities, strum chords, make legato, and develop motifs (diatonic transposition, inversion, retrograde, augmentation, harmony lines, sequences, negative harmony). Filters pick which notes; the rest stay as they are. One undo step.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Only notes starting before this QN position | |
| key | No | Scale root, e.g. A, F#, Bb | |
| axis | No | invert: the pitch to mirror around (default: the first note) | |
| grid | No | Quantize grid in QN: 1 = quarters, 0.5 = 8ths, 0.25 = 16ths, 1/3 = 8th triplets | |
| below | No | add_harmony: put the new line below | |
| scale | No | major, minor, dorian, mixolydian, harmonic minor, minor pentatonic, blues... | |
| start | No | Only notes starting at or after this QN position in the item | |
| steps | No | Scale steps for diatonic_transpose, add_harmony (2 = a 3rd) and sequence | |
| swing | No | ||
| timing | No | Humanize: max timing shift in QN | |
| channel | No | ||
| item_id | Yes | MIDI item id from create_midi_item/get_track_details, or "selected" | |
| repeats | No | sequence: how many transposed copies | |
| strength | No | ||
| velocity | No | ||
| operation | Yes | quantize (grid, strength, swing), humanize (timing, velocity_amount), transpose (semitones), snap_to_scale (key, scale), velocity (velocity | velocity_start+velocity_end ramp | velocity_scale), strum (strum_delay, strum_direction), legato (legato_gap). Motif development (need key, and scale unless key names one like 'A minor'): diatonic_transpose (steps), invert (mirror around the first note or axis, in the scale), retrograde (reverse), augment / diminish (double / halve durations), add_harmony (parallel line steps away: 2 = 3rds, 5 = 6ths; below; pass chords_item whenever the song has chords, so the line follows them), sequence (repeats, steps), negative_harmony | |
| pitch_low | No | Only notes at or above this pitch | |
| semitones | No | ||
| legato_gap | No | ||
| pitch_high | No | Only notes at or below this pitch | |
| chords_item | No | add_harmony: a MIDI item playing the song's chords (e.g. the keys part). Harmony notes then follow the chord in force instead of only the key, so chords from outside the key don't clash | |
| strum_delay | No | QN between strummed notes | |
| velocity_end | No | ||
| selected_only | No | Only the notes selected in REAPER's MIDI editor | |
| snap_direction | No | nearest | |
| velocity_scale | No | ||
| velocity_start | No | ||
| strum_direction | No | up | |
| velocity_amount | No | Humanize: max velocity change | |
| quantize_lengths | No |