@marmooo/midy 0.3.0 → 0.3.2

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/README.md CHANGED
@@ -9,7 +9,8 @@ This library provides several files depending on the implementation level.
9
9
  [en](https://amei.or.jp/midistandardcommittee/Recommended_Practice/e/gml-v1.pdf),
10
10
  [ja](https://amei.or.jp/midistandardcommittee/Recommended_Practice/General_MIDI_Lite_v1.0_japanese.pdf))
11
11
  - midy-GM1.js: support minimal GM1 (ref:
12
- [en](https://archive.org/details/complete_midi_96-1-3/page/n1/mode/2up),
12
+ [en](https://midi.org/midi-1-0-detailed-specification),
13
+ [en full](https://archive.org/details/complete_midi_96-1-3/page/n1/mode/2up),
13
14
  [ja](https://amei.or.jp/midistandardcommittee/MIDI1.0.pdf))
14
15
  - midy-GM2.js: support minimal GM2 (ref:
15
16
  [en v1.2a](https://amei.or.jp/midistandardcommittee/Recommended_Practice/e/GM2-v12a.pdf),
package/esm/midy-GM1.d.ts CHANGED
@@ -50,20 +50,7 @@ export class MidyGM1 {
50
50
  delayVibLFO: (_channel: any, _note: any, _prevValue: any, _scheduleTime: any) => void;
51
51
  freqVibLFO: (_channel: any, _note: any, _prevValue: any, _scheduleTime: any) => void;
52
52
  };
53
- controlChangeHandlers: {
54
- 1: (channelNumber: any, modulation: any, scheduleTime: any) => void;
55
- 6: (channelNumber: any, value: any, scheduleTime: any) => void;
56
- 7: (channelNumber: any, volume: any, scheduleTime: any) => void;
57
- 10: (channelNumber: any, pan: any, scheduleTime: any) => void;
58
- 11: (channelNumber: any, expression: any, scheduleTime: any) => void;
59
- 38: (channelNumber: any, value: any, scheduleTime: any) => void;
60
- 64: (channelNumber: any, value: any, scheduleTime: any) => void;
61
- 100: (channelNumber: any, value: any) => void;
62
- 101: (channelNumber: any, value: any) => void;
63
- 120: (channelNumber: any, _value: any, scheduleTime: any) => Promise<any[]>;
64
- 121: (channelNumber: any) => void;
65
- 123: (channelNumber: any, _value: any, scheduleTime: any) => Promise<any[]>;
66
- };
53
+ controlChangeHandlers: any[];
67
54
  channels: any[];
68
55
  initSoundFontTable(): any[];
69
56
  addSoundFont(soundFont: any): void;
@@ -76,8 +63,8 @@ export class MidyGM1 {
76
63
  };
77
64
  createChannels(audioContext: any): any[];
78
65
  createNoteBuffer(voiceParams: any, isSF3: any): Promise<any>;
79
- createBufferSource(audioBuffer: any, voiceParams: any): any;
80
- scheduleTimelineEvents(t: any, offset: any, queueIndex: any): Promise<any>;
66
+ createBufferSource(voiceParams: any, audioBuffer: any): any;
67
+ scheduleTimelineEvents(t: any, resumeTime: any, queueIndex: any): Promise<any>;
81
68
  getQueueIndex(second: any): number;
82
69
  playNotes(): Promise<any>;
83
70
  ticksToSecond(ticks: any, secondsPerBeat: any): number;
@@ -87,6 +74,7 @@ export class MidyGM1 {
87
74
  instruments: Set<any>;
88
75
  timeline: any[];
89
76
  };
77
+ stopActiveNotes(channelNumber: any, velocity: any, force: any, scheduleTime: any): Promise<any[]>;
90
78
  stopChannelNotes(channelNumber: any, velocity: any, force: any, scheduleTime: any): Promise<any[]>;
91
79
  stopNotes(velocity: any, force: any, scheduleTime: any): Promise<any[]>;
92
80
  start(): Promise<void>;
@@ -97,8 +85,7 @@ export class MidyGM1 {
97
85
  calcTotalTime(): number;
98
86
  currentTime(): number;
99
87
  processScheduledNotes(channel: any, callback: any): void;
100
- getActiveNotes(channel: any, scheduleTime: any): SparseMap;
101
- getActiveNote(noteList: any, scheduleTime: any): any;
88
+ processActiveNotes(channel: any, scheduleTime: any, callback: any): void;
102
89
  cbToRatio(cb: any): number;
103
90
  rateToCent(rate: any): number;
104
91
  centToRate(cent: any): number;
@@ -114,11 +101,12 @@ export class MidyGM1 {
114
101
  getAudioBuffer(programNumber: any, noteNumber: any, velocity: any, voiceParams: any, isSF3: any): Promise<any>;
115
102
  createNote(channel: any, voice: any, noteNumber: any, velocity: any, startTime: any, isSF3: any): Promise<Note>;
116
103
  handleExclusiveClass(note: any, channelNumber: any, startTime: any): void;
117
- scheduleNoteOn(channelNumber: any, noteNumber: any, velocity: any, startTime: any): Promise<void>;
104
+ scheduleNoteOn(channelNumber: any, noteNumber: any, velocity: any, startTime: any, noteOffEvent: any): Promise<void>;
118
105
  noteOn(channelNumber: any, noteNumber: any, velocity: any, scheduleTime: any): Promise<void>;
119
- disconnectNote(note: any, scheduledNotes: any, index: any): void;
120
- stopNote(endTime: any, stopTime: any, scheduledNotes: any, index: any): Promise<any>;
121
- scheduleNoteOff(channelNumber: any, noteNumber: any, _velocity: any, endTime: any, force: any): Promise<any> | undefined;
106
+ disconnectNote(note: any): void;
107
+ stopNote(channel: any, note: any, endTime: any, stopTime: any): Promise<any>;
108
+ scheduleNoteOff(channelNumber: any, note: any, _velocity: any, endTime: any, force: any): Promise<any> | undefined;
109
+ findNoteOffTarget(channel: any, noteNumber: any): any;
122
110
  noteOff(channelNumber: any, noteNumber: any, velocity: any, scheduleTime: any): Promise<any> | undefined;
123
111
  releaseSustainPedal(channelNumber: any, halfVelocity: any, scheduleTime: any): (Promise<any> | undefined)[];
124
112
  handleMIDIMessage(statusByte: any, data1: any, data2: any, scheduleTime: any): void | Promise<any>;
@@ -144,20 +132,7 @@ export class MidyGM1 {
144
132
  };
145
133
  getControllerState(channel: any, noteNumber: any, velocity: any): Float32Array<any>;
146
134
  applyVoiceParams(channel: any, controllerType: any, scheduleTime: any): void;
147
- createControlChangeHandlers(): {
148
- 1: (channelNumber: any, modulation: any, scheduleTime: any) => void;
149
- 6: (channelNumber: any, value: any, scheduleTime: any) => void;
150
- 7: (channelNumber: any, volume: any, scheduleTime: any) => void;
151
- 10: (channelNumber: any, pan: any, scheduleTime: any) => void;
152
- 11: (channelNumber: any, expression: any, scheduleTime: any) => void;
153
- 38: (channelNumber: any, value: any, scheduleTime: any) => void;
154
- 64: (channelNumber: any, value: any, scheduleTime: any) => void;
155
- 100: (channelNumber: any, value: any) => void;
156
- 101: (channelNumber: any, value: any) => void;
157
- 120: (channelNumber: any, _value: any, scheduleTime: any) => Promise<any[]>;
158
- 121: (channelNumber: any) => void;
159
- 123: (channelNumber: any, _value: any, scheduleTime: any) => Promise<any[]>;
160
- };
135
+ createControlChangeHandlers(): any[];
161
136
  handleControlChange(channelNumber: any, controllerType: any, value: any, scheduleTime: any): void;
162
137
  updateModulation(channel: any, scheduleTime: any): void;
163
138
  setModulationDepth(channelNumber: any, modulation: any, scheduleTime: any): void;
@@ -185,7 +160,7 @@ export class MidyGM1 {
185
160
  setCoarseTuning(channelNumber: any, value: any, scheduleTime: any): void;
186
161
  allSoundOff(channelNumber: any, _value: any, scheduleTime: any): Promise<any[]>;
187
162
  resetAllStates(channelNumber: any): void;
188
- resetAllControllers(channelNumber: any): void;
163
+ resetAllControllers(channelNumber: any, _value: any, scheduleTime: any): void;
189
164
  allNotesOff(channelNumber: any, _value: any, scheduleTime: any): Promise<any[]>;
190
165
  handleUniversalNonRealTimeExclusiveMessage(data: any, scheduleTime: any): void;
191
166
  GM1SystemOn(scheduleTime: any): void;
@@ -195,21 +170,9 @@ export class MidyGM1 {
195
170
  handleSysEx(data: any, scheduleTime: any): void;
196
171
  scheduleTask(callback: any, scheduleTime: any): Promise<any>;
197
172
  }
198
- declare class SparseMap {
199
- constructor(size: any);
200
- data: any[];
201
- activeIndices: any[];
202
- set(key: any, value: any): void;
203
- get(key: any): any;
204
- delete(key: any): boolean;
205
- has(key: any): boolean;
206
- get size(): number;
207
- clear(): void;
208
- forEach(callback: any): void;
209
- [Symbol.iterator](): Generator<any[], void, unknown>;
210
- }
211
173
  declare class Note {
212
174
  constructor(noteNumber: any, velocity: any, startTime: any, voice: any, voiceParams: any);
175
+ index: number;
213
176
  bufferSource: any;
214
177
  filterNode: any;
215
178
  filterDepth: any;
@@ -1 +1 @@
1
- {"version":3,"file":"midy-GM1.d.ts","sourceRoot":"","sources":["../src/midy-GM1.js"],"names":[],"mappings":"AAiJA;IAwBE;;;;;;;;;;;MAWE;IAEF,+BAcC;IAlDD,aAAa;IACb,oBAAiB;IACjB,qBAAmB;IACnB,kBAAc;IACd,0BAAwB;IACxB,kBAAc;IACd,mBAAiB;IACjB,kBAAc;IACd,mBAAe;IACf,kBAAgB;IAChB,sBAA2C;IAC3C,kCAA+B;IAC/B,gCAA6B;IAC7B,mBAAkB;IAClB,mBAAkB;IAClB,kBAAiB;IACjB,oBAAmB;IACnB,mBAAkB;IAClB,gBAAc;IACd,mBAAiB;IACjB,oBAAkB;IAClB,2BAAqC;IAgBnC,kBAAgC;IAChC,kBAA8C;IAC9C,eAAwD;IACxD,qBAGE;IACF;;;;;;;;;;;MAA2D;IAC3D;;;;;;;;;;;;;MAA+D;IAC/D,gBAAiD;IAMnD,4BAMC;IAED,mCAWC;IAED,gDAMC;IAED,sCASC;IAED;;;;MAeC;IAED,yCAaC;IAED,6DA2BC;IAED,4DASC;IAED,2EAsDC;IAED,mCAOC;IAED,0BAoDC;IAED,uDAEC;IAED,wDAEC;IAED,6EAEC;IAED;;;MA4EC;IAED,mGAgBC;IAED,wEAMC;IAED,uBAKC;IAED,aAMC;IAED,cAKC;IAED,wBAIC;IAED,0BAKC;IAED,wBAOC;IAED,sBAGC;IAED,yDAQC;IAED,2DASC;IAED,qDAQC;IAED,2BAEC;IAED,8BAEC;IAED,8BAEC;IAED,4BAEC;IAED,qCAMC;IAED,2DAIC;IAED,+DAIC;IAED,sDAeC;IAED,qDAoBC;IAED,6CAIC;IAED,sDAsBC;IAED,kEAoBC;IAED,+GA0BC;IAED,gHAwCC;IAED,0EAiBC;IAED,kGAqCC;IAED,6FAQC;IAED,iEAUC;IAED,qFAgBC;IAED,yHAuBC;IAED,yGASC;IAED,4GAeC;IAED,mGA2BC;IAED,sFAGC;IAED,wFAGC;IAED,sEAUC;IAED,mEAQC;IAED,wDAKC;IAED,sDAOC;IAED,mDAMC;IAED,kDAKC;IAED;;;;;;;;;;;MA2BC;IAED,oFAMC;IAED,6EA2CC;IAED;;;;;;;;;;;;;MAeC;IAED,kGAWC;IAED,wDAUC;IAED,iFAKC;IAED,oEAKC;IAED;;;MAMC;IAED,8DAKC;IAED,4EAKC;IAED,sEAGC;IAED,2DAUC;IAED,yEAWC;IAED,kFAeC;IAED,2DAMC;IAED,uDAkBC;IAED,gDAEC;IAED,gDAEC;IAED,sEAGC;IAED,qEAKC;IAED,2EAUC;IAED,iEAKC;IAED,uEAQC;IAED,mEAKC;IAED,yEAQC;IAED,gFAGC;IAED,yCAUC;IAGD,8CAqBC;IAED,gFAGC;IAED,+EAgBC;IAED,qCAWC;IAED,4EAaC;IAED,4DAGC;IAED,sDASC;IAED,gDAYC;IAGD,6DAgBC;CACF;AA99CD;IACE,uBAGC;IAFC,YAA2B;IAC3B,qBAAuB;IAGzB,gCAKC;IAED,mBAEC;IAED,0BAUC;IAED,uBAEC;IAED,mBAEC;IAED,cAMC;IASD,6BAKC;IAZD,qDAKC;CAQF;AAED;IASE,0FAMC;IAdD,kBAAa;IACb,gBAAW;IACX,iBAAY;IACZ,wBAAmB;IACnB,iBAAY;IACZ,mBAAc;IACd,qBAAgB;IAGd,gBAA4B;IAC5B,cAAwB;IACxB,eAA0B;IAC1B,WAAkB;IAClB,iBAA8B;CAEjC"}
1
+ {"version":3,"file":"midy-GM1.d.ts","sourceRoot":"","sources":["../src/midy-GM1.js"],"names":[],"mappings":"AAqFA;IAwBE;;;;;;;;;;;MAWE;IAEF,+BAcC;IAlDD,aAAa;IACb,oBAAiB;IACjB,qBAAmB;IACnB,kBAAc;IACd,0BAAwB;IACxB,kBAAc;IACd,mBAAiB;IACjB,kBAAc;IACd,mBAAe;IACf,kBAAgB;IAChB,sBAA2C;IAC3C,kCAA+B;IAC/B,gCAA6B;IAC7B,mBAAkB;IAClB,mBAAkB;IAClB,kBAAiB;IACjB,oBAAmB;IACnB,mBAAkB;IAClB,gBAAc;IACd,mBAAiB;IACjB,oBAAkB;IAClB,2BAAqC;IAgBnC,kBAAgC;IAChC,kBAA8C;IAC9C,eAAwD;IACxD,qBAGE;IACF;;;;;;;;;;;MAA2D;IAC3D,6BAA+D;IAC/D,gBAAiD;IAMnD,4BAMC;IAED,mCAWC;IAED,gDAMC;IAED,sCASC;IAED;;;;MAeC;IAED,yCAaC;IAED,6DA2BC;IAED,4DASC;IAED,+EA6CC;IAED,mCAOC;IAED,0BA8DC;IAED,uDAEC;IAED,wDAEC;IAED,6EAEC;IAED;;;MAoGC;IAED,kGAgBC;IAED,mGAgBC;IAED,wEAMC;IAED,uBAKC;IAED,aAGC;IAED,cAKC;IAED,wBAIC;IAED,0BAKC;IAED,wBAOC;IAED,sBAGC;IAED,yDAQC;IAED,yEAWC;IAED,2BAEC;IAED,8BAEC;IAED,8BAEC;IAED,4BAEC;IAED,qCAMC;IAED,2DAIC;IAED,+DAIC;IAED,sDAeC;IAED,qDAoBC;IAED,6CAIC;IAED,sDAsBC;IAED,kEAoBC;IAED,+GA0BC;IAED,gHAyCC;IAED,0EAiBC;IAED,qHAoDC;IAED,6FASC;IAED,gCASC;IAED,6EAgBC;IAED,mHAgBC;IAED,sDASC;IAED,yGAWC;IAED,4GAeC;IAED,mGA2BC;IAED,sFAGC;IAED,wFAGC;IAED,sEAUC;IAED,mEAQC;IAED,wDAKC;IAED,sDAOC;IAED,mDAMC;IAED,kDAKC;IAED;;;;;;;;;;;MA2BC;IAED,oFAMC;IAED,6EA2CC;IAED,qCAcC;IAED,kGAWC;IAED,wDAUC;IAED,iFAKC;IAED,oEAKC;IAED;;;MAMC;IAED,8DAKC;IAED,4EAKC;IAED,sEAGC;IAED,2DAUC;IAED,yEAWC;IAED,kFAeC;IAED,2DAMC;IAED,uDAkBC;IAED,gDAEC;IAED,gDAEC;IAED,sEAGC;IAED,qEAKC;IAED,2EAUC;IAED,iEAKC;IAED,uEAQC;IAED,mEAKC;IAED,yEAQC;IAED,gFAGC;IAED,yCAqBC;IAGD,8EAgCC;IAED,gFAGC;IAED,+EAgBC;IAED,qCAWC;IAED,4EAaC;IAED,4DAGC;IAED,sDASC;IAED,gDAYC;IAGD,6DAgBC;CACF;AA9+CD;IAUE,0FAMC;IAfD,cAAW;IACX,kBAAa;IACb,gBAAW;IACX,iBAAY;IACZ,wBAAmB;IACnB,iBAAY;IACZ,mBAAc;IACd,qBAAgB;IAGd,gBAA4B;IAC5B,cAAwB;IACxB,eAA0B;IAC1B,WAAkB;IAClB,iBAA8B;CAEjC"}