tone 14.8.35 → 14.8.38

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 (51) hide show
  1. package/Tone/component/analysis/Meter.test.ts +25 -0
  2. package/Tone/component/analysis/Meter.ts +7 -5
  3. package/Tone/core/clock/TickSource.test.ts +52 -0
  4. package/Tone/core/clock/TickSource.ts +70 -9
  5. package/Tone/core/clock/Ticker.ts +11 -5
  6. package/Tone/core/context/Context.test.ts +2 -0
  7. package/Tone/core/context/Context.ts +29 -38
  8. package/Tone/core/context/ToneAudioBuffer.ts +52 -27
  9. package/Tone/event/Pattern.test.ts +31 -5
  10. package/Tone/event/Pattern.ts +19 -6
  11. package/Tone/event/PatternGenerator.test.ts +18 -26
  12. package/Tone/event/PatternGenerator.ts +52 -59
  13. package/Tone/instrument/MetalSynth.ts +48 -21
  14. package/Tone/signal/ToneConstantSource.test.ts +1 -1
  15. package/Tone/source/OneShotSource.ts +1 -1
  16. package/Tone/source/buffer/Player.test.ts +25 -0
  17. package/Tone/source/buffer/Player.ts +1 -1
  18. package/Tone/source/oscillator/ToneOscillatorNode.test.ts +1 -1
  19. package/Tone/version.ts +1 -1
  20. package/build/Tone.js +1 -1
  21. package/build/Tone.js.map +1 -1
  22. package/build/esm/component/analysis/Meter.d.ts +1 -1
  23. package/build/esm/component/analysis/Meter.js +5 -7
  24. package/build/esm/component/analysis/Meter.js.map +1 -1
  25. package/build/esm/core/clock/TickSource.d.ts +8 -0
  26. package/build/esm/core/clock/TickSource.js +49 -7
  27. package/build/esm/core/clock/TickSource.js.map +1 -1
  28. package/build/esm/core/clock/Ticker.d.ts +5 -1
  29. package/build/esm/core/clock/Ticker.js +6 -4
  30. package/build/esm/core/clock/Ticker.js.map +1 -1
  31. package/build/esm/core/context/Context.d.ts +12 -12
  32. package/build/esm/core/context/Context.js +26 -29
  33. package/build/esm/core/context/Context.js.map +1 -1
  34. package/build/esm/core/context/ToneAudioBuffer.js +25 -15
  35. package/build/esm/core/context/ToneAudioBuffer.js.map +1 -1
  36. package/build/esm/event/Pattern.d.ts +8 -0
  37. package/build/esm/event/Pattern.js +11 -4
  38. package/build/esm/event/Pattern.js.map +1 -1
  39. package/build/esm/event/PatternGenerator.d.ts +4 -4
  40. package/build/esm/event/PatternGenerator.js +52 -58
  41. package/build/esm/event/PatternGenerator.js.map +1 -1
  42. package/build/esm/instrument/MetalSynth.d.ts +0 -1
  43. package/build/esm/instrument/MetalSynth.js +15 -13
  44. package/build/esm/instrument/MetalSynth.js.map +1 -1
  45. package/build/esm/source/OneShotSource.js +1 -1
  46. package/build/esm/source/OneShotSource.js.map +1 -1
  47. package/build/esm/source/buffer/Player.js +2 -1
  48. package/build/esm/source/buffer/Player.js.map +1 -1
  49. package/build/esm/version.js +1 -1
  50. package/docs/tone.json +1 -1
  51. package/package.json +2 -2
