← All Operators

MidiInput

Control

Hardware MIDI input translated into native notes_out plus auxiliary control lanes.

Connects to a MIDI input device and emits notes_out as the canonical internal note stream for synth notes_in ports. It also provides note/velocity/gate as scalar convenience signals and auxiliary lane arrays (up to 16 held notes), plus pitch bend, mod wheel, a learnable CC value, and per-note expression lanes. poly_shared broadcasts shared expression to all notes, while mpe_lower and mpe_upper route per-channel expression to individual note lanes for MPE controllers.

Tips

  • Use notes_out -> notes_in for the default synth path; add NoteBreakout only when you need shared per-voice control lanes.
  • Use mpe_lower or mpe_upper mode with an MPE controller for per-note expression.

Parameters

NameTypeRangeDefaultDescription
channelMIDI channel filter. 0 = omni (all channels).
modeExpression routing mode: poly_shared (broadcast), mpe_lower (manager ch1, members ch2-15), mpe_upper (manager ch16, members ch15-2).

Outputs

NameTypeDescription
notescalarLatest MIDI note number (0-127).
velocityscalarLatest velocity (0-1).
gatescalar1 if any notes held, 0 otherwise.
triggerscalar1 on note-on frame, 0 otherwise.
pitch_bendscalarGlobal pitch bend (-1 to 1).
mod_wheelscalarCC1 mod wheel (0-1).
cc_valuescalarLearnable CC value (0-1).
noteslane_arrayHeld note numbers as lane array.
velocitieslane_arrayPer-note velocities (0-1).
gateslane_arrayPer-note gates (always 1 for held notes).
notes_outcustomNative note stream for downstream synth notes_in ports.
aftertouchscalarChannel aftertouch (0-1).
expressionscalarCC11 expression (0-1).
lane_idslane_arrayStable identity token per active note.
pitch_bendslane_arrayPer-note pitch bend (-1 to 1).
pressureslane_arrayPer-note pressure (0-1).
slideslane_arrayPer-note slide/CC74 (0-1).
expressionslane_arrayPer-note expression/CC11 (0-1).
channelslane_arrayPer-note MIDI channel (1-16).

Related Operators