@marmooo/midy 0.1.6 → 0.2.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.
Files changed (37) hide show
  1. package/esm/midy-GM1.d.ts +53 -27
  2. package/esm/midy-GM1.d.ts.map +1 -1
  3. package/esm/midy-GM1.js +398 -146
  4. package/esm/midy-GM2.d.ts +55 -35
  5. package/esm/midy-GM2.d.ts.map +1 -1
  6. package/esm/midy-GM2.js +646 -244
  7. package/esm/midy-GMLite.d.ts +51 -26
  8. package/esm/midy-GMLite.d.ts.map +1 -1
  9. package/esm/midy-GMLite.js +379 -148
  10. package/esm/midy.d.ts +55 -40
  11. package/esm/midy.d.ts.map +1 -1
  12. package/esm/midy.js +662 -263
  13. package/package.json +5 -1
  14. package/script/midy-GM1.d.ts +53 -27
  15. package/script/midy-GM1.d.ts.map +1 -1
  16. package/script/midy-GM1.js +401 -149
  17. package/script/midy-GM2.d.ts +55 -35
  18. package/script/midy-GM2.d.ts.map +1 -1
  19. package/script/midy-GM2.js +649 -247
  20. package/script/midy-GMLite.d.ts +51 -26
  21. package/script/midy-GMLite.d.ts.map +1 -1
  22. package/script/midy-GMLite.js +382 -151
  23. package/script/midy.d.ts +55 -40
  24. package/script/midy.d.ts.map +1 -1
  25. package/script/midy.js +665 -266
  26. package/esm/deps/cdn.jsdelivr.net/npm/@marmooo/soundfont-parser@0.0.6/+esm.d.ts +0 -149
  27. package/esm/deps/cdn.jsdelivr.net/npm/@marmooo/soundfont-parser@0.0.6/+esm.d.ts.map +0 -1
  28. package/esm/deps/cdn.jsdelivr.net/npm/@marmooo/soundfont-parser@0.0.6/+esm.js +0 -180
  29. package/esm/deps/cdn.jsdelivr.net/npm/midi-file@1.2.4/+esm.d.ts +0 -84
  30. package/esm/deps/cdn.jsdelivr.net/npm/midi-file@1.2.4/+esm.d.ts.map +0 -1
  31. package/esm/deps/cdn.jsdelivr.net/npm/midi-file@1.2.4/+esm.js +0 -216
  32. package/script/deps/cdn.jsdelivr.net/npm/@marmooo/soundfont-parser@0.0.6/+esm.d.ts +0 -149
  33. package/script/deps/cdn.jsdelivr.net/npm/@marmooo/soundfont-parser@0.0.6/+esm.d.ts.map +0 -1
  34. package/script/deps/cdn.jsdelivr.net/npm/@marmooo/soundfont-parser@0.0.6/+esm.js +0 -190
  35. package/script/deps/cdn.jsdelivr.net/npm/midi-file@1.2.4/+esm.d.ts +0 -84
  36. package/script/deps/cdn.jsdelivr.net/npm/midi-file@1.2.4/+esm.d.ts.map +0 -1
  37. package/script/deps/cdn.jsdelivr.net/npm/midi-file@1.2.4/+esm.js +0 -221
