Top Level Namespace

Defined in:

Constant Summary

ACTIVE_SENSE = 254_u8
CC_BALANCE = CC_BALANCE_MSB
CC_BALANCE_LSB = (CC_BALANCE_MSB + 32_u8)
CC_BALANCE_MSB = 8_u8
CC_BANK_SELECT = CC_BANK_SELECT_MSB
CC_BANK_SELECT_LSB = (CC_BANK_SELECT_MSB + 32_u8)

[32 - 63] are LSB for [0 - 31]

CC_BANK_SELECT_MSB = 0_u8

Controller numbers 0 - 31 = continuous_u8, MSB 32 - 63 = continuous_u8, LSB 64 - 97 = momentary_u8 switches

CC_BREATH_CONTROLLER = CC_BREATH_CONTROLLER_MSB
CC_BREATH_CONTROLLER_LSB = (CC_BREATH_CONTROLLER_MSB + 32_u8)
CC_BREATH_CONTROLLER_MSB = 2_u8
CC_CHORUS_DEPTH = 93_u8
CC_DATA_DECREMENT = 97_u8
CC_DATA_ENTRY = CC_DATA_ENTRY_MSB
CC_DATA_ENTRY_LSB = (CC_DATA_ENTRY_MSB + 32_u8)
CC_DATA_ENTRY_MSB = 6_u8
CC_DATA_INCREMENT = 96_u8
CC_DETUNE_DEPTH = 94_u8
CC_EXPRESSION_CONTROLLER = CC_EXPRESSION_CONTROLLER_MSB
CC_EXPRESSION_CONTROLLER_LSB = (CC_EXPRESSION_CONTROLLER_MSB + 32_u8)
CC_EXPRESSION_CONTROLLER_MSB = 11_u8
CC_EXT_EFFECTS_DEPTH = 91_u8
CC_FOOT_CONTROLLER = CC_FOOT_CONTROLLER_MSB
CC_FOOT_CONTROLLER_LSB = (CC_FOOT_CONTROLLER_MSB + 32_u8)
CC_FOOT_CONTROLLER_MSB = 4_u8
CC_GEN_PURPOSE_1 = CC_GEN_PURPOSE_1_MSB
CC_GEN_PURPOSE_1_LSB = (CC_GEN_PURPOSE_1_MSB + 32_u8)
CC_GEN_PURPOSE_1_MSB = 16_u8
CC_GEN_PURPOSE_2 = CC_GEN_PURPOSE_2_MSB
CC_GEN_PURPOSE_2_LSB = (CC_GEN_PURPOSE_2_MSB + 32_u8)
CC_GEN_PURPOSE_2_MSB = 17_u8
CC_GEN_PURPOSE_3 = CC_GEN_PURPOSE_3_MSB
CC_GEN_PURPOSE_3_LSB = (CC_GEN_PURPOSE_3_MSB + 32_u8)
CC_GEN_PURPOSE_3_MSB = 18_u8
CC_GEN_PURPOSE_4 = CC_GEN_PURPOSE_4_MSB
CC_GEN_PURPOSE_4_LSB = (CC_GEN_PURPOSE_4_MSB + 32_u8)
CC_GEN_PURPOSE_4_MSB = 19_u8
CC_GEN_PURPOSE_5 = 50_u8
CC_GEN_PURPOSE_6 = 51_u8
CC_GEN_PURPOSE_7 = 52_u8
CC_GEN_PURPOSE_8 = 53_u8
CC_HOLD_2 = 69_u8
CC_MOD_WHEEL = CC_MOD_WHEEL_MSB
CC_MOD_WHEEL_LSB = (CC_MOD_WHEEL_MSB + 32_u8)
CC_MOD_WHEEL_MSB = 1_u8
CC_NREG_PARAM_LSB = 98_u8
CC_NREG_PARAM_MSB = 99_u8
CC_PAN = CC_PAN_MSB
CC_PAN_LSB = (CC_PAN_MSB + 32_u8)
CC_PAN_MSB = 10_u8
CC_PHASER_DEPTH = 95_u8
CC_PORTAMENTO = 65_u8
CC_PORTAMENTO_TIME = CC_PORTAMENTO_TIME_MSB
CC_PORTAMENTO_TIME_LSB = (CC_PORTAMENTO_TIME_MSB + 32_u8)
CC_PORTAMENTO_TIME_MSB = 5_u8
CC_REG_PARAM_LSB = 100_u8
CC_REG_PARAM_MSB = 101_u8
CC_SOFT_PEDAL = 67_u8
CC_SUSTAIN = 64_u8

