37#define LV2_MIDI_URI "http://lv2plug.in/ns/ext/midi"
38#define LV2_MIDI_PREFIX LV2_MIDI_URI "#"
40#define LV2_MIDI__ActiveSense LV2_MIDI_PREFIX "ActiveSense"
41#define LV2_MIDI__Aftertouch LV2_MIDI_PREFIX "Aftertouch"
42#define LV2_MIDI__Bender LV2_MIDI_PREFIX "Bender"
43#define LV2_MIDI__ChannelPressure LV2_MIDI_PREFIX "ChannelPressure"
44#define LV2_MIDI__Chunk LV2_MIDI_PREFIX "Chunk"
45#define LV2_MIDI__Clock LV2_MIDI_PREFIX "Clock"
46#define LV2_MIDI__Continue LV2_MIDI_PREFIX "Continue"
47#define LV2_MIDI__Controller LV2_MIDI_PREFIX "Controller"
48#define LV2_MIDI__MidiEvent LV2_MIDI_PREFIX "MidiEvent"
49#define LV2_MIDI__NoteOff LV2_MIDI_PREFIX "NoteOff"
50#define LV2_MIDI__NoteOn LV2_MIDI_PREFIX "NoteOn"
51#define LV2_MIDI__ProgramChange LV2_MIDI_PREFIX "ProgramChange"
52#define LV2_MIDI__QuarterFrame LV2_MIDI_PREFIX "QuarterFrame"
53#define LV2_MIDI__Reset LV2_MIDI_PREFIX "Reset"
54#define LV2_MIDI__SongPosition LV2_MIDI_PREFIX "SongPosition"
55#define LV2_MIDI__SongSelect LV2_MIDI_PREFIX "SongSelect"
56#define LV2_MIDI__Start LV2_MIDI_PREFIX "Start"
57#define LV2_MIDI__Stop LV2_MIDI_PREFIX "Stop"
58#define LV2_MIDI__SystemCommon LV2_MIDI_PREFIX "SystemCommon"
59#define LV2_MIDI__SystemExclusive LV2_MIDI_PREFIX "SystemExclusive"
60#define LV2_MIDI__SystemMessage LV2_MIDI_PREFIX "SystemMessage"
61#define LV2_MIDI__SystemRealtime LV2_MIDI_PREFIX "SystemRealtime"
62#define LV2_MIDI__Tick LV2_MIDI_PREFIX "Tick"
63#define LV2_MIDI__TuneRequest LV2_MIDI_PREFIX "TuneRequest"
64#define LV2_MIDI__VoiceMessage LV2_MIDI_PREFIX "VoiceMessage"
65#define LV2_MIDI__benderValue LV2_MIDI_PREFIX "benderValue"
66#define LV2_MIDI__binding LV2_MIDI_PREFIX "binding"
67#define LV2_MIDI__byteNumber LV2_MIDI_PREFIX "byteNumber"
68#define LV2_MIDI__channel LV2_MIDI_PREFIX "channel"
69#define LV2_MIDI__chunk LV2_MIDI_PREFIX "chunk"
70#define LV2_MIDI__controllerNumber LV2_MIDI_PREFIX "controllerNumber"
71#define LV2_MIDI__controllerValue LV2_MIDI_PREFIX "controllerValue"
72#define LV2_MIDI__noteNumber LV2_MIDI_PREFIX "noteNumber"
73#define LV2_MIDI__pressure LV2_MIDI_PREFIX "pressure"
74#define LV2_MIDI__programNumber LV2_MIDI_PREFIX "programNumber"
75#define LV2_MIDI__property LV2_MIDI_PREFIX "property"
76#define LV2_MIDI__songNumber LV2_MIDI_PREFIX "songNumber"
77#define LV2_MIDI__songPosition LV2_MIDI_PREFIX "songPosition"
78#define LV2_MIDI__status LV2_MIDI_PREFIX "status"
79#define LV2_MIDI__statusMask LV2_MIDI_PREFIX "statusMask"
80#define LV2_MIDI__velocity LV2_MIDI_PREFIX "velocity"
195 return msg[0] >= 0x80 &&
msg[0] < 0xF0;
204 case 0xF4:
case 0xF5:
case 0xF7:
case 0xF9:
case 0xFD:
207 return (
msg[0] & 0xF0) == 0xF0;
static bool lv2_midi_is_voice_message(const uint8_t *msg)
Definition midi.h:194
static bool lv2_midi_is_system_message(const uint8_t *msg)
Definition midi.h:202
LV2_Midi_Message_Type
Definition midi.h:90
static LV2_Midi_Message_Type lv2_midi_message_type(const uint8_t *msg)
Definition midi.h:216
LV2_Midi_Controller
Definition midi.h:115
@ LV2_MIDI_MSG_TUNE_REQUEST
Definition midi.h:103
@ LV2_MIDI_MSG_NOTE_PRESSURE
Definition midi.h:94
@ LV2_MIDI_MSG_CHANNEL_PRESSURE
Definition midi.h:97
@ LV2_MIDI_MSG_INVALID
Definition midi.h:91
@ LV2_MIDI_MSG_SONG_SELECT
Definition midi.h:102
@ LV2_MIDI_MSG_BENDER
Definition midi.h:98
@ LV2_MIDI_MSG_MTC_QUARTER
Definition midi.h:100
@ LV2_MIDI_MSG_CONTROLLER
Definition midi.h:95
@ LV2_MIDI_MSG_PGM_CHANGE
Definition midi.h:96
@ LV2_MIDI_MSG_RESET
Definition midi.h:109
@ LV2_MIDI_MSG_NOTE_ON
Definition midi.h:93
@ LV2_MIDI_MSG_CLOCK
Definition midi.h:104
@ LV2_MIDI_MSG_NOTE_OFF
Definition midi.h:92
@ LV2_MIDI_MSG_STOP
Definition midi.h:107
@ LV2_MIDI_MSG_START
Definition midi.h:105
@ LV2_MIDI_MSG_SONG_POS
Definition midi.h:101
@ LV2_MIDI_MSG_SYSTEM_EXCLUSIVE
Definition midi.h:99
@ LV2_MIDI_MSG_ACTIVE_SENSE
Definition midi.h:108
@ LV2_MIDI_MSG_CONTINUE
Definition midi.h:106
@ LV2_MIDI_CTL_LSB_GENERAL_PURPOSE3
Definition midi.h:146
@ LV2_MIDI_CTL_LSB_GENERAL_PURPOSE2
Definition midi.h:145
@ LV2_MIDI_CTL_MONO1
Definition midi.h:186
@ LV2_MIDI_CTL_GENERAL_PURPOSE8
Definition midi.h:167
@ LV2_MIDI_CTL_SC9
Definition midi.h:162
@ LV2_MIDI_CTL_E1_REVERB_DEPTH
Definition midi.h:169
@ LV2_MIDI_CTL_MSB_DATA_ENTRY
Definition midi.h:121
@ LV2_MIDI_CTL_SOSTENUTO
Definition midi.h:150
@ LV2_MIDI_CTL_LSB_BANK
Definition midi.h:132
@ LV2_MIDI_CTL_SUSTAIN
Definition midi.h:148
@ LV2_MIDI_CTL_MONO2
Definition midi.h:187
@ LV2_MIDI_CTL_MSB_PORTAMENTO_TIME
Definition midi.h:120
@ LV2_MIDI_CTL_LOCAL_CONTROL_SWITCH
Definition midi.h:182
@ LV2_MIDI_CTL_MSB_GENERAL_PURPOSE4
Definition midi.h:131
@ LV2_MIDI_CTL_LSB_MODWHEEL
Definition midi.h:133
@ LV2_MIDI_CTL_NRPN_LSB
Definition midi.h:176
@ LV2_MIDI_CTL_MSB_GENERAL_PURPOSE2
Definition midi.h:129
@ LV2_MIDI_CTL_E3_CHORUS_DEPTH
Definition midi.h:171
@ LV2_MIDI_CTL_LSB_BREATH
Definition midi.h:134
@ LV2_MIDI_CTL_SC10
Definition midi.h:163
@ LV2_MIDI_CTL_PORTAMENTO
Definition midi.h:149
@ LV2_MIDI_CTL_MSB_EFFECT1
Definition midi.h:126
@ LV2_MIDI_CTL_GENERAL_PURPOSE5
Definition midi.h:164
@ LV2_MIDI_CTL_E4_DETUNE_DEPTH
Definition midi.h:172
@ LV2_MIDI_CTL_LSB_EXPRESSION
Definition midi.h:141
@ LV2_MIDI_CTL_LSB_MAIN_VOLUME
Definition midi.h:138
@ LV2_MIDI_CTL_SC2_TIMBRE
Definition midi.h:155
@ LV2_MIDI_CTL_SOFT_PEDAL
Definition midi.h:151
@ LV2_MIDI_CTL_LSB_GENERAL_PURPOSE4
Definition midi.h:147
@ LV2_MIDI_CTL_RESET_CONTROLLERS
Definition midi.h:181
@ LV2_MIDI_CTL_MSB_MODWHEEL
Definition midi.h:117
@ LV2_MIDI_CTL_SC3_RELEASE_TIME
Definition midi.h:156
@ LV2_MIDI_CTL_LSB_GENERAL_PURPOSE1
Definition midi.h:144
@ LV2_MIDI_CTL_LSB_PORTAMENTO_TIME
Definition midi.h:136
@ LV2_MIDI_CTL_SC7
Definition midi.h:160
@ LV2_MIDI_CTL_MSB_BALANCE
Definition midi.h:123
@ LV2_MIDI_CTL_LSB_BALANCE
Definition midi.h:139
@ LV2_MIDI_CTL_SC8
Definition midi.h:161
@ LV2_MIDI_CTL_MSB_FOOT
Definition midi.h:119
@ LV2_MIDI_CTL_GENERAL_PURPOSE7
Definition midi.h:166
@ LV2_MIDI_CTL_GENERAL_PURPOSE6
Definition midi.h:165
@ LV2_MIDI_CTL_LSB_FOOT
Definition midi.h:135
@ LV2_MIDI_CTL_MSB_EXPRESSION
Definition midi.h:125
@ LV2_MIDI_CTL_RPN_MSB
Definition midi.h:179
@ LV2_MIDI_CTL_E5_PHASER_DEPTH
Definition midi.h:173
@ LV2_MIDI_CTL_DATA_INCREMENT
Definition midi.h:174
@ LV2_MIDI_CTL_MSB_GENERAL_PURPOSE1
Definition midi.h:128
@ LV2_MIDI_CTL_ALL_NOTES_OFF
Definition midi.h:183
@ LV2_MIDI_CTL_MSB_GENERAL_PURPOSE3
Definition midi.h:130
@ LV2_MIDI_CTL_OMNI_ON
Definition midi.h:185
@ LV2_MIDI_CTL_SC6
Definition midi.h:159
@ LV2_MIDI_CTL_OMNI_OFF
Definition midi.h:184
@ LV2_MIDI_CTL_SC1_SOUND_VARIATION
Definition midi.h:154
@ LV2_MIDI_CTL_LSB_EFFECT2
Definition midi.h:143
@ LV2_MIDI_CTL_LSB_DATA_ENTRY
Definition midi.h:137
@ LV2_MIDI_CTL_NRPN_MSB
Definition midi.h:177
@ LV2_MIDI_CTL_MSB_BANK
Definition midi.h:116
@ LV2_MIDI_CTL_MSB_BREATH
Definition midi.h:118
@ LV2_MIDI_CTL_LSB_PAN
Definition midi.h:140
@ LV2_MIDI_CTL_RPN_LSB
Definition midi.h:178
@ LV2_MIDI_CTL_E2_TREMOLO_DEPTH
Definition midi.h:170
@ LV2_MIDI_CTL_MSB_MAIN_VOLUME
Definition midi.h:122
@ LV2_MIDI_CTL_MSB_EFFECT2
Definition midi.h:127
@ LV2_MIDI_CTL_HOLD2
Definition midi.h:153
@ LV2_MIDI_CTL_DATA_DECREMENT
Definition midi.h:175
@ LV2_MIDI_CTL_SC5_BRIGHTNESS
Definition midi.h:158
@ LV2_MIDI_CTL_MSB_PAN
Definition midi.h:124
@ LV2_MIDI_CTL_ALL_SOUNDS_OFF
Definition midi.h:180
@ LV2_MIDI_CTL_LEGATO_FOOTSWITCH
Definition midi.h:152
@ LV2_MIDI_CTL_SC4_ATTACK_TIME
Definition midi.h:157
@ LV2_MIDI_CTL_LSB_EFFECT1
Definition midi.h:142
@ LV2_MIDI_CTL_PORTAMENTO_CONTROL
Definition midi.h:168
unsigned char uint8_t
Definition mid.cpp:98
const char * msg
Definition missing_descriptor.c:20