package/esm/midy-GM2.d.ts CHANGED
@@ -1,37 +1,18 @@
1
1
  export class MidyGM2 {
2
2
  static channelSettings: {
3
3
  currentBufferSource: null;
4
- volume: number;
5
- pan: number;
6
- portamentoTime: number;
7
- reverbSendLevel: number;
8
- chorusSendLevel: number;
9
- vibratoRate: number;
10
- vibratoDepth: number;
11
- vibratoDelay: number;
4
+ program: number;
12
5
  bank: number;
13
6
  bankMSB: number;
14
7
  bankLSB: number;
15
8
  dataMSB: number;
16
9
  dataLSB: number;
17
- program: number;
18
- pitchBend: number;
10
+ rpnMSB: number;
11
+ rpnLSB: number;
19
12
  fineTuning: number;
20
13
  coarseTuning: number;
21
14
  modulationDepthRange: number;
22
15
  };
23
- static effectSettings: {
24
- expression: number;
25
- modulationDepth: number;
26
- sustainPedal: boolean;
27
- portamento: boolean;
28
- sostenutoPedal: boolean;
29
- softPedal: number;
30
- rpnMSB: number;
31
- rpnLSB: number;
32
- channelPressure: number;
33
- pitchBendRange: number;
34
- };
35
16
  static controllerDestinationSettings: {
36
17
  pitchControl: number;
37
18
  filterCutoffControl: number;
@@ -78,6 +59,7 @@ export class MidyGM2 {
78
59
  timeline: any[];
79
60
  instruments: any[];
80
61
  notePromises: any[];
62
+ exclusiveClassMap: Map<any, any>;
81
63
  defaultOptions: {
82
64
  reverbAlgorithm: (audioContext: any) => {
83
65
  input: any;
@@ -92,6 +74,18 @@ export class MidyGM2 {
92
74
  };
93
75
  };
94
76
  masterGain: any;
77
+ voiceParamsHandlers: {
78
+ modLfoToPitch: (channel: any, note: any, _prevValue: any) => void;
79
+ vibLfoToPitch: (channel: any, note: any, _prevValue: any) => void;
80
+ modLfoToFilterFc: (channel: any, note: any, _prevValue: any) => void;
81
+ modLfoToVolume: (channel: any, note: any) => void;
82
+ chorusEffectsSend: (_channel: any, note: any, prevValue: any) => void;
83
+ reverbEffectsSend: (_channel: any, note: any, prevValue: any) => void;
84
+ delayModLFO: (_channel: any, note: any, _prevValue: any) => void;
85
+ freqModLFO: (_channel: any, note: any, _prevValue: any) => void;
86
+ delayVibLFO: (channel: any, note: any, prevValue: any) => void;
87
+ freqVibLFO: (channel: any, note: any, _prevValue: any) => void;
88
+ };
95
89
  controlChangeHandlers: {
96
90
  0: (channelNumber: any, msb: any) => void;
97
91
  1: (channelNumber: any, modulation: any) => void;
@@ -142,8 +136,8 @@ export class MidyGM2 {
142
136
  merger: any;
143
137
  };
144
138
  createChannels(audioContext: any): any[];
145
- createNoteBuffer(instrumentKey: any, isSF3: any): Promise<any>;
146
- createNoteBufferNode(instrumentKey: any, isSF3: any): Promise<any>;
139
+ createNoteBuffer(voiceParams: any, isSF3: any): Promise<any>;
140
+ createNoteBufferNode(voiceParams: any, isSF3: any): Promise<any>;
147
141
  findPortamentoTarget(queueIndex: any): any;
148
142
  scheduleTimelineEvents(t: any, offset: any, queueIndex: any): Promise<any>;
149
143
  getQueueIndex(second: any): number;
@@ -190,21 +184,21 @@ export class MidyGM2 {
190
184
  cbToRatio(cb: any): number;
191
185
  centToHz(cent: any): number;
192
186
  calcSemitoneOffset(channel: any): any;
193
- calcPlaybackRate(instrumentKey: any, noteNumber: any, semitoneOffset: any): number;
194
187
  setPortamentoStartVolumeEnvelope(channel: any, note: any): void;
195
188
  setVolumeEnvelope(note: any): void;
196
- setPitch(note: any, semitoneOffset: any): void;
189
+ setPlaybackRate(note: any): void;
190
+ setPitch(channel: any, note: any): void;
197
191
  clampCutoffFrequency(frequency: any): number;
198
192
  setPortamentoStartFilterEnvelope(channel: any, note: any): void;
199
193
  setFilterEnvelope(channel: any, note: any): void;
200
194
  startModulation(channel: any, note: any, startTime: any): void;
201
195
  startVibrato(channel: any, note: any, startTime: any): void;
202
- createNote(channel: any, instrumentKey: any, noteNumber: any, velocity: any, startTime: any, portamento: any, isSF3: any): Promise<Note>;
196
+ createNote(channel: any, voice: any, noteNumber: any, velocity: any, startTime: any, portamento: any, isSF3: any): Promise<Note>;
203
197
  calcBank(channel: any, channelNumber: any): any;
204
198
  scheduleNoteOn(channelNumber: any, noteNumber: any, velocity: any, startTime: any, portamento: any): Promise<void>;
205
199
  noteOn(channelNumber: any, noteNumber: any, velocity: any, portamento: any): Promise<void>;
206
- stopNote(stopTime: any, endTime: any, scheduledNotes: any, index: any): Promise<any>;
207
- scheduleNoteRelease(channelNumber: any, noteNumber: any, _velocity: any, stopTime: any, portamentoNoteNumber: any, force: any): Promise<any> | undefined;
200
+ stopNote(endTime: any, stopTime: any, scheduledNotes: any, index: any): Promise<any>;
201
+ scheduleNoteRelease(channelNumber: any, noteNumber: any, _velocity: any, endTime: any, portamentoNoteNumber: any, force: any): Promise<any> | undefined;
208
202
  releaseNote(channelNumber: any, noteNumber: any, velocity: any, portamentoNoteNumber: any): Promise<any> | undefined;
209
203
  releaseSustainPedal(channelNumber: any, halfVelocity: any): any[];
210
204
  releaseSostenutoPedal(channelNumber: any, halfVelocity: any): any[];
@@ -212,7 +206,29 @@ export class MidyGM2 {
212
206
  handleProgramChange(channelNumber: any, program: any): void;
213
207
  handleChannelPressure(channelNumber: any, pressure: any): void;
214
208
  handlePitchBendMessage(channelNumber: any, lsb: any, msb: any): void;
215
- setPitchBend(channelNumber: any, pitchBend: any): void;
209
+ setPitchBend(channelNumber: any, value: any): void;
210
+ setModLfoToPitch(channel: any, note: any): void;
211
+ setModLfoToVolume(note: any): void;
212
+ setChorusEffectsSend(note: any, prevValue: any): void;
213
+ setReverbEffectsSend(note: any, prevValue: any): void;
214
+ setVibLfoToPitch(channel: any, note: any): void;
215
+ setModLfoToFilterFc(note: any): void;
216
+ setDelayModLFO(note: any): void;
217
+ setFreqModLFO(note: any): void;
218
+ createVoiceParamsHandlers(): {
219
+ modLfoToPitch: (channel: any, note: any, _prevValue: any) => void;
220
+ vibLfoToPitch: (channel: any, note: any, _prevValue: any) => void;
221
+ modLfoToFilterFc: (channel: any, note: any, _prevValue: any) => void;
222
+ modLfoToVolume: (channel: any, note: any) => void;
223
+ chorusEffectsSend: (_channel: any, note: any, prevValue: any) => void;
224
+ reverbEffectsSend: (_channel: any, note: any, prevValue: any) => void;
225
+ delayModLFO: (_channel: any, note: any, _prevValue: any) => void;
226
+ freqModLFO: (_channel: any, note: any, _prevValue: any) => void;
227
+ delayVibLFO: (channel: any, note: any, prevValue: any) => void;
228
+ freqVibLFO: (channel: any, note: any, _prevValue: any) => void;
229
+ };
230
+ getControllerState(channel: any, noteNumber: any, velocity: any): Float32Array;
231
+ applyVoiceParams(channel: any, controllerType: any): void;
216
232
  createControlChangeHandlers(): {
217
233
  0: (channelNumber: any, msb: any) => void;
218
234
  1: (channelNumber: any, modulation: any) => void;
@@ -239,7 +255,7 @@ export class MidyGM2 {
239
255
  126: () => void;
240
256
  127: () => void;
241
257
  };
242
- handleControlChange(channelNumber: any, controller: any, value: any): void;
258
+ handleControlChange(channelNumber: any, controllerType: any, value: any): void;
243
259
  setBankMSB(channelNumber: any, msb: any): void;
244
260
  updateModulation(channel: any): void;
245
261
  setModulationDepth(channelNumber: any, modulation: any): void;
@@ -266,9 +282,9 @@ export class MidyGM2 {
266
282
  setRPNMSB(channelNumber: any, value: any): void;
267
283
  setRPNLSB(channelNumber: any, value: any): void;
268
284
  dataEntryMSB(channelNumber: any, value: any): void;
269
- updateDetune(channel: any, detuneChange: any): void;
285
+ updateDetune(channel: any, detune: any): void;
270
286
  handlePitchBendRangeRPN(channelNumber: any): void;
271
- setPitchBendRange(channelNumber: any, pitchBendRange: any): void;
287
+ setPitchBendRange(channelNumber: any, pitchWheelSensitivity: any): void;
272
288
  handleFineTuningRPN(channelNumber: any): void;
273
289
  setFineTuning(channelNumber: any, fineTuning: any): void;
274
290
  handleCoarseTuningRPN(channelNumber: any): void;
@@ -315,7 +331,7 @@ export class MidyGM2 {
315
331
  scheduleTask(callback: any, startTime: any): Promise<any>;
316
332
  }
317
333
  declare class Note {
318
- constructor(noteNumber: any, velocity: any, startTime: any, instrumentKey: any);
334
+ constructor(noteNumber: any, velocity: any, startTime: any, voice: any, voiceParams: any);
319
335
  bufferSource: any;
320
336
  filterNode: any;
321
337
  volumeNode: any;
@@ -324,10 +340,14 @@ declare class Note {
324
340
  modulationDepth: any;
325
341
  vibratoLFO: any;
326
342
  vibratoDepth: any;
343
+ reverbEffectsSend: any;
344
+ chorusEffectsSend: any;
345
+ portamento: any;
327
346
  noteNumber: any;
328
347
  velocity: any;
329
348
  startTime: any;
330
- instrumentKey: any;
349
+ voice: any;
350
+ voiceParams: any;
331
351
  }
332
352
  export {};
333
353
  //# sourceMappingURL=midy-GM2.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"midy-GM2.d.ts","sourceRoot":"","sources":["../src/midy-GM2.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"midy-GM2.d.ts","sourceRoot":"","sources":["../src/midy-GM2.js"],"names":[],"mappings":"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"}