RAUL
0.8.0
|
00001 /* Definitions to ease working with raw MIDI. 00002 * Copyright (C) 2005-2011 David Robillard <http://drobilla.net> 00003 * 00004 * Adapted from ALSA's asounddef.h 00005 * Copyright (C) 1998-2001 Jaroslav Kysela <perex@perex.cz> 00006 * Abramo Bagnara <abramo@alsa-project.org> 00007 * Takashi Iwai <tiwai@suse.de> 00008 * 00009 * This library is free software; you can redistribute it and/or modify 00010 * it under the terms of the GNU Lesser General Public License as 00011 * published by the Free Software Foundation; either version 2.1 of 00012 * the License, or (at your option) any later version. 00013 * 00014 * This program is distributed in the hope that it will be useful, 00015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00017 * GNU Lesser General Public License for more details. 00018 * 00019 * You should have received a copy of the GNU Lesser General Public 00020 * License along with this library; if not, write to the Free Software 00021 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00022 * 00023 */ 00024 00025 #ifndef RAUL_MIDI_EVENTS_H 00026 #define RAUL_MIDI_EVENTS_H 00027 00028 00036 // Controllers 00037 #define MIDI_CTL_MSB_BANK 0x00 00038 #define MIDI_CTL_MSB_MODWHEEL 0x01 00039 #define MIDI_CTL_MSB_BREATH 0x02 00040 #define MIDI_CTL_MSB_FOOT 0x04 00041 #define MIDI_CTL_MSB_PORTAMENTO_TIME 0x05 00042 #define MIDI_CTL_MSB_DATA_ENTRY 0x06 00043 #define MIDI_CTL_MSB_MAIN_VOLUME 0x07 00044 #define MIDI_CTL_MSB_BALANCE 0x08 00045 #define MIDI_CTL_MSB_PAN 0x0A 00046 #define MIDI_CTL_MSB_EXPRESSION 0x0B 00047 #define MIDI_CTL_MSB_EFFECT1 0x0C 00048 #define MIDI_CTL_MSB_EFFECT2 0x0D 00049 #define MIDI_CTL_MSB_GENERAL_PURPOSE1 0x10 00050 #define MIDI_CTL_MSB_GENERAL_PURPOSE2 0x11 00051 #define MIDI_CTL_MSB_GENERAL_PURPOSE3 0x12 00052 #define MIDI_CTL_MSB_GENERAL_PURPOSE4 0x13 00053 #define MIDI_CTL_LSB_BANK 0x20 00054 #define MIDI_CTL_LSB_MODWHEEL 0x21 00055 #define MIDI_CTL_LSB_BREATH 0x22 00056 #define MIDI_CTL_LSB_FOOT 0x24 00057 #define MIDI_CTL_LSB_PORTAMENTO_TIME 0x25 00058 #define MIDI_CTL_LSB_DATA_ENTRY 0x26 00059 #define MIDI_CTL_LSB_MAIN_VOLUME 0x27 00060 #define MIDI_CTL_LSB_BALANCE 0x28 00061 #define MIDI_CTL_LSB_PAN 0x2A 00062 #define MIDI_CTL_LSB_EXPRESSION 0x2B 00063 #define MIDI_CTL_LSB_EFFECT1 0x2C 00064 #define MIDI_CTL_LSB_EFFECT2 0x2D 00065 #define MIDI_CTL_LSB_GENERAL_PURPOSE1 0x30 00066 #define MIDI_CTL_LSB_GENERAL_PURPOSE2 0x31 00067 #define MIDI_CTL_LSB_GENERAL_PURPOSE3 0x32 00068 #define MIDI_CTL_LSB_GENERAL_PURPOSE4 0x33 00069 #define MIDI_CTL_SUSTAIN 0x40 00070 #define MIDI_CTL_PORTAMENTO 0x41 00071 #define MIDI_CTL_SOSTENUTO 0x42 00072 #define MIDI_CTL_SOFT_PEDAL 0x43 00073 #define MIDI_CTL_LEGATO_FOOTSWITCH 0x44 00074 #define MIDI_CTL_HOLD2 0x45 00075 #define MIDI_CTL_SC1_SOUND_VARIATION 0x46 00076 #define MIDI_CTL_SC2_TIMBRE 0x47 00077 #define MIDI_CTL_SC3_RELEASE_TIME 0x48 00078 #define MIDI_CTL_SC4_ATTACK_TIME 0x49 00079 #define MIDI_CTL_SC5_BRIGHTNESS 0x4A 00080 #define MIDI_CTL_SC6 0x4B 00081 #define MIDI_CTL_SC7 0x4C 00082 #define MIDI_CTL_SC8 0x4D 00083 #define MIDI_CTL_SC9 0x4E 00084 #define MIDI_CTL_SC10 0x4F 00085 #define MIDI_CTL_GENERAL_PURPOSE5 0x50 00086 #define MIDI_CTL_GENERAL_PURPOSE6 0x51 00087 #define MIDI_CTL_GENERAL_PURPOSE7 0x52 00088 #define MIDI_CTL_GENERAL_PURPOSE8 0x53 00089 #define MIDI_CTL_PORTAMENTO_CONTROL 0x54 00090 #define MIDI_CTL_E1_REVERB_DEPTH 0x5B 00091 #define MIDI_CTL_E2_TREMOLO_DEPTH 0x5C 00092 #define MIDI_CTL_E3_CHORUS_DEPTH 0x5D 00093 #define MIDI_CTL_E4_DETUNE_DEPTH 0x5E 00094 #define MIDI_CTL_E5_PHASER_DEPTH 0x5F 00095 #define MIDI_CTL_DATA_INCREMENT 0x60 00096 #define MIDI_CTL_DATA_DECREMENT 0x61 00097 #define MIDI_CTL_NONREG_PARM_NUM_LSB 0x62 00098 #define MIDI_CTL_NONREG_PARM_NUM_MSB 0x63 00099 #define MIDI_CTL_REGIST_PARM_NUM_LSB 0x64 00100 #define MIDI_CTL_REGIST_PARM_NUM_MSB 0x65 00101 #define MIDI_CTL_ALL_SOUNDS_OFF 0x78 00102 #define MIDI_CTL_RESET_CONTROLLERS 0x79 00103 #define MIDI_CTL_LOCAL_CONTROL_SWITCH 0x7A 00104 #define MIDI_CTL_ALL_NOTES_OFF 0x7B 00105 #define MIDI_CTL_OMNI_OFF 0x7C 00106 #define MIDI_CTL_OMNI_ON 0x7D 00107 #define MIDI_CTL_MONO1 0x7E 00108 #define MIDI_CTL_MONO2 0x7F 00110 // Commands 00111 #define MIDI_CMD_NOTE_OFF 0x80 00112 #define MIDI_CMD_NOTE_ON 0x90 00113 #define MIDI_CMD_NOTE_PRESSURE 0xA0 00114 #define MIDI_CMD_CONTROL 0xB0 00115 #define MIDI_CMD_PGM_CHANGE 0xC0 00116 #define MIDI_CMD_CHANNEL_PRESSURE 0xD0 00117 #define MIDI_CMD_BENDER 0xE0 00118 #define MIDI_CMD_COMMON_SYSEX 0xF0 00119 #define MIDI_CMD_COMMON_MTC_QUARTER 0xF1 00120 #define MIDI_CMD_COMMON_SONG_POS 0xF2 00121 #define MIDI_CMD_COMMON_SONG_SELECT 0xF3 00122 #define MIDI_CMD_COMMON_TUNE_REQUEST 0xF6 00123 #define MIDI_CMD_COMMON_SYSEX_END 0xF7 00124 #define MIDI_CMD_COMMON_CLOCK 0xF8 00125 #define MIDI_CMD_COMMON_TICK 0xF9 00126 #define MIDI_CMD_COMMON_START 0xFA 00127 #define MIDI_CMD_COMMON_CONTINUE 0xFB 00128 #define MIDI_CMD_COMMON_STOP 0xFC 00129 #define MIDI_CMD_COMMON_SENSING 0xFE 00130 #define MIDI_CMD_COMMON_RESET 0xFF 00133 00134 00137 #endif /* RAUL_MIDI_EVENTS_H */