1@prefix atom: <http://lv2plug.in/ns/ext/atom#> . 2@prefix doap: <http://usefulinc.com/ns/doap#> . 3@prefix foaf: <http://xmlns.com/foaf/0.1/> . 4@prefix lv2: <http://lv2plug.in/ns/lv2core#> . 5@prefix midi: <http://lv2plug.in/ns/ext/midi#> . 6@prefix mod: <http://moddevices.com/ns/mod#> . 7@prefix pprop: <http://lv2plug.in/ns/ext/port-props#> . 8@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 9@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . 10@prefix units: <http://lv2plug.in/ns/extensions/units#> . 11@prefix urid: <http://lv2plug.in/ns/ext/urid#> . 12 13<http://gareus.org/rgareus#me> 14 a foaf:Person; 15 foaf:name "Robin Gareus"; 16 foaf:mbox <mailto:robin@gareus.org>; 17 foaf:homepage <http://gareus.org/> . 18 19<http://gareus.org/oss/lv2/@LV2NAME@> 20 a lv2:Plugin, doap:Project, lv2:UtilityPlugin; 21 doap:license <http://usefulinc.com/doap/licenses/gpl>; 22 doap:maintainer <http://gareus.org/rgareus#me>; 23 doap:name "MIDI Event Generator"; 24 @VERSION@ 25 lv2:optionalFeature lv2:hardRTCapable; 26 lv2:requiredFeature urid:map; 27 rdfs:comment "A MIDI debug utility to generate arbitrary messages."; 28 29 @MODBRAND@ 30 @MODLABEL@ 31 @SIGNATURE@ 32 33 lv2:port [ 34 a atom:AtomPort, lv2:OutputPort; 35 atom:bufferType atom:Sequence; 36 atom:supports midi:MidiEvent; 37 lv2:index 0; 38 lv2:symbol "midiout"; 39 lv2:name "MIDI Out"; 40 ] , [ 41 a lv2:InputPort, lv2:ControlPort; 42 lv2:index 1; 43 lv2:symbol "bytes"; 44 lv2:name "Bytes to Send"; 45 lv2:minimum 0; 46 lv2:default 0; 47 lv2:maximum 3; 48 lv2:portProperty lv2:integer, lv2:enumeration; 49 lv2:scalePoint [ rdf:value 0 ; rdfs:label "Automatic"; ] ; 50 lv2:scalePoint [ rdf:value 1 ; rdfs:label "1 byte"; ] ; 51 lv2:scalePoint [ rdf:value 2 ; rdfs:label "2 bytes"; ] ; 52 lv2:scalePoint [ rdf:value 3 ; rdfs:label "3 bytes"; ] ; 53 ] , [ 54 a lv2:InputPort, lv2:ControlPort; 55 lv2:index 2; 56 lv2:symbol "b1"; 57 lv2:name "Byte 1"; 58 lv2:minimum 128; 59 lv2:default 176; 60 lv2:maximum 255; 61 lv2:portProperty lv2:integer, lv2:enumeration; 62 lv2:scalePoint [ rdf:value 128 ; rdfs:label "(0x80) Note Off C01"; ] ; 63 lv2:scalePoint [ rdf:value 129 ; rdfs:label "(0x81) Note Off C02"; ] ; 64 lv2:scalePoint [ rdf:value 130 ; rdfs:label "(0x82) Note Off C03"; ] ; 65 lv2:scalePoint [ rdf:value 131 ; rdfs:label "(0x83) Note Off C04"; ] ; 66 lv2:scalePoint [ rdf:value 132 ; rdfs:label "(0x84) Note Off C04"; ] ; 67 lv2:scalePoint [ rdf:value 133 ; rdfs:label "(0x85) Note Off C06"; ] ; 68 lv2:scalePoint [ rdf:value 134 ; rdfs:label "(0x86) Note Off C07"; ] ; 69 lv2:scalePoint [ rdf:value 135 ; rdfs:label "(0x87) Note Off C08"; ] ; 70 lv2:scalePoint [ rdf:value 136 ; rdfs:label "(0x88) Note Off C09"; ] ; 71 lv2:scalePoint [ rdf:value 137 ; rdfs:label "(0x89) Note Off C10"; ] ; 72 lv2:scalePoint [ rdf:value 138 ; rdfs:label "(0x8A) Note Off C11"; ] ; 73 lv2:scalePoint [ rdf:value 139 ; rdfs:label "(0x8B) Note Off C12"; ] ; 74 lv2:scalePoint [ rdf:value 140 ; rdfs:label "(0x8C) Note Off C13"; ] ; 75 lv2:scalePoint [ rdf:value 141 ; rdfs:label "(0x8D) Note Off C14"; ] ; 76 lv2:scalePoint [ rdf:value 142 ; rdfs:label "(0x8E) Note Off C15"; ] ; 77 lv2:scalePoint [ rdf:value 143 ; rdfs:label "(0x8F) Note Off C16"; ] ; 78 lv2:scalePoint [ rdf:value 144 ; rdfs:label "(0x90) Note On C01"; ] ; 79 lv2:scalePoint [ rdf:value 145 ; rdfs:label "(0x91) Note On C02"; ] ; 80 lv2:scalePoint [ rdf:value 146 ; rdfs:label "(0x92) Note On C03"; ] ; 81 lv2:scalePoint [ rdf:value 147 ; rdfs:label "(0x93) Note On C04"; ] ; 82 lv2:scalePoint [ rdf:value 148 ; rdfs:label "(0x94) Note On C04"; ] ; 83 lv2:scalePoint [ rdf:value 149 ; rdfs:label "(0x95) Note On C06"; ] ; 84 lv2:scalePoint [ rdf:value 150 ; rdfs:label "(0x96) Note On C07"; ] ; 85 lv2:scalePoint [ rdf:value 151 ; rdfs:label "(0x97) Note On C08"; ] ; 86 lv2:scalePoint [ rdf:value 152 ; rdfs:label "(0x98) Note On C09"; ] ; 87 lv2:scalePoint [ rdf:value 153 ; rdfs:label "(0x99) Note On C10"; ] ; 88 lv2:scalePoint [ rdf:value 154 ; rdfs:label "(0x9A) Note On C11"; ] ; 89 lv2:scalePoint [ rdf:value 155 ; rdfs:label "(0x9B) Note On C12"; ] ; 90 lv2:scalePoint [ rdf:value 156 ; rdfs:label "(0x9C) Note On C13"; ] ; 91 lv2:scalePoint [ rdf:value 157 ; rdfs:label "(0x9D) Note On C14"; ] ; 92 lv2:scalePoint [ rdf:value 158 ; rdfs:label "(0x9E) Note On C15"; ] ; 93 lv2:scalePoint [ rdf:value 159 ; rdfs:label "(0x9F) Note On C16"; ] ; 94 lv2:scalePoint [ rdf:value 160 ; rdfs:label "(0xA0) Poly. Aftertouch C01"; ] ; 95 lv2:scalePoint [ rdf:value 161 ; rdfs:label "(0xA1) Poly. Aftertouch C02"; ] ; 96 lv2:scalePoint [ rdf:value 162 ; rdfs:label "(0xA2) Poly. Aftertouch C03"; ] ; 97 lv2:scalePoint [ rdf:value 163 ; rdfs:label "(0xA3) Poly. Aftertouch C04"; ] ; 98 lv2:scalePoint [ rdf:value 164 ; rdfs:label "(0xA4) Poly. Aftertouch C04"; ] ; 99 lv2:scalePoint [ rdf:value 165 ; rdfs:label "(0xA5) Poly. Aftertouch C06"; ] ; 100 lv2:scalePoint [ rdf:value 166 ; rdfs:label "(0xA6) Poly. Aftertouch C07"; ] ; 101 lv2:scalePoint [ rdf:value 167 ; rdfs:label "(0xA7) Poly. Aftertouch C08"; ] ; 102 lv2:scalePoint [ rdf:value 168 ; rdfs:label "(0xA8) Poly. Aftertouch C09"; ] ; 103 lv2:scalePoint [ rdf:value 169 ; rdfs:label "(0xA9) Poly. Aftertouch C10"; ] ; 104 lv2:scalePoint [ rdf:value 170 ; rdfs:label "(0xAA) Poly. Aftertouch C11"; ] ; 105 lv2:scalePoint [ rdf:value 171 ; rdfs:label "(0xAB) Poly. Aftertouch C12"; ] ; 106 lv2:scalePoint [ rdf:value 172 ; rdfs:label "(0xAC) Poly. Aftertouch C13"; ] ; 107 lv2:scalePoint [ rdf:value 173 ; rdfs:label "(0xAD) Poly. Aftertouch C14"; ] ; 108 lv2:scalePoint [ rdf:value 174 ; rdfs:label "(0xAE) Poly. Aftertouch C15"; ] ; 109 lv2:scalePoint [ rdf:value 175 ; rdfs:label "(0xAF) Poly. Aftertouch C16"; ] ; 110 lv2:scalePoint [ rdf:value 176 ; rdfs:label "(0xB0) Control Change C01"; ] ; 111 lv2:scalePoint [ rdf:value 177 ; rdfs:label "(0xB1) Control Change C02"; ] ; 112 lv2:scalePoint [ rdf:value 178 ; rdfs:label "(0xB2) Control Change C03"; ] ; 113 lv2:scalePoint [ rdf:value 179 ; rdfs:label "(0xB3) Control Change C04"; ] ; 114 lv2:scalePoint [ rdf:value 180 ; rdfs:label "(0xB4) Control Change C04"; ] ; 115 lv2:scalePoint [ rdf:value 181 ; rdfs:label "(0xB5) Control Change C06"; ] ; 116 lv2:scalePoint [ rdf:value 182 ; rdfs:label "(0xB6) Control Change C07"; ] ; 117 lv2:scalePoint [ rdf:value 183 ; rdfs:label "(0xB7) Control Change C08"; ] ; 118 lv2:scalePoint [ rdf:value 184 ; rdfs:label "(0xB8) Control Change C09"; ] ; 119 lv2:scalePoint [ rdf:value 185 ; rdfs:label "(0xB9) Control Change C10"; ] ; 120 lv2:scalePoint [ rdf:value 186 ; rdfs:label "(0xBA) Control Change C11"; ] ; 121 lv2:scalePoint [ rdf:value 187 ; rdfs:label "(0xBB) Control Change C12"; ] ; 122 lv2:scalePoint [ rdf:value 188 ; rdfs:label "(0xBC) Control Change C13"; ] ; 123 lv2:scalePoint [ rdf:value 189 ; rdfs:label "(0xBD) Control Change C14"; ] ; 124 lv2:scalePoint [ rdf:value 190 ; rdfs:label "(0xBE) Control Change C15"; ] ; 125 lv2:scalePoint [ rdf:value 191 ; rdfs:label "(0xBF) Control Change C16"; ] ; 126 lv2:scalePoint [ rdf:value 192 ; rdfs:label "(0xC0) Program Change C01"; ] ; 127 lv2:scalePoint [ rdf:value 193 ; rdfs:label "(0xC1) Program Change C02"; ] ; 128 lv2:scalePoint [ rdf:value 194 ; rdfs:label "(0xC2) Program Change C03"; ] ; 129 lv2:scalePoint [ rdf:value 195 ; rdfs:label "(0xC3) Program Change C04"; ] ; 130 lv2:scalePoint [ rdf:value 196 ; rdfs:label "(0xC4) Program Change C04"; ] ; 131 lv2:scalePoint [ rdf:value 197 ; rdfs:label "(0xC5) Program Change C06"; ] ; 132 lv2:scalePoint [ rdf:value 198 ; rdfs:label "(0xC6) Program Change C07"; ] ; 133 lv2:scalePoint [ rdf:value 199 ; rdfs:label "(0xC7) Program Change C08"; ] ; 134 lv2:scalePoint [ rdf:value 200 ; rdfs:label "(0xC8) Program Change C09"; ] ; 135 lv2:scalePoint [ rdf:value 201 ; rdfs:label "(0xC9) Program Change C10"; ] ; 136 lv2:scalePoint [ rdf:value 202 ; rdfs:label "(0xCA) Program Change C11"; ] ; 137 lv2:scalePoint [ rdf:value 203 ; rdfs:label "(0xCB) Program Change C12"; ] ; 138 lv2:scalePoint [ rdf:value 204 ; rdfs:label "(0xCC) Program Change C13"; ] ; 139 lv2:scalePoint [ rdf:value 205 ; rdfs:label "(0xCD) Program Change C14"; ] ; 140 lv2:scalePoint [ rdf:value 206 ; rdfs:label "(0xCE) Program Change C15"; ] ; 141 lv2:scalePoint [ rdf:value 207 ; rdfs:label "(0xCF) Program Change C16"; ] ; 142 lv2:scalePoint [ rdf:value 208 ; rdfs:label "(0xD0) Chn. Aftertouch C01"; ] ; 143 lv2:scalePoint [ rdf:value 209 ; rdfs:label "(0xD1) Chn. Aftertouch C02"; ] ; 144 lv2:scalePoint [ rdf:value 210 ; rdfs:label "(0xD2) Chn. Aftertouch C03"; ] ; 145 lv2:scalePoint [ rdf:value 211 ; rdfs:label "(0xD3) Chn. Aftertouch C04"; ] ; 146 lv2:scalePoint [ rdf:value 212 ; rdfs:label "(0xD4) Chn. Aftertouch C04"; ] ; 147 lv2:scalePoint [ rdf:value 213 ; rdfs:label "(0xD5) Chn. Aftertouch C06"; ] ; 148 lv2:scalePoint [ rdf:value 214 ; rdfs:label "(0xD6) Chn. Aftertouch C07"; ] ; 149 lv2:scalePoint [ rdf:value 215 ; rdfs:label "(0xD7) Chn. Aftertouch C08"; ] ; 150 lv2:scalePoint [ rdf:value 216 ; rdfs:label "(0xD8) Chn. Aftertouch C09"; ] ; 151 lv2:scalePoint [ rdf:value 217 ; rdfs:label "(0xD9) Chn. Aftertouch C10"; ] ; 152 lv2:scalePoint [ rdf:value 218 ; rdfs:label "(0xDA) Chn. Aftertouch C11"; ] ; 153 lv2:scalePoint [ rdf:value 219 ; rdfs:label "(0xDB) Chn. Aftertouch C12"; ] ; 154 lv2:scalePoint [ rdf:value 220 ; rdfs:label "(0xDC) Chn. Aftertouch C13"; ] ; 155 lv2:scalePoint [ rdf:value 221 ; rdfs:label "(0xDD) Chn. Aftertouch C14"; ] ; 156 lv2:scalePoint [ rdf:value 222 ; rdfs:label "(0xDE) Chn. Aftertouch C15"; ] ; 157 lv2:scalePoint [ rdf:value 223 ; rdfs:label "(0xDF) Chn. Aftertouch C16"; ] ; 158 lv2:scalePoint [ rdf:value 224 ; rdfs:label "(0xE0) PitchBend C01"; ] ; 159 lv2:scalePoint [ rdf:value 225 ; rdfs:label "(0xE1) PitchBend C02"; ] ; 160 lv2:scalePoint [ rdf:value 226 ; rdfs:label "(0xE2) PitchBend C03"; ] ; 161 lv2:scalePoint [ rdf:value 227 ; rdfs:label "(0xE3) PitchBend C04"; ] ; 162 lv2:scalePoint [ rdf:value 228 ; rdfs:label "(0xE4) PitchBend C04"; ] ; 163 lv2:scalePoint [ rdf:value 229 ; rdfs:label "(0xE5) PitchBend C06"; ] ; 164 lv2:scalePoint [ rdf:value 230 ; rdfs:label "(0xE6) PitchBend C07"; ] ; 165 lv2:scalePoint [ rdf:value 231 ; rdfs:label "(0xE7) PitchBend C08"; ] ; 166 lv2:scalePoint [ rdf:value 232 ; rdfs:label "(0xE8) PitchBend C09"; ] ; 167 lv2:scalePoint [ rdf:value 233 ; rdfs:label "(0xE9) PitchBend C10"; ] ; 168 lv2:scalePoint [ rdf:value 234 ; rdfs:label "(0xEA) PitchBend C11"; ] ; 169 lv2:scalePoint [ rdf:value 235 ; rdfs:label "(0xEB) PitchBend C12"; ] ; 170 lv2:scalePoint [ rdf:value 236 ; rdfs:label "(0xEC) PitchBend C13"; ] ; 171 lv2:scalePoint [ rdf:value 237 ; rdfs:label "(0xED) PitchBend C14"; ] ; 172 lv2:scalePoint [ rdf:value 238 ; rdfs:label "(0xEE) PitchBend C15"; ] ; 173 lv2:scalePoint [ rdf:value 239 ; rdfs:label "(0xEF) PitchBend C16"; ] ; 174 lv2:scalePoint [ rdf:value 240 ; rdfs:label "(0xF0) N/A - SysEx"; ] ; 175 lv2:scalePoint [ rdf:value 241 ; rdfs:label "(0xF1) N/A - MTC QFrame"; ] ; 176 lv2:scalePoint [ rdf:value 242 ; rdfs:label "(0xF2) Song Position"; ] ; 177 lv2:scalePoint [ rdf:value 243 ; rdfs:label "(0xF3) Song Select"; ] ; 178 lv2:scalePoint [ rdf:value 244 ; rdfs:label "(0xF4) Undefined - Reserved"; ] ; 179 lv2:scalePoint [ rdf:value 245 ; rdfs:label "(0xF5) Undefined - Reserved"; ] ; 180 lv2:scalePoint [ rdf:value 246 ; rdfs:label "(0xF6) Tune request"; ] ; 181 lv2:scalePoint [ rdf:value 247 ; rdfs:label "(0xF7) End of SysEx [EOX]"; ] ; 182 lv2:scalePoint [ rdf:value 248 ; rdfs:label "(0xF8) Timing clock"; ] ; 183 lv2:scalePoint [ rdf:value 249 ; rdfs:label "(0xF9) Undefined - Reserved"; ] ; 184 lv2:scalePoint [ rdf:value 250 ; rdfs:label "(0xFA) MClk Start"; ] ; 185 lv2:scalePoint [ rdf:value 251 ; rdfs:label "(0xFB) MClk Stop"; ] ; 186 lv2:scalePoint [ rdf:value 252 ; rdfs:label "(0xFC) MClk Continue"; ] ; 187 lv2:scalePoint [ rdf:value 253 ; rdfs:label "(0xFD) Undefined - Reserved"; ] ; 188 lv2:scalePoint [ rdf:value 254 ; rdfs:label "(0xFE) Active Sensing"; ] ; 189 lv2:scalePoint [ rdf:value 255 ; rdfs:label "(0xFF) System Reset"; ] ; 190 ] , [ 191 a lv2:InputPort, lv2:ControlPort; 192 lv2:index 3; 193 lv2:symbol "b2"; 194 lv2:name "Byte 2"; 195 lv2:minimum 0; 196 lv2:default 0; 197 lv2:maximum 127; 198 lv2:portProperty lv2:integer; 199 ] , [ 200 a lv2:InputPort, lv2:ControlPort; 201 lv2:index 4; 202 lv2:symbol "b3"; 203 lv2:name "Byte 3"; 204 lv2:minimum 0; 205 lv2:default 0; 206 lv2:maximum 127; 207 lv2:portProperty lv2:integer; 208 ] , [ 209 a lv2:InputPort, lv2:ControlPort; 210 lv2:index 5; 211 lv2:symbol "trigger"; 212 lv2:name "Send"; 213 lv2:minimum 0; 214 lv2:default 0; 215 lv2:maximum 1; 216 lv2:portProperty lv2:integer, lv2:toggled, pprop:trigger; 217 ] 218 . 219