Support on/off in addition to invert for MIDI mute ... and support queuing "timing" (now, eol, eom)

Currently can only toggle mute/unmute via midi. Invert is a nice option for some uses, but explicit on/off is definitely needed.

Something like (backwards compatible):

Value 1-6: Mutes/Unmutes track (track # = value #) - TOGGLE

Value 11-16 Mute track (track # -10 = value #)
Value 21-26 UnMute track (track # -20 = value #)

Value 0 - Mutes all tracks.
Value 127 - Unmutes all tracks

For bonus would be really nice to have control over when muting occurs. (I usually use EOL, but there are times where Immediately is important). This should be supported for all queueable midi commands (mute, solo, change part, stop, etc.).

Value 11-16 Mute track (track # -10 = value #) Immediately
Value 21-26 UnMute track (track # -20 = value #) Immediately
Value 31-36 Mute track (track # -30 = value #) EOL
Value 41-46 UnMute track (track # -30 = value #) EOL
Value 51-56 Mute track (track # -30 = value #) EOM
Value 61-66 UnMute track (track # -30 = value #) EOM

An alternate way to handle the above is to add a CC that changes the timing of the next command (immediate, eol, eom). The nice thing is that this could be used with all queueable midi commands without having to complicate their values. So you would need to send two midi commands (one to set the timing and another to tell it what to mute).


Just adding my voice to this as I have in other threads. Discrete commands for each state is necessary to allow MIDI users to develop their own workflow.