@@ -32,7 +32,7 @@ export declare class Meter extends MeterBase<MeterOptions> {
32
32
  */
33
33
  smoothing: number;
34
34
  /**
35
- * The previous frame's value
35
+ * The previous frame's value for each channel.
36
36
  */
37
37
  private _rms;
38
38
  /**
@@ -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":"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"}
1
+ {"version":3,"file":"Meter.js","sourceRoot":"","sources":["../../../../Tone/component/analysis/Meter.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,14 @@ export declare class TickSource<TypeName extends "bpm" | "hertz"> extends ToneWi
23
23
  * The offset values of the ticks
24
24
  */
25
25
  private _tickOffset;
26
+ /**
27
+ * Memoized values of getTicksAtTime at events with state other than "started"
28
+ */
29
+ private _ticksAtTime;
30
+ /**
31
+ * Memoized values of getSecondsAtTime at events with state other than "started"
32
+ */
33
+ private _secondsAtTime;
26
34
  /**
27
35
  * @param frequency The initial frequency that the signal ticks at
28
36
  */
@@ -21,6 +21,14 @@ export class TickSource extends ToneWithContext {
21
21
  * The offset values of the ticks
22
22
  */
23
23
  this._tickOffset = new Timeline();
24
+ /**
25
+ * Memoized values of getTicksAtTime at events with state other than "started"
26
+ */
27
+ this._ticksAtTime = new Timeline();
28
+ /**
29
+ * Memoized values of getSecondsAtTime at events with state other than "started"
30
+ */
31
+ this._secondsAtTime = new Timeline();
24
32
  const options = optionsFromArguments(TickSource.getDefaults(), arguments, ["frequency"]);
25
33
  this.frequency = new TickSignal({
26
34
  context: this.context,
@@ -58,6 +66,8 @@ export class TickSource extends ToneWithContext {
58
66
  if (isDefined(offset)) {
59
67
  this.setTicksAtTime(offset, computedTime);
60
68
  }
69
+ this._ticksAtTime.cancel(computedTime);
70
+ this._secondsAtTime.cancel(computedTime);
61
71
  }
62
72
  return this;
63
73
  }
@@ -78,6 +88,8 @@ export class TickSource extends ToneWithContext {
78
88
  this._state.cancel(computedTime);
79
89
  this._state.setStateAtTime("stopped", computedTime);
80
90
  this.setTicksAtTime(0, computedTime);
91
+ this._ticksAtTime.cancel(computedTime);
92
+ this._secondsAtTime.cancel(computedTime);
81
93
  return this;
82
94
  }
83
95
  /**
@@ -88,6 +100,8 @@ export class TickSource extends ToneWithContext {
88
100
  const computedTime = this.toSeconds(time);
89
101
  if (this._state.getValueAtTime(computedTime) === "started") {
90
102
  this._state.setStateAtTime("paused", computedTime);
103
+ this._ticksAtTime.cancel(computedTime);
104
+ this._secondsAtTime.cancel(computedTime);
91
105
  }
92
106
  return this;
93
107
  }
@@ -99,6 +113,8 @@ export class TickSource extends ToneWithContext {
99
113
  time = this.toSeconds(time);
100
114
  this._state.cancel(time);
101
115
  this._tickOffset.cancel(time);
116
+ this._ticksAtTime.cancel(time);
117
+ this._secondsAtTime.cancel(time);
102
118
  return this;
103
119
  }
104
120
  /**
@@ -109,14 +125,17 @@ export class TickSource extends ToneWithContext {
109
125
  getTicksAtTime(time) {
110
126
  const computedTime = this.toSeconds(time);
111
127
  const stopEvent = this._state.getLastState("stopped", computedTime);
128
+ // get previously memoized ticks if available
129
+ const memoizedEvent = this._ticksAtTime.get(computedTime);
112
130
  // this event allows forEachBetween to iterate until the current time
113
131
  const tmpEvent = { state: "paused", time: computedTime };
114
132
  this._state.add(tmpEvent);
115
133
  // keep track of the previous offset event
116
- let lastState = stopEvent;
117
- let elapsedTicks = 0;
134
+ let lastState = memoizedEvent ? memoizedEvent : stopEvent;
135
+ let elapsedTicks = memoizedEvent ? memoizedEvent.ticks : 0;
136
+ let eventToMemoize = null;
118
137
  // iterate through all the events since the last stop
119
- this._state.forEachBetween(stopEvent.time, computedTime + this.sampleTime, e => {
138
+ this._state.forEachBetween(lastState.time, computedTime + this.sampleTime, e => {
120
139
  let periodStartTime = lastState.time;
121
140
  // if there is an offset event in this period use that
122
141
  const offsetEvent = this._tickOffset.get(e.time);
@@ -126,11 +145,19 @@ export class TickSource extends ToneWithContext {
126
145
  }
127
146
  if (lastState.state === "started" && e.state !== "started") {
128
147
  elapsedTicks += this.frequency.getTicksAtTime(e.time) - this.frequency.getTicksAtTime(periodStartTime);
148
+ // do not memoize the temporary event
149
+ if (e.time != tmpEvent.time) {
150
+ eventToMemoize = { state: e.state, time: e.time, ticks: elapsedTicks };
151
+ }
129
152
  }
130
153
  lastState = e;
131
154
  });
132
155
  // remove the temporary event
133
156
  this._state.remove(tmpEvent);
157
+ // memoize the ticks at the most recent event with state other than "started"
158
+ if (eventToMemoize) {
159
+ this._ticksAtTime.add(eventToMemoize);
160
+ }
134
161
  // return the ticks
135
162
  return elapsedTicks;
136
163
  }
@@ -167,11 +194,14 @@ export class TickSource extends ToneWithContext {
167
194
  // this event allows forEachBetween to iterate until the current time
168
195
  const tmpEvent = { state: "paused", time };
169
196
  this._state.add(tmpEvent);
197
+ // get previously memoized seconds if available
198
+ const memoizedEvent = this._secondsAtTime.get(time);
170
199
  // keep track of the previous offset event
171
- let lastState = stopEvent;
172
- let elapsedSeconds = 0;
200
+ let lastState = memoizedEvent ? memoizedEvent : stopEvent;
201
+ let elapsedSeconds = memoizedEvent ? memoizedEvent.seconds : 0;
202
+ let eventToMemoize = null;
173
203
  // iterate through all the events since the last stop
174
- this._state.forEachBetween(stopEvent.time, time + this.sampleTime, e => {
204
+ this._state.forEachBetween(lastState.time, time + this.sampleTime, e => {
175
205
  let periodStartTime = lastState.time;
176
206
  // if there is an offset event in this period use that
177
207
  const offsetEvent = this._tickOffset.get(e.time);
@@ -181,12 +211,20 @@ export class TickSource extends ToneWithContext {
181
211
  }
182
212
  if (lastState.state === "started" && e.state !== "started") {
183
213
  elapsedSeconds += e.time - periodStartTime;
214
+ // do not memoize the temporary event
215
+ if (e.time != tmpEvent.time) {
216
+ eventToMemoize = { state: e.state, time: e.time, seconds: elapsedSeconds };
217
+ }
184
218
  }
185
219
  lastState = e;
186
220
  });
187
221
  // remove the temporary event
188
222
  this._state.remove(tmpEvent);
189
- // return the ticks
223
+ // memoize the seconds at the most recent event with state other than "started"
224
+ if (eventToMemoize) {
225
+ this._secondsAtTime.add(eventToMemoize);
226
+ }
227
+ // return the seconds
190
228
  return elapsedSeconds;
191
229
  }
192
230
  /**
@@ -202,6 +240,8 @@ export class TickSource extends ToneWithContext {
202
240
  ticks,
203
241
  time,
204
242
  });
243
+ this._ticksAtTime.cancel(time);
244
+ this._secondsAtTime.cancel(time);
205
245
  return this;
206
246
  }
207
247
  /**
@@ -277,6 +317,8 @@ export class TickSource extends ToneWithContext {
277
317
  super.dispose();
278
318
  this._state.dispose();
279
319
  this._tickOffset.dispose();
320
+ this._ticksAtTime.dispose();
321
+ this._secondsAtTime.dispose();
280
322
  this.frequency.dispose();
281
323
  return this;
282
324
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TickSource.js","sourceRoot":"","sources":["../../../../Tone/core/clock/TickSource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TickSource.js","sourceRoot":"","sources":["../../../../Tone/core/clock/TickSource.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._updateInterval = updateInterval;
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
- this._updateInterval = Math.max(interval, 128 / 44100);
87
+ var _a;
88
+ this._updateInterval = Math.max(interval, this._minimumUpdateInterval);
87
89
  if (this._type === "worker") {
88
- this._worker.postMessage(Math.max(interval * 1000, 1));
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;IA2BlB,YAAY,QAAoB,EAAE,IAAuB,EAAE,cAAuB;QAEjF,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QAEtC,6CAA6C;QAC7C,IAAI,CAAC,YAAY,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,aAAa;QAEpB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC;YACrB,gBAAgB,CAAA;;wBAEK,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;IAa5D;SACD,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,cAAc;QACrB,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/B,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC,EAAE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACK,YAAY;QACnB,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;YAC5B,IAAI;gBACH,IAAI,CAAC,aAAa,EAAE,CAAC;aACrB;YAAC,OAAO,CAAC,EAAE;gBACX,6CAA6C;gBAC7C,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;gBACvB,IAAI,CAAC,YAAY,EAAE,CAAC;aACpB;SACD;aAAM,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;YACpC,IAAI,CAAC,cAAc,EAAE,CAAC;SACtB;IACF,CAAC;IAED;;OAEG;IACK,aAAa;QACpB,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC5B;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;SAC9B;IACF,CAAC;IAED;;OAEG;IACH,IAAI,cAAc;QACjB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC7B,CAAC;IACD,IAAI,cAAc,CAAC,QAAiB;QACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;YAC5B,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;SACvD;IACF,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IACD,IAAI,IAAI,CAAC,IAAuB;QAC/B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,YAAY,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,OAAO;QACN,IAAI,CAAC,aAAa,EAAE,CAAC;IACtB,CAAC;CACD"}
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. context.updateInterval + context.lookAhead gives you the
164
- * total latency between scheduling an event and hearing it.
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, isString } from "../util/TypeCheck";
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
- this._setLatencyHint(options.latencyHint);
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. context.updateInterval + context.lookAhead gives you the
258
- * total latency between scheduling an event and hearing it.
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.lookAhead;
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":"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"}
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,MAAM,mBAAmB,CAAC;AAC9C,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;IAiEvC;;QACC,KAAK,EAAE,CAAC;QAjEA,SAAI,GAAW,SAAS,CAAC;QAiBlC;;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;QA4OpC,8CAA8C;QAC9C,gBAAgB;QAChB,8CAA8C;QAE9C;;WAEG;QACK,oBAAe,GAA+B,IAAI,GAAG,EAAE,CAAC;QA7O/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;YAChC,uFAAuF;YACvF,IAAI,CAAC,YAAY,GAAG,CAAA,MAAA,SAAS,CAAC,CAAC,CAAC,0CAAE,WAAW,KAAI,EAAE,CAAC;SACpD;aAAM;YACN,IAAI,CAAC,QAAQ,GAAG,kBAAkB,CAAC;gBAClC,WAAW,EAAE,OAAO,CAAC,WAAW;aAChC,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;SACxC;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,EACtB,IAAI,CAAC,QAAQ,CAAC,UAAU,CACxB,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,2FAA2F;QAC3F,IAAI,CAAC,CAAA,MAAA,SAAS,CAAC,CAAC,CAAC,0CAAE,cAAc,CAAC,gBAAgB,CAAC,EAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IACvG,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;;;;;;OAMG;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;;;;;OAKG;IACH,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IACD,IAAI,SAAS,CAAC,IAAa;QAC1B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,mDAAmD;QACnD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC/C,CAAC;IAGD;;;;;;;;;;;;;;OAcG;IACH,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,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,UAAU,CAAC;IACpD,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,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 (options.url && isAudioBuffer(options.url) || options.url instanceof ToneAudioBuffer) {
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 ? array[0].length : array.length;
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] : 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 (new ToneAudioBuffer()).fromArray(array);
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 === "" || ToneAudioBuffer.baseUrl.endsWith("/") ? ToneAudioBuffer.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 = (baseUrl + url);
319
- location.pathname = (location.pathname + location.hash).split("/").map(encodeURIComponent).join("/");
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.createElement("audio").canPlayType("audio/" + extension);
349
+ const response = document
350
+ .createElement("audio")
351
+ .canPlayType("audio/" + extension);
342
352
  return response !== "";
343
353
  }
344
354
  /**