The MIDI Node is an internal part of web synth which handles sending and receiving MIDI events. It isn't ever exposed to users or via the UI, but it plays a key role in MIDI processing within the application.
MIDI nodes work as both senders and receivers in the application. They can be connected to each other as part of the [patch-network] in order to route MIDI events around.
MIDI nodes can be provided a set of callbacks when created that will be called when incoming MIDI events of different types are received by the node. They also expose methods like onAttack
, onRelease
, etc. which can be used to send MIDI events to all connected destination MIDI nodes.
MIDI nodes also support sending messages to the audio thread for [audio-thread-midi-scheduling].