@marmooo/midy 0.3.3 → 0.3.4
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 +3 -3
- package/esm/midy-GM1.d.ts.map +1 -1
- package/esm/midy-GM1.js +47 -50
- package/esm/midy-GM2.d.ts +13 -31
- package/esm/midy-GM2.d.ts.map +1 -1
- package/esm/midy-GM2.js +185 -206
- package/esm/midy-GMLite.d.ts +3 -3
- package/esm/midy-GMLite.d.ts.map +1 -1
- package/esm/midy-GMLite.js +47 -50
- package/esm/midy.d.ts +14 -31
- package/esm/midy.d.ts.map +1 -1
- package/esm/midy.js +225 -225
- package/package.json +1 -1
- package/script/midy-GM1.d.ts +3 -3
- package/script/midy-GM1.d.ts.map +1 -1
- package/script/midy-GM1.js +47 -50
- package/script/midy-GM2.d.ts +13 -31
- package/script/midy-GM2.d.ts.map +1 -1
- package/script/midy-GM2.js +185 -206
- package/script/midy-GMLite.d.ts +3 -3
- package/script/midy-GMLite.d.ts.map +1 -1
- package/script/midy-GMLite.js +47 -50
- package/script/midy.d.ts +14 -31
- package/script/midy.d.ts.map +1 -1
- package/script/midy.js +225 -225
package/package.json
CHANGED
package/script/midy-GM1.d.ts
CHANGED
|
@@ -56,7 +56,7 @@ export class MidyGM1 {
|
|
|
56
56
|
addSoundFont(soundFont: any): void;
|
|
57
57
|
loadSoundFont(input: any): Promise<void>;
|
|
58
58
|
loadMIDI(input: any): Promise<void>;
|
|
59
|
-
|
|
59
|
+
createChannelAudioNodes(audioContext: any): {
|
|
60
60
|
gainL: any;
|
|
61
61
|
gainR: any;
|
|
62
62
|
merger: any;
|
|
@@ -84,7 +84,7 @@ export class MidyGM1 {
|
|
|
84
84
|
seekTo(second: any): void;
|
|
85
85
|
calcTotalTime(): number;
|
|
86
86
|
currentTime(): number;
|
|
87
|
-
processScheduledNotes(channel: any, callback: any): void;
|
|
87
|
+
processScheduledNotes(channel: any, scheduleTime: any, callback: any): void;
|
|
88
88
|
processActiveNotes(channel: any, scheduleTime: any, callback: any): void;
|
|
89
89
|
cbToRatio(cb: any): number;
|
|
90
90
|
rateToCent(rate: any): number;
|
|
@@ -101,7 +101,7 @@ export class MidyGM1 {
|
|
|
101
101
|
getAudioBuffer(programNumber: any, noteNumber: any, velocity: any, voiceParams: any, isSF3: any): Promise<any>;
|
|
102
102
|
createNote(channel: any, voice: any, noteNumber: any, velocity: any, startTime: any, isSF3: any): Promise<Note>;
|
|
103
103
|
handleExclusiveClass(note: any, channelNumber: any, startTime: any): void;
|
|
104
|
-
scheduleNoteOn(channelNumber: any, noteNumber: any, velocity: any, startTime: any
|
|
104
|
+
scheduleNoteOn(channelNumber: any, noteNumber: any, velocity: any, startTime: any): Promise<void>;
|
|
105
105
|
noteOn(channelNumber: any, noteNumber: any, velocity: any, scheduleTime: any): Promise<void>;
|
|
106
106
|
disconnectNote(note: any): void;
|
|
107
107
|
releaseNote(channel: any, note: any, endTime: any): Promise<any>;
|
package/script/midy-GM1.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midy-GM1.d.ts","sourceRoot":"","sources":["../src/midy-GM1.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"midy-GM1.d.ts","sourceRoot":"","sources":["../src/midy-GM1.js"],"names":[],"mappings":"AA4FA;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,yCAcC;IAED,oCAiBC;IAED;;;;MAeC;IAED,yCAaC;IAED,6DA2BC;IAED,4DASC;IAED,+EAkDC;IAED,mCAOC;IAED,0BA8DC;IAED,uDAEC;IAED,wDAEC;IAED,6EAEC;IAED;;;MA6EC;IAED,kGAeC;IAED,mGAgBC;IAED,wEAMC;IAED,uBAKC;IAED,aAGC;IAED,cAKC;IAED,wBAIC;IAED,0BAKC;IAED,wBAOC;IAED,sBAGC;IAED,4EASC;IAED,yEASC;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,kGAsCC;IAED,6FASC;IAED,gCASC;IAED,iEAoBC;IAED,qGAaC;IAED,sDASC;IAED,qFASC;IAED,sFAeC;IAED,oGA2BC;IAED,sFAGC;IAED,wFAGC;IAED,sEAUC;IAED,mEAQC;IAED,wDAKC;IAED,sDAOC;IAED,mDAMC;IAED,kDAKC;IAED;;;;;;;;;;;MA2BC;IAED,oFAMC;IAED,6EAgCC;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;AAv9CD;IAWE,0FAMC;IAhBD,cAAW;IACX,gBAAe;IACf,kBAAa;IACb,gBAAW;IACX,iBAAY;IACZ,wBAAmB;IACnB,iBAAY;IACZ,mBAAc;IACd,qBAAgB;IAGd,gBAA4B;IAC5B,cAAwB;IACxB,eAA0B;IAC1B,WAAkB;IAClB,iBAA8B;CAEjC"}
|
package/script/midy-GM1.js
CHANGED
|
@@ -73,13 +73,11 @@ const defaultControllerState = {
|
|
|
73
73
|
pitchWheel: { type: 14, defaultValue: 8192 / 16383 },
|
|
74
74
|
pitchWheelSensitivity: { type: 16, defaultValue: 2 / 128 },
|
|
75
75
|
link: { type: 127, defaultValue: 0 },
|
|
76
|
-
// bankMSB: { type: 128 + 0, defaultValue: 121, },
|
|
77
76
|
modulationDepth: { type: 128 + 1, defaultValue: 0 },
|
|
78
77
|
// dataMSB: { type: 128 + 6, defaultValue: 0, },
|
|
79
78
|
volume: { type: 128 + 7, defaultValue: 100 / 127 },
|
|
80
79
|
pan: { type: 128 + 10, defaultValue: 64 / 127 },
|
|
81
80
|
expression: { type: 128 + 11, defaultValue: 1 },
|
|
82
|
-
// bankLSB: { type: 128 + 32, defaultValue: 0, },
|
|
83
81
|
// dataLSB: { type: 128 + 38, defaultValue: 0, },
|
|
84
82
|
sustainPedal: { type: 128 + 64, defaultValue: 0 },
|
|
85
83
|
// rpnLSB: { type: 128 + 100, defaultValue: 127 },
|
|
@@ -108,6 +106,16 @@ class ControllerState {
|
|
|
108
106
|
}
|
|
109
107
|
}
|
|
110
108
|
}
|
|
109
|
+
const volumeEnvelopeKeys = [
|
|
110
|
+
"volDelay",
|
|
111
|
+
"volAttack",
|
|
112
|
+
"volHold",
|
|
113
|
+
"volDecay",
|
|
114
|
+
"volSustain",
|
|
115
|
+
"volRelease",
|
|
116
|
+
"initialAttenuation",
|
|
117
|
+
];
|
|
118
|
+
const volumeEnvelopeKeySet = new Set(volumeEnvelopeKeys);
|
|
111
119
|
const filterEnvelopeKeys = [
|
|
112
120
|
"modEnvToPitch",
|
|
113
121
|
"initialFilterFc",
|
|
@@ -117,20 +125,18 @@ const filterEnvelopeKeys = [
|
|
|
117
125
|
"modHold",
|
|
118
126
|
"modDecay",
|
|
119
127
|
"modSustain",
|
|
120
|
-
"modRelease",
|
|
121
|
-
"playbackRate",
|
|
122
128
|
];
|
|
123
129
|
const filterEnvelopeKeySet = new Set(filterEnvelopeKeys);
|
|
124
|
-
const
|
|
125
|
-
"
|
|
126
|
-
"
|
|
127
|
-
"
|
|
128
|
-
"
|
|
129
|
-
"
|
|
130
|
-
"
|
|
131
|
-
"
|
|
130
|
+
const pitchEnvelopeKeys = [
|
|
131
|
+
"modEnvToPitch",
|
|
132
|
+
"modDelay",
|
|
133
|
+
"modAttack",
|
|
134
|
+
"modHold",
|
|
135
|
+
"modDecay",
|
|
136
|
+
"modSustain",
|
|
137
|
+
"playbackRate",
|
|
132
138
|
];
|
|
133
|
-
const
|
|
139
|
+
const pitchEnvelopeKeySet = new Set(pitchEnvelopeKeys);
|
|
134
140
|
class MidyGM1 {
|
|
135
141
|
constructor(audioContext) {
|
|
136
142
|
Object.defineProperty(this, "mode", {
|
|
@@ -335,7 +341,7 @@ class MidyGM1 {
|
|
|
335
341
|
this.timeline = midiData.timeline;
|
|
336
342
|
this.totalTime = this.calcTotalTime();
|
|
337
343
|
}
|
|
338
|
-
|
|
344
|
+
createChannelAudioNodes(audioContext) {
|
|
339
345
|
const { gainLeft, gainRight } = this.panToGain(defaultControllerState.pan.defaultValue);
|
|
340
346
|
const gainL = new GainNode(audioContext, { gain: gainLeft });
|
|
341
347
|
const gainR = new GainNode(audioContext, { gain: gainRight });
|
|
@@ -356,7 +362,7 @@ class MidyGM1 {
|
|
|
356
362
|
isDrum: false,
|
|
357
363
|
state: new ControllerState(),
|
|
358
364
|
...this.constructor.channelSettings,
|
|
359
|
-
...this.
|
|
365
|
+
...this.createChannelAudioNodes(audioContext),
|
|
360
366
|
scheduledNotes: [],
|
|
361
367
|
sustainNotes: [],
|
|
362
368
|
};
|
|
@@ -594,7 +600,7 @@ class MidyGM1 {
|
|
|
594
600
|
stopChannelNotes(channelNumber, velocity, force, scheduleTime) {
|
|
595
601
|
const channel = this.channels[channelNumber];
|
|
596
602
|
const promises = [];
|
|
597
|
-
this.processScheduledNotes(channel, (note) => {
|
|
603
|
+
this.processScheduledNotes(channel, scheduleTime, (note) => {
|
|
598
604
|
const promise = this.scheduleNoteOff(channelNumber, note.noteNumber, velocity, scheduleTime, force);
|
|
599
605
|
this.notePromises.push(promise);
|
|
600
606
|
promises.push(promise);
|
|
@@ -653,7 +659,7 @@ class MidyGM1 {
|
|
|
653
659
|
const now = this.audioContext.currentTime;
|
|
654
660
|
return this.resumeTime + now - this.startTime - this.startDelay;
|
|
655
661
|
}
|
|
656
|
-
processScheduledNotes(channel, callback) {
|
|
662
|
+
processScheduledNotes(channel, scheduleTime, callback) {
|
|
657
663
|
const scheduledNotes = channel.scheduledNotes;
|
|
658
664
|
for (let i = 0; i < scheduledNotes.length; i++) {
|
|
659
665
|
const note = scheduledNotes[i];
|
|
@@ -661,6 +667,8 @@ class MidyGM1 {
|
|
|
661
667
|
continue;
|
|
662
668
|
if (note.ending)
|
|
663
669
|
continue;
|
|
670
|
+
if (note.startTime < scheduleTime)
|
|
671
|
+
continue;
|
|
664
672
|
callback(note);
|
|
665
673
|
}
|
|
666
674
|
}
|
|
@@ -673,7 +681,7 @@ class MidyGM1 {
|
|
|
673
681
|
if (note.ending)
|
|
674
682
|
continue;
|
|
675
683
|
if (scheduleTime < note.startTime)
|
|
676
|
-
|
|
684
|
+
break;
|
|
677
685
|
callback(note);
|
|
678
686
|
}
|
|
679
687
|
}
|
|
@@ -697,7 +705,7 @@ class MidyGM1 {
|
|
|
697
705
|
return tuning + pitch;
|
|
698
706
|
}
|
|
699
707
|
updateChannelDetune(channel, scheduleTime) {
|
|
700
|
-
this.processScheduledNotes(channel, (note) => {
|
|
708
|
+
this.processScheduledNotes(channel, scheduleTime, (note) => {
|
|
701
709
|
this.updateDetune(channel, note, scheduleTime);
|
|
702
710
|
});
|
|
703
711
|
}
|
|
@@ -847,7 +855,7 @@ class MidyGM1 {
|
|
|
847
855
|
}
|
|
848
856
|
this.exclusiveClassNotes[exclusiveClass] = [note, channelNumber];
|
|
849
857
|
}
|
|
850
|
-
async scheduleNoteOn(channelNumber, noteNumber, velocity, startTime
|
|
858
|
+
async scheduleNoteOn(channelNumber, noteNumber, velocity, startTime) {
|
|
851
859
|
const channel = this.channels[channelNumber];
|
|
852
860
|
const bankNumber = channel.bank;
|
|
853
861
|
const soundFontIndex = this.soundFontTable[channel.programNumber].get(bankNumber);
|
|
@@ -859,7 +867,6 @@ class MidyGM1 {
|
|
|
859
867
|
return;
|
|
860
868
|
const isSF3 = soundFont.parsed.info.version.major === 3;
|
|
861
869
|
const note = await this.createNote(channel, voice, noteNumber, velocity, startTime, isSF3);
|
|
862
|
-
note.noteOffEvent = noteOffEvent;
|
|
863
870
|
note.volumeEnvelopeNode.connect(channel.gainL);
|
|
864
871
|
note.volumeEnvelopeNode.connect(channel.gainR);
|
|
865
872
|
if (0.5 <= channel.state.sustainPedal) {
|
|
@@ -1051,11 +1058,12 @@ class MidyGM1 {
|
|
|
1051
1058
|
return state;
|
|
1052
1059
|
}
|
|
1053
1060
|
applyVoiceParams(channel, controllerType, scheduleTime) {
|
|
1054
|
-
this.processScheduledNotes(channel, (note) => {
|
|
1061
|
+
this.processScheduledNotes(channel, scheduleTime, (note) => {
|
|
1055
1062
|
const controllerState = this.getControllerState(channel, note.noteNumber, note.velocity);
|
|
1056
1063
|
const voiceParams = note.voice.getParams(controllerType, controllerState);
|
|
1057
|
-
let
|
|
1058
|
-
let
|
|
1064
|
+
let applyVolumeEnvelope = false;
|
|
1065
|
+
let applyFilterEnvelope = false;
|
|
1066
|
+
let applyPitchEnvelope = false;
|
|
1059
1067
|
for (const [key, value] of Object.entries(voiceParams)) {
|
|
1060
1068
|
const prevValue = note.voiceParams[key];
|
|
1061
1069
|
if (value === prevValue)
|
|
@@ -1064,32 +1072,21 @@ class MidyGM1 {
|
|
|
1064
1072
|
if (key in this.voiceParamsHandlers) {
|
|
1065
1073
|
this.voiceParamsHandlers[key](channel, note, prevValue, scheduleTime);
|
|
1066
1074
|
}
|
|
1067
|
-
else
|
|
1068
|
-
if (
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
if (key in voiceParams)
|
|
1075
|
-
noteVoiceParams[key] = voiceParams[key];
|
|
1076
|
-
}
|
|
1077
|
-
this.setFilterEnvelope(note, scheduleTime);
|
|
1078
|
-
this.setPitchEnvelope(note, scheduleTime);
|
|
1079
|
-
}
|
|
1080
|
-
else if (volumeEnvelopeKeySet.has(key)) {
|
|
1081
|
-
if (appliedVolumeEnvelope)
|
|
1082
|
-
continue;
|
|
1083
|
-
appliedVolumeEnvelope = true;
|
|
1084
|
-
const noteVoiceParams = note.voiceParams;
|
|
1085
|
-
for (let i = 0; i < volumeEnvelopeKeys.length; i++) {
|
|
1086
|
-
const key = volumeEnvelopeKeys[i];
|
|
1087
|
-
if (key in voiceParams)
|
|
1088
|
-
noteVoiceParams[key] = voiceParams[key];
|
|
1089
|
-
}
|
|
1090
|
-
this.setVolumeEnvelope(note, scheduleTime);
|
|
1075
|
+
else {
|
|
1076
|
+
if (volumeEnvelopeKeySet.has(key))
|
|
1077
|
+
applyVolumeEnvelope = true;
|
|
1078
|
+
if (filterEnvelopeKeySet.has(key))
|
|
1079
|
+
applyFilterEnvelope = true;
|
|
1080
|
+
if (pitchEnvelopeKeySet.has(key))
|
|
1081
|
+
applyPitchEnvelope = true;
|
|
1091
1082
|
}
|
|
1092
1083
|
}
|
|
1084
|
+
if (applyVolumeEnvelope)
|
|
1085
|
+
this.setVolumeEnvelope(note, scheduleTime);
|
|
1086
|
+
if (applyFilterEnvelope)
|
|
1087
|
+
this.setFilterEnvelope(note, scheduleTime);
|
|
1088
|
+
if (applyPitchEnvelope)
|
|
1089
|
+
this.setPitchEnvelope(note, scheduleTime);
|
|
1093
1090
|
});
|
|
1094
1091
|
}
|
|
1095
1092
|
createControlChangeHandlers() {
|
|
@@ -1120,7 +1117,7 @@ class MidyGM1 {
|
|
|
1120
1117
|
}
|
|
1121
1118
|
updateModulation(channel, scheduleTime) {
|
|
1122
1119
|
const depth = channel.state.modulationDepth * channel.modulationDepthRange;
|
|
1123
|
-
this.processScheduledNotes(channel, (note) => {
|
|
1120
|
+
this.processScheduledNotes(channel, scheduleTime, (note) => {
|
|
1124
1121
|
if (note.modulationDepth) {
|
|
1125
1122
|
note.modulationDepth.gain.setValueAtTime(depth, scheduleTime);
|
|
1126
1123
|
}
|
|
@@ -1181,7 +1178,7 @@ class MidyGM1 {
|
|
|
1181
1178
|
scheduleTime ??= this.audioContext.currentTime;
|
|
1182
1179
|
channel.state.sustainPedal = value / 127;
|
|
1183
1180
|
if (64 <= value) {
|
|
1184
|
-
this.processScheduledNotes(channel, (note) => {
|
|
1181
|
+
this.processScheduledNotes(channel, scheduleTime, (note) => {
|
|
1185
1182
|
channel.sustainNotes.push(note);
|
|
1186
1183
|
});
|
|
1187
1184
|
}
|
package/script/midy-GM2.d.ts
CHANGED
|
@@ -14,16 +14,12 @@ export class MidyGM2 {
|
|
|
14
14
|
fineTuning: number;
|
|
15
15
|
coarseTuning: number;
|
|
16
16
|
};
|
|
17
|
-
constructor(audioContext: any
|
|
18
|
-
reverbAlgorithm: (audioContext: any) => {
|
|
19
|
-
input: any;
|
|
20
|
-
output: any;
|
|
21
|
-
};
|
|
22
|
-
});
|
|
17
|
+
constructor(audioContext: any);
|
|
23
18
|
mode: string;
|
|
24
19
|
masterFineTuning: number;
|
|
25
20
|
masterCoarseTuning: number;
|
|
26
21
|
reverb: {
|
|
22
|
+
algorithm: string;
|
|
27
23
|
time: number;
|
|
28
24
|
feedback: number;
|
|
29
25
|
};
|
|
@@ -56,19 +52,7 @@ export class MidyGM2 {
|
|
|
56
52
|
notePromises: any[];
|
|
57
53
|
exclusiveClassNotes: any[];
|
|
58
54
|
drumExclusiveClassNotes: any[];
|
|
59
|
-
defaultOptions: {
|
|
60
|
-
reverbAlgorithm: (audioContext: any) => {
|
|
61
|
-
input: any;
|
|
62
|
-
output: any;
|
|
63
|
-
};
|
|
64
|
-
};
|
|
65
55
|
audioContext: any;
|
|
66
|
-
options: {
|
|
67
|
-
reverbAlgorithm: (audioContext: any) => {
|
|
68
|
-
input: any;
|
|
69
|
-
output: any;
|
|
70
|
-
};
|
|
71
|
-
};
|
|
72
56
|
masterVolume: any;
|
|
73
57
|
scheduler: any;
|
|
74
58
|
schedulerBuffer: any;
|
|
@@ -89,7 +73,7 @@ export class MidyGM2 {
|
|
|
89
73
|
reverbEffect: {
|
|
90
74
|
input: any;
|
|
91
75
|
output: any;
|
|
92
|
-
};
|
|
76
|
+
} | undefined;
|
|
93
77
|
chorusEffect: {
|
|
94
78
|
input: any;
|
|
95
79
|
output: any;
|
|
@@ -103,7 +87,7 @@ export class MidyGM2 {
|
|
|
103
87
|
addSoundFont(soundFont: any): void;
|
|
104
88
|
loadSoundFont(input: any): Promise<void>;
|
|
105
89
|
loadMIDI(input: any): Promise<void>;
|
|
106
|
-
|
|
90
|
+
createChannelAudioNodes(audioContext: any): {
|
|
107
91
|
gainL: any;
|
|
108
92
|
gainR: any;
|
|
109
93
|
merger: any;
|
|
@@ -133,7 +117,7 @@ export class MidyGM2 {
|
|
|
133
117
|
seekTo(second: any): void;
|
|
134
118
|
calcTotalTime(): number;
|
|
135
119
|
currentTime(): number;
|
|
136
|
-
processScheduledNotes(channel: any, callback: any): void;
|
|
120
|
+
processScheduledNotes(channel: any, scheduleTime: any, callback: any): void;
|
|
137
121
|
processActiveNotes(channel: any, scheduleTime: any, callback: any): void;
|
|
138
122
|
createConvolutionReverbImpulse(audioContext: any, decay: any, preDecay: any): any;
|
|
139
123
|
createConvolutionReverb(audioContext: any, impulse: any): {
|
|
@@ -148,6 +132,10 @@ export class MidyGM2 {
|
|
|
148
132
|
input: any;
|
|
149
133
|
output: any;
|
|
150
134
|
};
|
|
135
|
+
createReverbEffect(audioContext: any): {
|
|
136
|
+
input: any;
|
|
137
|
+
output: any;
|
|
138
|
+
} | undefined;
|
|
151
139
|
createChorusEffect(audioContext: any): {
|
|
152
140
|
input: any;
|
|
153
141
|
output: any;
|
|
@@ -181,8 +169,7 @@ export class MidyGM2 {
|
|
|
181
169
|
calcBank(channel: any): any;
|
|
182
170
|
handleExclusiveClass(note: any, channelNumber: any, startTime: any): void;
|
|
183
171
|
handleDrumExclusiveClass(note: any, channelNumber: any, startTime: any): void;
|
|
184
|
-
|
|
185
|
-
scheduleNoteOn(channelNumber: any, noteNumber: any, velocity: any, startTime: any, noteOffEvent: any): Promise<void>;
|
|
172
|
+
scheduleNoteOn(channelNumber: any, noteNumber: any, velocity: any, startTime: any): Promise<void>;
|
|
186
173
|
noteOn(channelNumber: any, noteNumber: any, velocity: any, scheduleTime: any): Promise<void>;
|
|
187
174
|
disconnectNote(note: any): void;
|
|
188
175
|
releaseNote(channel: any, note: any, endTime: any): Promise<any>;
|
|
@@ -226,18 +213,17 @@ export class MidyGM2 {
|
|
|
226
213
|
setModulationDepth(channelNumber: any, modulation: any, scheduleTime: any): void;
|
|
227
214
|
updatePortamento(channel: any, scheduleTime: any): void;
|
|
228
215
|
setPortamentoTime(channelNumber: any, portamentoTime: any, scheduleTime: any): void;
|
|
229
|
-
setKeyBasedVolume(channel: any, scheduleTime: any): void;
|
|
230
216
|
setVolume(channelNumber: any, volume: any, scheduleTime: any): void;
|
|
231
217
|
panToGain(pan: any): {
|
|
232
218
|
gainLeft: number;
|
|
233
219
|
gainRight: number;
|
|
234
220
|
};
|
|
235
|
-
setKeyBasedPan(channel: any, scheduleTime: any): void;
|
|
236
221
|
setPan(channelNumber: any, pan: any, scheduleTime: any): void;
|
|
237
222
|
setExpression(channelNumber: any, expression: any, scheduleTime: any): void;
|
|
238
223
|
setBankLSB(channelNumber: any, lsb: any): void;
|
|
239
224
|
dataEntryLSB(channelNumber: any, value: any, scheduleTime: any): void;
|
|
240
225
|
updateChannelVolume(channel: any, scheduleTime: any): void;
|
|
226
|
+
updateKeyBasedVolume(channel: any, scheduleTime: any): void;
|
|
241
227
|
setSustainPedal(channelNumber: any, value: any, scheduleTime: any): void;
|
|
242
228
|
setPortamento(channelNumber: any, value: any, scheduleTime: any): void;
|
|
243
229
|
setSostenutoPedal(channelNumber: any, value: any, scheduleTime: any): void;
|
|
@@ -304,9 +290,8 @@ export class MidyGM2 {
|
|
|
304
290
|
getLFOAmplitudeDepth(channel: any): number;
|
|
305
291
|
setControllerParameters(channel: any, note: any, table: any): void;
|
|
306
292
|
handlePressureSysEx(data: any, tableName: any): void;
|
|
307
|
-
initControlTable():
|
|
308
|
-
|
|
309
|
-
applyControlTable(channel: any, controllerType: any): void;
|
|
293
|
+
initControlTable(): Int8Array<ArrayBuffer>;
|
|
294
|
+
applyControlTable(channel: any, controllerType: any, scheduleTime: any): void;
|
|
310
295
|
handleControlChangeSysEx(data: any): void;
|
|
311
296
|
getKeyBasedInstrumentControlValue(channel: any, keyNumber: any, controllerType: any): any;
|
|
312
297
|
handleKeyBasedInstrumentControlSysEx(data: any, scheduleTime: any): void;
|
|
@@ -322,9 +307,6 @@ declare class Note {
|
|
|
322
307
|
filterDepth: any;
|
|
323
308
|
volumeEnvelopeNode: any;
|
|
324
309
|
volumeDepth: any;
|
|
325
|
-
volumeNode: any;
|
|
326
|
-
gainL: any;
|
|
327
|
-
gainR: any;
|
|
328
310
|
modulationLFO: any;
|
|
329
311
|
modulationDepth: any;
|
|
330
312
|
vibratoLFO: any;
|
package/script/midy-GM2.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midy-GM2.d.ts","sourceRoot":"","sources":["../src/midy-GM2.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"midy-GM2.d.ts","sourceRoot":"","sources":["../src/midy-GM2.js"],"names":[],"mappings":"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"}
|