midi-events 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +10 -0
- data/Gemfile +8 -0
- data/LICENSE +674 -0
- data/LICENSE.midi-message +13 -0
- data/README.md +170 -0
- data/Rakefile +10 -0
- data/examples/constants.rb +37 -0
- data/examples/context.rb +25 -0
- data/examples/melody.rb +27 -0
- data/examples/short_messages.rb +33 -0
- data/examples/sysex.rb +56 -0
- data/lib/midi-events/channel_message.rb +152 -0
- data/lib/midi-events/constant.rb +260 -0
- data/lib/midi-events/context.rb +161 -0
- data/lib/midi-events/message.rb +62 -0
- data/lib/midi-events/messages.rb +215 -0
- data/lib/midi-events/note_message.rb +40 -0
- data/lib/midi-events/system_exclusive.rb +244 -0
- data/lib/midi-events/system_message.rb +19 -0
- data/lib/midi-events/type_conversion.rb +79 -0
- data/lib/midi-events.rb +27 -0
- data/lib/midi.yml +338 -0
- data/midi-events.gemspec +22 -0
- metadata +67 -0
data/lib/midi.yml
ADDED
@@ -0,0 +1,338 @@
|
|
1
|
+
Status:
|
2
|
+
Note Off: 0x8
|
3
|
+
Note On: 0x9
|
4
|
+
Polyphonic Aftertouch: 0xA
|
5
|
+
Control Change: 0xB
|
6
|
+
Program Change: 0xC
|
7
|
+
Channel Aftertouch: 0xD
|
8
|
+
Pitch Bend: 0xE
|
9
|
+
System Exclusive: 0xF0
|
10
|
+
System Common: [0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6]
|
11
|
+
System Realtime: [0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF]
|
12
|
+
|
13
|
+
Control Change:
|
14
|
+
Bank Select: 0
|
15
|
+
Modulation Wheel: 1
|
16
|
+
Breath Controller: 2
|
17
|
+
Foot Controller: 4
|
18
|
+
Portamento Time: 5
|
19
|
+
Data Entry MSB: 6
|
20
|
+
Channel Volume: 7
|
21
|
+
Balance: 8
|
22
|
+
Pan: 10
|
23
|
+
Expression Controller: 11
|
24
|
+
General Purpose Controllers: 16
|
25
|
+
General Purpose Controllers: 17
|
26
|
+
General Purpose Controllers: 18
|
27
|
+
General Purpose Controllers: 19
|
28
|
+
LSB for controller 0: 32
|
29
|
+
LSB for controller 1: 33
|
30
|
+
LSB for controller 2: 34
|
31
|
+
LSB for controller 3: 35
|
32
|
+
LSB for controller 4: 36
|
33
|
+
LSB for controller 5: 37
|
34
|
+
LSB for controller 6: 38
|
35
|
+
LSB for controller 7: 39
|
36
|
+
LSB for controller 8: 40
|
37
|
+
LSB for controller 9: 41
|
38
|
+
LSB for controller 10: 42
|
39
|
+
LSB for controller 11: 43
|
40
|
+
LSB for controller 12: 44
|
41
|
+
LSB for controller 13: 45
|
42
|
+
LSB for controller 14: 46
|
43
|
+
LSB for controller 15: 47
|
44
|
+
LSB for controller 16: 48
|
45
|
+
LSB for controller 17: 49
|
46
|
+
LSB for controller 18: 50
|
47
|
+
LSB for controller 19: 51
|
48
|
+
LSB for controller 20: 52
|
49
|
+
LSB for controller 21: 53
|
50
|
+
LSB for controller 22: 54
|
51
|
+
LSB for controller 23: 55
|
52
|
+
LSB for controller 24: 56
|
53
|
+
LSB for controller 25: 57
|
54
|
+
LSB for controller 26: 58
|
55
|
+
LSB for controller 27: 59
|
56
|
+
LSB for controller 28: 60
|
57
|
+
LSB for controller 29: 61
|
58
|
+
LSB for controller 30: 62
|
59
|
+
LSB for controller 31: 63
|
60
|
+
Sustain: 64
|
61
|
+
Hold Pedal: 64
|
62
|
+
Portamento: 65
|
63
|
+
|
64
|
+
Control Mode:
|
65
|
+
All Sound Off: 120
|
66
|
+
All Controllers Off: 121
|
67
|
+
Local Keyboard Toggle: 122
|
68
|
+
All Notes Off: 123
|
69
|
+
Omni Off: 124
|
70
|
+
Omni On: 125
|
71
|
+
Mono: 126
|
72
|
+
Poly: 127
|
73
|
+
|
74
|
+
System Common:
|
75
|
+
Song Position Pointer: 0x2
|
76
|
+
Song Select: 0x3
|
77
|
+
Tune Request: 0x6
|
78
|
+
|
79
|
+
System Realtime:
|
80
|
+
Start: 0xA
|
81
|
+
Clock: 0x8
|
82
|
+
Continue: 0xB
|
83
|
+
Stop: 0xC
|
84
|
+
ActiveSense: 0xE
|
85
|
+
Reset: 0xF
|
86
|
+
|
87
|
+
Manufacturer:
|
88
|
+
|
89
|
+
SequentialCircuits: 1
|
90
|
+
BigBriar: 2
|
91
|
+
Octave: 3
|
92
|
+
Moog: 4
|
93
|
+
Passport: 5
|
94
|
+
Lexicon: 6
|
95
|
+
|
96
|
+
PAIA: 0x11
|
97
|
+
Simmons: 0x12
|
98
|
+
GentleElectric: 0x13
|
99
|
+
Fairlight: 0x14
|
100
|
+
BonTempi: 0x20
|
101
|
+
SIEL: 0x21
|
102
|
+
SyntheAxe: 0x23
|
103
|
+
|
104
|
+
Kawai: 0x40
|
105
|
+
Roland: 0x41
|
106
|
+
Korg: 0x42
|
107
|
+
Yamaha: 0x43
|
108
|
+
Casio: 0x44
|
109
|
+
Akai: 0x47
|
110
|
+
|
111
|
+
Emagic: [0x00, 0x20, 0x31]
|
112
|
+
Behringer: [0x00, 0x20, 0x32]
|
113
|
+
Access: [0x00, 0x20, 0x33]
|
114
|
+
|
115
|
+
Note:
|
116
|
+
C-1: 0
|
117
|
+
C#-1: 1
|
118
|
+
Db-1: 1
|
119
|
+
D-1: 2
|
120
|
+
Eb-1: 3
|
121
|
+
D#-1: 3
|
122
|
+
E-1: 4
|
123
|
+
Fb-1: 4
|
124
|
+
F-1: 5
|
125
|
+
E#-1: 5
|
126
|
+
F#-1: 6
|
127
|
+
Gb-1: 6
|
128
|
+
G-1: 7
|
129
|
+
G#-1: 8
|
130
|
+
Ab-1: 8
|
131
|
+
A-1: 9
|
132
|
+
A#-1: 10
|
133
|
+
Bb-1: 10
|
134
|
+
B-1: 11
|
135
|
+
Cb0: 11
|
136
|
+
C0: 12
|
137
|
+
B#-1: 12
|
138
|
+
C#0: 13
|
139
|
+
Db0: 13
|
140
|
+
D0: 14
|
141
|
+
D#0: 15
|
142
|
+
Eb0: 15
|
143
|
+
E0: 16
|
144
|
+
Fb0: 16
|
145
|
+
F0: 17
|
146
|
+
E#0: 17
|
147
|
+
F#0: 18
|
148
|
+
Gb0: 18
|
149
|
+
G0: 19
|
150
|
+
Ab0: 20
|
151
|
+
G#0: 20
|
152
|
+
A0: 21
|
153
|
+
Bb0: 22
|
154
|
+
A#0: 22
|
155
|
+
B0: 23
|
156
|
+
Cb1: 23
|
157
|
+
C1: 24
|
158
|
+
B#0: 24
|
159
|
+
Db1: 25
|
160
|
+
C#1: 25
|
161
|
+
D1: 26
|
162
|
+
D#1: 27
|
163
|
+
Eb1: 27
|
164
|
+
E1: 28
|
165
|
+
Fb1: 28
|
166
|
+
F1: 29
|
167
|
+
E#1: 29
|
168
|
+
F#1: 30
|
169
|
+
Gb1: 30
|
170
|
+
G1: 31
|
171
|
+
Ab1: 32
|
172
|
+
G#1: 32
|
173
|
+
A1: 33
|
174
|
+
A#1: 34
|
175
|
+
Bb1: 34
|
176
|
+
B1: 35
|
177
|
+
Cb2: 35
|
178
|
+
C2: 36
|
179
|
+
B#1: 36
|
180
|
+
Db2: 37
|
181
|
+
C#2: 37
|
182
|
+
D2: 38
|
183
|
+
D#2: 39
|
184
|
+
Eb2: 39
|
185
|
+
E2: 40
|
186
|
+
Fb2: 40
|
187
|
+
F2: 41
|
188
|
+
E#2: 41
|
189
|
+
F#2: 42
|
190
|
+
Gb2: 42
|
191
|
+
G2: 43
|
192
|
+
G#2: 44
|
193
|
+
Ab2: 44
|
194
|
+
A2: 45
|
195
|
+
A#2: 46
|
196
|
+
Bb2: 46
|
197
|
+
B2: 47
|
198
|
+
Cb3: 47
|
199
|
+
C3: 48
|
200
|
+
B#2: 48
|
201
|
+
C#3: 49
|
202
|
+
Db3: 49
|
203
|
+
D3: 50
|
204
|
+
Eb3: 51
|
205
|
+
D#3: 51
|
206
|
+
E3: 52
|
207
|
+
Fb3: 52
|
208
|
+
F3: 53
|
209
|
+
E#3: 53
|
210
|
+
F#3: 54
|
211
|
+
Gb3: 54
|
212
|
+
G3: 55
|
213
|
+
Ab3: 56
|
214
|
+
G#3: 56
|
215
|
+
A3: 57
|
216
|
+
A#3: 58
|
217
|
+
Bb3: 58
|
218
|
+
B3: 59
|
219
|
+
Cb4: 59
|
220
|
+
C4: 60
|
221
|
+
B#3: 60
|
222
|
+
C#4: 61
|
223
|
+
Db4: 61
|
224
|
+
D4: 62
|
225
|
+
D#4: 63
|
226
|
+
Eb4: 63
|
227
|
+
E4: 64
|
228
|
+
Fb4: 64
|
229
|
+
F4: 65
|
230
|
+
E#4: 65
|
231
|
+
Gb4: 66
|
232
|
+
F#4: 66
|
233
|
+
G4: 67
|
234
|
+
Ab4: 68
|
235
|
+
G#4: 68
|
236
|
+
A4: 69
|
237
|
+
A#4: 70
|
238
|
+
Bb4: 70
|
239
|
+
B4: 71
|
240
|
+
Cb5: 71
|
241
|
+
C5: 72
|
242
|
+
B#4: 72
|
243
|
+
C#5: 73
|
244
|
+
Db5: 73
|
245
|
+
D5: 74
|
246
|
+
Eb5: 75
|
247
|
+
D#5: 75
|
248
|
+
E5: 76
|
249
|
+
Fb5: 76
|
250
|
+
F5: 77
|
251
|
+
E#5: 77
|
252
|
+
F#5: 78
|
253
|
+
Gb5: 78
|
254
|
+
G5: 79
|
255
|
+
Ab5: 80
|
256
|
+
G#5: 80
|
257
|
+
A5: 81
|
258
|
+
A#5: 82
|
259
|
+
Bb5: 82
|
260
|
+
B5: 83
|
261
|
+
Cb6: 83
|
262
|
+
C6: 84
|
263
|
+
B#5: 84
|
264
|
+
C#6: 85
|
265
|
+
Db6: 85
|
266
|
+
D6: 86
|
267
|
+
D#6: 87
|
268
|
+
Eb6: 87
|
269
|
+
E6: 88
|
270
|
+
Fb6: 88
|
271
|
+
F6: 89
|
272
|
+
E#6: 89
|
273
|
+
Gb6: 90
|
274
|
+
F#6: 90
|
275
|
+
G6: 91
|
276
|
+
Ab6: 92
|
277
|
+
G#6: 92
|
278
|
+
A6: 93
|
279
|
+
A#6: 94
|
280
|
+
Bb6: 94
|
281
|
+
B6: 95
|
282
|
+
Cb7: 95
|
283
|
+
C7: 96
|
284
|
+
B#6: 96
|
285
|
+
C#7: 97
|
286
|
+
Db7: 97
|
287
|
+
D7: 98
|
288
|
+
D#7: 99
|
289
|
+
Eb7: 99
|
290
|
+
E7: 100
|
291
|
+
Fb7: 100
|
292
|
+
F7: 101
|
293
|
+
E#7: 101
|
294
|
+
Gb7: 102
|
295
|
+
F#7: 102
|
296
|
+
G7: 103
|
297
|
+
Ab7: 104
|
298
|
+
G#7: 104
|
299
|
+
A7: 105
|
300
|
+
A#7: 106
|
301
|
+
Bb7: 106
|
302
|
+
B7: 107
|
303
|
+
Cb8: 107
|
304
|
+
C8: 108
|
305
|
+
B#7: 108
|
306
|
+
C#8: 109
|
307
|
+
Db8: 109
|
308
|
+
D8: 110
|
309
|
+
D#8: 111
|
310
|
+
Eb8: 111
|
311
|
+
E8: 112
|
312
|
+
Fb8: 112
|
313
|
+
F8: 113
|
314
|
+
E#8: 113
|
315
|
+
Gb8: 114
|
316
|
+
F#8: 114
|
317
|
+
G8: 115
|
318
|
+
Ab8: 116
|
319
|
+
G#8: 116
|
320
|
+
A8: 117
|
321
|
+
A#8: 118
|
322
|
+
Bb8: 118
|
323
|
+
B8: 119
|
324
|
+
Cb9: 119
|
325
|
+
C9: 120
|
326
|
+
B#8: 120
|
327
|
+
C#9: 121
|
328
|
+
Db9: 121
|
329
|
+
D9: 122
|
330
|
+
D#9: 123
|
331
|
+
Eb9: 123
|
332
|
+
E9: 124
|
333
|
+
Fb9: 124
|
334
|
+
F9: 125
|
335
|
+
E#9: 125
|
336
|
+
Gb9: 126
|
337
|
+
F#9: 126
|
338
|
+
G9: 127
|
data/midi-events.gemspec
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Gem::Specification.new do |s|
|
2
|
+
s.name = 'midi-events'
|
3
|
+
s.version = '0.5.0'
|
4
|
+
s.date = '2021-11-12'
|
5
|
+
s.summary = 'A Ruby simple library for creating MIDI Event Messages'
|
6
|
+
s.description = 'MIDI Events is a library for creating MIDI Event Messages that can be sent to MIDI Instruments through other libraries such as midi-communications or unimidi'
|
7
|
+
s.authors = ['Javier Sánchez Yeste']
|
8
|
+
s.email = 'javier.sy@gmail.com'
|
9
|
+
s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features|samples)/}) }
|
10
|
+
s.homepage = 'https://github.com/javier-sy/midi-events'
|
11
|
+
s.license = 'LGPL-3.0'
|
12
|
+
|
13
|
+
s.required_ruby_version = '~> 2.7'
|
14
|
+
|
15
|
+
# TODO
|
16
|
+
#s.metadata = {
|
17
|
+
# "source_code_uri" => "https://",
|
18
|
+
# "homepage_uri" => "",
|
19
|
+
# "documentation_uri" => "",
|
20
|
+
# "changelog_uri" => ""
|
21
|
+
#}
|
22
|
+
end
|
metadata
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: midi-events
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.5.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Javier Sánchez Yeste
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2021-11-12 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: MIDI Events is a library for creating MIDI Event Messages that can be
|
14
|
+
sent to MIDI Instruments through other libraries such as midi-communications or
|
15
|
+
unimidi
|
16
|
+
email: javier.sy@gmail.com
|
17
|
+
executables: []
|
18
|
+
extensions: []
|
19
|
+
extra_rdoc_files: []
|
20
|
+
files:
|
21
|
+
- ".gitignore"
|
22
|
+
- Gemfile
|
23
|
+
- LICENSE
|
24
|
+
- LICENSE.midi-message
|
25
|
+
- README.md
|
26
|
+
- Rakefile
|
27
|
+
- examples/constants.rb
|
28
|
+
- examples/context.rb
|
29
|
+
- examples/melody.rb
|
30
|
+
- examples/short_messages.rb
|
31
|
+
- examples/sysex.rb
|
32
|
+
- lib/midi-events.rb
|
33
|
+
- lib/midi-events/channel_message.rb
|
34
|
+
- lib/midi-events/constant.rb
|
35
|
+
- lib/midi-events/context.rb
|
36
|
+
- lib/midi-events/message.rb
|
37
|
+
- lib/midi-events/messages.rb
|
38
|
+
- lib/midi-events/note_message.rb
|
39
|
+
- lib/midi-events/system_exclusive.rb
|
40
|
+
- lib/midi-events/system_message.rb
|
41
|
+
- lib/midi-events/type_conversion.rb
|
42
|
+
- lib/midi.yml
|
43
|
+
- midi-events.gemspec
|
44
|
+
homepage: https://github.com/javier-sy/midi-events
|
45
|
+
licenses:
|
46
|
+
- LGPL-3.0
|
47
|
+
metadata: {}
|
48
|
+
post_install_message:
|
49
|
+
rdoc_options: []
|
50
|
+
require_paths:
|
51
|
+
- lib
|
52
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - "~>"
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '2.7'
|
57
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
requirements: []
|
63
|
+
rubygems_version: 3.1.6
|
64
|
+
signing_key:
|
65
|
+
specification_version: 4
|
66
|
+
summary: A Ruby simple library for creating MIDI Event Messages
|
67
|
+
test_files: []
|