v0.1Latest
MIDI Delay
MIDI Delay
Delays and repeats incoming MIDI notes, echoing them in the MIDI domain rather than the audio domain. Timing can be set in milliseconds or synced to tempo, and repeats let a single note spawn a decaying series of retriggers. Use it for rhythmic MIDI echoes that downstream instruments render with their own sound.

Inputs
MIDI In
- ID:
midi - Kind:
midi - Rate:
event - Coercion: Forbidden
- Description: MIDI message input
Clock
- ID:
clock - Kind:
clock - Rate:
control - Coercion: Implicit
- Description: Musical phase clock for tempo-synced MIDI delay time.
Outputs
MIDI Out
- ID:
midi - Kind:
midi - Rate:
event - Coercion: Forbidden
- Description: MIDI message output
Parameters
Time Mode
- ID:
timeMode - Type:
enum - Control:
buttons - Range or Options: Milliseconds (
ms), Sync (tempoSync) - Default: Milliseconds (
ms)
Delay
- ID:
delayMs - Type:
float - Control:
slider - Range or Options: 0 to 2000 ms, step 1
- Default:
250
Division
- ID:
division - Type:
enum - Control:
select - Range or Options: 1/64 (
1/64), 1/32 (1/32), 1/16 (1/16), 1/8 (1/8), 1/4 (1/4), 1/2 (1/2), 1/1 (1/1) - Default: 1/8 (
1/8)
Dotted
- ID:
dotted - Type:
bool - Control:
toggle - Default:
false
Swing
- ID:
swing - Type:
float - Control:
slider - Range or Options: 0 to 1 phase01, step 0.01
- Default:
0
Repeats
- ID:
repeatCount - Type:
int - Control:
slider - Range or Options: 1 to 16 count, step 1
- Default:
2
Feedback
- ID:
feedback01 - Type:
float - Control:
slider - Range or Options: 0 to 0.95 gain01, step 0.01
- Default:
0.35
Notes
- Canonical ID:
midi.delay - 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.