Create MIDI note reactive
create_midi_note_reactiveCreates a MIDI note-reactive chain exposing per-note trigger and velocity channels on a Null CHOP for binding to parameters.
Instructions
Build a MIDI note → per-note trigger/velocity chain that exposes bindable channels on a Null CHOP (note0…noteN-1). Unlike learn_control (which binds one CC), this creates a full note-event chain: midiinCHOP → eventCHOP (ADSR envelopes per note) → Null CHOP. Bind any parameter to op('…/notes_out')['note0'] and it pulses with each keypress. source='synthetic' (default) previews without hardware by generating a procedural note pattern — switch to source='device' when a MIDI keyboard is connected. The device path is HARDWARE-GATED (HELD FROM RELEASE until validated with real MIDI gear).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Name for the container COMP created inside parent_path. Must be a valid TD identifier. | midi_note_reactive |
| parent_path | No | Parent COMP path the self-contained container is created inside. | /project1 |
| source | No | device: a real MIDI In CHOP (hardware-gated; needs a MIDI keyboard/controller — HELD FROM RELEASE until validated with gear). synthetic: a Noise CHOP driving an Event CHOP so it previews without any hardware. Default is synthetic so the chain is immediately visible. | synthetic |
| device_name | No | (device) MIDI device name to filter (e.g. 'Arturia MiniLab mkII'). When omitted the MIDI In CHOP listens on all devices. | |
| notes | No | How many note channels to expose (e.g. 12 = one octave, 128 = full keyboard). Each channel is named note0…noteN-1 on the output Null CHOP. |