Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-or-later */
0002 #ifndef __SOUND_ASOUNDEF_H
0003 #define __SOUND_ASOUNDEF_H
0004 
0005 /*
0006  *  Advanced Linux Sound Architecture - ALSA - Driver
0007  *  Copyright (c) 1994-2000 by Jaroslav Kysela <perex@perex.cz>
0008  */
0009 
0010 /****************************************************************************
0011  *                                                                          *
0012  *        Digital audio interface                       *
0013  *                                                                          *
0014  ****************************************************************************/
0015 
0016 /* AES/IEC958 channel status bits */
0017 #define IEC958_AES0_PROFESSIONAL    (1<<0)  /* 0 = consumer, 1 = professional */
0018 #define IEC958_AES0_NONAUDIO        (1<<1)  /* 0 = audio, 1 = non-audio */
0019 #define IEC958_AES0_PRO_EMPHASIS    (7<<2)  /* mask - emphasis */
0020 #define IEC958_AES0_PRO_EMPHASIS_NOTID  (0<<2)  /* emphasis not indicated */
0021 #define IEC958_AES0_PRO_EMPHASIS_NONE   (1<<2)  /* none emphasis */
0022 #define IEC958_AES0_PRO_EMPHASIS_5015   (3<<2)  /* 50/15us emphasis */
0023 #define IEC958_AES0_PRO_EMPHASIS_CCITT  (7<<2)  /* CCITT J.17 emphasis */
0024 #define IEC958_AES0_PRO_FREQ_UNLOCKED   (1<<5)  /* source sample frequency: 0 = locked, 1 = unlocked */
0025 #define IEC958_AES0_PRO_FS      (3<<6)  /* mask - sample frequency */
0026 #define IEC958_AES0_PRO_FS_NOTID    (0<<6)  /* fs not indicated */
0027 #define IEC958_AES0_PRO_FS_44100    (1<<6)  /* 44.1kHz */
0028 #define IEC958_AES0_PRO_FS_48000    (2<<6)  /* 48kHz */
0029 #define IEC958_AES0_PRO_FS_32000    (3<<6)  /* 32kHz */
0030 #define IEC958_AES0_CON_NOT_COPYRIGHT   (1<<2)  /* 0 = copyright, 1 = not copyright */
0031 #define IEC958_AES0_CON_EMPHASIS    (7<<3)  /* mask - emphasis */
0032 #define IEC958_AES0_CON_EMPHASIS_NONE   (0<<3)  /* none emphasis */
0033 #define IEC958_AES0_CON_EMPHASIS_5015   (1<<3)  /* 50/15us emphasis */
0034 #define IEC958_AES0_CON_MODE        (3<<6)  /* mask - mode */
0035 #define IEC958_AES1_PRO_MODE        (15<<0) /* mask - channel mode */
0036 #define IEC958_AES1_PRO_MODE_NOTID  (0<<0)  /* not indicated */
0037 #define IEC958_AES1_PRO_MODE_STEREOPHONIC (2<<0) /* stereophonic - ch A is left */
0038 #define IEC958_AES1_PRO_MODE_SINGLE (4<<0)  /* single channel */
0039 #define IEC958_AES1_PRO_MODE_TWO    (8<<0)  /* two channels */
0040 #define IEC958_AES1_PRO_MODE_PRIMARY    (12<<0) /* primary/secondary */
0041 #define IEC958_AES1_PRO_MODE_BYTE3  (15<<0) /* vector to byte 3 */
0042 #define IEC958_AES1_PRO_USERBITS    (15<<4) /* mask - user bits */
0043 #define IEC958_AES1_PRO_USERBITS_NOTID  (0<<4)  /* not indicated */
0044 #define IEC958_AES1_PRO_USERBITS_192    (8<<4)  /* 192-bit structure */
0045 #define IEC958_AES1_PRO_USERBITS_UDEF   (12<<4) /* user defined application */
0046 #define IEC958_AES1_CON_CATEGORY    0x7f
0047 #define IEC958_AES1_CON_GENERAL     0x00
0048 #define IEC958_AES1_CON_LASEROPT_MASK   0x07
0049 #define IEC958_AES1_CON_LASEROPT_ID 0x01
0050 #define IEC958_AES1_CON_IEC908_CD   (IEC958_AES1_CON_LASEROPT_ID|0x00)
0051 #define IEC958_AES1_CON_NON_IEC908_CD   (IEC958_AES1_CON_LASEROPT_ID|0x08)
0052 #define IEC958_AES1_CON_MINI_DISC   (IEC958_AES1_CON_LASEROPT_ID|0x48)
0053 #define IEC958_AES1_CON_DVD     (IEC958_AES1_CON_LASEROPT_ID|0x18)
0054 #define IEC958_AES1_CON_LASTEROPT_OTHER (IEC958_AES1_CON_LASEROPT_ID|0x78)
0055 #define IEC958_AES1_CON_DIGDIGCONV_MASK 0x07
0056 #define IEC958_AES1_CON_DIGDIGCONV_ID   0x02
0057 #define IEC958_AES1_CON_PCM_CODER   (IEC958_AES1_CON_DIGDIGCONV_ID|0x00)
0058 #define IEC958_AES1_CON_MIXER       (IEC958_AES1_CON_DIGDIGCONV_ID|0x10)
0059 #define IEC958_AES1_CON_RATE_CONVERTER  (IEC958_AES1_CON_DIGDIGCONV_ID|0x18)
0060 #define IEC958_AES1_CON_SAMPLER     (IEC958_AES1_CON_DIGDIGCONV_ID|0x20)
0061 #define IEC958_AES1_CON_DSP     (IEC958_AES1_CON_DIGDIGCONV_ID|0x28)
0062 #define IEC958_AES1_CON_DIGDIGCONV_OTHER (IEC958_AES1_CON_DIGDIGCONV_ID|0x78)
0063 #define IEC958_AES1_CON_MAGNETIC_MASK   0x07
0064 #define IEC958_AES1_CON_MAGNETIC_ID 0x03
0065 #define IEC958_AES1_CON_DAT     (IEC958_AES1_CON_MAGNETIC_ID|0x00)
0066 #define IEC958_AES1_CON_VCR     (IEC958_AES1_CON_MAGNETIC_ID|0x08)
0067 #define IEC958_AES1_CON_DCC     (IEC958_AES1_CON_MAGNETIC_ID|0x40)
0068 #define IEC958_AES1_CON_MAGNETIC_DISC   (IEC958_AES1_CON_MAGNETIC_ID|0x18)
0069 #define IEC958_AES1_CON_MAGNETIC_OTHER  (IEC958_AES1_CON_MAGNETIC_ID|0x78)
0070 #define IEC958_AES1_CON_BROADCAST1_MASK 0x07
0071 #define IEC958_AES1_CON_BROADCAST1_ID   0x04
0072 #define IEC958_AES1_CON_DAB_JAPAN   (IEC958_AES1_CON_BROADCAST1_ID|0x00)
0073 #define IEC958_AES1_CON_DAB_EUROPE  (IEC958_AES1_CON_BROADCAST1_ID|0x08)
0074 #define IEC958_AES1_CON_DAB_USA     (IEC958_AES1_CON_BROADCAST1_ID|0x60)
0075 #define IEC958_AES1_CON_SOFTWARE    (IEC958_AES1_CON_BROADCAST1_ID|0x40)
0076 #define IEC958_AES1_CON_IEC62105    (IEC958_AES1_CON_BROADCAST1_ID|0x20)
0077 #define IEC958_AES1_CON_BROADCAST1_OTHER (IEC958_AES1_CON_BROADCAST1_ID|0x78)
0078 #define IEC958_AES1_CON_BROADCAST2_MASK 0x0f
0079 #define IEC958_AES1_CON_BROADCAST2_ID   0x0e
0080 #define IEC958_AES1_CON_MUSICAL_MASK    0x07
0081 #define IEC958_AES1_CON_MUSICAL_ID  0x05
0082 #define IEC958_AES1_CON_SYNTHESIZER (IEC958_AES1_CON_MUSICAL_ID|0x00)
0083 #define IEC958_AES1_CON_MICROPHONE  (IEC958_AES1_CON_MUSICAL_ID|0x08)
0084 #define IEC958_AES1_CON_MUSICAL_OTHER   (IEC958_AES1_CON_MUSICAL_ID|0x78)
0085 #define IEC958_AES1_CON_ADC_MASK    0x1f
0086 #define IEC958_AES1_CON_ADC_ID      0x06
0087 #define IEC958_AES1_CON_ADC     (IEC958_AES1_CON_ADC_ID|0x00)
0088 #define IEC958_AES1_CON_ADC_OTHER   (IEC958_AES1_CON_ADC_ID|0x60)
0089 #define IEC958_AES1_CON_ADC_COPYRIGHT_MASK 0x1f
0090 #define IEC958_AES1_CON_ADC_COPYRIGHT_ID 0x16
0091 #define IEC958_AES1_CON_ADC_COPYRIGHT   (IEC958_AES1_CON_ADC_COPYRIGHT_ID|0x00)
0092 #define IEC958_AES1_CON_ADC_COPYRIGHT_OTHER (IEC958_AES1_CON_ADC_COPYRIGHT_ID|0x60)
0093 #define IEC958_AES1_CON_SOLIDMEM_MASK   0x0f
0094 #define IEC958_AES1_CON_SOLIDMEM_ID 0x08
0095 #define IEC958_AES1_CON_SOLIDMEM_DIGITAL_RECORDER_PLAYER (IEC958_AES1_CON_SOLIDMEM_ID|0x00)
0096 #define IEC958_AES1_CON_SOLIDMEM_OTHER  (IEC958_AES1_CON_SOLIDMEM_ID|0x70)
0097 #define IEC958_AES1_CON_EXPERIMENTAL    0x40
0098 #define IEC958_AES1_CON_ORIGINAL    (1<<7)  /* this bits depends on the category code */
0099 #define IEC958_AES2_PRO_SBITS       (7<<0)  /* mask - sample bits */
0100 #define IEC958_AES2_PRO_SBITS_20    (2<<0)  /* 20-bit - coordination */
0101 #define IEC958_AES2_PRO_SBITS_24    (4<<0)  /* 24-bit - main audio */
0102 #define IEC958_AES2_PRO_SBITS_UDEF  (6<<0)  /* user defined application */
0103 #define IEC958_AES2_PRO_WORDLEN     (7<<3)  /* mask - source word length */
0104 #define IEC958_AES2_PRO_WORDLEN_NOTID   (0<<3)  /* not indicated */
0105 #define IEC958_AES2_PRO_WORDLEN_22_18   (2<<3)  /* 22-bit or 18-bit */
0106 #define IEC958_AES2_PRO_WORDLEN_23_19   (4<<3)  /* 23-bit or 19-bit */
0107 #define IEC958_AES2_PRO_WORDLEN_24_20   (5<<3)  /* 24-bit or 20-bit */
0108 #define IEC958_AES2_PRO_WORDLEN_20_16   (6<<3)  /* 20-bit or 16-bit */
0109 #define IEC958_AES2_CON_SOURCE      (15<<0) /* mask - source number */
0110 #define IEC958_AES2_CON_SOURCE_UNSPEC   (0<<0)  /* unspecified */
0111 #define IEC958_AES2_CON_CHANNEL     (15<<4) /* mask - channel number */
0112 #define IEC958_AES2_CON_CHANNEL_UNSPEC  (0<<4)  /* unspecified */
0113 #define IEC958_AES3_CON_FS      (15<<0) /* mask - sample frequency */
0114 #define IEC958_AES3_CON_FS_44100    (0<<0)  /* 44.1kHz */
0115 #define IEC958_AES3_CON_FS_NOTID    (1<<0)  /* non indicated */
0116 #define IEC958_AES3_CON_FS_48000    (2<<0)  /* 48kHz */
0117 #define IEC958_AES3_CON_FS_32000    (3<<0)  /* 32kHz */
0118 #define IEC958_AES3_CON_FS_22050    (4<<0)  /* 22.05kHz */
0119 #define IEC958_AES3_CON_FS_24000    (6<<0)  /* 24kHz */
0120 #define IEC958_AES3_CON_FS_88200    (8<<0)  /* 88.2kHz */
0121 #define IEC958_AES3_CON_FS_768000   (9<<0)  /* 768kHz */
0122 #define IEC958_AES3_CON_FS_96000    (10<<0) /* 96kHz */
0123 #define IEC958_AES3_CON_FS_176400   (12<<0) /* 176.4kHz */
0124 #define IEC958_AES3_CON_FS_192000   (14<<0) /* 192kHz */
0125 #define IEC958_AES3_CON_CLOCK       (3<<4)  /* mask - clock accuracy */
0126 #define IEC958_AES3_CON_CLOCK_1000PPM   (0<<4)  /* 1000 ppm */
0127 #define IEC958_AES3_CON_CLOCK_50PPM (1<<4)  /* 50 ppm */
0128 #define IEC958_AES3_CON_CLOCK_VARIABLE  (2<<4)  /* variable pitch */
0129 #define IEC958_AES4_CON_MAX_WORDLEN_24  (1<<0)  /* 0 = 20-bit, 1 = 24-bit */
0130 #define IEC958_AES4_CON_WORDLEN     (7<<1)  /* mask - sample word length */
0131 #define IEC958_AES4_CON_WORDLEN_NOTID   (0<<1)  /* not indicated */
0132 #define IEC958_AES4_CON_WORDLEN_20_16   (1<<1)  /* 20-bit or 16-bit */
0133 #define IEC958_AES4_CON_WORDLEN_22_18   (2<<1)  /* 22-bit or 18-bit */
0134 #define IEC958_AES4_CON_WORDLEN_23_19   (4<<1)  /* 23-bit or 19-bit */
0135 #define IEC958_AES4_CON_WORDLEN_24_20   (5<<1)  /* 24-bit or 20-bit */
0136 #define IEC958_AES4_CON_WORDLEN_21_17   (6<<1)  /* 21-bit or 17-bit */
0137 #define IEC958_AES4_CON_ORIGFS      (15<<4) /* mask - original sample frequency */
0138 #define IEC958_AES4_CON_ORIGFS_NOTID    (0<<4)  /* not indicated */
0139 #define IEC958_AES4_CON_ORIGFS_192000   (1<<4)  /* 192kHz */
0140 #define IEC958_AES4_CON_ORIGFS_12000    (2<<4)  /* 12kHz */
0141 #define IEC958_AES4_CON_ORIGFS_176400   (3<<4)  /* 176.4kHz */
0142 #define IEC958_AES4_CON_ORIGFS_96000    (5<<4)  /* 96kHz */
0143 #define IEC958_AES4_CON_ORIGFS_8000 (6<<4)  /* 8kHz */
0144 #define IEC958_AES4_CON_ORIGFS_88200    (7<<4)  /* 88.2kHz */
0145 #define IEC958_AES4_CON_ORIGFS_16000    (8<<4)  /* 16kHz */
0146 #define IEC958_AES4_CON_ORIGFS_24000    (9<<4)  /* 24kHz */
0147 #define IEC958_AES4_CON_ORIGFS_11025    (10<<4) /* 11.025kHz */
0148 #define IEC958_AES4_CON_ORIGFS_22050    (11<<4) /* 22.05kHz */
0149 #define IEC958_AES4_CON_ORIGFS_32000    (12<<4) /* 32kHz */
0150 #define IEC958_AES4_CON_ORIGFS_48000    (13<<4) /* 48kHz */
0151 #define IEC958_AES4_CON_ORIGFS_44100    (15<<4) /* 44.1kHz */
0152 #define IEC958_AES5_CON_CGMSA       (3<<0)  /* mask - CGMS-A */
0153 #define IEC958_AES5_CON_CGMSA_COPYFREELY (0<<0) /* copying is permitted without restriction */
0154 #define IEC958_AES5_CON_CGMSA_COPYONCE  (1<<0)  /* one generation of copies may be made */
0155 #define IEC958_AES5_CON_CGMSA_COPYNOMORE (2<<0) /* condition not be used */
0156 #define IEC958_AES5_CON_CGMSA_COPYNEVER (3<<0)  /* no copying is permitted */
0157 
0158 /****************************************************************************
0159  *                                                                          *
0160  *        CEA-861 Audio InfoFrame. Used in HDMI and DisplayPort         *
0161  *                                                                          *
0162  ****************************************************************************/
0163 #define CEA861_AUDIO_INFOFRAME_DB1CC        (7<<0) /* mask - channel count */
0164 #define CEA861_AUDIO_INFOFRAME_DB1CT        (0xf<<4) /* mask - coding type */
0165 #define CEA861_AUDIO_INFOFRAME_DB1CT_FROM_STREAM (0<<4) /* refer to stream */
0166 #define CEA861_AUDIO_INFOFRAME_DB1CT_IEC60958   (1<<4) /* IEC-60958 L-PCM */
0167 #define CEA861_AUDIO_INFOFRAME_DB1CT_AC3    (2<<4) /* AC-3 */
0168 #define CEA861_AUDIO_INFOFRAME_DB1CT_MPEG1  (3<<4) /* MPEG1 Layers 1 & 2 */
0169 #define CEA861_AUDIO_INFOFRAME_DB1CT_MP3    (4<<4) /* MPEG1 Layer 3 */
0170 #define CEA861_AUDIO_INFOFRAME_DB1CT_MPEG2_MULTICH (5<<4) /* MPEG2 Multichannel */
0171 #define CEA861_AUDIO_INFOFRAME_DB1CT_AAC    (6<<4) /* AAC */
0172 #define CEA861_AUDIO_INFOFRAME_DB1CT_DTS    (7<<4) /* DTS */
0173 #define CEA861_AUDIO_INFOFRAME_DB1CT_ATRAC  (8<<4) /* ATRAC */
0174 #define CEA861_AUDIO_INFOFRAME_DB1CT_ONEBIT (9<<4) /* One Bit Audio */
0175 #define CEA861_AUDIO_INFOFRAME_DB1CT_DOLBY_DIG_PLUS (10<<4) /* Dolby Digital + */
0176 #define CEA861_AUDIO_INFOFRAME_DB1CT_DTS_HD (11<<4) /* DTS-HD */
0177 #define CEA861_AUDIO_INFOFRAME_DB1CT_MAT    (12<<4) /* MAT (MLP) */
0178 #define CEA861_AUDIO_INFOFRAME_DB1CT_DST    (13<<4) /* DST */
0179 #define CEA861_AUDIO_INFOFRAME_DB1CT_WMA_PRO    (14<<4) /* WMA Pro */
0180 #define CEA861_AUDIO_INFOFRAME_DB2SF        (7<<2) /* mask - sample frequency */
0181 #define CEA861_AUDIO_INFOFRAME_DB2SF_FROM_STREAM (0<<2) /* refer to stream */
0182 #define CEA861_AUDIO_INFOFRAME_DB2SF_32000  (1<<2) /* 32kHz */
0183 #define CEA861_AUDIO_INFOFRAME_DB2SF_44100  (2<<2) /* 44.1kHz */
0184 #define CEA861_AUDIO_INFOFRAME_DB2SF_48000  (3<<2) /* 48kHz */
0185 #define CEA861_AUDIO_INFOFRAME_DB2SF_88200  (4<<2) /* 88.2kHz */
0186 #define CEA861_AUDIO_INFOFRAME_DB2SF_96000  (5<<2) /* 96kHz */
0187 #define CEA861_AUDIO_INFOFRAME_DB2SF_176400 (6<<2) /* 176.4kHz */
0188 #define CEA861_AUDIO_INFOFRAME_DB2SF_192000 (7<<2) /* 192kHz */
0189 #define CEA861_AUDIO_INFOFRAME_DB2SS        (3<<0) /* mask - sample size */
0190 #define CEA861_AUDIO_INFOFRAME_DB2SS_FROM_STREAM (0<<0) /* refer to stream */
0191 #define CEA861_AUDIO_INFOFRAME_DB2SS_16BIT  (1<<0) /* 16 bits */
0192 #define CEA861_AUDIO_INFOFRAME_DB2SS_20BIT  (2<<0) /* 20 bits */
0193 #define CEA861_AUDIO_INFOFRAME_DB2SS_24BIT  (3<<0) /* 24 bits */
0194 #define CEA861_AUDIO_INFOFRAME_DB5_DM_INH   (1<<7) /* mask - inhibit downmixing */
0195 #define CEA861_AUDIO_INFOFRAME_DB5_DM_INH_PERMITTED (0<<7) /* stereo downmix permitted */
0196 #define CEA861_AUDIO_INFOFRAME_DB5_DM_INH_PROHIBITED (1<<7) /* stereo downmis prohibited */
0197 #define CEA861_AUDIO_INFOFRAME_DB5_LSV      (0xf<<3) /* mask - level-shift values */
0198 
0199 /*****************************************************************************
0200  *                                                                           *
0201  *                            MIDI v1.0 interface                            *
0202  *                                                                           *
0203  *****************************************************************************/
0204 
0205 #define MIDI_CHANNELS           16
0206 #define MIDI_GM_DRUM_CHANNEL        (10-1)
0207 
0208 /*
0209  *  MIDI commands
0210  */
0211 
0212 #define MIDI_CMD_NOTE_OFF       0x80
0213 #define MIDI_CMD_NOTE_ON        0x90
0214 #define MIDI_CMD_NOTE_PRESSURE      0xa0
0215 #define MIDI_CMD_CONTROL        0xb0
0216 #define MIDI_CMD_PGM_CHANGE     0xc0
0217 #define MIDI_CMD_CHANNEL_PRESSURE   0xd0
0218 #define MIDI_CMD_BENDER         0xe0
0219 
0220 #define MIDI_CMD_COMMON_SYSEX       0xf0
0221 #define MIDI_CMD_COMMON_MTC_QUARTER 0xf1
0222 #define MIDI_CMD_COMMON_SONG_POS    0xf2
0223 #define MIDI_CMD_COMMON_SONG_SELECT 0xf3
0224 #define MIDI_CMD_COMMON_TUNE_REQUEST    0xf6
0225 #define MIDI_CMD_COMMON_SYSEX_END   0xf7
0226 #define MIDI_CMD_COMMON_CLOCK       0xf8
0227 #define MIDI_CMD_COMMON_START       0xfa
0228 #define MIDI_CMD_COMMON_CONTINUE    0xfb
0229 #define MIDI_CMD_COMMON_STOP        0xfc
0230 #define MIDI_CMD_COMMON_SENSING     0xfe
0231 #define MIDI_CMD_COMMON_RESET       0xff
0232 
0233 /*
0234  *  MIDI controllers
0235  */
0236 
0237 #define MIDI_CTL_MSB_BANK       0x00
0238 #define MIDI_CTL_MSB_MODWHEEL           0x01
0239 #define MIDI_CTL_MSB_BREATH             0x02
0240 #define MIDI_CTL_MSB_FOOT               0x04
0241 #define MIDI_CTL_MSB_PORTAMENTO_TIME    0x05
0242 #define MIDI_CTL_MSB_DATA_ENTRY     0x06
0243 #define MIDI_CTL_MSB_MAIN_VOLUME        0x07
0244 #define MIDI_CTL_MSB_BALANCE            0x08
0245 #define MIDI_CTL_MSB_PAN                0x0a
0246 #define MIDI_CTL_MSB_EXPRESSION         0x0b
0247 #define MIDI_CTL_MSB_EFFECT1        0x0c
0248 #define MIDI_CTL_MSB_EFFECT2        0x0d
0249 #define MIDI_CTL_MSB_GENERAL_PURPOSE1   0x10
0250 #define MIDI_CTL_MSB_GENERAL_PURPOSE2   0x11
0251 #define MIDI_CTL_MSB_GENERAL_PURPOSE3   0x12
0252 #define MIDI_CTL_MSB_GENERAL_PURPOSE4   0x13
0253 #define MIDI_CTL_LSB_BANK       0x20
0254 #define MIDI_CTL_LSB_MODWHEEL           0x21
0255 #define MIDI_CTL_LSB_BREATH             0x22
0256 #define MIDI_CTL_LSB_FOOT               0x24
0257 #define MIDI_CTL_LSB_PORTAMENTO_TIME    0x25
0258 #define MIDI_CTL_LSB_DATA_ENTRY     0x26
0259 #define MIDI_CTL_LSB_MAIN_VOLUME        0x27
0260 #define MIDI_CTL_LSB_BALANCE            0x28
0261 #define MIDI_CTL_LSB_PAN                0x2a
0262 #define MIDI_CTL_LSB_EXPRESSION         0x2b
0263 #define MIDI_CTL_LSB_EFFECT1        0x2c
0264 #define MIDI_CTL_LSB_EFFECT2        0x2d
0265 #define MIDI_CTL_LSB_GENERAL_PURPOSE1   0x30
0266 #define MIDI_CTL_LSB_GENERAL_PURPOSE2   0x31
0267 #define MIDI_CTL_LSB_GENERAL_PURPOSE3   0x32
0268 #define MIDI_CTL_LSB_GENERAL_PURPOSE4   0x33
0269 #define MIDI_CTL_SUSTAIN                0x40
0270 #define MIDI_CTL_PORTAMENTO             0x41
0271 #define MIDI_CTL_SOSTENUTO              0x42
0272 #define MIDI_CTL_SOFT_PEDAL             0x43
0273 #define MIDI_CTL_LEGATO_FOOTSWITCH  0x44
0274 #define MIDI_CTL_HOLD2                  0x45
0275 #define MIDI_CTL_SC1_SOUND_VARIATION    0x46
0276 #define MIDI_CTL_SC2_TIMBRE     0x47
0277 #define MIDI_CTL_SC3_RELEASE_TIME   0x48
0278 #define MIDI_CTL_SC4_ATTACK_TIME    0x49
0279 #define MIDI_CTL_SC5_BRIGHTNESS     0x4a
0280 #define MIDI_CTL_SC6            0x4b
0281 #define MIDI_CTL_SC7            0x4c
0282 #define MIDI_CTL_SC8            0x4d
0283 #define MIDI_CTL_SC9            0x4e
0284 #define MIDI_CTL_SC10           0x4f
0285 #define MIDI_CTL_GENERAL_PURPOSE5       0x50
0286 #define MIDI_CTL_GENERAL_PURPOSE6       0x51
0287 #define MIDI_CTL_GENERAL_PURPOSE7       0x52
0288 #define MIDI_CTL_GENERAL_PURPOSE8       0x53
0289 #define MIDI_CTL_PORTAMENTO_CONTROL 0x54
0290 #define MIDI_CTL_E1_REVERB_DEPTH    0x5b
0291 #define MIDI_CTL_E2_TREMOLO_DEPTH   0x5c
0292 #define MIDI_CTL_E3_CHORUS_DEPTH    0x5d
0293 #define MIDI_CTL_E4_DETUNE_DEPTH    0x5e
0294 #define MIDI_CTL_E5_PHASER_DEPTH    0x5f
0295 #define MIDI_CTL_DATA_INCREMENT         0x60
0296 #define MIDI_CTL_DATA_DECREMENT         0x61
0297 #define MIDI_CTL_NONREG_PARM_NUM_LSB    0x62
0298 #define MIDI_CTL_NONREG_PARM_NUM_MSB    0x63
0299 #define MIDI_CTL_REGIST_PARM_NUM_LSB    0x64
0300 #define MIDI_CTL_REGIST_PARM_NUM_MSB    0x65
0301 #define MIDI_CTL_ALL_SOUNDS_OFF     0x78
0302 #define MIDI_CTL_RESET_CONTROLLERS  0x79
0303 #define MIDI_CTL_LOCAL_CONTROL_SWITCH   0x7a
0304 #define MIDI_CTL_ALL_NOTES_OFF      0x7b
0305 #define MIDI_CTL_OMNI_OFF       0x7c
0306 #define MIDI_CTL_OMNI_ON        0x7d
0307 #define MIDI_CTL_MONO1          0x7e
0308 #define MIDI_CTL_MONO2          0x7f
0309 
0310 #endif /* __SOUND_ASOUNDEF_H */