MChanVoicer:
Filter:
Modality-toolkit/Classes (extension) | Libraries > Modality

MChanVoicer
ExtensionExtension

a monophonic voicer for midi channel polyphony

Description

MChanVoicer is intended for channel rotation polyphony as used in the Roli Saeboard and QuNexus keyboard. It accepts one channel of incoming noteOn, noteOff, bend, and press messages, and has one MKtlElement each for note, vel, bend, press, and velOff. NoteOn and NoteOff are interpreted monophonically as follows:

noteOn: if there are no held notes yet, startFunc is triggered; always sets note and vel values from incoming values

noteOff: if there are held notes, note value rolls back to one of them (by default, the latest); if not, noteOff sets vel element to 0, offVelEl is set, and endFunc is triggered.

First code examples:

Class Methods

.new

make a new MChanVoicer with a (MIDI) channel, and pass in MKtlElements if desired; else they are created.

Instance Methods

.chan

the chan value

.noteEl

.velEl

.bendEl

.pressEl

.offVelEl

the MKtlElements for note, amp, bend, press, velOff values

.noteOn

.noteOff

pass in noteOn and noteOff messages

.bend

pass in bend values

.press

pass in press messages

.startFunc

get and set the function that happens when a new note starts

.endFunc

get and set the function that happens when the note ends

.heldNotes

the currently held notes in the order they were played in

.startNote

.endNote

trigger startFunc and endFunc

Examples