tone 14.8.36 → 14.8.37
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/Tone/component/analysis/Meter.test.ts +25 -0
- package/Tone/component/analysis/Meter.ts +7 -5
- package/Tone/core/clock/Ticker.ts +11 -5
- package/Tone/core/context/Context.test.ts +2 -0
- package/Tone/core/context/Context.ts +29 -38
- package/Tone/core/context/ToneAudioBuffer.ts +52 -27
- package/Tone/event/Pattern.test.ts +31 -5
- package/Tone/event/Pattern.ts +19 -6
- package/Tone/event/PatternGenerator.test.ts +18 -26
- package/Tone/event/PatternGenerator.ts +52 -59
- package/Tone/instrument/MetalSynth.ts +48 -21
- package/Tone/signal/ToneConstantSource.test.ts +1 -1
- package/Tone/source/OneShotSource.ts +1 -1
- package/Tone/source/buffer/Player.test.ts +25 -0
- package/Tone/source/buffer/Player.ts +1 -1
- package/Tone/source/oscillator/ToneOscillatorNode.test.ts +1 -1
- package/Tone/version.ts +1 -1
- package/build/Tone.js +1 -1
- package/build/Tone.js.map +1 -1
- package/build/esm/component/analysis/Meter.d.ts +1 -1
- package/build/esm/component/analysis/Meter.js +5 -7
- package/build/esm/component/analysis/Meter.js.map +1 -1
- package/build/esm/core/clock/Ticker.d.ts +5 -1
- package/build/esm/core/clock/Ticker.js +6 -4
- package/build/esm/core/clock/Ticker.js.map +1 -1
- package/build/esm/core/context/Context.d.ts +12 -12
- package/build/esm/core/context/Context.js +26 -29
- package/build/esm/core/context/Context.js.map +1 -1
- package/build/esm/core/context/ToneAudioBuffer.js +25 -15
- package/build/esm/core/context/ToneAudioBuffer.js.map +1 -1
- package/build/esm/event/Pattern.d.ts +8 -0
- package/build/esm/event/Pattern.js +11 -4
- package/build/esm/event/Pattern.js.map +1 -1
- package/build/esm/event/PatternGenerator.d.ts +4 -4
- package/build/esm/event/PatternGenerator.js +52 -58
- package/build/esm/event/PatternGenerator.js.map +1 -1
- package/build/esm/instrument/MetalSynth.d.ts +0 -1
- package/build/esm/instrument/MetalSynth.js +15 -13
- package/build/esm/instrument/MetalSynth.js.map +1 -1
- package/build/esm/source/OneShotSource.js +1 -1
- package/build/esm/source/OneShotSource.js.map +1 -1
- package/build/esm/source/buffer/Player.js +2 -1
- package/build/esm/source/buffer/Player.js.map +1 -1
- package/build/esm/version.js +1 -1
- package/docs/tone.json +1 -1
- package/package.json +2 -2
|
@@ -21,10 +21,6 @@ export class Meter extends MeterBase {
|
|
|
21
21
|
constructor() {
|
|
22
22
|
super(optionsFromArguments(Meter.getDefaults(), arguments, ["smoothing"]));
|
|
23
23
|
this.name = "Meter";
|
|
24
|
-
/**
|
|
25
|
-
* The previous frame's value
|
|
26
|
-
*/
|
|
27
|
-
this._rms = 0;
|
|
28
24
|
const options = optionsFromArguments(Meter.getDefaults(), arguments, ["smoothing"]);
|
|
29
25
|
this.input = this.output = this._analyser = new Analyser({
|
|
30
26
|
context: this.context,
|
|
@@ -34,6 +30,8 @@ export class Meter extends MeterBase {
|
|
|
34
30
|
});
|
|
35
31
|
this.smoothing = options.smoothing,
|
|
36
32
|
this.normalRange = options.normalRange;
|
|
33
|
+
this._rms = new Array(options.channelCount);
|
|
34
|
+
this._rms.fill(0);
|
|
37
35
|
}
|
|
38
36
|
static getDefaults() {
|
|
39
37
|
return Object.assign(MeterBase.getDefaults(), {
|
|
@@ -60,13 +58,13 @@ export class Meter extends MeterBase {
|
|
|
60
58
|
getValue() {
|
|
61
59
|
const aValues = this._analyser.getValue();
|
|
62
60
|
const channelValues = this.channels === 1 ? [aValues] : aValues;
|
|
63
|
-
const vals = channelValues.map(values => {
|
|
61
|
+
const vals = channelValues.map((values, index) => {
|
|
64
62
|
const totalSquared = values.reduce((total, current) => total + current * current, 0);
|
|
65
63
|
const rms = Math.sqrt(totalSquared / values.length);
|
|
66
64
|
// the rms can only fall at the rate of the smoothing
|
|
67
65
|
// but can jump up instantly
|
|
68
|
-
this._rms = Math.max(rms, this._rms * this.smoothing);
|
|
69
|
-
return this.normalRange ? this._rms : gainToDb(this._rms);
|
|
66
|
+
this._rms[index] = Math.max(rms, this._rms[index] * this.smoothing);
|
|
67
|
+
return this.normalRange ? this._rms[index] : gainToDb(this._rms[index]);
|
|
70
68
|
});
|
|
71
69
|
if (this.channels === 1) {
|
|
72
70
|
return vals[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Meter.js","sourceRoot":"","sources":["../../../../Tone/component/analysis/Meter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAoB,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQtC;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,KAAM,SAAQ,SAAuB;IA0BjD;QACC,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAzBnE,SAAI,GAAW,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Meter.js","sourceRoot":"","sources":["../../../../Tone/component/analysis/Meter.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,10 @@ export declare class Ticker {
|
|
|
13
13
|
* The update interval of the worker
|
|
14
14
|
*/
|
|
15
15
|
private _updateInterval;
|
|
16
|
+
/**
|
|
17
|
+
* The lowest allowable interval, preferably calculated from context sampleRate
|
|
18
|
+
*/
|
|
19
|
+
private _minimumUpdateInterval;
|
|
16
20
|
/**
|
|
17
21
|
* The callback to invoke at regular intervals
|
|
18
22
|
*/
|
|
@@ -25,7 +29,7 @@ export declare class Ticker {
|
|
|
25
29
|
* private reference to the worker
|
|
26
30
|
*/
|
|
27
31
|
private _worker;
|
|
28
|
-
constructor(callback: () => void, type: TickerClockSource, updateInterval: Seconds);
|
|
32
|
+
constructor(callback: () => void, type: TickerClockSource, updateInterval: Seconds, contextSampleRate?: number);
|
|
29
33
|
/**
|
|
30
34
|
* Generate a web worker
|
|
31
35
|
*/
|
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
* a Web Worker, or if that isn't supported, falls back to setTimeout.
|
|
4
4
|
*/
|
|
5
5
|
export class Ticker {
|
|
6
|
-
constructor(callback, type, updateInterval) {
|
|
6
|
+
constructor(callback, type, updateInterval, contextSampleRate) {
|
|
7
7
|
this._callback = callback;
|
|
8
8
|
this._type = type;
|
|
9
|
-
this.
|
|
9
|
+
this._minimumUpdateInterval = Math.max(128 / (contextSampleRate || 44100), .001);
|
|
10
|
+
this.updateInterval = updateInterval;
|
|
10
11
|
// create the clock source for the first time
|
|
11
12
|
this._createClock();
|
|
12
13
|
}
|
|
@@ -83,9 +84,10 @@ export class Ticker {
|
|
|
83
84
|
return this._updateInterval;
|
|
84
85
|
}
|
|
85
86
|
set updateInterval(interval) {
|
|
86
|
-
|
|
87
|
+
var _a;
|
|
88
|
+
this._updateInterval = Math.max(interval, this._minimumUpdateInterval);
|
|
87
89
|
if (this._type === "worker") {
|
|
88
|
-
this._worker.postMessage(
|
|
90
|
+
(_a = this._worker) === null || _a === void 0 ? void 0 : _a.postMessage(this._updateInterval * 1000);
|
|
89
91
|
}
|
|
90
92
|
}
|
|
91
93
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ticker.js","sourceRoot":"","sources":["../../../../Tone/core/clock/Ticker.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,OAAO,MAAM;
|
|
1
|
+
{"version":3,"file":"Ticker.js","sourceRoot":"","sources":["../../../../Tone/core/clock/Ticker.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,12 +24,6 @@ export interface ContextTimeoutEvent {
|
|
|
24
24
|
*/
|
|
25
25
|
export declare class Context extends BaseContext {
|
|
26
26
|
readonly name: string;
|
|
27
|
-
/**
|
|
28
|
-
* The amount of time into the future events are scheduled. Giving Web Audio
|
|
29
|
-
* a short amount of time into the future to schedule events can reduce clicks and
|
|
30
|
-
* improve performance. This value can be set to 0 to get the lowest latency.
|
|
31
|
-
*/
|
|
32
|
-
lookAhead: Seconds;
|
|
33
27
|
/**
|
|
34
28
|
* private reference to the BaseAudioContext
|
|
35
29
|
*/
|
|
@@ -160,8 +154,9 @@ export declare class Context extends BaseContext {
|
|
|
160
154
|
/**
|
|
161
155
|
* How often the interval callback is invoked.
|
|
162
156
|
* This number corresponds to how responsive the scheduling
|
|
163
|
-
* can be.
|
|
164
|
-
*
|
|
157
|
+
* can be. Setting to 0 will result in the lowest practial interval
|
|
158
|
+
* based on context properties. context.updateInterval + context.lookAhead
|
|
159
|
+
* gives you the total latency between scheduling an event and hearing it.
|
|
165
160
|
*/
|
|
166
161
|
get updateInterval(): Seconds;
|
|
167
162
|
set updateInterval(interval: Seconds);
|
|
@@ -171,6 +166,15 @@ export declare class Context extends BaseContext {
|
|
|
171
166
|
*/
|
|
172
167
|
get clockSource(): TickerClockSource;
|
|
173
168
|
set clockSource(type: TickerClockSource);
|
|
169
|
+
/**
|
|
170
|
+
* The amount of time into the future events are scheduled. Giving Web Audio
|
|
171
|
+
* a short amount of time into the future to schedule events can reduce clicks and
|
|
172
|
+
* improve performance. This value can be set to 0 to get the lowest latency.
|
|
173
|
+
* Adjusting this value also affects the [[updateInterval]].
|
|
174
|
+
*/
|
|
175
|
+
get lookAhead(): Seconds;
|
|
176
|
+
set lookAhead(time: Seconds);
|
|
177
|
+
private _lookAhead;
|
|
174
178
|
/**
|
|
175
179
|
* The type of playback, which affects tradeoffs between audio
|
|
176
180
|
* output latency and responsiveness.
|
|
@@ -187,10 +191,6 @@ export declare class Context extends BaseContext {
|
|
|
187
191
|
* console.log(Tone.getContext().latencyHint);
|
|
188
192
|
*/
|
|
189
193
|
get latencyHint(): ContextLatencyHint | Seconds;
|
|
190
|
-
/**
|
|
191
|
-
* Update the lookAhead and updateInterval based on the latencyHint
|
|
192
|
-
*/
|
|
193
|
-
private _setLatencyHint;
|
|
194
194
|
/**
|
|
195
195
|
* The unwrapped AudioContext or OfflineAudioContext
|
|
196
196
|
*/
|
|
@@ -3,7 +3,7 @@ import { Ticker } from "../clock/Ticker";
|
|
|
3
3
|
import { isAudioContext } from "../util/AdvancedTypeCheck";
|
|
4
4
|
import { optionsFromArguments } from "../util/Defaults";
|
|
5
5
|
import { Timeline } from "../util/Timeline";
|
|
6
|
-
import { isDefined
|
|
6
|
+
import { isDefined } from "../util/TypeCheck";
|
|
7
7
|
import { createAudioContext, createAudioWorkletNode, } from "./AudioContext";
|
|
8
8
|
import { closeContext, initializeContext } from "./ContextInitialization";
|
|
9
9
|
import { BaseContext } from "./BaseContext";
|
|
@@ -14,6 +14,7 @@ import { assert } from "../util/Debug";
|
|
|
14
14
|
*/
|
|
15
15
|
export class Context extends BaseContext {
|
|
16
16
|
constructor() {
|
|
17
|
+
var _a, _b;
|
|
17
18
|
super();
|
|
18
19
|
this.name = "Context";
|
|
19
20
|
/**
|
|
@@ -48,20 +49,23 @@ export class Context extends BaseContext {
|
|
|
48
49
|
]);
|
|
49
50
|
if (options.context) {
|
|
50
51
|
this._context = options.context;
|
|
52
|
+
// custom context provided, latencyHint unknown (unless explicitly provided in options)
|
|
53
|
+
this._latencyHint = ((_a = arguments[0]) === null || _a === void 0 ? void 0 : _a.latencyHint) || "";
|
|
51
54
|
}
|
|
52
55
|
else {
|
|
53
56
|
this._context = createAudioContext({
|
|
54
57
|
latencyHint: options.latencyHint,
|
|
55
58
|
});
|
|
59
|
+
this._latencyHint = options.latencyHint;
|
|
56
60
|
}
|
|
57
|
-
this._ticker = new Ticker(this.emit.bind(this, "tick"), options.clockSource, options.updateInterval);
|
|
61
|
+
this._ticker = new Ticker(this.emit.bind(this, "tick"), options.clockSource, options.updateInterval, this._context.sampleRate);
|
|
58
62
|
this.on("tick", this._timeoutLoop.bind(this));
|
|
59
63
|
// fwd events from the context
|
|
60
64
|
this._context.onstatechange = () => {
|
|
61
65
|
this.emit("statechange", this.state);
|
|
62
66
|
};
|
|
63
|
-
|
|
64
|
-
this.lookAhead = options.lookAhead;
|
|
67
|
+
// if no custom updateInterval provided, updateInterval will be derived by lookAhead setter
|
|
68
|
+
this[((_b = arguments[0]) === null || _b === void 0 ? void 0 : _b.hasOwnProperty("updateInterval")) ? "_lookAhead" : "lookAhead"] = options.lookAhead;
|
|
65
69
|
}
|
|
66
70
|
static getDefaults() {
|
|
67
71
|
return {
|
|
@@ -254,8 +258,9 @@ export class Context extends BaseContext {
|
|
|
254
258
|
/**
|
|
255
259
|
* How often the interval callback is invoked.
|
|
256
260
|
* This number corresponds to how responsive the scheduling
|
|
257
|
-
* can be.
|
|
258
|
-
*
|
|
261
|
+
* can be. Setting to 0 will result in the lowest practial interval
|
|
262
|
+
* based on context properties. context.updateInterval + context.lookAhead
|
|
263
|
+
* gives you the total latency between scheduling an event and hearing it.
|
|
259
264
|
*/
|
|
260
265
|
get updateInterval() {
|
|
261
266
|
return this._ticker.updateInterval;
|
|
@@ -273,6 +278,20 @@ export class Context extends BaseContext {
|
|
|
273
278
|
set clockSource(type) {
|
|
274
279
|
this._ticker.type = type;
|
|
275
280
|
}
|
|
281
|
+
/**
|
|
282
|
+
* The amount of time into the future events are scheduled. Giving Web Audio
|
|
283
|
+
* a short amount of time into the future to schedule events can reduce clicks and
|
|
284
|
+
* improve performance. This value can be set to 0 to get the lowest latency.
|
|
285
|
+
* Adjusting this value also affects the [[updateInterval]].
|
|
286
|
+
*/
|
|
287
|
+
get lookAhead() {
|
|
288
|
+
return this._lookAhead;
|
|
289
|
+
}
|
|
290
|
+
set lookAhead(time) {
|
|
291
|
+
this._lookAhead = time;
|
|
292
|
+
// if lookAhead is 0, default to .01 updateInterval
|
|
293
|
+
this.updateInterval = time ? (time / 2) : .01;
|
|
294
|
+
}
|
|
276
295
|
/**
|
|
277
296
|
* The type of playback, which affects tradeoffs between audio
|
|
278
297
|
* output latency and responsiveness.
|
|
@@ -291,28 +310,6 @@ export class Context extends BaseContext {
|
|
|
291
310
|
get latencyHint() {
|
|
292
311
|
return this._latencyHint;
|
|
293
312
|
}
|
|
294
|
-
/**
|
|
295
|
-
* Update the lookAhead and updateInterval based on the latencyHint
|
|
296
|
-
*/
|
|
297
|
-
_setLatencyHint(hint) {
|
|
298
|
-
let lookAheadValue = 0;
|
|
299
|
-
this._latencyHint = hint;
|
|
300
|
-
if (isString(hint)) {
|
|
301
|
-
switch (hint) {
|
|
302
|
-
case "interactive":
|
|
303
|
-
lookAheadValue = 0.1;
|
|
304
|
-
break;
|
|
305
|
-
case "playback":
|
|
306
|
-
lookAheadValue = 0.5;
|
|
307
|
-
break;
|
|
308
|
-
case "balanced":
|
|
309
|
-
lookAheadValue = 0.25;
|
|
310
|
-
break;
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
this.lookAhead = lookAheadValue;
|
|
314
|
-
this.updateInterval = lookAheadValue / 2;
|
|
315
|
-
}
|
|
316
313
|
/**
|
|
317
314
|
* The unwrapped AudioContext or OfflineAudioContext
|
|
318
315
|
*/
|
|
@@ -327,7 +324,7 @@ export class Context extends BaseContext {
|
|
|
327
324
|
* }, 100);
|
|
328
325
|
*/
|
|
329
326
|
now() {
|
|
330
|
-
return this._context.currentTime + this.
|
|
327
|
+
return this._context.currentTime + this._lookAhead;
|
|
331
328
|
}
|
|
332
329
|
/**
|
|
333
330
|
* The current audio context time without the [[lookAhead]].
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../../Tone/core/context/Context.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,iBAAiB,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAEN,kBAAkB,EAClB,sBAAsB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAsB,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAqBvC;;;GAGG;AACH,MAAM,OAAO,OAAQ,SAAQ,WAAW;IAwEvC;QACC,KAAK,EAAE,CAAC;QAxEA,SAAI,GAAW,SAAS,CAAC;QAwBlC;;WAEG;QACK,eAAU,GAAG,IAAI,GAAG,EAAiC,CAAC;QAE9D;;WAEG;QACK,cAAS,GAAkC,IAAI,QAAQ,EAAE,CAAC;QAElE;;WAEG;QACK,gBAAW,GAAG,CAAC,CAAC;QAsBxB;;WAEG;QACK,iBAAY,GAAG,KAAK,CAAC;QAE7B;;WAEG;QACM,cAAS,GAAY,KAAK,CAAC;QAwOpC,8CAA8C;QAC9C,gBAAgB;QAChB,8CAA8C;QAE9C;;WAEG;QACK,oBAAe,GAA+B,IAAI,GAAG,EAAE,CAAC;QAzO/D,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE;YACtE,SAAS;SACT,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,OAAO,EAAE;YACpB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;SAChC;aAAM;YACN,IAAI,CAAC,QAAQ,GAAG,kBAAkB,CAAC;gBAClC,WAAW,EAAE,OAAO,CAAC,WAAW;aAChC,CAAC,CAAC;SACH;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,EAC5B,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,cAAc,CACtB,CAAC;QACF,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9C,8BAA8B;QAC9B,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,GAAG,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC,CAAC;QAEF,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,WAAW;QACjB,OAAO;YACN,WAAW,EAAE,QAAQ;YACrB,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,GAAG;YACd,cAAc,EAAE,IAAI;SACF,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,UAAU;QACjB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACvB,6BAA6B;YAC7B,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SACzB;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6BAA6B;IAC7B,6BAA6B;IAC7B,6BAA6B;IAE7B,cAAc;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;IACvC,CAAC;IACD,gBAAgB;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;IACzC,CAAC;IACD,kBAAkB;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IAC3C,CAAC;IACD,kBAAkB;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IAC3C,CAAC;IACD,YAAY,CACX,gBAAwB,EACxB,MAAc,EACd,UAAkB;QAElB,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IACzE,CAAC;IACD,mBAAmB,CAClB,cAAmC;QAEnC,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAC1D,CAAC;IACD,qBAAqB,CACpB,eAAoC;QAEpC,OAAO,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAC7D,CAAC;IACD,oBAAoB;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC;IAC7C,CAAC;IACD,eAAe;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC;IACD,WAAW,CAAC,YAAiC;QAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAChD,CAAC;IACD,wBAAwB;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC;IACjD,CAAC;IACD,UAAU;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IACD,eAAe,CACd,WAAoC,EACpC,QAAiC;QAEjC,aAAa;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IACD,YAAY;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACrC,CAAC;IACD,kBAAkB,CACjB,IAA6B,EAC7B,IAA6B,EAC7B,WAAiD;QAEjD,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAClE,CAAC;IACD,kBAAkB;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IAC3C,CAAC;IACD,gBAAgB;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;IACzC,CAAC;IACD,uBAAuB,CAAC,MAAmB;QAC1C,MAAM,CACL,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC7B,sCAAsC,CACtC,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,QAAwB,CAAC;QAC9C,OAAO,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IACD,wBAAwB,CACvB,OAAyB;QAEzB,MAAM,CACL,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC7B,sCAAsC,CACtC,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,QAAwB,CAAC;QAC9C,OAAO,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IACD,4BAA4B;QAC3B,MAAM,CACL,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC7B,sCAAsC,CACtC,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,QAAwB,CAAC;QAC9C,OAAO,OAAO,CAAC,4BAA4B,EAAE,CAAC;IAC/C,CAAC;IACD,eAAe,CAAC,SAAsB;QACrC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;IAClC,CAAC;IACD;;OAEG;IACH,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC5B,CAAC;IACD;;OAEG;IACH,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACX,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IACD,IAAI,QAAQ,CAAC,CAAC;QACb,MAAM,CACL,CAAC,IAAI,CAAC,YAAY,EAClB,kDAAkD,CAClD,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACZ,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IACD,IAAI,SAAS,CAAC,CAAY;QACzB,MAAM,CACL,CAAC,IAAI,CAAC,YAAY,EAClB,mDAAmD,CACnD,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACP,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IACD,IAAI,IAAI,CAAC,CAAC;QACT,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,0CAA0C,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACd,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IACD,IAAI,WAAW,CAAC,CAAc;QAC7B,MAAM,CACL,CAAC,IAAI,CAAC,YAAY,EAClB,qDAAqD,CACrD,CAAC;QACF,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;IACvB,CAAC;IAWD;;;OAGG;IACH,sBAAsB,CACrB,IAAY,EACZ,OAA0C;QAE1C,OAAO,sBAAsB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACG,qBAAqB,CAAC,GAAW,EAAE,IAAY;;YACpD,MAAM,CACL,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EACvC,6EAA6E,CAC7E,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBACpC,IAAI,CAAC,eAAe,CAAC,GAAG,CACvB,IAAI,EACJ,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAC3C,CAAC;aACF;YACD,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;KAAA;IAED;;OAEG;IACa,gBAAgB;;YAC/B,MAAM,QAAQ,GAAoB,EAAE,CAAC;YACrC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YAClE,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,CAAC;KAAA;IAED,6BAA6B;IAC7B,SAAS;IACT,6BAA6B;IAE7B;;;;;OAKG;IACH,IAAI,cAAc;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;IACpC,CAAC;IACD,IAAI,cAAc,CAAC,QAAiB;QACnC,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,QAAQ,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1B,CAAC;IACD,IAAI,WAAW,CAAC,IAAuB;QACtC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,IAAkC;QACzD,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;YACnB,QAAQ,IAAI,EAAE;gBACb,KAAK,aAAa;oBACjB,cAAc,GAAG,GAAG,CAAC;oBACrB,MAAM;gBACP,KAAK,UAAU;oBACd,cAAc,GAAG,GAAG,CAAC;oBACrB,MAAM;gBACP,KAAK,UAAU;oBACd,cAAc,GAAG,IAAI,CAAC;oBACtB,MAAM;aACP;SACD;QACD,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,cAAc,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAED;;;;;;OAMG;IACH,GAAG;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACH,SAAS;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;IAClC,CAAC;IAED;;;OAGG;IACH,MAAM;QACL,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;SAC9B;aAAM;YACN,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;SACzB;IACF,CAAC;IAED;;;OAGG;IACG,KAAK;;YACV,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAClC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;aAC5B;YACD,IAAI,IAAI,CAAC,YAAY,EAAE;gBACtB,YAAY,CAAC,IAAI,CAAC,CAAC;aACnB;QACF,CAAC;KAAA;IAED;;OAEG;IACH,WAAW,CAAC,GAAW;QACtB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAA0B,CAAC;SACzD;aAAM;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CACxC,CAAC,EACD,GAAG,EACH,IAAI,CAAC,QAAQ,CAAC,UAAU,CACxB,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;aACb;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YACpD,QAAQ,CAAC,YAAY,GAAG,CAAC,CAAC;YAC1B,QAAQ,CAAC,gBAAgB,GAAG,UAAU,CAAC;YACvC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;YACzB,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;YACrB,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACnC,OAAO,QAAQ,CAAC;SAChB;IACF,CAAC;IAED;;OAEG;IACH,OAAO;QACN,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACxC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CACjC,CAAC;QACF,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6BAA6B;IAC7B,WAAW;IACX,6BAA6B;IAE7B;;;OAGG;IACK,YAAY;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACvC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,IAAI,GAAG,EAAE;YACrE,sBAAsB;YACtB,UAAU,CAAC,QAAQ,EAAE,CAAC;YACtB,4BAA4B;YAC5B,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACvB,mBAAmB;YACnB,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;SACnC;IACF,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,EAA4B,EAAE,OAAgB;QACxD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YAClB,QAAQ,EAAE,EAAE;YACZ,EAAE,EAAE,IAAI,CAAC,WAAW;YACpB,IAAI,EAAE,GAAG,GAAG,OAAO;SACnB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,EAAU;QACtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAChC,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;gBACpB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAC7B;QACF,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,EAAU;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,EAA4B,EAAE,QAAiB;QAC1D,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC;QAC9B,MAAM,UAAU,GAAG,GAAG,EAAE;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;gBAClB,QAAQ,EAAE,GAAG,EAAE;oBACd,sBAAsB;oBACtB,EAAE,EAAE,CAAC;oBACL,gCAAgC;oBAChC,UAAU,EAAE,CAAC;gBACd,CAAC;gBACD,EAAE;gBACF,IAAI,EAAE,GAAG,GAAG,QAAQ;aACpB,CAAC,CAAC;QACJ,CAAC,CAAC;QACF,cAAc;QACd,UAAU,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;IACX,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../../Tone/core/context/Context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { __awaiter } from "tslib";
|
|
2
2
|
import { getContext } from "../Global";
|
|
3
3
|
import { Tone } from "../Tone";
|
|
4
|
-
import { isAudioBuffer } from "../util/AdvancedTypeCheck";
|
|
5
4
|
import { optionsFromArguments } from "../util/Defaults";
|
|
6
5
|
import { noOp } from "../util/Interface";
|
|
7
6
|
import { isArray, isNumber, isString } from "../util/TypeCheck";
|
|
@@ -27,13 +26,13 @@ export class ToneAudioBuffer extends Tone {
|
|
|
27
26
|
const options = optionsFromArguments(ToneAudioBuffer.getDefaults(), arguments, ["url", "onload", "onerror"]);
|
|
28
27
|
this.reverse = options.reverse;
|
|
29
28
|
this.onload = options.onload;
|
|
30
|
-
if (
|
|
31
|
-
this.set(options.url);
|
|
32
|
-
}
|
|
33
|
-
else if (isString(options.url)) {
|
|
29
|
+
if (isString(options.url)) {
|
|
34
30
|
// initiate the download
|
|
35
31
|
this.load(options.url).catch(options.onerror);
|
|
36
32
|
}
|
|
33
|
+
else if (options.url) {
|
|
34
|
+
this.set(options.url);
|
|
35
|
+
}
|
|
37
36
|
}
|
|
38
37
|
static getDefaults() {
|
|
39
38
|
return {
|
|
@@ -93,7 +92,7 @@ export class ToneAudioBuffer extends Tone {
|
|
|
93
92
|
*/
|
|
94
93
|
load(url) {
|
|
95
94
|
return __awaiter(this, void 0, void 0, function* () {
|
|
96
|
-
const doneLoading = ToneAudioBuffer.load(url).then(audioBuffer => {
|
|
95
|
+
const doneLoading = ToneAudioBuffer.load(url).then((audioBuffer) => {
|
|
97
96
|
this.set(audioBuffer);
|
|
98
97
|
// invoke the onload method
|
|
99
98
|
this.onload(this);
|
|
@@ -126,11 +125,14 @@ export class ToneAudioBuffer extends Tone {
|
|
|
126
125
|
fromArray(array) {
|
|
127
126
|
const isMultidimensional = isArray(array) && array[0].length > 0;
|
|
128
127
|
const channels = isMultidimensional ? array.length : 1;
|
|
129
|
-
const len = isMultidimensional
|
|
128
|
+
const len = isMultidimensional
|
|
129
|
+
? array[0].length
|
|
130
|
+
: array.length;
|
|
130
131
|
const context = getContext();
|
|
131
132
|
const buffer = context.createBuffer(channels, len, context.sampleRate);
|
|
132
|
-
const multiChannelArray = !isMultidimensional && channels === 1
|
|
133
|
-
[array]
|
|
133
|
+
const multiChannelArray = !isMultidimensional && channels === 1
|
|
134
|
+
? [array]
|
|
135
|
+
: array;
|
|
134
136
|
for (let c = 0; c < channels; c++) {
|
|
135
137
|
buffer.copyToChannel(multiChannelArray[c], c);
|
|
136
138
|
}
|
|
@@ -155,7 +157,7 @@ export class ToneAudioBuffer extends Tone {
|
|
|
155
157
|
}
|
|
156
158
|
}
|
|
157
159
|
// divide by the number of channels
|
|
158
|
-
outputArray = outputArray.map(sample => sample / numChannels);
|
|
160
|
+
outputArray = outputArray.map((sample) => sample / numChannels);
|
|
159
161
|
this.fromArray(outputArray);
|
|
160
162
|
}
|
|
161
163
|
return this;
|
|
@@ -280,7 +282,7 @@ export class ToneAudioBuffer extends Tone {
|
|
|
280
282
|
* @return A ToneAudioBuffer created from the array
|
|
281
283
|
*/
|
|
282
284
|
static fromArray(array) {
|
|
283
|
-
return
|
|
285
|
+
return new ToneAudioBuffer().fromArray(array);
|
|
284
286
|
}
|
|
285
287
|
/**
|
|
286
288
|
* Creates a ToneAudioBuffer from a URL, returns a promise which resolves to a ToneAudioBuffer
|
|
@@ -312,11 +314,17 @@ export class ToneAudioBuffer extends Tone {
|
|
|
312
314
|
url = url.replace(matches[0], extension);
|
|
313
315
|
}
|
|
314
316
|
// make sure there is a slash between the baseUrl and the url
|
|
315
|
-
const baseUrl = ToneAudioBuffer.baseUrl === "" ||
|
|
317
|
+
const baseUrl = ToneAudioBuffer.baseUrl === "" ||
|
|
318
|
+
ToneAudioBuffer.baseUrl.endsWith("/")
|
|
319
|
+
? ToneAudioBuffer.baseUrl
|
|
320
|
+
: ToneAudioBuffer.baseUrl + "/";
|
|
316
321
|
// encode special characters in file path
|
|
317
322
|
const location = document.createElement("a");
|
|
318
|
-
location.href =
|
|
319
|
-
location.pathname = (location.pathname + location.hash)
|
|
323
|
+
location.href = baseUrl + url;
|
|
324
|
+
location.pathname = (location.pathname + location.hash)
|
|
325
|
+
.split("/")
|
|
326
|
+
.map(encodeURIComponent)
|
|
327
|
+
.join("/");
|
|
320
328
|
const response = yield fetch(location.href);
|
|
321
329
|
if (!response.ok) {
|
|
322
330
|
throw new Error(`could not load url: ${url}`);
|
|
@@ -338,7 +346,9 @@ export class ToneAudioBuffer extends Tone {
|
|
|
338
346
|
static supportsType(url) {
|
|
339
347
|
const extensions = url.split(".");
|
|
340
348
|
const extension = extensions[extensions.length - 1];
|
|
341
|
-
const response = document
|
|
349
|
+
const response = document
|
|
350
|
+
.createElement("audio")
|
|
351
|
+
.canPlayType("audio/" + extension);
|
|
342
352
|
return response !== "";
|
|
343
353
|
}
|
|
344
354
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToneAudioBuffer.js","sourceRoot":"","sources":["../../../../Tone/core/context/ToneAudioBuffer.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ToneAudioBuffer.js","sourceRoot":"","sources":["../../../../Tone/core/context/ToneAudioBuffer.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,10 @@ export declare class Pattern<ValueType> extends Loop<PatternOptions<ValueType>>
|
|
|
22
22
|
* The pattern generator function
|
|
23
23
|
*/
|
|
24
24
|
private _pattern;
|
|
25
|
+
/**
|
|
26
|
+
* The current index
|
|
27
|
+
*/
|
|
28
|
+
private _index?;
|
|
25
29
|
/**
|
|
26
30
|
* The current value
|
|
27
31
|
*/
|
|
@@ -59,6 +63,10 @@ export declare class Pattern<ValueType> extends Loop<PatternOptions<ValueType>>
|
|
|
59
63
|
* The current value of the pattern.
|
|
60
64
|
*/
|
|
61
65
|
get value(): ValueType | undefined;
|
|
66
|
+
/**
|
|
67
|
+
* The current index of the pattern.
|
|
68
|
+
*/
|
|
69
|
+
get index(): number | undefined;
|
|
62
70
|
/**
|
|
63
71
|
* The pattern type. See Tone.CtrlPattern for the full list of patterns.
|
|
64
72
|
*/
|
|
@@ -18,7 +18,7 @@ export class Pattern extends Loop {
|
|
|
18
18
|
const options = optionsFromArguments(Pattern.getDefaults(), arguments, ["callback", "values", "pattern"]);
|
|
19
19
|
this.callback = options.callback;
|
|
20
20
|
this._values = options.values;
|
|
21
|
-
this._pattern = PatternGenerator(options.values, options.pattern);
|
|
21
|
+
this._pattern = PatternGenerator(options.values.length, options.pattern);
|
|
22
22
|
this._type = options.pattern;
|
|
23
23
|
}
|
|
24
24
|
static getDefaults() {
|
|
@@ -32,8 +32,9 @@ export class Pattern extends Loop {
|
|
|
32
32
|
* Internal function called when the notes should be called
|
|
33
33
|
*/
|
|
34
34
|
_tick(time) {
|
|
35
|
-
const
|
|
36
|
-
this.
|
|
35
|
+
const index = this._pattern.next();
|
|
36
|
+
this._index = index.value;
|
|
37
|
+
this._value = this._values[index.value];
|
|
37
38
|
this.callback(time, this._value);
|
|
38
39
|
}
|
|
39
40
|
/**
|
|
@@ -53,6 +54,12 @@ export class Pattern extends Loop {
|
|
|
53
54
|
get value() {
|
|
54
55
|
return this._value;
|
|
55
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* The current index of the pattern.
|
|
59
|
+
*/
|
|
60
|
+
get index() {
|
|
61
|
+
return this._index;
|
|
62
|
+
}
|
|
56
63
|
/**
|
|
57
64
|
* The pattern type. See Tone.CtrlPattern for the full list of patterns.
|
|
58
65
|
*/
|
|
@@ -61,7 +68,7 @@ export class Pattern extends Loop {
|
|
|
61
68
|
}
|
|
62
69
|
set pattern(pattern) {
|
|
63
70
|
this._type = pattern;
|
|
64
|
-
this._pattern = PatternGenerator(this._values, this._type);
|
|
71
|
+
this._pattern = PatternGenerator(this._values.length, this._type);
|
|
65
72
|
}
|
|
66
73
|
}
|
|
67
74
|
//# sourceMappingURL=Pattern.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pattern.js","sourceRoot":"","sources":["../../../Tone/event/Pattern.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAe,MAAM,oBAAoB,CAAC;AAEnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAQ9C;;;;;;;;GAQG;AACH,MAAM,OAAO,OAAmB,SAAQ,IAA+B;
|
|
1
|
+
{"version":3,"file":"Pattern.js","sourceRoot":"","sources":["../../../Tone/event/Pattern.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAe,MAAM,oBAAoB,CAAC;AAEnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAQ9C;;;;;;;;GAQG;AACH,MAAM,OAAO,OAAmB,SAAQ,IAA+B;IA6CtE;QAEC,KAAK,CAAC,oBAAoB,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;QA7CzF,SAAI,GAAW,SAAS,CAAC;QA8CjC,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QAE1G,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACzE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,WAAW;QACjB,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACxC,OAAO,EAAE,IAAa;YACtB,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,IAAa;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAA+B,CAAC;QAChE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IACD,IAAI,MAAM,CAAC,GAAG;QACb,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;QACnB,oBAAoB;QACpB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED;;OAEG;IACF,IAAI,KAAK;QACT,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,CAAC,OAAO;QAClB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnE,CAAC;CACD"}
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export declare type PatternName = "up" | "down" | "upDown" | "downUp" | "alternateUp" | "alternateDown" | "random" | "randomOnce" | "randomWalk";
|
|
5
5
|
/**
|
|
6
|
-
* PatternGenerator returns a generator which will
|
|
7
|
-
*
|
|
8
|
-
* @param
|
|
6
|
+
* PatternGenerator returns a generator which will yield numbers between 0 and numValues
|
|
7
|
+
* according to the passed in pattern that can be used as indexes into an array of size numValues.
|
|
8
|
+
* @param numValues The size of the array to emit indexes for
|
|
9
9
|
* @param pattern The name of the pattern use when iterating over
|
|
10
10
|
* @param index Where to start in the offset of the values array
|
|
11
11
|
*/
|
|
12
|
-
export declare function PatternGenerator
|
|
12
|
+
export declare function PatternGenerator(numValues: number, pattern?: PatternName, index?: number): Iterator<number>;
|