@marmooo/midy 0.2.4 → 0.2.6
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.
- package/esm/midy-GM1.d.ts +44 -28
- package/esm/midy-GM1.d.ts.map +1 -1
- package/esm/midy-GM1.js +159 -101
- package/esm/midy-GM2.d.ts +54 -33
- package/esm/midy-GM2.d.ts.map +1 -1
- package/esm/midy-GM2.js +260 -156
- package/esm/midy-GMLite.d.ts +38 -19
- package/esm/midy-GMLite.d.ts.map +1 -1
- package/esm/midy-GMLite.js +157 -49
- package/esm/midy.d.ts +57 -35
- package/esm/midy.d.ts.map +1 -1
- package/esm/midy.js +312 -183
- package/package.json +1 -1
- package/script/midy-GM1.d.ts +44 -28
- package/script/midy-GM1.d.ts.map +1 -1
- package/script/midy-GM1.js +159 -101
- package/script/midy-GM2.d.ts +54 -33
- package/script/midy-GM2.d.ts.map +1 -1
- package/script/midy-GM2.js +260 -156
- package/script/midy-GMLite.d.ts +38 -19
- package/script/midy-GMLite.d.ts.map +1 -1
- package/script/midy-GMLite.js +157 -49
- package/script/midy.d.ts +57 -35
- package/script/midy.d.ts.map +1 -1
- package/script/midy.js +312 -183
package/esm/midy.d.ts
CHANGED
|
@@ -2,10 +2,6 @@ export class Midy {
|
|
|
2
2
|
static channelSettings: {
|
|
3
3
|
currentBufferSource: null;
|
|
4
4
|
detune: number;
|
|
5
|
-
scaleOctaveTuningTable: any[];
|
|
6
|
-
channelPressureTable: Uint8Array<ArrayBuffer>;
|
|
7
|
-
polyphonicKeyPressureTable: Uint8Array<ArrayBuffer>;
|
|
8
|
-
keyBasedInstrumentControlTable: Int8Array<ArrayBuffer>;
|
|
9
5
|
program: number;
|
|
10
6
|
bank: number;
|
|
11
7
|
bankMSB: number;
|
|
@@ -48,6 +44,8 @@ export class Midy {
|
|
|
48
44
|
resumeTime: number;
|
|
49
45
|
soundFonts: any[];
|
|
50
46
|
soundFontTable: any[];
|
|
47
|
+
audioBufferCounter: Map<any, any>;
|
|
48
|
+
audioBufferCache: Map<any, any>;
|
|
51
49
|
isPlaying: boolean;
|
|
52
50
|
isPausing: boolean;
|
|
53
51
|
isPaused: boolean;
|
|
@@ -56,7 +54,7 @@ export class Midy {
|
|
|
56
54
|
timeline: any[];
|
|
57
55
|
instruments: any[];
|
|
58
56
|
notePromises: any[];
|
|
59
|
-
exclusiveClassMap:
|
|
57
|
+
exclusiveClassMap: SparseMap;
|
|
60
58
|
defaultOptions: {
|
|
61
59
|
reverbAlgorithm: (audioContext: any) => {
|
|
62
60
|
input: any;
|
|
@@ -85,12 +83,12 @@ export class Midy {
|
|
|
85
83
|
};
|
|
86
84
|
controlChangeHandlers: {
|
|
87
85
|
0: (channelNumber: any, msb: any) => void;
|
|
88
|
-
1: (channelNumber: any, modulation: any) => void;
|
|
86
|
+
1: (channelNumber: any, modulation: any, scheduleTime: any) => void;
|
|
89
87
|
5: (channelNumber: any, portamentoTime: any) => void;
|
|
90
88
|
6: (channelNumber: any, value: any) => void;
|
|
91
|
-
7: (channelNumber: any, volume: any) => void;
|
|
92
|
-
10: (channelNumber: any, pan: any) => void;
|
|
93
|
-
11: (channelNumber: any, expression: any) => void;
|
|
89
|
+
7: (channelNumber: any, volume: any, scheduleTime: any) => void;
|
|
90
|
+
10: (channelNumber: any, pan: any, scheduleTime: any) => void;
|
|
91
|
+
11: (channelNumber: any, expression: any, scheduleTime: any) => void;
|
|
94
92
|
32: (channelNumber: any, lsb: any) => void;
|
|
95
93
|
38: (channelNumber: any, value: any) => void;
|
|
96
94
|
64: (channelNumber: any, value: any) => void;
|
|
@@ -144,13 +142,14 @@ export class Midy {
|
|
|
144
142
|
};
|
|
145
143
|
createChannels(audioContext: any): any[];
|
|
146
144
|
createNoteBuffer(voiceParams: any, isSF3: any): Promise<any>;
|
|
147
|
-
createNoteBufferNode(
|
|
145
|
+
createNoteBufferNode(audioBuffer: any, voiceParams: any): any;
|
|
148
146
|
findPortamentoTarget(queueIndex: any): any;
|
|
149
147
|
scheduleTimelineEvents(t: any, offset: any, queueIndex: any): Promise<any>;
|
|
150
148
|
getQueueIndex(second: any): number;
|
|
151
149
|
playNotes(): Promise<any>;
|
|
152
150
|
ticksToSecond(ticks: any, secondsPerBeat: any): number;
|
|
153
151
|
secondToTicks(second: any, secondsPerBeat: any): number;
|
|
152
|
+
getAudioBufferId(programNumber: any, noteNumber: any, velocity: any): string;
|
|
154
153
|
extractMidiData(midi: any): {
|
|
155
154
|
instruments: Set<any>;
|
|
156
155
|
timeline: any[];
|
|
@@ -164,7 +163,8 @@ export class Midy {
|
|
|
164
163
|
seekTo(second: any): void;
|
|
165
164
|
calcTotalTime(): number;
|
|
166
165
|
currentTime(): number;
|
|
167
|
-
|
|
166
|
+
processScheduledNotes(channel: any, scheduleTime: any, callback: any): void;
|
|
167
|
+
getActiveNotes(channel: any, time: any): SparseMap;
|
|
168
168
|
getActiveNote(noteList: any, time: any): any;
|
|
169
169
|
createConvolutionReverbImpulse(audioContext: any, decay: any, preDecay: any): any;
|
|
170
170
|
createConvolutionReverb(audioContext: any, impulse: any): {
|
|
@@ -195,16 +195,17 @@ export class Midy {
|
|
|
195
195
|
calcChannelDetune(channel: any): any;
|
|
196
196
|
calcNoteDetune(channel: any, note: any): any;
|
|
197
197
|
updateChannelDetune(channel: any): void;
|
|
198
|
-
updateDetune(channel: any, note: any
|
|
198
|
+
updateDetune(channel: any, note: any): void;
|
|
199
199
|
getPortamentoTime(channel: any): number;
|
|
200
200
|
setPortamentoStartVolumeEnvelope(channel: any, note: any): void;
|
|
201
|
-
setVolumeEnvelope(channel: any, note: any
|
|
202
|
-
setPitchEnvelope(note: any): void;
|
|
201
|
+
setVolumeEnvelope(channel: any, note: any): void;
|
|
202
|
+
setPitchEnvelope(note: any, scheduleTime: any): void;
|
|
203
203
|
clampCutoffFrequency(frequency: any): number;
|
|
204
204
|
setPortamentoStartFilterEnvelope(channel: any, note: any): void;
|
|
205
|
-
setFilterEnvelope(channel: any, note: any
|
|
205
|
+
setFilterEnvelope(channel: any, note: any): void;
|
|
206
206
|
startModulation(channel: any, note: any, startTime: any): void;
|
|
207
207
|
startVibrato(channel: any, note: any, startTime: any): void;
|
|
208
|
+
getAudioBuffer(program: any, noteNumber: any, velocity: any, voiceParams: any, isSF3: any): Promise<any>;
|
|
208
209
|
createNote(channel: any, voice: any, noteNumber: any, velocity: any, startTime: any, portamento: any, isSF3: any): Promise<Note>;
|
|
209
210
|
calcBank(channel: any, channelNumber: any): any;
|
|
210
211
|
scheduleNoteOn(channelNumber: any, noteNumber: any, velocity: any, startTime: any, portamento: any): Promise<void>;
|
|
@@ -215,15 +216,15 @@ export class Midy {
|
|
|
215
216
|
releaseSustainPedal(channelNumber: any, halfVelocity: any): any[];
|
|
216
217
|
releaseSostenutoPedal(channelNumber: any, halfVelocity: any): any[];
|
|
217
218
|
handleMIDIMessage(statusByte: any, data1: any, data2: any): void | Promise<any>;
|
|
218
|
-
handlePolyphonicKeyPressure(channelNumber: any, noteNumber: any, pressure: any): void;
|
|
219
|
+
handlePolyphonicKeyPressure(channelNumber: any, noteNumber: any, pressure: any, startTime: any): void;
|
|
219
220
|
handleProgramChange(channelNumber: any, program: any): void;
|
|
220
|
-
handleChannelPressure(channelNumber: any, value: any): void;
|
|
221
|
+
handleChannelPressure(channelNumber: any, value: any, startTime: any): void;
|
|
221
222
|
handlePitchBendMessage(channelNumber: any, lsb: any, msb: any): void;
|
|
222
223
|
setPitchBend(channelNumber: any, value: any): void;
|
|
223
|
-
setModLfoToPitch(channel: any, note: any
|
|
224
|
+
setModLfoToPitch(channel: any, note: any): void;
|
|
224
225
|
setVibLfoToPitch(channel: any, note: any): void;
|
|
225
|
-
setModLfoToFilterFc(
|
|
226
|
-
setModLfoToVolume(
|
|
226
|
+
setModLfoToFilterFc(channel: any, note: any): void;
|
|
227
|
+
setModLfoToVolume(channel: any, note: any): void;
|
|
227
228
|
setReverbEffectsSend(channel: any, note: any, prevValue: any): void;
|
|
228
229
|
setChorusEffectsSend(channel: any, note: any, prevValue: any): void;
|
|
229
230
|
setDelayModLFO(note: any): void;
|
|
@@ -245,12 +246,12 @@ export class Midy {
|
|
|
245
246
|
applyVoiceParams(channel: any, controllerType: any): void;
|
|
246
247
|
createControlChangeHandlers(): {
|
|
247
248
|
0: (channelNumber: any, msb: any) => void;
|
|
248
|
-
1: (channelNumber: any, modulation: any) => void;
|
|
249
|
+
1: (channelNumber: any, modulation: any, scheduleTime: any) => void;
|
|
249
250
|
5: (channelNumber: any, portamentoTime: any) => void;
|
|
250
251
|
6: (channelNumber: any, value: any) => void;
|
|
251
|
-
7: (channelNumber: any, volume: any) => void;
|
|
252
|
-
10: (channelNumber: any, pan: any) => void;
|
|
253
|
-
11: (channelNumber: any, expression: any) => void;
|
|
252
|
+
7: (channelNumber: any, volume: any, scheduleTime: any) => void;
|
|
253
|
+
10: (channelNumber: any, pan: any, scheduleTime: any) => void;
|
|
254
|
+
11: (channelNumber: any, expression: any, scheduleTime: any) => void;
|
|
254
255
|
32: (channelNumber: any, lsb: any) => void;
|
|
255
256
|
38: (channelNumber: any, value: any) => void;
|
|
256
257
|
64: (channelNumber: any, value: any) => void;
|
|
@@ -279,20 +280,20 @@ export class Midy {
|
|
|
279
280
|
126: () => void;
|
|
280
281
|
127: () => void;
|
|
281
282
|
};
|
|
282
|
-
handleControlChange(channelNumber: any, controllerType: any, value: any): void;
|
|
283
|
+
handleControlChange(channelNumber: any, controllerType: any, value: any, startTime: any): void;
|
|
283
284
|
setBankMSB(channelNumber: any, msb: any): void;
|
|
284
|
-
updateModulation(channel: any): void;
|
|
285
|
-
setModulationDepth(channelNumber: any, modulation: any): void;
|
|
285
|
+
updateModulation(channel: any, scheduleTime: any): void;
|
|
286
|
+
setModulationDepth(channelNumber: any, modulation: any, scheduleTime: any): void;
|
|
286
287
|
setPortamentoTime(channelNumber: any, portamentoTime: any): void;
|
|
287
|
-
setKeyBasedVolume(channel: any): void;
|
|
288
|
-
setVolume(channelNumber: any, volume: any): void;
|
|
288
|
+
setKeyBasedVolume(channel: any, scheduleTime: any): void;
|
|
289
|
+
setVolume(channelNumber: any, volume: any, scheduleTime: any): void;
|
|
289
290
|
panToGain(pan: any): {
|
|
290
291
|
gainLeft: number;
|
|
291
292
|
gainRight: number;
|
|
292
293
|
};
|
|
293
|
-
setKeyBasedPan(channel: any): void;
|
|
294
|
-
setPan(channelNumber: any, pan: any): void;
|
|
295
|
-
setExpression(channelNumber: any, expression: any): void;
|
|
294
|
+
setKeyBasedPan(channel: any, scheduleTime: any): void;
|
|
295
|
+
setPan(channelNumber: any, pan: any, scheduleTime: any): void;
|
|
296
|
+
setExpression(channelNumber: any, expression: any, scheduleTime: any): void;
|
|
296
297
|
setBankLSB(channelNumber: any, lsb: any): void;
|
|
297
298
|
dataEntryLSB(channelNumber: any, value: any): void;
|
|
298
299
|
updateChannelVolume(channel: any): void;
|
|
@@ -362,8 +363,15 @@ export class Midy {
|
|
|
362
363
|
setChorusSendToReverb(value: any): void;
|
|
363
364
|
getChorusSendToReverb(value: any): number;
|
|
364
365
|
getChannelBitmap(data: any): any[];
|
|
365
|
-
handleScaleOctaveTuning1ByteFormatSysEx(data: any): void;
|
|
366
|
-
|
|
366
|
+
handleScaleOctaveTuning1ByteFormatSysEx(data: any, realtime: any): void;
|
|
367
|
+
handleScaleOctaveTuning2ByteFormatSysEx(data: any, realtime: any): void;
|
|
368
|
+
getPitchControl(channel: any, note: any): number;
|
|
369
|
+
getFilterCutoffControl(channel: any, note: any): number;
|
|
370
|
+
getAmplitudeControl(channel: any, note: any): number;
|
|
371
|
+
getLFOPitchDepth(channel: any, note: any): number;
|
|
372
|
+
getLFOFilterDepth(channel: any, note: any): number;
|
|
373
|
+
getLFOAmplitudeDepth(channel: any, note: any): number;
|
|
374
|
+
setControllerParameters(channel: any, note: any, table: any): void;
|
|
367
375
|
handleChannelPressureSysEx(data: any, tableName: any): void;
|
|
368
376
|
initControlTable(): Uint8Array<ArrayBuffer>;
|
|
369
377
|
applyControlTable(channel: any, controllerType: any): void;
|
|
@@ -374,15 +382,29 @@ export class Midy {
|
|
|
374
382
|
handleSysEx(data: any): any;
|
|
375
383
|
scheduleTask(callback: any, startTime: any): Promise<any>;
|
|
376
384
|
}
|
|
385
|
+
declare class SparseMap {
|
|
386
|
+
constructor(size: any);
|
|
387
|
+
data: any[];
|
|
388
|
+
activeIndices: any[];
|
|
389
|
+
set(key: any, value: any): void;
|
|
390
|
+
get(key: any): any;
|
|
391
|
+
delete(key: any): boolean;
|
|
392
|
+
has(key: any): boolean;
|
|
393
|
+
get size(): number;
|
|
394
|
+
clear(): void;
|
|
395
|
+
forEach(callback: any): void;
|
|
396
|
+
[Symbol.iterator](): Generator<any[], void, unknown>;
|
|
397
|
+
}
|
|
377
398
|
declare class Note {
|
|
378
399
|
constructor(noteNumber: any, velocity: any, startTime: any, voice: any, voiceParams: any);
|
|
379
400
|
bufferSource: any;
|
|
380
401
|
filterNode: any;
|
|
402
|
+
filterDepth: any;
|
|
381
403
|
volumeEnvelopeNode: any;
|
|
404
|
+
volumeDepth: any;
|
|
382
405
|
volumeNode: any;
|
|
383
406
|
gainL: any;
|
|
384
407
|
gainR: any;
|
|
385
|
-
volumeDepth: any;
|
|
386
408
|
modulationLFO: any;
|
|
387
409
|
modulationDepth: any;
|
|
388
410
|
vibratoLFO: any;
|
package/esm/midy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midy.d.ts","sourceRoot":"","sources":["../src/midy.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"midy.d.ts","sourceRoot":"","sources":["../src/midy.js"],"names":[],"mappings":"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"}
|