Mercurial > audlegacy-plugins
comparison src/Input/timidity/libtimidity/dls2.h @ 0:13389e613d67 trunk
[svn] - initial import of audacious-plugins tree (lots to do)
| author | nenolod |
|---|---|
| date | Mon, 18 Sep 2006 01:11:49 -0700 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:13389e613d67 |
|---|---|
| 1 /* | |
| 2 | |
| 3 dls2.h | |
| 4 | |
| 5 Description: | |
| 6 | |
| 7 Interface defines and structures for the DLS2 extensions of DLS. | |
| 8 | |
| 9 | |
| 10 Written by Microsoft 1998. Released for public use. | |
| 11 | |
| 12 */ | |
| 13 | |
| 14 #ifndef _INC_DLS2 | |
| 15 #define _INC_DLS2 | |
| 16 | |
| 17 /* | |
| 18 FOURCC's used in the DLS2 file, in addition to DLS1 chunks | |
| 19 */ | |
| 20 | |
| 21 #define FOURCC_RGN2 mmioFOURCC('r','g','n','2') | |
| 22 #define FOURCC_LAR2 mmioFOURCC('l','a','r','2') | |
| 23 #define FOURCC_ART2 mmioFOURCC('a','r','t','2') | |
| 24 #define FOURCC_CDL mmioFOURCC('c','d','l',' ') | |
| 25 #define FOURCC_DLID mmioFOURCC('d','l','i','d') | |
| 26 | |
| 27 /* | |
| 28 Articulation connection graph definitions. These are in addition to | |
| 29 the definitions in the DLS1 header. | |
| 30 */ | |
| 31 | |
| 32 /* Generic Sources (in addition to DLS1 sources. */ | |
| 33 #define CONN_SRC_POLYPRESSURE 0x0007 /* Polyphonic Pressure */ | |
| 34 #define CONN_SRC_CHANNELPRESSURE 0x0008 /* Channel Pressure */ | |
| 35 #define CONN_SRC_VIBRATO 0x0009 /* Vibrato LFO */ | |
| 36 #define CONN_SRC_MONOPRESSURE 0x000a /* MIDI Mono pressure */ | |
| 37 | |
| 38 | |
| 39 /* Midi Controllers */ | |
| 40 #define CONN_SRC_CC91 0x00db /* Reverb Send */ | |
| 41 #define CONN_SRC_CC93 0x00dd /* Chorus Send */ | |
| 42 | |
| 43 | |
| 44 /* Generic Destinations */ | |
| 45 #define CONN_DST_GAIN 0x0001 /* Same as CONN_DST_ ATTENUATION, but more appropriate terminology. */ | |
| 46 #define CONN_DST_KEYNUMBER 0x0005 /* Key Number Generator */ | |
| 47 | |
| 48 /* Audio Channel Output Destinations */ | |
| 49 #define CONN_DST_LEFT 0x0010 /* Left Channel Send */ | |
| 50 #define CONN_DST_RIGHT 0x0011 /* Right Channel Send */ | |
| 51 #define CONN_DST_CENTER 0x0012 /* Center Channel Send */ | |
| 52 #define CONN_DST_LEFTREAR 0x0013 /* Left Rear Channel Send */ | |
| 53 #define CONN_DST_RIGHTREAR 0x0014 /* Right Rear Channel Send */ | |
| 54 #define CONN_DST_LFE_CHANNEL 0x0015 /* LFE Channel Send */ | |
| 55 #define CONN_DST_CHORUS 0x0080 /* Chorus Send */ | |
| 56 #define CONN_DST_REVERB 0x0081 /* Reverb Send */ | |
| 57 | |
| 58 /* Vibrato LFO Destinations */ | |
| 59 #define CONN_DST_VIB_FREQUENCY 0x0114 /* Vibrato Frequency */ | |
| 60 #define CONN_DST_VIB_STARTDELAY 0x0115 /* Vibrato Start Delay */ | |
| 61 | |
| 62 /* EG1 Destinations */ | |
| 63 #define CONN_DST_EG1_DELAYTIME 0x020B /* EG1 Delay Time */ | |
| 64 #define CONN_DST_EG1_HOLDTIME 0x020C /* EG1 Hold Time */ | |
| 65 #define CONN_DST_EG1_SHUTDOWNTIME 0x020D /* EG1 Shutdown Time */ | |
| 66 | |
| 67 | |
| 68 /* EG2 Destinations */ | |
| 69 #define CONN_DST_EG2_DELAYTIME 0x030F /* EG2 Delay Time */ | |
| 70 #define CONN_DST_EG2_HOLDTIME 0x0310 /* EG2 Hold Time */ | |
| 71 | |
| 72 | |
| 73 /* Filter Destinations */ | |
| 74 #define CONN_DST_FILTER_CUTOFF 0x0500 /* Filter Cutoff Frequency */ | |
| 75 #define CONN_DST_FILTER_Q 0x0501 /* Filter Resonance */ | |
| 76 | |
| 77 | |
| 78 /* Transforms */ | |
| 79 #define CONN_TRN_CONVEX 0x0002 /* Convex Transform */ | |
| 80 #define CONN_TRN_SWITCH 0x0003 /* Switch Transform */ | |
| 81 | |
| 82 | |
| 83 /* Conditional chunk operators */ | |
| 84 #define DLS_CDL_AND 0x0001 /* X = X & Y */ | |
| 85 #define DLS_CDL_OR 0x0002 /* X = X | Y */ | |
| 86 #define DLS_CDL_XOR 0x0003 /* X = X ^ Y */ | |
| 87 #define DLS_CDL_ADD 0x0004 /* X = X + Y */ | |
| 88 #define DLS_CDL_SUBTRACT 0x0005 /* X = X - Y */ | |
| 89 #define DLS_CDL_MULTIPLY 0x0006 /* X = X * Y */ | |
| 90 #define DLS_CDL_DIVIDE 0x0007 /* X = X / Y */ | |
| 91 #define DLS_CDL_LOGICAL_AND 0x0008 /* X = X && Y */ | |
| 92 #define DLS_CDL_LOGICAL_OR 0x0009 /* X = X || Y */ | |
| 93 #define DLS_CDL_LT 0x000A /* X = (X < Y) */ | |
| 94 #define DLS_CDL_LE 0x000B /* X = (X <= Y) */ | |
| 95 #define DLS_CDL_GT 0x000C /* X = (X > Y) */ | |
| 96 #define DLS_CDL_GE 0x000D /* X = (X >= Y) */ | |
| 97 #define DLS_CDL_EQ 0x000E /* X = (X == Y) */ | |
| 98 #define DLS_CDL_NOT 0x000F /* X = !X */ | |
| 99 #define DLS_CDL_CONST 0x0010 /* 32-bit constant */ | |
| 100 #define DLS_CDL_QUERY 0x0011 /* 32-bit value returned from query */ | |
| 101 #define DLS_CDL_QUERYSUPPORTED 0x0012 /* Test to see if query is supported by synth */ | |
| 102 | |
| 103 /* | |
| 104 Loop and release | |
| 105 */ | |
| 106 | |
| 107 #define WLOOP_TYPE_RELEASE 1 | |
| 108 | |
| 109 /* | |
| 110 WaveLink chunk <wlnk-ck> | |
| 111 */ | |
| 112 | |
| 113 #define F_WAVELINK_MULTICHANNEL 0x0002 | |
| 114 | |
| 115 | |
| 116 /* | |
| 117 DLSID queries for <cdl-ck> | |
| 118 */ | |
| 119 | |
| 120 DEFINE_GUID(DLSID_GMInHardware, 0x178f2f24, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); | |
| 121 DEFINE_GUID(DLSID_GSInHardware, 0x178f2f25, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); | |
| 122 DEFINE_GUID(DLSID_XGInHardware, 0x178f2f26, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); | |
| 123 DEFINE_GUID(DLSID_SupportsDLS1, 0x178f2f27, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); | |
| 124 DEFINE_GUID(DLSID_SupportsDLS2, 0xf14599e5, 0x4689, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); | |
| 125 DEFINE_GUID(DLSID_SampleMemorySize, 0x178f2f28, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); | |
| 126 DEFINE_GUID(DLSID_ManufacturersID, 0xb03e1181, 0x8095, 0x11d2, 0xa1, 0xef, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8); | |
| 127 DEFINE_GUID(DLSID_ProductID, 0xb03e1182, 0x8095, 0x11d2, 0xa1, 0xef, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8); | |
| 128 DEFINE_GUID(DLSID_SamplePlaybackRate, 0x2a91f713, 0xa4bf, 0x11d2, 0xbb, 0xdf, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8); | |
| 129 | |
| 130 #endif /* _INC_DLS2 */ |