Momentary MSB switches

CC_SUSTENUTO = 66_u8
CC_TREMELO_DEPTH = 92_u8
CC_VOLUME = CC_VOLUME_MSB
CC_VOLUME_LSB = (CC_VOLUME_MSB + 32_u8)
CC_VOLUME_MSB = 7_u8
CHANNEL_PRESSURE = 208_u8
CLOCK = 248_u8

System realtime messages

CM_ALL_NOTES_OFF = 123_u8
CM_LOCAL_CONTROL = 122_u8
CM_MONO_MODE_ON = 126_u8
CM_OMNI_MODE_OFF = 124_u8
CM_OMNI_MODE_ON = 125_u8
CM_POLY_MODE_ON = 127_u8
CM_RESET_ALL_CONTROLLERS = 121_u8

Channel mode message values Val 0 == off, 0x7f == on

CONTINUE = 251_u8
CONTROLLER = 176_u8
DEFAULT_DRUM_CHANNEL = 9_u8
EOX = 247_u8
GM_DRUM_NOTE_LOWEST = 35

GM drum notes start at 35 (C), so subtrack GM_DRUM_NOTE_LOWEST from your note number before using this array.

GM_DRUM_NOTE_NAMES = ["Acoustic Bass Drum", "Bass Drum 1", "Side Stick", "Acoustic Snare", "Hand Clap", "Electric Snare", "Low Floor Tom", "Closed Hi-Hat", "High Floor Tom", "Pedal Hi-Hat", "Low Tom", "Open Hi-Hat", "Low-Mid Tom", "Hi Mid Tom", "Crash Cymbal 1", "High Tom", "Ride Cymbal 1", "Chinese Cymbal", "Ride Bell", "Tambourine", "Splash Cymbal", "Cowbell", "Crash Cymbal 2", "Vibraslap", "Ride Cymbal 2", "Hi Bongo", "Low Bongo", "Mute Hi Conga", "Open Hi Conga", "Low Conga", "High Timbale", "Low Timbale", "High Agogo", "Low Agogo", "Cabasa", "Maracas", "Short Whistle", "Long Whistle", "Short Guiro", "Long Guiro", "Claves", "Hi Wood Block", "Low Wood Block", "Mute Cuica", "Open Cuica", "Mute Triangle", "Open Triangle"]
META_COPYRIGHT = 2_u8
META_CUE = 7_u8
META_EVENT = 255_u8

Standard MIDI File meta event defs.

META_INSTRUMENT = 4_u8
META_LYRIC = 5_u8
META_MARKER = 6_u8
META_MIDI_CHAN_PREFIX = 32_u8
META_PATCH_SIG = 89_u8
META_SEQ_NAME = 3_u8
META_SEQ_NUM = 0_u8
META_SEQ_SPECIF = 127_u8
META_SET_TEMPO = 81_u8
META_SMPTE = 84_u8
META_TEXT = 1_u8
META_TIME_SIG = 88_u8
META_TRACK_END = 47_u8
MIDI_CHANNELS = 16
NOTE_OFF = 128_u8
NOTE_OFF_SPAN = Time::Span.new(nanoseconds: 3000000)
NOTE_ON = 144_u8
NOTES_PER_CHANNEL = 128
PITCH_BEND = 224_u8
POLY_PRESSURE = 160_u8
PROGRAM_CHANGE = 192_u8
SONG_POINTER = 242_u8
SONG_SELECT = 243_u8
START = 250_u8
STOP = 252_u8
SYSEX = 240_u8
SYSTEM_RESET = 255_u8
TICKS_PER_BEAT = 24
TUNE_REQUEST = 246_u8