react-native-audio-api 0.5.7 → 0.6.0-rc.1
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/RNAudioAPI.podspec +1 -1
- package/android/CMakeLists.txt +6 -3
- package/android/build.gradle +1 -0
- package/android/src/main/cpp/audioapi/android/core/AudioPlayer.cpp +0 -20
- package/android/src/main/cpp/audioapi/android/core/AudioPlayer.h +0 -2
- package/android/src/main/java/com/swmansion/audioapi/AudioAPIPackage.kt +13 -0
- package/android/src/main/java/com/swmansion/audioapi/AudioManagerModule.kt +62 -0
- package/android/src/main/java/com/swmansion/audioapi/system/AudioFocusListener.kt +60 -0
- package/android/src/main/java/com/swmansion/audioapi/system/LockScreenManager.kt +294 -0
- package/android/src/main/java/com/swmansion/audioapi/system/MediaNotificationManager.kt +279 -0
- package/android/src/main/java/com/swmansion/audioapi/system/MediaReceiver.kt +46 -0
- package/android/src/main/java/com/swmansion/audioapi/system/MediaSessionCallback.kt +39 -0
- package/android/src/main/java/com/swmansion/audioapi/system/MediaSessionEventEmitter.kt +84 -0
- package/android/src/main/java/com/swmansion/audioapi/system/MediaSessionManager.kt +144 -0
- package/android/src/main/res/drawable/next.xml +9 -0
- package/android/src/main/res/drawable/pause.xml +9 -0
- package/android/src/main/res/drawable/play.xml +9 -0
- package/android/src/main/res/drawable/previous.xml +9 -0
- package/android/src/main/res/drawable/skip_backward_5.xml +9 -0
- package/android/src/main/res/drawable/skip_forward_5.xml +9 -0
- package/android/src/main/res/drawable/stop.xml +9 -0
- package/android/src/oldarch/NativeAudioManagerModuleSpec.java +99 -0
- package/app.plugin.js +1 -0
- package/common/cpp/audioapi/AudioAPIModuleInstaller.h +2 -6
- package/common/cpp/audioapi/core/AudioContext.cpp +1 -12
- package/common/cpp/audioapi/core/AudioContext.h +0 -1
- package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.cpp +1 -6
- package/common/cpp/audioapi/core/sources/AudioScheduledSourceNode.cpp +8 -4
- package/common/cpp/audioapi/core/sources/AudioScheduledSourceNode.h +1 -0
- package/common/cpp/audioapi/core/utils/AudioNodeDestructor.cpp +3 -3
- package/ios/audioapi/ios/AudioAPIModule.mm +2 -3
- package/ios/audioapi/ios/AudioManagerModule.h +18 -0
- package/ios/audioapi/ios/AudioManagerModule.mm +94 -0
- package/ios/audioapi/ios/core/AudioPlayer.h +4 -12
- package/ios/audioapi/ios/core/AudioPlayer.m +26 -108
- package/ios/audioapi/ios/core/IOSAudioPlayer.h +1 -3
- package/ios/audioapi/ios/core/IOSAudioPlayer.mm +4 -28
- package/ios/audioapi/ios/system/AudioEngine.h +23 -0
- package/ios/audioapi/ios/system/AudioEngine.mm +137 -0
- package/ios/audioapi/ios/system/AudioSessionManager.h +22 -0
- package/ios/audioapi/ios/system/AudioSessionManager.mm +183 -0
- package/ios/audioapi/ios/system/LockScreenManager.h +23 -0
- package/ios/audioapi/ios/system/LockScreenManager.mm +295 -0
- package/ios/audioapi/ios/system/NotificationManager.h +22 -0
- package/ios/audioapi/ios/system/NotificationManager.mm +173 -0
- package/lib/commonjs/api.js +197 -0
- package/lib/commonjs/api.js.map +1 -0
- package/lib/commonjs/api.web.js +219 -0
- package/lib/commonjs/api.web.js.map +1 -0
- package/lib/commonjs/core/AnalyserNode.js +71 -0
- package/lib/commonjs/core/AnalyserNode.js.map +1 -0
- package/lib/commonjs/core/AudioBuffer.js +44 -0
- package/lib/commonjs/core/AudioBuffer.js.map +1 -0
- package/lib/commonjs/core/AudioBufferSourceNode.js +68 -0
- package/lib/commonjs/core/AudioBufferSourceNode.js.map +1 -0
- package/lib/commonjs/core/AudioContext.js +29 -0
- package/lib/commonjs/core/AudioContext.js.map +1 -0
- package/lib/commonjs/core/AudioDestinationNode.js +11 -0
- package/lib/commonjs/core/AudioDestinationNode.js.map +1 -0
- package/lib/commonjs/core/AudioNode.js +30 -0
- package/lib/commonjs/core/AudioNode.js.map +1 -0
- package/lib/commonjs/core/AudioParam.js +82 -0
- package/lib/commonjs/core/AudioParam.js.map +1 -0
- package/lib/commonjs/core/AudioScheduledSourceNode.js +38 -0
- package/lib/commonjs/core/AudioScheduledSourceNode.js.map +1 -0
- package/lib/commonjs/core/BaseAudioContext.js +80 -0
- package/lib/commonjs/core/BaseAudioContext.js.map +1 -0
- package/lib/commonjs/core/BiquadFilterNode.js +33 -0
- package/lib/commonjs/core/BiquadFilterNode.js.map +1 -0
- package/lib/commonjs/core/GainNode.js +17 -0
- package/lib/commonjs/core/GainNode.js.map +1 -0
- package/lib/commonjs/core/OfflineAudioContext.js +63 -0
- package/lib/commonjs/core/OfflineAudioContext.js.map +1 -0
- package/lib/commonjs/core/OscillatorNode.js +32 -0
- package/lib/commonjs/core/OscillatorNode.js.map +1 -0
- package/lib/commonjs/core/PeriodicWave.js +15 -0
- package/lib/commonjs/core/PeriodicWave.js.map +1 -0
- package/lib/commonjs/core/StereoPannerNode.js +17 -0
- package/lib/commonjs/core/StereoPannerNode.js.map +1 -0
- package/lib/commonjs/errors/IndexSizeError.js +14 -0
- package/lib/commonjs/errors/IndexSizeError.js.map +1 -0
- package/lib/commonjs/errors/InvalidAccessError.js +14 -0
- package/lib/commonjs/errors/InvalidAccessError.js.map +1 -0
- package/lib/commonjs/errors/InvalidStateError.js +14 -0
- package/lib/commonjs/errors/InvalidStateError.js.map +1 -0
- package/lib/commonjs/errors/NotSupportedError.js +14 -0
- package/lib/commonjs/errors/NotSupportedError.js.map +1 -0
- package/lib/commonjs/errors/RangeError.js +14 -0
- package/lib/commonjs/errors/RangeError.js.map +1 -0
- package/lib/commonjs/errors/index.js +42 -0
- package/lib/commonjs/errors/index.js.map +1 -0
- package/lib/commonjs/index.js +17 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/interfaces.js +6 -0
- package/lib/commonjs/interfaces.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/plugin/withAudioAPI.js +62 -0
- package/lib/commonjs/plugin/withAudioAPI.js.map +1 -0
- package/lib/commonjs/specs/NativeAudioAPIModule.js +9 -0
- package/lib/commonjs/specs/NativeAudioAPIModule.js.map +1 -0
- package/lib/commonjs/specs/NativeAudioManagerModule.js +33 -0
- package/lib/commonjs/specs/NativeAudioManagerModule.js.map +1 -0
- package/lib/commonjs/specs/index.js +27 -0
- package/lib/commonjs/specs/index.js.map +1 -0
- package/lib/commonjs/system/AudioManager.js +79 -0
- package/lib/commonjs/system/AudioManager.js.map +1 -0
- package/lib/commonjs/system/index.js +14 -0
- package/lib/commonjs/system/index.js.map +1 -0
- package/lib/commonjs/system/types.js +2 -0
- package/lib/commonjs/system/types.js.map +1 -0
- package/lib/commonjs/types.js +2 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/commonjs/utils/index.js +10 -0
- package/lib/commonjs/utils/index.js.map +1 -0
- package/lib/commonjs/web-core/AnalyserNode.js +38 -0
- package/lib/commonjs/web-core/AnalyserNode.js.map +1 -0
- package/lib/commonjs/web-core/AudioBuffer.js +44 -0
- package/lib/commonjs/web-core/AudioBuffer.js.map +1 -0
- package/lib/commonjs/web-core/AudioBufferSourceNode.js +214 -0
- package/lib/commonjs/web-core/AudioBufferSourceNode.js.map +1 -0
- package/lib/commonjs/web-core/AudioContext.js +93 -0
- package/lib/commonjs/web-core/AudioContext.js.map +1 -0
- package/lib/commonjs/web-core/AudioDestinationNode.js +11 -0
- package/lib/commonjs/web-core/AudioDestinationNode.js.map +1 -0
- package/lib/commonjs/web-core/AudioNode.js +33 -0
- package/lib/commonjs/web-core/AudioNode.js.map +1 -0
- package/lib/commonjs/web-core/AudioParam.js +81 -0
- package/lib/commonjs/web-core/AudioParam.js.map +1 -0
- package/lib/commonjs/web-core/AudioScheduledSourceNode.js +41 -0
- package/lib/commonjs/web-core/AudioScheduledSourceNode.js.map +1 -0
- package/lib/commonjs/web-core/BaseAudioContext.js +2 -0
- package/lib/commonjs/web-core/BaseAudioContext.js.map +1 -0
- package/lib/commonjs/web-core/BiquadFilterNode.js +33 -0
- package/lib/commonjs/web-core/BiquadFilterNode.js.map +1 -0
- package/lib/commonjs/web-core/GainNode.js +17 -0
- package/lib/commonjs/web-core/GainNode.js.map +1 -0
- package/lib/commonjs/web-core/OfflineAudioContext.js +96 -0
- package/lib/commonjs/web-core/OfflineAudioContext.js.map +1 -0
- package/lib/commonjs/web-core/OscillatorNode.js +31 -0
- package/lib/commonjs/web-core/OscillatorNode.js.map +1 -0
- package/lib/commonjs/web-core/PeriodicWave.js +15 -0
- package/lib/commonjs/web-core/PeriodicWave.js.map +1 -0
- package/lib/commonjs/web-core/StereoPannerNode.js +17 -0
- package/lib/commonjs/web-core/StereoPannerNode.js.map +1 -0
- package/lib/commonjs/web-core/custom/LoadCustomWasm.js +37 -0
- package/lib/commonjs/web-core/custom/LoadCustomWasm.js.map +1 -0
- package/lib/commonjs/web-core/custom/index.js +14 -0
- package/lib/commonjs/web-core/custom/index.js.map +1 -0
- package/lib/commonjs/web-core/custom/signalsmithStretch/LICENSE.txt +21 -0
- package/lib/commonjs/web-core/custom/signalsmithStretch/README.md +46 -0
- package/lib/commonjs/web-core/custom/signalsmithStretch/SignalsmithStretch.mjs +826 -0
- package/lib/commonjs/web-core/custom/signalsmithStretch/SignalsmithStretch.mjs.map +1 -0
- package/lib/module/api.js +1 -0
- package/lib/module/api.js.map +1 -1
- package/lib/module/core/AudioContext.js +2 -1
- package/lib/module/core/AudioContext.js.map +1 -1
- package/lib/module/plugin/withAudioAPI.js +58 -0
- package/lib/module/plugin/withAudioAPI.js.map +1 -0
- package/lib/module/specs/NativeAudioManagerModule.js +30 -0
- package/lib/module/specs/NativeAudioManagerModule.js.map +1 -0
- package/lib/module/specs/index.js +6 -0
- package/lib/module/specs/index.js.map +1 -0
- package/lib/module/system/AudioManager.js +75 -0
- package/lib/module/system/AudioManager.js.map +1 -0
- package/lib/module/system/index.js +4 -0
- package/lib/module/system/index.js.map +1 -0
- package/lib/module/system/types.js +2 -0
- package/lib/module/system/types.js.map +1 -0
- package/lib/typescript/api.d.ts +1 -0
- package/lib/typescript/api.d.ts.map +1 -1
- package/lib/typescript/core/AudioContext.d.ts.map +1 -1
- package/lib/typescript/plugin/withAudioAPI.d.ts +9 -0
- package/lib/typescript/plugin/withAudioAPI.d.ts.map +1 -0
- package/lib/typescript/specs/NativeAudioManagerModule.d.ts +14 -0
- package/lib/typescript/specs/NativeAudioManagerModule.d.ts.map +1 -0
- package/lib/typescript/specs/index.d.ts +4 -0
- package/lib/typescript/specs/index.d.ts.map +1 -0
- package/lib/typescript/system/AudioManager.d.ts +14 -0
- package/lib/typescript/system/AudioManager.d.ts.map +1 -0
- package/lib/typescript/system/index.d.ts +2 -0
- package/lib/typescript/system/index.d.ts.map +1 -0
- package/lib/typescript/system/types.d.ts +40 -0
- package/lib/typescript/system/types.d.ts.map +1 -0
- package/package.json +7 -4
- package/src/api.ts +1 -0
- package/src/core/AudioContext.ts +6 -1
- package/src/plugin/withAudioAPI.ts +90 -0
- package/src/specs/NativeAudioManagerModule.ts +48 -0
- package/src/specs/index.ts +6 -0
- package/src/system/AudioManager.ts +149 -0
- package/src/system/index.ts +1 -0
- package/src/system/types.ts +84 -0
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _errors = require("../errors");
|
|
8
|
+
var _AudioParam = _interopRequireDefault(require("./AudioParam"));
|
|
9
|
+
var _AudioBuffer = _interopRequireDefault(require("./AudioBuffer"));
|
|
10
|
+
var _AudioScheduledSourceNode = _interopRequireDefault(require("./AudioScheduledSourceNode"));
|
|
11
|
+
var _utils = require("../utils");
|
|
12
|
+
var _LoadCustomWasm = require("./custom/LoadCustomWasm");
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
class IStretcherNodeAudioParam {
|
|
15
|
+
constructor(value, setter, automationRate, minValue, maxValue, defaultValue) {
|
|
16
|
+
this._value = value;
|
|
17
|
+
this.automationRate = automationRate;
|
|
18
|
+
this.minValue = minValue;
|
|
19
|
+
this.maxValue = maxValue;
|
|
20
|
+
this.defaultValue = defaultValue;
|
|
21
|
+
this._setter = setter;
|
|
22
|
+
}
|
|
23
|
+
get value() {
|
|
24
|
+
return this._value;
|
|
25
|
+
}
|
|
26
|
+
set value(value) {
|
|
27
|
+
this._value = value;
|
|
28
|
+
this._setter(value);
|
|
29
|
+
}
|
|
30
|
+
cancelAndHoldAtTime(cancelTime) {
|
|
31
|
+
this._setter(this.defaultValue, cancelTime);
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
cancelScheduledValues(cancelTime) {
|
|
35
|
+
this._setter(this.defaultValue, cancelTime);
|
|
36
|
+
return this;
|
|
37
|
+
}
|
|
38
|
+
exponentialRampToValueAtTime(_value, _endTime) {
|
|
39
|
+
console.warn('exponentialRampToValueAtTime is not implemented for pitch correction mode');
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
linearRampToValueAtTime(_value, _endTime) {
|
|
43
|
+
console.warn('linearRampToValueAtTime is not implemented for pitch correction mode');
|
|
44
|
+
return this;
|
|
45
|
+
}
|
|
46
|
+
setTargetAtTime(_target, _startTime, _timeConstant) {
|
|
47
|
+
console.warn('setTargetAtTime is not implemented for pitch correction mode');
|
|
48
|
+
return this;
|
|
49
|
+
}
|
|
50
|
+
setValueAtTime(value, startTime) {
|
|
51
|
+
this._setter(value, startTime);
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
setValueCurveAtTime(_values, _startTime, _duration) {
|
|
55
|
+
console.warn('setValueCurveAtTime is not implemented for pitch correction mode');
|
|
56
|
+
return this;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
class AudioBufferSourceNode extends _AudioScheduledSourceNode.default {
|
|
60
|
+
_loop = false;
|
|
61
|
+
_loopStart = -1;
|
|
62
|
+
_loopEnd = -1;
|
|
63
|
+
_buffer = null;
|
|
64
|
+
constructor(context, node, pitchCorrection) {
|
|
65
|
+
super(context, node);
|
|
66
|
+
this._pitchCorrection = pitchCorrection;
|
|
67
|
+
if (pitchCorrection) {
|
|
68
|
+
this.detune = new _AudioParam.default(new IStretcherNodeAudioParam(0, this.setDetune.bind(this), 'a-rate', -1200, 1200, 0));
|
|
69
|
+
this.playbackRate = new _AudioParam.default(new IStretcherNodeAudioParam(1, this.setPlaybackRate.bind(this), 'a-rate', 0, Infinity, 1));
|
|
70
|
+
} else {
|
|
71
|
+
this.detune = new _AudioParam.default(node.detune);
|
|
72
|
+
this.playbackRate = new _AudioParam.default(node.playbackRate);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
isStretcherNode() {
|
|
76
|
+
return this._pitchCorrection;
|
|
77
|
+
}
|
|
78
|
+
asStretcher() {
|
|
79
|
+
return this.node;
|
|
80
|
+
}
|
|
81
|
+
asBufferSource() {
|
|
82
|
+
return this.node;
|
|
83
|
+
}
|
|
84
|
+
setDetune(value, when = 0) {
|
|
85
|
+
if (!this.isStretcherNode() || !this.hasBeenStarted) {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
this.asStretcher().schedule({
|
|
89
|
+
semitones: Math.floor((0, _utils.clamp)(value / 100, -12, 12)),
|
|
90
|
+
output: when
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
setPlaybackRate(value, when = 0) {
|
|
94
|
+
if (!this.isStretcherNode() || !this.hasBeenStarted) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
this.asStretcher().schedule({
|
|
98
|
+
rate: value,
|
|
99
|
+
output: when
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
get buffer() {
|
|
103
|
+
if (this.isStretcherNode()) {
|
|
104
|
+
return this._buffer;
|
|
105
|
+
}
|
|
106
|
+
const buffer = this.asBufferSource().buffer;
|
|
107
|
+
if (!buffer) {
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
return new _AudioBuffer.default(buffer);
|
|
111
|
+
}
|
|
112
|
+
set buffer(buffer) {
|
|
113
|
+
if (this.isStretcherNode()) {
|
|
114
|
+
this._buffer = buffer;
|
|
115
|
+
const stretcher = this.asStretcher();
|
|
116
|
+
stretcher.dropBuffers();
|
|
117
|
+
if (!buffer) {
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
const channelArrays = [];
|
|
121
|
+
for (let i = 0; i < buffer.numberOfChannels; i++) {
|
|
122
|
+
channelArrays.push(buffer.getChannelData(i));
|
|
123
|
+
}
|
|
124
|
+
stretcher.addBuffers(channelArrays);
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
if (!buffer) {
|
|
128
|
+
this.asBufferSource().buffer = null;
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
this.asBufferSource().buffer = buffer.buffer;
|
|
132
|
+
}
|
|
133
|
+
get loop() {
|
|
134
|
+
if (this.isStretcherNode()) {
|
|
135
|
+
return this._loop;
|
|
136
|
+
}
|
|
137
|
+
return this.asBufferSource().loop;
|
|
138
|
+
}
|
|
139
|
+
set loop(value) {
|
|
140
|
+
if (this.isStretcherNode()) {
|
|
141
|
+
this._loop = value;
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
this.asBufferSource().loop = value;
|
|
145
|
+
}
|
|
146
|
+
get loopStart() {
|
|
147
|
+
if (this.isStretcherNode()) {
|
|
148
|
+
return this._loopStart;
|
|
149
|
+
}
|
|
150
|
+
return this.asBufferSource().loopStart;
|
|
151
|
+
}
|
|
152
|
+
set loopStart(value) {
|
|
153
|
+
if (this.isStretcherNode()) {
|
|
154
|
+
this._loopStart = value;
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
this.asBufferSource().loopStart = value;
|
|
158
|
+
}
|
|
159
|
+
get loopEnd() {
|
|
160
|
+
if (this.isStretcherNode()) {
|
|
161
|
+
return this._loopEnd;
|
|
162
|
+
}
|
|
163
|
+
return this.asBufferSource().loopEnd;
|
|
164
|
+
}
|
|
165
|
+
set loopEnd(value) {
|
|
166
|
+
if (this.isStretcherNode()) {
|
|
167
|
+
this._loopEnd = value;
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
this.asBufferSource().loopEnd = value;
|
|
171
|
+
}
|
|
172
|
+
start(when, offset, duration) {
|
|
173
|
+
if (when && when < 0) {
|
|
174
|
+
throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
|
|
175
|
+
}
|
|
176
|
+
if (offset && offset < 0) {
|
|
177
|
+
throw new _errors.RangeError(`offset must be a finite non-negative number: ${offset}`);
|
|
178
|
+
}
|
|
179
|
+
if (duration && duration < 0) {
|
|
180
|
+
throw new _errors.RangeError(`duration must be a finite non-negative number: ${duration}`);
|
|
181
|
+
}
|
|
182
|
+
if (this.hasBeenStarted) {
|
|
183
|
+
throw new _errors.InvalidStateError('Cannot call start more than once');
|
|
184
|
+
}
|
|
185
|
+
this.hasBeenStarted = true;
|
|
186
|
+
if (!this.isStretcherNode()) {
|
|
187
|
+
this.asBufferSource().start(when, offset, duration);
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
const startAt = !when || when < this.context.currentTime ? this.context.currentTime : when;
|
|
191
|
+
if (this.loop && this._loopStart !== -1 && this._loopEnd !== -1) {
|
|
192
|
+
this.asStretcher().schedule({
|
|
193
|
+
loopStart: this._loopStart,
|
|
194
|
+
loopEnd: this._loopEnd
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
this.asStretcher().start(startAt, offset, duration, this.playbackRate.value, Math.floor((0, _utils.clamp)(this.detune.value / 100, -12, 12)));
|
|
198
|
+
}
|
|
199
|
+
stop(when = 0) {
|
|
200
|
+
if (when < 0) {
|
|
201
|
+
throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
|
|
202
|
+
}
|
|
203
|
+
if (!this.hasBeenStarted) {
|
|
204
|
+
throw new _errors.InvalidStateError('Cannot call stop without calling start first');
|
|
205
|
+
}
|
|
206
|
+
if (!this.isStretcherNode()) {
|
|
207
|
+
this.asBufferSource().stop(when);
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
this.asStretcher().stop(when);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
exports.default = AudioBufferSourceNode;
|
|
214
|
+
//# sourceMappingURL=AudioBufferSourceNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_errors","require","_AudioParam","_interopRequireDefault","_AudioBuffer","_AudioScheduledSourceNode","_utils","_LoadCustomWasm","e","__esModule","default","IStretcherNodeAudioParam","constructor","value","setter","automationRate","minValue","maxValue","defaultValue","_value","_setter","cancelAndHoldAtTime","cancelTime","cancelScheduledValues","exponentialRampToValueAtTime","_endTime","console","warn","linearRampToValueAtTime","setTargetAtTime","_target","_startTime","_timeConstant","setValueAtTime","startTime","setValueCurveAtTime","_values","_duration","AudioBufferSourceNode","AudioScheduledSourceNode","_loop","_loopStart","_loopEnd","_buffer","context","node","pitchCorrection","_pitchCorrection","detune","AudioParam","setDetune","bind","playbackRate","setPlaybackRate","Infinity","isStretcherNode","asStretcher","asBufferSource","when","hasBeenStarted","schedule","semitones","Math","floor","clamp","output","rate","buffer","AudioBuffer","stretcher","dropBuffers","channelArrays","i","numberOfChannels","push","getChannelData","addBuffers","loop","loopStart","loopEnd","start","offset","duration","RangeError","InvalidStateError","startAt","currentTime","stop","exports"],"sourceRoot":"../../../src","sources":["web-core/AudioBufferSourceNode.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _errors = require("../errors");
|
|
8
|
+
var _AnalyserNode = _interopRequireDefault(require("./AnalyserNode"));
|
|
9
|
+
var _AudioDestinationNode = _interopRequireDefault(require("./AudioDestinationNode"));
|
|
10
|
+
var _AudioBuffer = _interopRequireDefault(require("./AudioBuffer"));
|
|
11
|
+
var _AudioBufferSourceNode = _interopRequireDefault(require("./AudioBufferSourceNode"));
|
|
12
|
+
var _BiquadFilterNode = _interopRequireDefault(require("./BiquadFilterNode"));
|
|
13
|
+
var _GainNode = _interopRequireDefault(require("./GainNode"));
|
|
14
|
+
var _OscillatorNode = _interopRequireDefault(require("./OscillatorNode"));
|
|
15
|
+
var _PeriodicWave = _interopRequireDefault(require("./PeriodicWave"));
|
|
16
|
+
var _StereoPannerNode = _interopRequireDefault(require("./StereoPannerNode"));
|
|
17
|
+
var _LoadCustomWasm = require("./custom/LoadCustomWasm");
|
|
18
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
19
|
+
class AudioContext {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
if (options && (options.sampleRate < 8000 || options.sampleRate > 96000)) {
|
|
22
|
+
throw new _errors.NotSupportedError(`The provided sampleRate is not supported: ${options.sampleRate}`);
|
|
23
|
+
}
|
|
24
|
+
this.context = new window.AudioContext(options);
|
|
25
|
+
this.sampleRate = this.context.sampleRate;
|
|
26
|
+
this.destination = new _AudioDestinationNode.default(this, this.context.destination);
|
|
27
|
+
}
|
|
28
|
+
get currentTime() {
|
|
29
|
+
return this.context.currentTime;
|
|
30
|
+
}
|
|
31
|
+
get state() {
|
|
32
|
+
return this.context.state;
|
|
33
|
+
}
|
|
34
|
+
createOscillator() {
|
|
35
|
+
return new _OscillatorNode.default(this, this.context.createOscillator());
|
|
36
|
+
}
|
|
37
|
+
createGain() {
|
|
38
|
+
return new _GainNode.default(this, this.context.createGain());
|
|
39
|
+
}
|
|
40
|
+
createStereoPanner() {
|
|
41
|
+
return new _StereoPannerNode.default(this, this.context.createStereoPanner());
|
|
42
|
+
}
|
|
43
|
+
createBiquadFilter() {
|
|
44
|
+
return new _BiquadFilterNode.default(this, this.context.createBiquadFilter());
|
|
45
|
+
}
|
|
46
|
+
async createBufferSource(options) {
|
|
47
|
+
if (!options || !options.pitchCorrection) {
|
|
48
|
+
return new _AudioBufferSourceNode.default(this, this.context.createBufferSource(), false);
|
|
49
|
+
}
|
|
50
|
+
await _LoadCustomWasm.globalWasmPromise;
|
|
51
|
+
const wasmStretch = await window[_LoadCustomWasm.globalTag](this.context);
|
|
52
|
+
return new _AudioBufferSourceNode.default(this, wasmStretch, true);
|
|
53
|
+
}
|
|
54
|
+
createBuffer(numOfChannels, length, sampleRate) {
|
|
55
|
+
if (numOfChannels < 1 || numOfChannels >= 32) {
|
|
56
|
+
throw new _errors.NotSupportedError(`The number of channels provided (${numOfChannels}) is outside the range [1, 32]`);
|
|
57
|
+
}
|
|
58
|
+
if (length <= 0) {
|
|
59
|
+
throw new _errors.NotSupportedError(`The number of frames provided (${length}) is less than or equal to the minimum bound (0)`);
|
|
60
|
+
}
|
|
61
|
+
if (sampleRate < 8000 || sampleRate > 96000) {
|
|
62
|
+
throw new _errors.NotSupportedError(`The sample rate provided (${sampleRate}) is outside the range [8000, 96000]`);
|
|
63
|
+
}
|
|
64
|
+
return new _AudioBuffer.default(this.context.createBuffer(numOfChannels, length, sampleRate));
|
|
65
|
+
}
|
|
66
|
+
createPeriodicWave(real, imag, constraints) {
|
|
67
|
+
if (real.length !== imag.length) {
|
|
68
|
+
throw new _errors.InvalidAccessError(`The lengths of the real (${real.length}) and imaginary (${imag.length}) arrays must match.`);
|
|
69
|
+
}
|
|
70
|
+
return new _PeriodicWave.default(this.context.createPeriodicWave(real, imag, constraints));
|
|
71
|
+
}
|
|
72
|
+
createAnalyser() {
|
|
73
|
+
return new _AnalyserNode.default(this, this.context.createAnalyser());
|
|
74
|
+
}
|
|
75
|
+
async decodeAudioDataSource(source) {
|
|
76
|
+
const arrayBuffer = await fetch(source).then(response => response.arrayBuffer());
|
|
77
|
+
return this.decodeAudioData(arrayBuffer);
|
|
78
|
+
}
|
|
79
|
+
async decodeAudioData(arrayBuffer) {
|
|
80
|
+
return new _AudioBuffer.default(await this.context.decodeAudioData(arrayBuffer));
|
|
81
|
+
}
|
|
82
|
+
async close() {
|
|
83
|
+
await this.context.close();
|
|
84
|
+
}
|
|
85
|
+
async resume() {
|
|
86
|
+
await this.context.resume();
|
|
87
|
+
}
|
|
88
|
+
async suspend() {
|
|
89
|
+
await this.context.suspend();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
exports.default = AudioContext;
|
|
93
|
+
//# sourceMappingURL=AudioContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioDestinationNode","_AudioBuffer","_AudioBufferSourceNode","_BiquadFilterNode","_GainNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_LoadCustomWasm","e","__esModule","default","AudioContext","constructor","options","sampleRate","NotSupportedError","context","window","destination","AudioDestinationNode","currentTime","state","createOscillator","OscillatorNode","createGain","GainNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createBufferSource","pitchCorrection","AudioBufferSourceNode","globalWasmPromise","wasmStretch","globalTag","createBuffer","numOfChannels","length","AudioBuffer","createPeriodicWave","real","imag","constraints","InvalidAccessError","PeriodicWave","createAnalyser","AnalyserNode","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","close","resume","suspend","exports"],"sourceRoot":"../../../src","sources":["web-core/AudioContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _AudioNode = _interopRequireDefault(require("./AudioNode"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
class AudioDestinationNode extends _AudioNode.default {}
|
|
10
|
+
exports.default = AudioDestinationNode;
|
|
11
|
+
//# sourceMappingURL=AudioDestinationNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_AudioNode","_interopRequireDefault","require","e","__esModule","default","AudioDestinationNode","AudioNode","exports"],"sourceRoot":"../../../src","sources":["web-core/AudioDestinationNode.tsx"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAErB,MAAMG,oBAAoB,SAASC,kBAAS,CAAC;AAAEC,OAAA,CAAAH,OAAA,GAAAC,oBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
class AudioNode {
|
|
8
|
+
constructor(context, node) {
|
|
9
|
+
this.context = context;
|
|
10
|
+
this.node = node;
|
|
11
|
+
this.numberOfInputs = this.node.numberOfInputs;
|
|
12
|
+
this.numberOfOutputs = this.node.numberOfOutputs;
|
|
13
|
+
this.channelCount = this.node.channelCount;
|
|
14
|
+
this.channelCountMode = this.node.channelCountMode;
|
|
15
|
+
this.channelInterpretation = this.node.channelInterpretation;
|
|
16
|
+
}
|
|
17
|
+
connect(destination) {
|
|
18
|
+
if (this.context !== destination.context) {
|
|
19
|
+
throw new Error('The AudioNodes are from different BaseAudioContexts');
|
|
20
|
+
}
|
|
21
|
+
this.node.connect(destination.node);
|
|
22
|
+
return destination;
|
|
23
|
+
}
|
|
24
|
+
disconnect(destination) {
|
|
25
|
+
if (destination === undefined) {
|
|
26
|
+
this.node.disconnect();
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
this.node.disconnect(destination.node);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.default = AudioNode;
|
|
33
|
+
//# sourceMappingURL=AudioNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AudioNode","constructor","context","node","numberOfInputs","numberOfOutputs","channelCount","channelCountMode","channelInterpretation","connect","destination","Error","disconnect","undefined","exports","default"],"sourceRoot":"../../../src","sources":["web-core/AudioNode.tsx"],"mappings":";;;;;;AAGe,MAAMA,SAAS,CAAC;EAU7BC,WAAWA,CAACC,OAAyB,EAAEC,IAA0B,EAAE;IACjE,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACC,cAAc,GAAG,IAAI,CAACD,IAAI,CAACC,cAAc;IAC9C,IAAI,CAACC,eAAe,GAAG,IAAI,CAACF,IAAI,CAACE,eAAe;IAChD,IAAI,CAACC,YAAY,GAAG,IAAI,CAACH,IAAI,CAACG,YAAY;IAC1C,IAAI,CAACC,gBAAgB,GAAG,IAAI,CAACJ,IAAI,CAACI,gBAAgB;IAClD,IAAI,CAACC,qBAAqB,GAAG,IAAI,CAACL,IAAI,CAACK,qBAAqB;EAC9D;EAEOC,OAAOA,CAACC,WAAsB,EAAa;IAChD,IAAI,IAAI,CAACR,OAAO,KAAKQ,WAAW,CAACR,OAAO,EAAE;MACxC,MAAM,IAAIS,KAAK,CAAC,qDAAqD,CAAC;IACxE;IAEA,IAAI,CAACR,IAAI,CAACM,OAAO,CAACC,WAAW,CAACP,IAAI,CAAC;IAEnC,OAAOO,WAAW;EACpB;EAEOE,UAAUA,CAACF,WAAuB,EAAQ;IAC/C,IAAIA,WAAW,KAAKG,SAAS,EAAE;MAC7B,IAAI,CAACV,IAAI,CAACS,UAAU,CAAC,CAAC;MACtB;IACF;IAEA,IAAI,CAACT,IAAI,CAACS,UAAU,CAACF,WAAW,CAACP,IAAI,CAAC;EACxC;AACF;AAACW,OAAA,CAAAC,OAAA,GAAAf,SAAA","ignoreList":[]}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _errors = require("../errors");
|
|
8
|
+
class AudioParam {
|
|
9
|
+
constructor(param) {
|
|
10
|
+
this.param = param;
|
|
11
|
+
this.defaultValue = param.defaultValue;
|
|
12
|
+
this.minValue = param.minValue;
|
|
13
|
+
this.maxValue = param.maxValue;
|
|
14
|
+
}
|
|
15
|
+
get value() {
|
|
16
|
+
return this.param.value;
|
|
17
|
+
}
|
|
18
|
+
set value(value) {
|
|
19
|
+
this.param.value = value;
|
|
20
|
+
}
|
|
21
|
+
setValueAtTime(value, startTime) {
|
|
22
|
+
if (startTime < 0) {
|
|
23
|
+
throw new _errors.RangeError(`startTime must be a finite non-negative number: ${startTime}`);
|
|
24
|
+
}
|
|
25
|
+
this.param.setValueAtTime(value, startTime);
|
|
26
|
+
return this;
|
|
27
|
+
}
|
|
28
|
+
linearRampToValueAtTime(value, endTime) {
|
|
29
|
+
if (endTime < 0) {
|
|
30
|
+
throw new _errors.RangeError(`endTime must be a finite non-negative number: ${endTime}`);
|
|
31
|
+
}
|
|
32
|
+
this.param.linearRampToValueAtTime(value, endTime);
|
|
33
|
+
return this;
|
|
34
|
+
}
|
|
35
|
+
exponentialRampToValueAtTime(value, endTime) {
|
|
36
|
+
if (endTime < 0) {
|
|
37
|
+
throw new _errors.RangeError(`endTime must be a finite non-negative number: ${endTime}`);
|
|
38
|
+
}
|
|
39
|
+
this.param.exponentialRampToValueAtTime(value, endTime);
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
setTargetAtTime(target, startTime, timeConstant) {
|
|
43
|
+
if (startTime < 0) {
|
|
44
|
+
throw new _errors.RangeError(`startTime must be a finite non-negative number: ${startTime}`);
|
|
45
|
+
}
|
|
46
|
+
if (timeConstant < 0) {
|
|
47
|
+
throw new _errors.RangeError(`timeConstant must be a finite non-negative number: ${startTime}`);
|
|
48
|
+
}
|
|
49
|
+
this.param.setTargetAtTime(target, startTime, timeConstant);
|
|
50
|
+
return this;
|
|
51
|
+
}
|
|
52
|
+
setValueCurveAtTime(values, startTime, duration) {
|
|
53
|
+
if (startTime < 0) {
|
|
54
|
+
throw new _errors.RangeError(`startTime must be a finite non-negative number: ${startTime}`);
|
|
55
|
+
}
|
|
56
|
+
if (duration < 0) {
|
|
57
|
+
throw new _errors.RangeError(`duration must be a finite non-negative number: ${startTime}`);
|
|
58
|
+
}
|
|
59
|
+
if (values.length < 2) {
|
|
60
|
+
throw new _errors.InvalidStateError(`values must contain at least two values`);
|
|
61
|
+
}
|
|
62
|
+
this.param.setValueCurveAtTime(values, startTime, duration);
|
|
63
|
+
return this;
|
|
64
|
+
}
|
|
65
|
+
cancelScheduledValues(cancelTime) {
|
|
66
|
+
if (cancelTime < 0) {
|
|
67
|
+
throw new _errors.RangeError(`cancelTime must be a finite non-negative number: ${cancelTime}`);
|
|
68
|
+
}
|
|
69
|
+
this.param.cancelScheduledValues(cancelTime);
|
|
70
|
+
return this;
|
|
71
|
+
}
|
|
72
|
+
cancelAndHoldAtTime(cancelTime) {
|
|
73
|
+
if (cancelTime < 0) {
|
|
74
|
+
throw new _errors.RangeError(`cancelTime must be a finite non-negative number: ${cancelTime}`);
|
|
75
|
+
}
|
|
76
|
+
this.param.cancelAndHoldAtTime(cancelTime);
|
|
77
|
+
return this;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.default = AudioParam;
|
|
81
|
+
//# sourceMappingURL=AudioParam.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_errors","require","AudioParam","constructor","param","defaultValue","minValue","maxValue","value","setValueAtTime","startTime","RangeError","linearRampToValueAtTime","endTime","exponentialRampToValueAtTime","setTargetAtTime","target","timeConstant","setValueCurveAtTime","values","duration","length","InvalidStateError","cancelScheduledValues","cancelTime","cancelAndHoldAtTime","exports","default"],"sourceRoot":"../../../src","sources":["web-core/AudioParam.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _AudioNode = _interopRequireDefault(require("./AudioNode"));
|
|
8
|
+
var _errors = require("../errors");
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
class AudioScheduledSourceNode extends _AudioNode.default {
|
|
11
|
+
hasBeenStarted = false;
|
|
12
|
+
start(when = 0) {
|
|
13
|
+
if (when < 0) {
|
|
14
|
+
throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
|
|
15
|
+
}
|
|
16
|
+
if (this.hasBeenStarted) {
|
|
17
|
+
throw new _errors.InvalidStateError('Cannot call start more than once');
|
|
18
|
+
}
|
|
19
|
+
this.hasBeenStarted = true;
|
|
20
|
+
this.node.start(when);
|
|
21
|
+
}
|
|
22
|
+
stop(when = 0) {
|
|
23
|
+
if (when < 0) {
|
|
24
|
+
throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
|
|
25
|
+
}
|
|
26
|
+
if (!this.hasBeenStarted) {
|
|
27
|
+
throw new _errors.InvalidStateError('Cannot call stop without calling start first');
|
|
28
|
+
}
|
|
29
|
+
this.node.stop(when);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// eslint-disable-next-line accessor-pairs
|
|
33
|
+
set onended(callback) {
|
|
34
|
+
const eventCallback = _event => {
|
|
35
|
+
callback();
|
|
36
|
+
};
|
|
37
|
+
this.node.onended = eventCallback;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.default = AudioScheduledSourceNode;
|
|
41
|
+
//# sourceMappingURL=AudioScheduledSourceNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_AudioNode","_interopRequireDefault","require","_errors","e","__esModule","default","AudioScheduledSourceNode","AudioNode","hasBeenStarted","start","when","RangeError","InvalidStateError","node","stop","onended","callback","eventCallback","_event","exports"],"sourceRoot":"../../../src","sources":["web-core/AudioScheduledSourceNode.tsx"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAA0D,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE3C,MAAMG,wBAAwB,SAASC,kBAAS,CAAC;EACpDC,cAAc,GAAY,KAAK;EAElCC,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAQ;IACnC,IAAIA,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIC,kBAAU,CAClB,8CAA8CD,IAAI,EACpD,CAAC;IACH;IAEA,IAAI,IAAI,CAACF,cAAc,EAAE;MACvB,MAAM,IAAII,yBAAiB,CAAC,kCAAkC,CAAC;IACjE;IAEA,IAAI,CAACJ,cAAc,GAAG,IAAI;IACzB,IAAI,CAACK,IAAI,CAAyCJ,KAAK,CAACC,IAAI,CAAC;EAChE;EAEOI,IAAIA,CAACJ,IAAY,GAAG,CAAC,EAAQ;IAClC,IAAIA,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIC,kBAAU,CAClB,8CAA8CD,IAAI,EACpD,CAAC;IACH;IAEA,IAAI,CAAC,IAAI,CAACF,cAAc,EAAE;MACxB,MAAM,IAAII,yBAAiB,CACzB,8CACF,CAAC;IACH;IAEC,IAAI,CAACC,IAAI,CAAyCC,IAAI,CAACJ,IAAI,CAAC;EAC/D;;EAEA;EACA,IAAWK,OAAOA,CAACC,QAAgC,EAAE;IACnD,MAAMC,aAAa,GAAIC,MAAa,IAAK;MACvCF,QAAQ,CAAC,CAAC;IACZ,CAAC;IAEA,IAAI,CAACH,IAAI,CAAyCE,OAAO,GAAGE,aAAa;EAC5E;AACF;AAACE,OAAA,CAAAd,OAAA,GAAAC,wBAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["web-core/BaseAudioContext.tsx"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _AudioParam = _interopRequireDefault(require("./AudioParam"));
|
|
8
|
+
var _AudioNode = _interopRequireDefault(require("./AudioNode"));
|
|
9
|
+
var _errors = require("../errors");
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
class BiquadFilterNode extends _AudioNode.default {
|
|
12
|
+
constructor(context, biquadFilter) {
|
|
13
|
+
super(context, biquadFilter);
|
|
14
|
+
this.frequency = new _AudioParam.default(biquadFilter.frequency);
|
|
15
|
+
this.detune = new _AudioParam.default(biquadFilter.detune);
|
|
16
|
+
this.Q = new _AudioParam.default(biquadFilter.Q);
|
|
17
|
+
this.gain = new _AudioParam.default(biquadFilter.gain);
|
|
18
|
+
}
|
|
19
|
+
get type() {
|
|
20
|
+
return this.node.type;
|
|
21
|
+
}
|
|
22
|
+
set type(value) {
|
|
23
|
+
this.node.type = value;
|
|
24
|
+
}
|
|
25
|
+
getFrequencyResponse(frequencyArray, magResponseOutput, phaseResponseOutput) {
|
|
26
|
+
if (frequencyArray.length !== magResponseOutput.length || frequencyArray.length !== phaseResponseOutput.length) {
|
|
27
|
+
throw new _errors.InvalidAccessError(`The lengths of the arrays are not the same frequencyArray: ${frequencyArray.length}, magResponseOutput: ${magResponseOutput.length}, phaseResponseOutput: ${phaseResponseOutput.length}`);
|
|
28
|
+
}
|
|
29
|
+
this.node.getFrequencyResponse(frequencyArray, magResponseOutput, phaseResponseOutput);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.default = BiquadFilterNode;
|
|
33
|
+
//# sourceMappingURL=BiquadFilterNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_AudioParam","_interopRequireDefault","require","_AudioNode","_errors","e","__esModule","default","BiquadFilterNode","AudioNode","constructor","context","biquadFilter","frequency","AudioParam","detune","Q","gain","type","node","value","getFrequencyResponse","frequencyArray","magResponseOutput","phaseResponseOutput","length","InvalidAccessError","exports"],"sourceRoot":"../../../src","sources":["web-core/BiquadFilterNode.tsx"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AAGA,IAAAE,OAAA,GAAAF,OAAA;AAA+C,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEhC,MAAMG,gBAAgB,SAASC,kBAAS,CAAC;EAMtDC,WAAWA,CACTC,OAAyB,EACzBC,YAAyC,EACzC;IACA,KAAK,CAACD,OAAO,EAAEC,YAAY,CAAC;IAC5B,IAAI,CAACC,SAAS,GAAG,IAAIC,mBAAU,CAACF,YAAY,CAACC,SAAS,CAAC;IACvD,IAAI,CAACE,MAAM,GAAG,IAAID,mBAAU,CAACF,YAAY,CAACG,MAAM,CAAC;IACjD,IAAI,CAACC,CAAC,GAAG,IAAIF,mBAAU,CAACF,YAAY,CAACI,CAAC,CAAC;IACvC,IAAI,CAACC,IAAI,GAAG,IAAIH,mBAAU,CAACF,YAAY,CAACK,IAAI,CAAC;EAC/C;EAEA,IAAWC,IAAIA,CAAA,EAAqB;IAClC,OAAQ,IAAI,CAACC,IAAI,CAAiCD,IAAI;EACxD;EAEA,IAAWA,IAAIA,CAACE,KAAuB,EAAE;IACtC,IAAI,CAACD,IAAI,CAAiCD,IAAI,GAAGE,KAAK;EACzD;EAEOC,oBAAoBA,CACzBC,cAA4B,EAC5BC,iBAA+B,EAC/BC,mBAAiC,EACjC;IACA,IACEF,cAAc,CAACG,MAAM,KAAKF,iBAAiB,CAACE,MAAM,IAClDH,cAAc,CAACG,MAAM,KAAKD,mBAAmB,CAACC,MAAM,EACpD;MACA,MAAM,IAAIC,0BAAkB,CAC1B,8DAA8DJ,cAAc,CAACG,MAAM,wBAAwBF,iBAAiB,CAACE,MAAM,0BAA0BD,mBAAmB,CAACC,MAAM,EACzL,CAAC;IACH;IAEC,IAAI,CAACN,IAAI,CAAiCE,oBAAoB,CAC7DC,cAAc,EACdC,iBAAiB,EACjBC,mBACF,CAAC;EACH;AACF;AAACG,OAAA,CAAApB,OAAA,GAAAC,gBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _AudioNode = _interopRequireDefault(require("./AudioNode"));
|
|
8
|
+
var _AudioParam = _interopRequireDefault(require("./AudioParam"));
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
class GainNode extends _AudioNode.default {
|
|
11
|
+
constructor(context, gain) {
|
|
12
|
+
super(context, gain);
|
|
13
|
+
this.gain = new _AudioParam.default(gain.gain);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.default = GainNode;
|
|
17
|
+
//# sourceMappingURL=GainNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_AudioNode","_interopRequireDefault","require","_AudioParam","e","__esModule","default","GainNode","AudioNode","constructor","context","gain","AudioParam","exports"],"sourceRoot":"../../../src","sources":["web-core/GainNode.tsx"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAAsC,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEvB,MAAMG,QAAQ,SAASC,kBAAS,CAAC;EAG9CC,WAAWA,CAACC,OAAyB,EAAEC,IAAyB,EAAE;IAChE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IACpB,IAAI,CAACA,IAAI,GAAG,IAAIC,mBAAU,CAACD,IAAI,CAACA,IAAI,CAAC;EACvC;AACF;AAACE,OAAA,CAAAP,OAAA,GAAAC,QAAA","ignoreList":[]}
|