Constuct a new wrapper for a webmidi.js output.
Output device or null
if you need a dummy out.
Channels to use for sending pitch bent MIDI notes. Number of channels determines maximum microtonal polyphony.
Optional
log: ((msg) => void)Logging function.
Private
lastPrivate
voicesClear scheduled notes that have not yet been played. Will start working once the Chrome bug is fixed: https://bugs.chromium.org/p/chromium/issues/detail?id=471798
Schedule a series of notes to be played at a later time. Please note that this reserves the channels until all notes have finished playing.
Notes to be played.
Private
selectSend a note-on event and pitch-bend to the output device on one of the available channels.
Frequency of the note in Hertz (Hz).
Optional
rawAttack: numberAttack velocity of the note from 0 to 127.
Optional
time: numberA callback for sending a corresponding note off on the correct channel.
Optional
rawRelease: numberOptional
time: numberPrivate
send
Wrapper for a webmidi.js output. Uses multiple channels to achieve polyphonic microtuning.