react-native-audio-api 0.8.3-nightly-73cf39b-20250923 → 0.8.3-nightly-d178688-20250925
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/android/build.gradle +0 -1
- package/android/src/main/cpp/audioapi/android/core/AndroidAudioRecorder.cpp +1 -3
- package/common/cpp/audioapi/HostObjects/BaseAudioContextHostObject.h +2 -1
- package/common/cpp/audioapi/core/AudioParam.cpp +5 -4
- package/common/cpp/audioapi/core/BaseAudioContext.cpp +3 -2
- package/common/cpp/audioapi/core/BaseAudioContext.h +1 -1
- package/common/cpp/audioapi/core/inputs/AudioRecorder.cpp +2 -4
- package/common/cpp/audioapi/core/inputs/AudioRecorder.h +1 -1
- package/common/cpp/audioapi/core/sources/AudioBufferBaseSourceNode.cpp +45 -3
- package/common/cpp/audioapi/core/sources/AudioBufferBaseSourceNode.h +18 -3
- package/common/cpp/audioapi/core/sources/AudioBufferQueueSourceNode.cpp +92 -10
- package/common/cpp/audioapi/core/sources/AudioBufferQueueSourceNode.h +8 -2
- package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.cpp +2 -41
- package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.h +1 -9
- package/common/cpp/audioapi/core/sources/AudioScheduledSourceNode.h +1 -1
- package/common/cpp/audioapi/events/AudioEventHandlerRegistry.cpp +40 -2
- package/common/cpp/audioapi/events/AudioEventHandlerRegistry.h +1 -0
- package/ios/audioapi/ios/AudioAPIModule.mm +13 -10
- package/ios/audioapi/ios/core/IOSAudioRecorder.mm +2 -2
- package/ios/audioapi/ios/core/NativeAudioRecorder.h +1 -1
- package/ios/audioapi/ios/core/NativeAudioRecorder.m +8 -6
- package/lib/commonjs/core/BaseAudioContext.js +3 -2
- package/lib/commonjs/core/BaseAudioContext.js.map +1 -1
- package/lib/commonjs/web-core/AudioContext.js.map +1 -1
- package/lib/commonjs/web-core/OfflineAudioContext.js.map +1 -1
- package/lib/module/core/BaseAudioContext.js +3 -2
- package/lib/module/core/BaseAudioContext.js.map +1 -1
- package/lib/module/web-core/AudioContext.js.map +1 -1
- package/lib/module/web-core/OfflineAudioContext.js.map +1 -1
- package/lib/typescript/core/BaseAudioContext.d.ts +3 -3
- package/lib/typescript/core/BaseAudioContext.d.ts.map +1 -1
- package/lib/typescript/interfaces.d.ts +1 -1
- package/lib/typescript/interfaces.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +1 -1
- package/lib/typescript/types.d.ts.map +1 -1
- package/lib/typescript/web-core/AudioContext.d.ts +2 -2
- package/lib/typescript/web-core/AudioContext.d.ts.map +1 -1
- package/lib/typescript/web-core/OfflineAudioContext.d.ts +2 -2
- package/lib/typescript/web-core/OfflineAudioContext.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/core/BaseAudioContext.ts +8 -4
- package/src/interfaces.ts +3 -1
- package/src/types.ts +1 -1
- package/src/web-core/AudioContext.tsx +2 -2
- package/src/web-core/OfflineAudioContext.tsx +2 -2
package/android/build.gradle
CHANGED
|
@@ -116,7 +116,6 @@ android {
|
|
|
116
116
|
|
|
117
117
|
externalNativeBuild {
|
|
118
118
|
cmake {
|
|
119
|
-
cppFlags "-O2 -frtti -fexceptions -Wall -fstack-protector-all"
|
|
120
119
|
abiFilters (*reactNativeArchitectures())
|
|
121
120
|
arguments "-DANDROID_STL=c++_shared",
|
|
122
121
|
"-DREACT_NATIVE_MINOR_VERSION=${REACT_NATIVE_MINOR_VERSION}",
|
|
@@ -75,10 +75,8 @@ DataCallbackResult AndroidAudioRecorder::onAudioReady(
|
|
|
75
75
|
auto *outputChannel = bus->getChannel(0)->getData();
|
|
76
76
|
|
|
77
77
|
circularBuffer_->pop_front(outputChannel, bufferLength_);
|
|
78
|
-
auto when = static_cast<double>(
|
|
79
|
-
oboeStream->getTimestamp(CLOCK_MONOTONIC).value().timestamp);
|
|
80
78
|
|
|
81
|
-
invokeOnAudioReadyCallback(bus, bufferLength_
|
|
79
|
+
invokeOnAudioReadyCallback(bus, bufferLength_);
|
|
82
80
|
}
|
|
83
81
|
|
|
84
82
|
return DataCallbackResult::Continue;
|
|
@@ -128,7 +128,8 @@ class BaseAudioContextHostObject : public JsiHostObject {
|
|
|
128
128
|
}
|
|
129
129
|
|
|
130
130
|
JSI_HOST_FUNCTION(createBufferQueueSource) {
|
|
131
|
-
auto
|
|
131
|
+
auto pitchCorrection = args[0].asBool();
|
|
132
|
+
auto bufferSource = context_->createBufferQueueSource(pitchCorrection);
|
|
132
133
|
auto bufferStreamSourceHostObject =
|
|
133
134
|
std::make_shared<AudioBufferQueueSourceNodeHostObject>(bufferSource);
|
|
134
135
|
return jsi::Object::createFromHostObject(runtime, bufferStreamSourceHostObject);
|
|
@@ -18,10 +18,11 @@ AudioParam::AudioParam(
|
|
|
18
18
|
maxValue_(maxValue),
|
|
19
19
|
eventsQueue_(),
|
|
20
20
|
eventScheduler_(32),
|
|
21
|
-
audioBus_(
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
audioBus_(
|
|
22
|
+
std::make_shared<AudioBus>(
|
|
23
|
+
RENDER_QUANTUM_SIZE,
|
|
24
|
+
1,
|
|
25
|
+
context->getSampleRate())) {
|
|
25
26
|
inputBuses_.reserve(4);
|
|
26
27
|
inputNodes_.reserve(4);
|
|
27
28
|
startTime_ = 0;
|
|
@@ -105,8 +105,9 @@ std::shared_ptr<AudioBufferSourceNode> BaseAudioContext::createBufferSource(
|
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
std::shared_ptr<AudioBufferQueueSourceNode>
|
|
108
|
-
BaseAudioContext::createBufferQueueSource() {
|
|
109
|
-
auto bufferSource =
|
|
108
|
+
BaseAudioContext::createBufferQueueSource(bool pitchCorrection) {
|
|
109
|
+
auto bufferSource =
|
|
110
|
+
std::make_shared<AudioBufferQueueSourceNode>(this, pitchCorrection);
|
|
110
111
|
nodeManager_->addSourceNode(bufferSource);
|
|
111
112
|
return bufferSource;
|
|
112
113
|
}
|
|
@@ -51,7 +51,7 @@ class BaseAudioContext {
|
|
|
51
51
|
std::shared_ptr<StereoPannerNode> createStereoPanner();
|
|
52
52
|
std::shared_ptr<BiquadFilterNode> createBiquadFilter();
|
|
53
53
|
std::shared_ptr<AudioBufferSourceNode> createBufferSource(bool pitchCorrection);
|
|
54
|
-
std::shared_ptr<AudioBufferQueueSourceNode> createBufferQueueSource();
|
|
54
|
+
std::shared_ptr<AudioBufferQueueSourceNode> createBufferQueueSource(bool pitchCorrection);
|
|
55
55
|
static std::shared_ptr<AudioBuffer>
|
|
56
56
|
createBuffer(int numberOfChannels, size_t length, float sampleRate);
|
|
57
57
|
std::shared_ptr<PeriodicWave> createPeriodicWave(
|
|
@@ -28,8 +28,7 @@ void AudioRecorder::setOnAudioReadyCallbackId(uint64_t callbackId) {
|
|
|
28
28
|
|
|
29
29
|
void AudioRecorder::invokeOnAudioReadyCallback(
|
|
30
30
|
const std::shared_ptr<AudioBus> &bus,
|
|
31
|
-
int numFrames
|
|
32
|
-
double when) {
|
|
31
|
+
int numFrames) {
|
|
33
32
|
auto audioBuffer = std::make_shared<AudioBuffer>(bus);
|
|
34
33
|
auto audioBufferHostObject =
|
|
35
34
|
std::make_shared<AudioBufferHostObject>(audioBuffer);
|
|
@@ -37,7 +36,6 @@ void AudioRecorder::invokeOnAudioReadyCallback(
|
|
|
37
36
|
std::unordered_map<std::string, EventValue> body = {};
|
|
38
37
|
body.insert({"buffer", audioBufferHostObject});
|
|
39
38
|
body.insert({"numFrames", numFrames});
|
|
40
|
-
body.insert({"when", when});
|
|
41
39
|
|
|
42
40
|
if (audioEventHandlerRegistry_ != nullptr) {
|
|
43
41
|
audioEventHandlerRegistry_->invokeHandlerWithEventBody(
|
|
@@ -55,7 +53,7 @@ void AudioRecorder::sendRemainingData() {
|
|
|
55
53
|
circularBuffer_->pop_front(
|
|
56
54
|
outputChannel, circularBuffer_->getNumberOfAvailableFrames());
|
|
57
55
|
|
|
58
|
-
invokeOnAudioReadyCallback(bus, availableFrames
|
|
56
|
+
invokeOnAudioReadyCallback(bus, availableFrames);
|
|
59
57
|
}
|
|
60
58
|
|
|
61
59
|
void AudioRecorder::connect(const std::shared_ptr<RecorderAdapterNode> &node) {
|
|
@@ -23,7 +23,7 @@ class AudioRecorder {
|
|
|
23
23
|
virtual ~AudioRecorder() = default;
|
|
24
24
|
|
|
25
25
|
void setOnAudioReadyCallbackId(uint64_t callbackId);
|
|
26
|
-
void invokeOnAudioReadyCallback(const std::shared_ptr<AudioBus> &bus, int numFrames
|
|
26
|
+
void invokeOnAudioReadyCallback(const std::shared_ptr<AudioBus> &bus, int numFrames);
|
|
27
27
|
void sendRemainingData();
|
|
28
28
|
|
|
29
29
|
/// @brief
|
|
@@ -7,8 +7,12 @@
|
|
|
7
7
|
#include <audioapi/utils/AudioBus.h>
|
|
8
8
|
|
|
9
9
|
namespace audioapi {
|
|
10
|
-
AudioBufferBaseSourceNode::AudioBufferBaseSourceNode(
|
|
11
|
-
|
|
10
|
+
AudioBufferBaseSourceNode::AudioBufferBaseSourceNode(
|
|
11
|
+
BaseAudioContext *context,
|
|
12
|
+
bool pitchCorrection)
|
|
13
|
+
: AudioScheduledSourceNode(context),
|
|
14
|
+
pitchCorrection_(pitchCorrection),
|
|
15
|
+
vReadIndex_(0.0) {
|
|
12
16
|
onPositionChangedInterval_ = static_cast<int>(context->getSampleRate() * 0.1);
|
|
13
17
|
|
|
14
18
|
detuneParam_ = std::make_shared<AudioParam>(
|
|
@@ -62,7 +66,7 @@ void AudioBufferBaseSourceNode::setOnPositionChangedInterval(int interval) {
|
|
|
62
66
|
context_->getSampleRate() * static_cast<float>(interval) / 1000);
|
|
63
67
|
}
|
|
64
68
|
|
|
65
|
-
int AudioBufferBaseSourceNode::getOnPositionChangedInterval() {
|
|
69
|
+
int AudioBufferBaseSourceNode::getOnPositionChangedInterval() const {
|
|
66
70
|
return onPositionChangedInterval_;
|
|
67
71
|
}
|
|
68
72
|
|
|
@@ -125,7 +129,45 @@ void AudioBufferBaseSourceNode::processWithPitchCorrection(
|
|
|
125
129
|
if (detune != 0.0f) {
|
|
126
130
|
stretch_->setTransposeSemitones(detune);
|
|
127
131
|
}
|
|
132
|
+
|
|
133
|
+
sendOnPositionChangedEvent();
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
void AudioBufferBaseSourceNode::processWithoutPitchCorrection(
|
|
137
|
+
const std::shared_ptr<AudioBus> &processingBus,
|
|
138
|
+
int framesToProcess) {
|
|
139
|
+
size_t startOffset = 0;
|
|
140
|
+
size_t offsetLength = 0;
|
|
141
|
+
|
|
142
|
+
auto computedPlaybackRate = getComputedPlaybackRateValue(framesToProcess);
|
|
143
|
+
updatePlaybackInfo(processingBus, framesToProcess, startOffset, offsetLength);
|
|
144
|
+
|
|
145
|
+
if (computedPlaybackRate == 0.0f || (!isPlaying() && !isStopScheduled())) {
|
|
146
|
+
processingBus->zero();
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
if (std::fabs(computedPlaybackRate) == 1.0) {
|
|
151
|
+
processWithoutInterpolation(
|
|
152
|
+
processingBus, startOffset, offsetLength, computedPlaybackRate);
|
|
153
|
+
} else {
|
|
154
|
+
processWithInterpolation(
|
|
155
|
+
processingBus, startOffset, offsetLength, computedPlaybackRate);
|
|
156
|
+
}
|
|
157
|
+
|
|
128
158
|
sendOnPositionChangedEvent();
|
|
129
159
|
}
|
|
130
160
|
|
|
161
|
+
float AudioBufferBaseSourceNode::getComputedPlaybackRateValue(
|
|
162
|
+
int framesToProcess) {
|
|
163
|
+
auto time = context_->getCurrentTime();
|
|
164
|
+
|
|
165
|
+
auto playbackRate =
|
|
166
|
+
playbackRateParam_->processKRateParam(framesToProcess, time);
|
|
167
|
+
auto detune = std::pow(
|
|
168
|
+
2.0f, detuneParam_->processKRateParam(framesToProcess, time) / 1200.0f);
|
|
169
|
+
|
|
170
|
+
return playbackRate * detune;
|
|
171
|
+
}
|
|
172
|
+
|
|
131
173
|
} // namespace audioapi
|
|
@@ -14,8 +14,8 @@ class AudioParam;
|
|
|
14
14
|
|
|
15
15
|
class AudioBufferBaseSourceNode : public AudioScheduledSourceNode {
|
|
16
16
|
public:
|
|
17
|
-
explicit AudioBufferBaseSourceNode(BaseAudioContext *context);
|
|
18
|
-
|
|
17
|
+
explicit AudioBufferBaseSourceNode(BaseAudioContext *context, bool pitchCorrection);
|
|
18
|
+
~AudioBufferBaseSourceNode() override;
|
|
19
19
|
|
|
20
20
|
[[nodiscard]] std::shared_ptr<AudioParam> getDetuneParam() const;
|
|
21
21
|
[[nodiscard]] std::shared_ptr<AudioParam> getPlaybackRateParam() const;
|
|
@@ -23,9 +23,12 @@ class AudioBufferBaseSourceNode : public AudioScheduledSourceNode {
|
|
|
23
23
|
void clearOnPositionChangedCallback();
|
|
24
24
|
void setOnPositionChangedCallbackId(uint64_t callbackId);
|
|
25
25
|
void setOnPositionChangedInterval(int interval);
|
|
26
|
-
[[nodiscard]] int getOnPositionChangedInterval();
|
|
26
|
+
[[nodiscard]] int getOnPositionChangedInterval() const;
|
|
27
27
|
|
|
28
28
|
protected:
|
|
29
|
+
// pitch correction
|
|
30
|
+
bool pitchCorrection_;
|
|
31
|
+
|
|
29
32
|
std::mutex bufferLock_;
|
|
30
33
|
|
|
31
34
|
// pitch correction
|
|
@@ -47,13 +50,25 @@ class AudioBufferBaseSourceNode : public AudioScheduledSourceNode {
|
|
|
47
50
|
virtual double getCurrentPosition() const = 0;
|
|
48
51
|
|
|
49
52
|
void sendOnPositionChangedEvent();
|
|
53
|
+
|
|
50
54
|
void processWithPitchCorrection(const std::shared_ptr<AudioBus> &processingBus,
|
|
51
55
|
int framesToProcess);
|
|
56
|
+
void processWithoutPitchCorrection(const std::shared_ptr<AudioBus> &processingBus,
|
|
57
|
+
int framesToProcess);
|
|
58
|
+
|
|
59
|
+
float getComputedPlaybackRateValue(int framesToProcess);
|
|
60
|
+
|
|
52
61
|
virtual void processWithoutInterpolation(
|
|
53
62
|
const std::shared_ptr<AudioBus>& processingBus,
|
|
54
63
|
size_t startOffset,
|
|
55
64
|
size_t offsetLength,
|
|
56
65
|
float playbackRate) = 0;
|
|
66
|
+
|
|
67
|
+
virtual void processWithInterpolation(
|
|
68
|
+
const std::shared_ptr<AudioBus>& processingBus,
|
|
69
|
+
size_t startOffset,
|
|
70
|
+
size_t offsetLength,
|
|
71
|
+
float playbackRate) = 0;
|
|
57
72
|
};
|
|
58
73
|
|
|
59
74
|
} // namespace audioapi
|
|
@@ -11,8 +11,9 @@
|
|
|
11
11
|
namespace audioapi {
|
|
12
12
|
|
|
13
13
|
AudioBufferQueueSourceNode::AudioBufferQueueSourceNode(
|
|
14
|
-
BaseAudioContext *context
|
|
15
|
-
|
|
14
|
+
BaseAudioContext *context,
|
|
15
|
+
bool pitchCorrection)
|
|
16
|
+
: AudioBufferBaseSourceNode(context, pitchCorrection) {
|
|
16
17
|
buffers_ = {};
|
|
17
18
|
stretch_->presetDefault(channelCount_, context_->getSampleRate());
|
|
18
19
|
|
|
@@ -90,13 +91,17 @@ void AudioBufferQueueSourceNode::processNode(
|
|
|
90
91
|
const std::shared_ptr<AudioBus> &processingBus,
|
|
91
92
|
int framesToProcess) {
|
|
92
93
|
if (auto locker = Locker::tryLock(getBufferLock())) {
|
|
93
|
-
//
|
|
94
|
+
// no audio data to fill, zero the output and return.
|
|
94
95
|
if (buffers_.empty()) {
|
|
95
96
|
processingBus->zero();
|
|
96
97
|
return;
|
|
97
98
|
}
|
|
98
99
|
|
|
99
|
-
|
|
100
|
+
if (!pitchCorrection_) {
|
|
101
|
+
processWithoutPitchCorrection(processingBus, framesToProcess);
|
|
102
|
+
} else {
|
|
103
|
+
processWithPitchCorrection(processingBus, framesToProcess);
|
|
104
|
+
}
|
|
100
105
|
|
|
101
106
|
handleStopScheduled();
|
|
102
107
|
} else {
|
|
@@ -135,6 +140,7 @@ void AudioBufferQueueSourceNode::processWithoutInterpolation(
|
|
|
135
140
|
|
|
136
141
|
assert(readIndex >= 0);
|
|
137
142
|
assert(writeIndex >= 0);
|
|
143
|
+
assert(readIndex + framesToCopy <= buffer->getLength());
|
|
138
144
|
assert(writeIndex + framesToCopy <= processingBus->getSize());
|
|
139
145
|
|
|
140
146
|
processingBus->copy(
|
|
@@ -158,13 +164,12 @@ void AudioBufferQueueSourceNode::processWithoutInterpolation(
|
|
|
158
164
|
readIndex = 0;
|
|
159
165
|
|
|
160
166
|
break;
|
|
161
|
-
} else {
|
|
162
|
-
data = buffers_.front();
|
|
163
|
-
bufferId = data.first;
|
|
164
|
-
buffer = data.second;
|
|
165
|
-
|
|
166
|
-
readIndex = 0;
|
|
167
167
|
}
|
|
168
|
+
|
|
169
|
+
data = buffers_.front();
|
|
170
|
+
bufferId = data.first;
|
|
171
|
+
buffer = data.second;
|
|
172
|
+
readIndex = 0;
|
|
168
173
|
}
|
|
169
174
|
}
|
|
170
175
|
|
|
@@ -172,4 +177,81 @@ void AudioBufferQueueSourceNode::processWithoutInterpolation(
|
|
|
172
177
|
vReadIndex_ = static_cast<double>(readIndex);
|
|
173
178
|
}
|
|
174
179
|
|
|
180
|
+
void AudioBufferQueueSourceNode::processWithInterpolation(
|
|
181
|
+
const std::shared_ptr<AudioBus> &processingBus,
|
|
182
|
+
size_t startOffset,
|
|
183
|
+
size_t offsetLength,
|
|
184
|
+
float playbackRate) {
|
|
185
|
+
size_t writeIndex = startOffset;
|
|
186
|
+
size_t framesLeft = offsetLength;
|
|
187
|
+
|
|
188
|
+
auto data = buffers_.front();
|
|
189
|
+
auto bufferId = data.first;
|
|
190
|
+
auto buffer = data.second;
|
|
191
|
+
|
|
192
|
+
while (framesLeft > 0) {
|
|
193
|
+
auto readIndex = static_cast<size_t>(vReadIndex_);
|
|
194
|
+
size_t nextReadIndex = readIndex + 1;
|
|
195
|
+
auto factor =
|
|
196
|
+
static_cast<float>(vReadIndex_ - static_cast<double>(readIndex));
|
|
197
|
+
|
|
198
|
+
bool crossBufferInterpolation = false;
|
|
199
|
+
std::shared_ptr<AudioBuffer> nextBuffer = nullptr;
|
|
200
|
+
|
|
201
|
+
if (nextReadIndex >= buffer->getLength()) {
|
|
202
|
+
if (buffers_.size() > 1) {
|
|
203
|
+
auto tempQueue = buffers_;
|
|
204
|
+
tempQueue.pop();
|
|
205
|
+
nextBuffer = tempQueue.front().second;
|
|
206
|
+
nextReadIndex = 0;
|
|
207
|
+
crossBufferInterpolation = true;
|
|
208
|
+
} else {
|
|
209
|
+
nextReadIndex = readIndex;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
for (int i = 0; i < processingBus->getNumberOfChannels(); i += 1) {
|
|
214
|
+
float *destination = processingBus->getChannel(i)->getData();
|
|
215
|
+
const float *currentSource = buffer->bus_->getChannel(i)->getData();
|
|
216
|
+
|
|
217
|
+
if (crossBufferInterpolation) {
|
|
218
|
+
const float *nextSource = nextBuffer->bus_->getChannel(i)->getData();
|
|
219
|
+
float currentSample = currentSource[readIndex];
|
|
220
|
+
float nextSample = nextSource[nextReadIndex];
|
|
221
|
+
destination[writeIndex] =
|
|
222
|
+
currentSample + factor * (nextSample - currentSample);
|
|
223
|
+
} else {
|
|
224
|
+
destination[writeIndex] = dsp::linearInterpolate(
|
|
225
|
+
currentSource, readIndex, nextReadIndex, factor);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
writeIndex += 1;
|
|
230
|
+
// queue source node always use positive playbackRate
|
|
231
|
+
vReadIndex_ += std::abs(playbackRate);
|
|
232
|
+
framesLeft -= 1;
|
|
233
|
+
|
|
234
|
+
if (vReadIndex_ >= static_cast<double>(buffer->getLength())) {
|
|
235
|
+
playedBuffersDuration_ += buffer->getDuration();
|
|
236
|
+
buffers_.pop();
|
|
237
|
+
|
|
238
|
+
std::unordered_map<std::string, EventValue> body = {
|
|
239
|
+
{"bufferId", std::to_string(bufferId)}};
|
|
240
|
+
context_->audioEventHandlerRegistry_->invokeHandlerWithEventBody(
|
|
241
|
+
"ended", onEndedCallbackId_, body);
|
|
242
|
+
|
|
243
|
+
if (buffers_.empty()) {
|
|
244
|
+
processingBus->zero(writeIndex, framesLeft);
|
|
245
|
+
vReadIndex_ = 0.0;
|
|
246
|
+
break;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
vReadIndex_ = vReadIndex_ - buffer->getLength();
|
|
250
|
+
data = buffers_.front();
|
|
251
|
+
bufferId = data.first;
|
|
252
|
+
buffer = data.second;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
|
|
175
257
|
} // namespace audioapi
|
|
@@ -17,14 +17,14 @@ class AudioParam;
|
|
|
17
17
|
|
|
18
18
|
class AudioBufferQueueSourceNode : public AudioBufferBaseSourceNode {
|
|
19
19
|
public:
|
|
20
|
-
explicit AudioBufferQueueSourceNode(BaseAudioContext *context);
|
|
20
|
+
explicit AudioBufferQueueSourceNode(BaseAudioContext *context, bool pitchCorrection);
|
|
21
21
|
~AudioBufferQueueSourceNode() override;
|
|
22
22
|
|
|
23
23
|
void stop(double when) override;
|
|
24
24
|
void pause();
|
|
25
25
|
|
|
26
26
|
std::string enqueueBuffer(const std::shared_ptr<AudioBuffer> &buffer);
|
|
27
|
-
void dequeueBuffer(
|
|
27
|
+
void dequeueBuffer(size_t bufferId);
|
|
28
28
|
void clearBuffers();
|
|
29
29
|
void disable() override;
|
|
30
30
|
|
|
@@ -46,6 +46,12 @@ class AudioBufferQueueSourceNode : public AudioBufferBaseSourceNode {
|
|
|
46
46
|
size_t startOffset,
|
|
47
47
|
size_t offsetLength,
|
|
48
48
|
float playbackRate) override;
|
|
49
|
+
|
|
50
|
+
void processWithInterpolation(
|
|
51
|
+
const std::shared_ptr<AudioBus>& processingBus,
|
|
52
|
+
size_t startOffset,
|
|
53
|
+
size_t offsetLength,
|
|
54
|
+
float playbackRate) override;
|
|
49
55
|
};
|
|
50
56
|
|
|
51
57
|
} // namespace audioapi
|
|
@@ -13,12 +13,11 @@ namespace audioapi {
|
|
|
13
13
|
AudioBufferSourceNode::AudioBufferSourceNode(
|
|
14
14
|
BaseAudioContext *context,
|
|
15
15
|
bool pitchCorrection)
|
|
16
|
-
: AudioBufferBaseSourceNode(context),
|
|
16
|
+
: AudioBufferBaseSourceNode(context, pitchCorrection),
|
|
17
17
|
loop_(false),
|
|
18
18
|
loopSkip_(false),
|
|
19
19
|
loopStart_(0),
|
|
20
|
-
loopEnd_(0)
|
|
21
|
-
pitchCorrection_(pitchCorrection) {
|
|
20
|
+
loopEnd_(0) {
|
|
22
21
|
buffer_ = std::shared_ptr<AudioBuffer>(nullptr);
|
|
23
22
|
alignedBus_ = std::shared_ptr<AudioBus>(nullptr);
|
|
24
23
|
|
|
@@ -155,31 +154,6 @@ double AudioBufferSourceNode::getCurrentPosition() const {
|
|
|
155
154
|
* Helper functions
|
|
156
155
|
*/
|
|
157
156
|
|
|
158
|
-
void AudioBufferSourceNode::processWithoutPitchCorrection(
|
|
159
|
-
const std::shared_ptr<AudioBus> &processingBus,
|
|
160
|
-
int framesToProcess) {
|
|
161
|
-
size_t startOffset = 0;
|
|
162
|
-
size_t offsetLength = 0;
|
|
163
|
-
|
|
164
|
-
auto computedPlaybackRate = getComputedPlaybackRateValue(framesToProcess);
|
|
165
|
-
updatePlaybackInfo(processingBus, framesToProcess, startOffset, offsetLength);
|
|
166
|
-
|
|
167
|
-
if (computedPlaybackRate == 0.0f || (!isPlaying() && !isStopScheduled())) {
|
|
168
|
-
processingBus->zero();
|
|
169
|
-
return;
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
if (std::fabs(computedPlaybackRate) == 1.0) {
|
|
173
|
-
processWithoutInterpolation(
|
|
174
|
-
processingBus, startOffset, offsetLength, computedPlaybackRate);
|
|
175
|
-
} else {
|
|
176
|
-
processWithInterpolation(
|
|
177
|
-
processingBus, startOffset, offsetLength, computedPlaybackRate);
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
sendOnPositionChangedEvent();
|
|
181
|
-
}
|
|
182
|
-
|
|
183
157
|
void AudioBufferSourceNode::processWithoutInterpolation(
|
|
184
158
|
const std::shared_ptr<AudioBus> &processingBus,
|
|
185
159
|
size_t startOffset,
|
|
@@ -308,19 +282,6 @@ void AudioBufferSourceNode::processWithInterpolation(
|
|
|
308
282
|
}
|
|
309
283
|
}
|
|
310
284
|
|
|
311
|
-
float AudioBufferSourceNode::getComputedPlaybackRateValue(int framesToProcess) {
|
|
312
|
-
auto time = context_->getCurrentTime();
|
|
313
|
-
|
|
314
|
-
auto sampleRateFactor =
|
|
315
|
-
alignedBus_->getSampleRate() / context_->getSampleRate();
|
|
316
|
-
auto playbackRate =
|
|
317
|
-
playbackRateParam_->processKRateParam(framesToProcess, time);
|
|
318
|
-
auto detune = std::pow(
|
|
319
|
-
2.0f, detuneParam_->processKRateParam(framesToProcess, time) / 1200.0f);
|
|
320
|
-
|
|
321
|
-
return playbackRate * sampleRateFactor * detune;
|
|
322
|
-
}
|
|
323
|
-
|
|
324
285
|
double AudioBufferSourceNode::getVirtualStartFrame() {
|
|
325
286
|
auto loopStartFrame = loopStart_ * context_->getSampleRate();
|
|
326
287
|
|
|
@@ -45,16 +45,10 @@ class AudioBufferSourceNode : public AudioBufferBaseSourceNode {
|
|
|
45
45
|
double loopStart_;
|
|
46
46
|
double loopEnd_;
|
|
47
47
|
|
|
48
|
-
// pitch correction
|
|
49
|
-
bool pitchCorrection_;
|
|
50
|
-
|
|
51
48
|
// User provided buffer
|
|
52
49
|
std::shared_ptr<AudioBuffer> buffer_;
|
|
53
50
|
std::shared_ptr<AudioBus> alignedBus_;
|
|
54
51
|
|
|
55
|
-
void processWithoutPitchCorrection(const std::shared_ptr<AudioBus> &processingBus,
|
|
56
|
-
int framesToProcess);
|
|
57
|
-
|
|
58
52
|
void processWithoutInterpolation(
|
|
59
53
|
const std::shared_ptr<AudioBus>& processingBus,
|
|
60
54
|
size_t startOffset,
|
|
@@ -65,9 +59,7 @@ class AudioBufferSourceNode : public AudioBufferBaseSourceNode {
|
|
|
65
59
|
const std::shared_ptr<AudioBus>& processingBus,
|
|
66
60
|
size_t startOffset,
|
|
67
61
|
size_t offsetLength,
|
|
68
|
-
float playbackRate);
|
|
69
|
-
|
|
70
|
-
float getComputedPlaybackRateValue(int framesToProcess);
|
|
62
|
+
float playbackRate) override;
|
|
71
63
|
|
|
72
64
|
double getVirtualStartFrame();
|
|
73
65
|
double getVirtualEndFrame();
|
|
@@ -27,7 +27,7 @@ class AudioScheduledSourceNode : public AudioNode {
|
|
|
27
27
|
// FINISHED: The node has finished playing.
|
|
28
28
|
enum class PlaybackState { UNSCHEDULED, SCHEDULED, PLAYING, STOP_SCHEDULED, FINISHED };
|
|
29
29
|
explicit AudioScheduledSourceNode(BaseAudioContext *context);
|
|
30
|
-
|
|
30
|
+
~AudioScheduledSourceNode() override;
|
|
31
31
|
|
|
32
32
|
void start(double when);
|
|
33
33
|
virtual void stop(double when);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
#include <audioapi/HostObjects/AudioBufferHostObject.h>
|
|
1
2
|
#include <audioapi/events/AudioEventHandlerRegistry.h>
|
|
2
3
|
|
|
3
4
|
namespace audioapi {
|
|
@@ -93,7 +94,22 @@ void AudioEventHandlerRegistry::invokeHandlerWithEventBody(
|
|
|
93
94
|
}
|
|
94
95
|
|
|
95
96
|
try {
|
|
96
|
-
|
|
97
|
+
jsi::Object eventObject(*runtime_);
|
|
98
|
+
// handle special logic for microphone, because we pass audio buffer
|
|
99
|
+
// which has significant size
|
|
100
|
+
if (eventName.compare("audioReady") == 0) {
|
|
101
|
+
auto bufferIt = body.find("buffer");
|
|
102
|
+
if (bufferIt != body.end()) {
|
|
103
|
+
auto bufferHostObject =
|
|
104
|
+
std::static_pointer_cast<AudioBufferHostObject>(
|
|
105
|
+
std::get<std::shared_ptr<jsi::HostObject>>(
|
|
106
|
+
bufferIt->second));
|
|
107
|
+
eventObject =
|
|
108
|
+
createEventObject(body, bufferHostObject->getSizeInBytes());
|
|
109
|
+
}
|
|
110
|
+
} else {
|
|
111
|
+
eventObject = createEventObject(body);
|
|
112
|
+
}
|
|
97
113
|
handler->call(*runtime_, eventObject);
|
|
98
114
|
} catch (const std::exception &e) {
|
|
99
115
|
// re-throw the exception to be handled by the caller
|
|
@@ -142,7 +158,21 @@ void AudioEventHandlerRegistry::invokeHandlerWithEventBody(
|
|
|
142
158
|
|
|
143
159
|
// Hours spent on this: 5
|
|
144
160
|
try {
|
|
145
|
-
|
|
161
|
+
jsi::Object eventObject(*runtime_);
|
|
162
|
+
// handle special logic for microphone, because we pass audio buffer which
|
|
163
|
+
// has significant size
|
|
164
|
+
if (eventName.compare("audioReady") == 0) {
|
|
165
|
+
auto bufferIt = body.find("buffer");
|
|
166
|
+
if (bufferIt != body.end()) {
|
|
167
|
+
auto bufferHostObject =
|
|
168
|
+
std::static_pointer_cast<AudioBufferHostObject>(
|
|
169
|
+
std::get<std::shared_ptr<jsi::HostObject>>(bufferIt->second));
|
|
170
|
+
eventObject =
|
|
171
|
+
createEventObject(body, bufferHostObject->getSizeInBytes());
|
|
172
|
+
}
|
|
173
|
+
} else {
|
|
174
|
+
eventObject = createEventObject(body);
|
|
175
|
+
}
|
|
146
176
|
handlerIt->second->call(*runtime_, eventObject);
|
|
147
177
|
} catch (const std::exception &e) {
|
|
148
178
|
// re-throw the exception to be handled by the caller
|
|
@@ -185,4 +215,12 @@ jsi::Object AudioEventHandlerRegistry::createEventObject(
|
|
|
185
215
|
return eventObject;
|
|
186
216
|
}
|
|
187
217
|
|
|
218
|
+
jsi::Object AudioEventHandlerRegistry::createEventObject(
|
|
219
|
+
const std::unordered_map<std::string, EventValue> &body,
|
|
220
|
+
size_t memoryPressure) {
|
|
221
|
+
auto eventObject = createEventObject(body);
|
|
222
|
+
eventObject.setExternalMemoryPressure(*runtime_, memoryPressure);
|
|
223
|
+
return eventObject;
|
|
224
|
+
}
|
|
225
|
+
|
|
188
226
|
} // namespace audioapi
|
|
@@ -62,6 +62,7 @@ class AudioEventHandlerRegistry : public IAudioEventHandlerRegistry {
|
|
|
62
62
|
};
|
|
63
63
|
|
|
64
64
|
jsi::Object createEventObject(const std::unordered_map<std::string, EventValue> &body);
|
|
65
|
+
jsi::Object createEventObject(const std::unordered_map<std::string, EventValue> &body, size_t memoryPressure);
|
|
65
66
|
};
|
|
66
67
|
|
|
67
68
|
} // namespace audioapi
|
|
@@ -85,8 +85,9 @@ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(getDevicePreferredSampleRate)
|
|
|
85
85
|
return [self.audioSessionManager getDevicePreferredSampleRate];
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
-
RCT_EXPORT_METHOD(
|
|
89
|
-
|
|
88
|
+
RCT_EXPORT_METHOD(
|
|
89
|
+
setAudioSessionActivity : (BOOL)enabled resolve : (RCTPromiseResolveBlock)resolve reject : (RCTPromiseRejectBlock)
|
|
90
|
+
reject)
|
|
90
91
|
{
|
|
91
92
|
if ([self.audioSessionManager setActive:enabled]) {
|
|
92
93
|
resolve(@"true");
|
|
@@ -96,8 +97,9 @@ RCT_EXPORT_METHOD(setAudioSessionActivity : (BOOL)enabled resolve : (RCTPromiseR
|
|
|
96
97
|
resolve(@"false");
|
|
97
98
|
}
|
|
98
99
|
|
|
99
|
-
RCT_EXPORT_METHOD(
|
|
100
|
-
|
|
100
|
+
RCT_EXPORT_METHOD(
|
|
101
|
+
setAudioSessionOptions : (NSString *)category mode : (NSString *)mode options : (NSArray *)
|
|
102
|
+
options allowHaptics : (BOOL)allowHaptics)
|
|
101
103
|
{
|
|
102
104
|
[self.audioSessionManager setAudioSessionOptions:category mode:mode options:options allowHaptics:allowHaptics];
|
|
103
105
|
}
|
|
@@ -132,20 +134,21 @@ RCT_EXPORT_METHOD(observeVolumeChanges : (BOOL)enabled)
|
|
|
132
134
|
[self.notificationManager observeVolumeChanges:(BOOL)enabled];
|
|
133
135
|
}
|
|
134
136
|
|
|
135
|
-
RCT_EXPORT_METHOD(
|
|
136
|
-
|
|
137
|
+
RCT_EXPORT_METHOD(
|
|
138
|
+
requestRecordingPermissions : (nonnull RCTPromiseResolveBlock)resolve reject : (nonnull RCTPromiseRejectBlock)
|
|
139
|
+
reject)
|
|
137
140
|
{
|
|
138
141
|
[self.audioSessionManager requestRecordingPermissions:resolve reject:reject];
|
|
139
142
|
}
|
|
140
143
|
|
|
141
|
-
RCT_EXPORT_METHOD(
|
|
142
|
-
|
|
144
|
+
RCT_EXPORT_METHOD(
|
|
145
|
+
checkRecordingPermissions : (nonnull RCTPromiseResolveBlock)resolve reject : (nonnull RCTPromiseRejectBlock)reject)
|
|
143
146
|
{
|
|
144
147
|
[self.audioSessionManager checkRecordingPermissions:resolve reject:reject];
|
|
145
148
|
}
|
|
146
149
|
|
|
147
|
-
RCT_EXPORT_METHOD(
|
|
148
|
-
|
|
150
|
+
RCT_EXPORT_METHOD(
|
|
151
|
+
getDevicesInfo : (nonnull RCTPromiseResolveBlock)resolve reject : (nonnull RCTPromiseRejectBlock)reject)
|
|
149
152
|
{
|
|
150
153
|
[self.audioSessionManager getDevicesInfo:resolve reject:reject];
|
|
151
154
|
}
|
|
@@ -18,7 +18,7 @@ IOSAudioRecorder::IOSAudioRecorder(
|
|
|
18
18
|
const std::shared_ptr<AudioEventHandlerRegistry> &audioEventHandlerRegistry)
|
|
19
19
|
: AudioRecorder(sampleRate, bufferLength, audioEventHandlerRegistry)
|
|
20
20
|
{
|
|
21
|
-
AudioReceiverBlock audioReceiverBlock = ^(const AudioBufferList *inputBuffer, int numFrames
|
|
21
|
+
AudioReceiverBlock audioReceiverBlock = ^(const AudioBufferList *inputBuffer, int numFrames) {
|
|
22
22
|
if (isRunning_.load()) {
|
|
23
23
|
auto *inputChannel = static_cast<float *>(inputBuffer->mBuffers[0].mData);
|
|
24
24
|
writeToBuffers(inputChannel, numFrames);
|
|
@@ -30,7 +30,7 @@ IOSAudioRecorder::IOSAudioRecorder(
|
|
|
30
30
|
|
|
31
31
|
circularBuffer_->pop_front(outputChannel, bufferLength_);
|
|
32
32
|
|
|
33
|
-
invokeOnAudioReadyCallback(bus, bufferLength_
|
|
33
|
+
invokeOnAudioReadyCallback(bus, bufferLength_);
|
|
34
34
|
}
|
|
35
35
|
};
|
|
36
36
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
#import <AVFoundation/AVFoundation.h>
|
|
4
4
|
#import <Foundation/Foundation.h>
|
|
5
5
|
|
|
6
|
-
typedef void (^AudioReceiverBlock)(const AudioBufferList *inputBuffer, int numFrames
|
|
6
|
+
typedef void (^AudioReceiverBlock)(const AudioBufferList *inputBuffer, int numFrames);
|
|
7
7
|
|
|
8
8
|
@interface NativeAudioRecorder : NSObject
|
|
9
9
|
|
|
@@ -54,12 +54,9 @@
|
|
|
54
54
|
float inputSampleRate = self.inputFormat.sampleRate;
|
|
55
55
|
float outputSampleRate = self.outputFormat.sampleRate;
|
|
56
56
|
|
|
57
|
-
AVAudioTime *time = [[AVAudioTime alloc] initWithAudioTimeStamp:timestamp sampleRate:outputSampleRate];
|
|
58
|
-
|
|
59
57
|
if (inputSampleRate != outputSampleRate) {
|
|
60
58
|
AVAudioPCMBuffer *inputBuffer = [[AVAudioPCMBuffer alloc] initWithPCMFormat:self.inputFormat
|
|
61
59
|
frameCapacity:frameCount];
|
|
62
|
-
|
|
63
60
|
memcpy(
|
|
64
61
|
inputBuffer.mutableAudioBufferList->mBuffers[0].mData,
|
|
65
62
|
inputData->mBuffers[0].mData,
|
|
@@ -79,19 +76,24 @@
|
|
|
79
76
|
return inputBuffer;
|
|
80
77
|
};
|
|
81
78
|
|
|
82
|
-
|
|
79
|
+
/// IMPORTANT: AVAudioConverter leaks memory without autorelease pool
|
|
80
|
+
/// more details here: https://github.com/poneciak57/AVAudioConverter-memory-leak-repro-electric-boogaloo
|
|
81
|
+
/// we can try to remove it in the future or refactor to reuse buffers to minimize allocations
|
|
82
|
+
@autoreleasepool {
|
|
83
|
+
[self.audioConverter convertToBuffer:outputBuffer error:&error withInputFromBlock:inputBlock];
|
|
84
|
+
}
|
|
83
85
|
|
|
84
86
|
if (error) {
|
|
85
87
|
NSLog(@"Error during audio conversion: %@", error.localizedDescription);
|
|
86
88
|
return kAudioServicesBadSpecifierSizeError;
|
|
87
89
|
}
|
|
88
90
|
|
|
89
|
-
self.receiverBlock(outputBuffer.audioBufferList, outputBuffer.frameLength
|
|
91
|
+
self.receiverBlock(outputBuffer.audioBufferList, outputBuffer.frameLength);
|
|
90
92
|
|
|
91
93
|
return kAudioServicesNoError;
|
|
92
94
|
}
|
|
93
95
|
|
|
94
|
-
self.receiverBlock(inputData, frameCount
|
|
96
|
+
self.receiverBlock(inputData, frameCount);
|
|
95
97
|
|
|
96
98
|
return kAudioServicesNoError;
|
|
97
99
|
}
|
|
@@ -52,8 +52,9 @@ class BaseAudioContext {
|
|
|
52
52
|
const pitchCorrection = options?.pitchCorrection ?? false;
|
|
53
53
|
return new _AudioBufferSourceNode.default(this, this.context.createBufferSource(pitchCorrection));
|
|
54
54
|
}
|
|
55
|
-
createBufferQueueSource() {
|
|
56
|
-
|
|
55
|
+
createBufferQueueSource(options) {
|
|
56
|
+
const pitchCorrection = options?.pitchCorrection ?? false;
|
|
57
|
+
return new _AudioBufferQueueSourceNode.default(this, this.context.createBufferQueueSource(pitchCorrection));
|
|
57
58
|
}
|
|
58
59
|
createBuffer(numOfChannels, length, sampleRate) {
|
|
59
60
|
if (numOfChannels < 1 || numOfChannels >= 32) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_AudioDestinationNode","_interopRequireDefault","require","_OscillatorNode","_GainNode","_StereoPannerNode","_BiquadFilterNode","_AudioBufferSourceNode","_AudioBuffer","_PeriodicWave","_AnalyserNode","_AudioBufferQueueSourceNode","_StreamerNode","_errors","_RecorderAdapterNode","e","__esModule","default","BaseAudioContext","constructor","context","destination","AudioDestinationNode","sampleRate","currentTime","state","createRecorderAdapter","RecorderAdapterNode","createOscillator","OscillatorNode","createStreamer","StreamerNode","createGain","GainNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createBufferSource","options","pitchCorrection","AudioBufferSourceNode","createBufferQueueSource","AudioBufferQueueSourceNode","createBuffer","numOfChannels","length","NotSupportedError","AudioBuffer","createPeriodicWave","real","imag","constraints","InvalidAccessError","disableNormalization","PeriodicWave","createAnalyser","AnalyserNode","decodeAudioDataSource","sourcePath","startsWith","replace","decodeAudioData","data","Uint8Array","decodePCMInBase64Data","base64","playbackRate","decodePCMAudioDataInBase64","exports"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":";;;;;;AAMA,IAAAA,qBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,iBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,iBAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,sBAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,YAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,aAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,aAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,2BAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,aAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,OAAA,GAAAX,OAAA;AACA,IAAAY,oBAAA,GAAAb,sBAAA,CAAAC,OAAA;AAAwD,SAAAD,uBAAAc,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEzC,MAAMG,gBAAgB,CAAC;EAKpCC,WAAWA,CAACC,OAA0B,EAAE;IACtC,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,WAAW,GAAG,IAAIC,6BAAoB,CAAC,IAAI,EAAEF,OAAO,CAACC,WAAW,CAAC;IACtE,IAAI,CAACE,UAAU,GAAGH,OAAO,CAACG,UAAU;EACtC;EAEA,IAAWC,WAAWA,CAAA,EAAW;IAC/B,OAAO,IAAI,CAACJ,OAAO,CAACI,WAAW;EACjC;EAEA,IAAWC,KAAKA,CAAA,EAAiB;IAC/B,OAAO,IAAI,CAACL,OAAO,CAACK,KAAK;EAC3B;EAEAC,qBAAqBA,CAAA,EAAwB;IAC3C,OAAO,IAAIC,4BAAmB,CAAC,IAAI,EAAE,IAAI,CAACP,OAAO,CAACM,qBAAqB,CAAC,CAAC,CAAC;EAC5E;EAEAE,gBAAgBA,CAAA,EAAmB;IACjC,OAAO,IAAIC,uBAAc,CAAC,IAAI,EAAE,IAAI,CAACT,OAAO,CAACQ,gBAAgB,CAAC,CAAC,CAAC;EAClE;EAEAE,cAAcA,CAAA,EAAiB;IAC7B,OAAO,IAAIC,qBAAY,CAAC,IAAI,EAAE,IAAI,CAACX,OAAO,CAACU,cAAc,CAAC,CAAC,CAAC;EAC9D;EAEAE,UAAUA,CAAA,EAAa;IACrB,OAAO,IAAIC,iBAAQ,CAAC,IAAI,EAAE,IAAI,CAACb,OAAO,CAACY,UAAU,CAAC,CAAC,CAAC;EACtD;EAEAE,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIC,yBAAgB,CAAC,IAAI,EAAE,IAAI,CAACf,OAAO,CAACc,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAE,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIC,yBAAgB,CAAC,IAAI,EAAE,IAAI,CAACjB,OAAO,CAACgB,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAE,kBAAkBA,CAChBC,
|
|
1
|
+
{"version":3,"names":["_AudioDestinationNode","_interopRequireDefault","require","_OscillatorNode","_GainNode","_StereoPannerNode","_BiquadFilterNode","_AudioBufferSourceNode","_AudioBuffer","_PeriodicWave","_AnalyserNode","_AudioBufferQueueSourceNode","_StreamerNode","_errors","_RecorderAdapterNode","e","__esModule","default","BaseAudioContext","constructor","context","destination","AudioDestinationNode","sampleRate","currentTime","state","createRecorderAdapter","RecorderAdapterNode","createOscillator","OscillatorNode","createStreamer","StreamerNode","createGain","GainNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createBufferSource","options","pitchCorrection","AudioBufferSourceNode","createBufferQueueSource","AudioBufferQueueSourceNode","createBuffer","numOfChannels","length","NotSupportedError","AudioBuffer","createPeriodicWave","real","imag","constraints","InvalidAccessError","disableNormalization","PeriodicWave","createAnalyser","AnalyserNode","decodeAudioDataSource","sourcePath","startsWith","replace","decodeAudioData","data","Uint8Array","decodePCMInBase64Data","base64","playbackRate","decodePCMAudioDataInBase64","exports"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioDestinationNode","_AudioBuffer","_AudioBufferSourceNode","_BiquadFilterNode","_GainNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_LoadCustomWasm","e","__esModule","default","AudioContext","constructor","options","_initSuspended","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":";;;;;;AAMA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,YAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,sBAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,iBAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,SAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,eAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,aAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,iBAAA,GAAAR,sBAAA,CAAAF,OAAA;AAEA,IAAAW,eAAA,GAAAX,OAAA;AAAuE,SAAAE,uBAAAU,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExD,MAAMG,YAAY,CAA6B;EAM5DC,WAAWA,CAACC,OAA6B,EAAEC,cAAuB,GAAG,KAAK,EAAE;IAC1E,IACED,OAAO,IACPA,OAAO,CAACE,UAAU,KACjBF,OAAO,CAACE,UAAU,GAAG,IAAI,IAAIF,OAAO,CAACE,UAAU,GAAG,KAAK,CAAC,EACzD;MACA,MAAM,IAAIC,yBAAiB,CACzB,6CAA6CH,OAAO,CAACE,UAAU,EACjE,CAAC;IACH;IAEA,IAAI,CAACE,OAAO,GAAG,IAAIC,MAAM,CAACP,YAAY,CAAC;MAAEI,UAAU,EAAEF,OAAO,EAAEE;IAAW,CAAC,CAAC;IAE3E,IAAI,CAACA,UAAU,GAAG,IAAI,CAACE,OAAO,CAACF,UAAU;IACzC,IAAI,CAACI,WAAW,GAAG,IAAIC,6BAAoB,CAAC,IAAI,EAAE,IAAI,CAACH,OAAO,CAACE,WAAW,CAAC;EAC7E;EAEA,IAAWE,WAAWA,CAAA,EAAW;IAC/B,OAAO,IAAI,CAACJ,OAAO,CAACI,WAAW;EACjC;EAEA,IAAWC,KAAKA,CAAA,EAAiB;IAC/B,OAAO,IAAI,CAACL,OAAO,CAACK,KAAK;EAC3B;EAEAC,gBAAgBA,CAAA,EAAmB;IACjC,OAAO,IAAIC,uBAAc,CAAC,IAAI,EAAE,IAAI,CAACP,OAAO,CAACM,gBAAgB,CAAC,CAAC,CAAC;EAClE;EAEAE,UAAUA,CAAA,EAAa;IACrB,OAAO,IAAIC,iBAAQ,CAAC,IAAI,EAAE,IAAI,CAACT,OAAO,CAACQ,UAAU,CAAC,CAAC,CAAC;EACtD;EAEAE,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIC,yBAAgB,CAAC,IAAI,EAAE,IAAI,CAACX,OAAO,CAACU,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAE,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIC,yBAAgB,CAAC,IAAI,EAAE,IAAI,CAACb,OAAO,CAACY,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEA,MAAME,kBAAkBA,CACtBlB,
|
|
1
|
+
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioDestinationNode","_AudioBuffer","_AudioBufferSourceNode","_BiquadFilterNode","_GainNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_LoadCustomWasm","e","__esModule","default","AudioContext","constructor","options","_initSuspended","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":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioDestinationNode","_AudioBuffer","_AudioBufferSourceNode","_BiquadFilterNode","_GainNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_LoadCustomWasm","e","__esModule","default","OfflineAudioContext","constructor","arg0","arg1","arg2","context","window","NotSupportedError","sampleRate","destination","AudioDestinationNode","currentTime","state","createOscillator","OscillatorNode","createGain","GainNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createBufferSource","options","pitchCorrection","AudioBufferSourceNode","globalWasmPromise","wasmStretch","globalTag","createBuffer","numOfChannels","length","AudioBuffer","createPeriodicWave","real","imag","constraints","InvalidAccessError","PeriodicWave","createAnalyser","AnalyserNode","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","startRendering","resume","suspend","suspendTime","exports"],"sourceRoot":"../../../src","sources":["web-core/OfflineAudioContext.tsx"],"mappings":";;;;;;AAMA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,YAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,sBAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,iBAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,SAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,eAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,aAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,iBAAA,GAAAR,sBAAA,CAAAF,OAAA;AAEA,IAAAW,eAAA,GAAAX,OAAA;AAAuE,SAAAE,uBAAAU,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExD,MAAMG,mBAAmB,CAA6B;EAQnEC,WAAWA,CACTC,IAAyC,EACzCC,IAAa,EACbC,IAAa,EACb;IACA,IAAI,OAAOF,IAAI,KAAK,QAAQ,EAAE;MAC5B,IAAI,CAACG,OAAO,GAAG,IAAIC,MAAM,CAACN,mBAAmB,CAACE,IAAI,CAAC;IACrD,CAAC,MAAM,IACL,OAAOA,IAAI,KAAK,QAAQ,IACxB,OAAOC,IAAI,KAAK,QAAQ,IACxB,OAAOC,IAAI,KAAK,QAAQ,EACxB;MACA,IAAI,CAACC,OAAO,GAAG,IAAIC,MAAM,CAACN,mBAAmB,CAACE,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC;IACjE,CAAC,MAAM;MACL,MAAM,IAAIG,yBAAiB,CAAC,+BAA+B,CAAC;IAC9D;IAEA,IAAI,CAACC,UAAU,GAAG,IAAI,CAACH,OAAO,CAACG,UAAU;IACzC,IAAI,CAACC,WAAW,GAAG,IAAIC,6BAAoB,CAAC,IAAI,EAAE,IAAI,CAACL,OAAO,CAACI,WAAW,CAAC;EAC7E;EAEA,IAAWE,WAAWA,CAAA,EAAW;IAC/B,OAAO,IAAI,CAACN,OAAO,CAACM,WAAW;EACjC;EAEA,IAAWC,KAAKA,CAAA,EAAiB;IAC/B,OAAO,IAAI,CAACP,OAAO,CAACO,KAAK;EAC3B;EAEAC,gBAAgBA,CAAA,EAAmB;IACjC,OAAO,IAAIC,uBAAc,CAAC,IAAI,EAAE,IAAI,CAACT,OAAO,CAACQ,gBAAgB,CAAC,CAAC,CAAC;EAClE;EAEAE,UAAUA,CAAA,EAAa;IACrB,OAAO,IAAIC,iBAAQ,CAAC,IAAI,EAAE,IAAI,CAACX,OAAO,CAACU,UAAU,CAAC,CAAC,CAAC;EACtD;EAEAE,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIC,yBAAgB,CAAC,IAAI,EAAE,IAAI,CAACb,OAAO,CAACY,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAE,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIC,yBAAgB,CAAC,IAAI,EAAE,IAAI,CAACf,OAAO,CAACc,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEA,MAAME,kBAAkBA,CACtBC,
|
|
1
|
+
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioDestinationNode","_AudioBuffer","_AudioBufferSourceNode","_BiquadFilterNode","_GainNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_LoadCustomWasm","e","__esModule","default","OfflineAudioContext","constructor","arg0","arg1","arg2","context","window","NotSupportedError","sampleRate","destination","AudioDestinationNode","currentTime","state","createOscillator","OscillatorNode","createGain","GainNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createBufferSource","options","pitchCorrection","AudioBufferSourceNode","globalWasmPromise","wasmStretch","globalTag","createBuffer","numOfChannels","length","AudioBuffer","createPeriodicWave","real","imag","constraints","InvalidAccessError","PeriodicWave","createAnalyser","AnalyserNode","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","startRendering","resume","suspend","suspendTime","exports"],"sourceRoot":"../../../src","sources":["web-core/OfflineAudioContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -47,8 +47,9 @@ export default class BaseAudioContext {
|
|
|
47
47
|
const pitchCorrection = options?.pitchCorrection ?? false;
|
|
48
48
|
return new AudioBufferSourceNode(this, this.context.createBufferSource(pitchCorrection));
|
|
49
49
|
}
|
|
50
|
-
createBufferQueueSource() {
|
|
51
|
-
|
|
50
|
+
createBufferQueueSource(options) {
|
|
51
|
+
const pitchCorrection = options?.pitchCorrection ?? false;
|
|
52
|
+
return new AudioBufferQueueSourceNode(this, this.context.createBufferQueueSource(pitchCorrection));
|
|
52
53
|
}
|
|
53
54
|
createBuffer(numOfChannels, length, sampleRate) {
|
|
54
55
|
if (numOfChannels < 1 || numOfChannels >= 32) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AudioDestinationNode","OscillatorNode","GainNode","StereoPannerNode","BiquadFilterNode","AudioBufferSourceNode","AudioBuffer","PeriodicWave","AnalyserNode","AudioBufferQueueSourceNode","StreamerNode","InvalidAccessError","NotSupportedError","RecorderAdapterNode","BaseAudioContext","constructor","context","destination","sampleRate","currentTime","state","createRecorderAdapter","createOscillator","createStreamer","createGain","createStereoPanner","createBiquadFilter","createBufferSource","options","pitchCorrection","createBufferQueueSource","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","disableNormalization","createAnalyser","decodeAudioDataSource","sourcePath","startsWith","replace","decodeAudioData","data","Uint8Array","decodePCMInBase64Data","base64","playbackRate","decodePCMAudioDataInBase64"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":";;AAMA,OAAOA,oBAAoB,MAAM,2BAAwB;AACzD,OAAOC,cAAc,MAAM,qBAAkB;AAC7C,OAAOC,QAAQ,MAAM,eAAY;AACjC,OAAOC,gBAAgB,MAAM,uBAAoB;AACjD,OAAOC,gBAAgB,MAAM,uBAAoB;AACjD,OAAOC,qBAAqB,MAAM,4BAAyB;AAC3D,OAAOC,WAAW,MAAM,kBAAe;AACvC,OAAOC,YAAY,MAAM,mBAAgB;AACzC,OAAOC,YAAY,MAAM,mBAAgB;AACzC,OAAOC,0BAA0B,MAAM,iCAA8B;AACrE,OAAOC,YAAY,MAAM,mBAAgB;AACzC,SAASC,kBAAkB,EAAEC,iBAAiB,QAAQ,oBAAW;AACjE,OAAOC,mBAAmB,MAAM,0BAAuB;AAEvD,eAAe,MAAMC,gBAAgB,CAAC;EAKpCC,WAAWA,CAACC,OAA0B,EAAE;IACtC,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,WAAW,GAAG,IAAIjB,oBAAoB,CAAC,IAAI,EAAEgB,OAAO,CAACC,WAAW,CAAC;IACtE,IAAI,CAACC,UAAU,GAAGF,OAAO,CAACE,UAAU;EACtC;EAEA,IAAWC,WAAWA,CAAA,EAAW;IAC/B,OAAO,IAAI,CAACH,OAAO,CAACG,WAAW;EACjC;EAEA,IAAWC,KAAKA,CAAA,EAAiB;IAC/B,OAAO,IAAI,CAACJ,OAAO,CAACI,KAAK;EAC3B;EAEAC,qBAAqBA,CAAA,EAAwB;IAC3C,OAAO,IAAIR,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAACG,OAAO,CAACK,qBAAqB,CAAC,CAAC,CAAC;EAC5E;EAEAC,gBAAgBA,CAAA,EAAmB;IACjC,OAAO,IAAIrB,cAAc,CAAC,IAAI,EAAE,IAAI,CAACe,OAAO,CAACM,gBAAgB,CAAC,CAAC,CAAC;EAClE;EAEAC,cAAcA,CAAA,EAAiB;IAC7B,OAAO,IAAIb,YAAY,CAAC,IAAI,EAAE,IAAI,CAACM,OAAO,CAACO,cAAc,CAAC,CAAC,CAAC;EAC9D;EAEAC,UAAUA,CAAA,EAAa;IACrB,OAAO,IAAItB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAACc,OAAO,CAACQ,UAAU,CAAC,CAAC,CAAC;EACtD;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAItB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAACa,OAAO,CAACS,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAItB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAACY,OAAO,CAACU,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAC,kBAAkBA,CAChBC,
|
|
1
|
+
{"version":3,"names":["AudioDestinationNode","OscillatorNode","GainNode","StereoPannerNode","BiquadFilterNode","AudioBufferSourceNode","AudioBuffer","PeriodicWave","AnalyserNode","AudioBufferQueueSourceNode","StreamerNode","InvalidAccessError","NotSupportedError","RecorderAdapterNode","BaseAudioContext","constructor","context","destination","sampleRate","currentTime","state","createRecorderAdapter","createOscillator","createStreamer","createGain","createStereoPanner","createBiquadFilter","createBufferSource","options","pitchCorrection","createBufferQueueSource","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","disableNormalization","createAnalyser","decodeAudioDataSource","sourcePath","startsWith","replace","decodeAudioData","data","Uint8Array","decodePCMInBase64Data","base64","playbackRate","decodePCMAudioDataInBase64"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["InvalidAccessError","NotSupportedError","AnalyserNode","AudioDestinationNode","AudioBuffer","AudioBufferSourceNode","BiquadFilterNode","GainNode","OscillatorNode","PeriodicWave","StereoPannerNode","globalWasmPromise","globalTag","AudioContext","constructor","options","_initSuspended","sampleRate","context","window","destination","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","pitchCorrection","wasmStretch","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","createAnalyser","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","close","resume","suspend"],"sourceRoot":"../../../src","sources":["web-core/AudioContext.tsx"],"mappings":";;AAMA,SAASA,kBAAkB,EAAEC,iBAAiB,QAAQ,oBAAW;AAEjE,OAAOC,YAAY,MAAM,mBAAgB;AACzC,OAAOC,oBAAoB,MAAM,2BAAwB;AACzD,OAAOC,WAAW,MAAM,kBAAe;AACvC,OAAOC,qBAAqB,MAAM,4BAAyB;AAC3D,OAAOC,gBAAgB,MAAM,uBAAoB;AACjD,OAAOC,QAAQ,MAAM,eAAY;AACjC,OAAOC,cAAc,MAAM,qBAAkB;AAC7C,OAAOC,YAAY,MAAM,mBAAgB;AACzC,OAAOC,gBAAgB,MAAM,uBAAoB;AAEjD,SAASC,iBAAiB,EAAEC,SAAS,QAAQ,4BAAyB;AAEtE,eAAe,MAAMC,YAAY,CAA6B;EAM5DC,WAAWA,CAACC,OAA6B,EAAEC,cAAuB,GAAG,KAAK,EAAE;IAC1E,IACED,OAAO,IACPA,OAAO,CAACE,UAAU,KACjBF,OAAO,CAACE,UAAU,GAAG,IAAI,IAAIF,OAAO,CAACE,UAAU,GAAG,KAAK,CAAC,EACzD;MACA,MAAM,IAAIhB,iBAAiB,CACzB,6CAA6Cc,OAAO,CAACE,UAAU,EACjE,CAAC;IACH;IAEA,IAAI,CAACC,OAAO,GAAG,IAAIC,MAAM,CAACN,YAAY,CAAC;MAAEI,UAAU,EAAEF,OAAO,EAAEE;IAAW,CAAC,CAAC;IAE3E,IAAI,CAACA,UAAU,GAAG,IAAI,CAACC,OAAO,CAACD,UAAU;IACzC,IAAI,CAACG,WAAW,GAAG,IAAIjB,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAACe,OAAO,CAACE,WAAW,CAAC;EAC7E;EAEA,IAAWC,WAAWA,CAAA,EAAW;IAC/B,OAAO,IAAI,CAACH,OAAO,CAACG,WAAW;EACjC;EAEA,IAAWC,KAAKA,CAAA,EAAiB;IAC/B,OAAO,IAAI,CAACJ,OAAO,CAACI,KAAK;EAC3B;EAEAC,gBAAgBA,CAAA,EAAmB;IACjC,OAAO,IAAIf,cAAc,CAAC,IAAI,EAAE,IAAI,CAACU,OAAO,CAACK,gBAAgB,CAAC,CAAC,CAAC;EAClE;EAEAC,UAAUA,CAAA,EAAa;IACrB,OAAO,IAAIjB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAACW,OAAO,CAACM,UAAU,CAAC,CAAC,CAAC;EACtD;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIf,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAACQ,OAAO,CAACO,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIpB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAACY,OAAO,CAACQ,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEA,MAAMC,kBAAkBA,CACtBZ,
|
|
1
|
+
{"version":3,"names":["InvalidAccessError","NotSupportedError","AnalyserNode","AudioDestinationNode","AudioBuffer","AudioBufferSourceNode","BiquadFilterNode","GainNode","OscillatorNode","PeriodicWave","StereoPannerNode","globalWasmPromise","globalTag","AudioContext","constructor","options","_initSuspended","sampleRate","context","window","destination","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","pitchCorrection","wasmStretch","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","createAnalyser","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","close","resume","suspend"],"sourceRoot":"../../../src","sources":["web-core/AudioContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["InvalidAccessError","NotSupportedError","AnalyserNode","AudioDestinationNode","AudioBuffer","AudioBufferSourceNode","BiquadFilterNode","GainNode","OscillatorNode","PeriodicWave","StereoPannerNode","globalWasmPromise","globalTag","OfflineAudioContext","constructor","arg0","arg1","arg2","context","window","sampleRate","destination","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","options","pitchCorrection","wasmStretch","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","createAnalyser","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","startRendering","resume","suspend","suspendTime"],"sourceRoot":"../../../src","sources":["web-core/OfflineAudioContext.tsx"],"mappings":";;AAMA,SAASA,kBAAkB,EAAEC,iBAAiB,QAAQ,oBAAW;AAEjE,OAAOC,YAAY,MAAM,mBAAgB;AACzC,OAAOC,oBAAoB,MAAM,2BAAwB;AACzD,OAAOC,WAAW,MAAM,kBAAe;AACvC,OAAOC,qBAAqB,MAAM,4BAAyB;AAC3D,OAAOC,gBAAgB,MAAM,uBAAoB;AACjD,OAAOC,QAAQ,MAAM,eAAY;AACjC,OAAOC,cAAc,MAAM,qBAAkB;AAC7C,OAAOC,YAAY,MAAM,mBAAgB;AACzC,OAAOC,gBAAgB,MAAM,uBAAoB;AAEjD,SAASC,iBAAiB,EAAEC,SAAS,QAAQ,4BAAyB;AAEtE,eAAe,MAAMC,mBAAmB,CAA6B;EAQnEC,WAAWA,CACTC,IAAyC,EACzCC,IAAa,EACbC,IAAa,EACb;IACA,IAAI,OAAOF,IAAI,KAAK,QAAQ,EAAE;MAC5B,IAAI,CAACG,OAAO,GAAG,IAAIC,MAAM,CAACN,mBAAmB,CAACE,IAAI,CAAC;IACrD,CAAC,MAAM,IACL,OAAOA,IAAI,KAAK,QAAQ,IACxB,OAAOC,IAAI,KAAK,QAAQ,IACxB,OAAOC,IAAI,KAAK,QAAQ,EACxB;MACA,IAAI,CAACC,OAAO,GAAG,IAAIC,MAAM,CAACN,mBAAmB,CAACE,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC;IACjE,CAAC,MAAM;MACL,MAAM,IAAIhB,iBAAiB,CAAC,+BAA+B,CAAC;IAC9D;IAEA,IAAI,CAACmB,UAAU,GAAG,IAAI,CAACF,OAAO,CAACE,UAAU;IACzC,IAAI,CAACC,WAAW,GAAG,IAAIlB,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAACe,OAAO,CAACG,WAAW,CAAC;EAC7E;EAEA,IAAWC,WAAWA,CAAA,EAAW;IAC/B,OAAO,IAAI,CAACJ,OAAO,CAACI,WAAW;EACjC;EAEA,IAAWC,KAAKA,CAAA,EAAiB;IAC/B,OAAO,IAAI,CAACL,OAAO,CAACK,KAAK;EAC3B;EAEAC,gBAAgBA,CAAA,EAAmB;IACjC,OAAO,IAAIhB,cAAc,CAAC,IAAI,EAAE,IAAI,CAACU,OAAO,CAACM,gBAAgB,CAAC,CAAC,CAAC;EAClE;EAEAC,UAAUA,CAAA,EAAa;IACrB,OAAO,IAAIlB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAACW,OAAO,CAACO,UAAU,CAAC,CAAC,CAAC;EACtD;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIhB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAACQ,OAAO,CAACQ,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIrB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAACY,OAAO,CAACS,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEA,MAAMC,kBAAkBA,CACtBC,
|
|
1
|
+
{"version":3,"names":["InvalidAccessError","NotSupportedError","AnalyserNode","AudioDestinationNode","AudioBuffer","AudioBufferSourceNode","BiquadFilterNode","GainNode","OscillatorNode","PeriodicWave","StereoPannerNode","globalWasmPromise","globalTag","OfflineAudioContext","constructor","arg0","arg1","arg2","context","window","sampleRate","destination","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","options","pitchCorrection","wasmStretch","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","createAnalyser","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","startRendering","resume","suspend","suspendTime"],"sourceRoot":"../../../src","sources":["web-core/OfflineAudioContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IBaseAudioContext } from '../interfaces';
|
|
2
|
-
import { ContextState, PeriodicWaveConstraints,
|
|
2
|
+
import { ContextState, PeriodicWaveConstraints, AudioBufferBaseSourceNodeOptions } from '../types';
|
|
3
3
|
import AudioDestinationNode from './AudioDestinationNode';
|
|
4
4
|
import OscillatorNode from './OscillatorNode';
|
|
5
5
|
import GainNode from './GainNode';
|
|
@@ -25,8 +25,8 @@ export default class BaseAudioContext {
|
|
|
25
25
|
createGain(): GainNode;
|
|
26
26
|
createStereoPanner(): StereoPannerNode;
|
|
27
27
|
createBiquadFilter(): BiquadFilterNode;
|
|
28
|
-
createBufferSource(options?:
|
|
29
|
-
createBufferQueueSource(): AudioBufferQueueSourceNode;
|
|
28
|
+
createBufferSource(options?: AudioBufferBaseSourceNodeOptions): AudioBufferSourceNode;
|
|
29
|
+
createBufferQueueSource(options?: AudioBufferBaseSourceNodeOptions): AudioBufferQueueSourceNode;
|
|
30
30
|
createBuffer(numOfChannels: number, length: number, sampleRate: number): AudioBuffer;
|
|
31
31
|
createPeriodicWave(real: Float32Array, imag: Float32Array, constraints?: PeriodicWaveConstraints): PeriodicWave;
|
|
32
32
|
createAnalyser(): AnalyserNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseAudioContext.d.ts","sourceRoot":"","sources":["../../../src/core/BaseAudioContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,
|
|
1
|
+
{"version":3,"file":"BaseAudioContext.d.ts","sourceRoot":"","sources":["../../../src/core/BaseAudioContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,UAAU,CAAC;AAClB,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,0BAA0B,MAAM,8BAA8B,CAAC;AACtE,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAE1C,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAExD,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;gBAExB,OAAO,EAAE,iBAAiB;IAMtC,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,KAAK,IAAI,YAAY,CAE/B;IAED,qBAAqB,IAAI,mBAAmB;IAI5C,gBAAgB,IAAI,cAAc;IAIlC,cAAc,IAAI,YAAY;IAI9B,UAAU,IAAI,QAAQ;IAItB,kBAAkB,IAAI,gBAAgB;IAItC,kBAAkB,IAAI,gBAAgB;IAItC,kBAAkB,CAChB,OAAO,CAAC,EAAE,gCAAgC,GACzC,qBAAqB;IASxB,uBAAuB,CACrB,OAAO,CAAC,EAAE,gCAAgC,GACzC,0BAA0B;IAS7B,YAAY,CACV,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,WAAW;IAwBd,kBAAkB,CAChB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,YAAY,EAClB,WAAW,CAAC,EAAE,uBAAuB,GACpC,YAAY;IAcf,cAAc,IAAI,YAAY;IAI9B,iDAAiD;IAC3C,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAWrE,8CAA8C;IACxC,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAMxD,qBAAqB,CACzB,MAAM,EAAE,MAAM,EACd,YAAY,GAAE,MAAY,GACzB,OAAO,CAAC,WAAW,CAAC;CAKxB"}
|
|
@@ -11,7 +11,7 @@ export interface IBaseAudioContext {
|
|
|
11
11
|
createStereoPanner(): IStereoPannerNode;
|
|
12
12
|
createBiquadFilter: () => IBiquadFilterNode;
|
|
13
13
|
createBufferSource: (pitchCorrection: boolean) => IAudioBufferSourceNode;
|
|
14
|
-
createBufferQueueSource: () => IAudioBufferQueueSourceNode;
|
|
14
|
+
createBufferQueueSource: (pitchCorrection: boolean) => IAudioBufferQueueSourceNode;
|
|
15
15
|
createBuffer: (channels: number, length: number, sampleRate: number) => IAudioBuffer;
|
|
16
16
|
createPeriodicWave: (real: Float32Array, imag: Float32Array, disableNormalization: boolean) => IPeriodicWave;
|
|
17
17
|
createAnalyser: () => IAnalyserNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,qBAAqB,IAAI,oBAAoB,CAAC;IAC9C,gBAAgB,IAAI,eAAe,CAAC;IACpC,UAAU,IAAI,SAAS,CAAC;IACxB,kBAAkB,IAAI,iBAAiB,CAAC;IACxC,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;IAC5C,kBAAkB,EAAE,CAAC,eAAe,EAAE,OAAO,KAAK,sBAAsB,CAAC;IACzE,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ export interface AudioRecorderOptions {
|
|
|
20
20
|
bufferLengthInSamples: number;
|
|
21
21
|
}
|
|
22
22
|
export type WindowType = 'blackman' | 'hann';
|
|
23
|
-
export interface
|
|
23
|
+
export interface AudioBufferBaseSourceNodeOptions {
|
|
24
24
|
pitchCorrection: boolean;
|
|
25
25
|
}
|
|
26
26
|
export type ProcessorMode = 'processInPlace' | 'processThrough';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,aAAa,GAAG,UAAU,CAAC;AAElE,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,UAAU,CAAC;AAE5D,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,UAAU,GACV,UAAU,GACV,UAAU,GACV,WAAW,GACX,SAAS,GACT,OAAO,GACP,SAAS,CAAC;AAEd,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE9D,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,QAAQ,GACR,UAAU,GACV,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,WAAW,uBAAuB;IACtC,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,0BAA0B;IACzC,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,aAAa,GAAG,UAAU,CAAC;AAElE,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,UAAU,CAAC;AAE5D,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,UAAU,GACV,UAAU,GACV,UAAU,GACV,WAAW,GACX,SAAS,GACT,OAAO,GACP,SAAS,CAAC;AAEd,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE9D,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,QAAQ,GACR,UAAU,GACV,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,WAAW,uBAAuB;IACtC,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,0BAA0B;IACzC,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,gCAAgC;IAC/C,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,aAAa,GAAG,gBAAgB,GAAG,gBAAgB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ContextState, PeriodicWaveConstraints, AudioContextOptions,
|
|
1
|
+
import { ContextState, PeriodicWaveConstraints, AudioContextOptions, AudioBufferBaseSourceNodeOptions } from '../types';
|
|
2
2
|
import BaseAudioContext from './BaseAudioContext';
|
|
3
3
|
import AnalyserNode from './AnalyserNode';
|
|
4
4
|
import AudioDestinationNode from './AudioDestinationNode';
|
|
@@ -20,7 +20,7 @@ export default class AudioContext implements BaseAudioContext {
|
|
|
20
20
|
createGain(): GainNode;
|
|
21
21
|
createStereoPanner(): StereoPannerNode;
|
|
22
22
|
createBiquadFilter(): BiquadFilterNode;
|
|
23
|
-
createBufferSource(options?:
|
|
23
|
+
createBufferSource(options?: AudioBufferBaseSourceNodeOptions): Promise<AudioBufferSourceNode>;
|
|
24
24
|
createBuffer(numOfChannels: number, length: number, sampleRate: number): AudioBuffer;
|
|
25
25
|
createPeriodicWave(real: Float32Array, imag: Float32Array, constraints?: PeriodicWaveConstraints): PeriodicWave;
|
|
26
26
|
createAnalyser(): AnalyserNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AudioContext.d.ts","sourceRoot":"","sources":["../../../src/web-core/AudioContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,
|
|
1
|
+
{"version":3,"file":"AudioContext.d.ts","sourceRoot":"","sources":["../../../src/web-core/AudioContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,gCAAgC,EACjC,MAAM,UAAU,CAAC;AAElB,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAIlD,MAAM,CAAC,OAAO,OAAO,YAAa,YAAW,gBAAgB;IAC3D,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,YAAY,CAAC;IAE1C,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEhB,OAAO,CAAC,EAAE,mBAAmB,EAAE,cAAc,GAAE,OAAe;IAiB1E,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,KAAK,IAAI,YAAY,CAE/B;IAED,gBAAgB,IAAI,cAAc;IAIlC,UAAU,IAAI,QAAQ;IAItB,kBAAkB,IAAI,gBAAgB;IAItC,kBAAkB,IAAI,gBAAgB;IAIhC,kBAAkB,CACtB,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,qBAAqB,CAAC;IAgBjC,YAAY,CACV,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,WAAW;IAwBd,kBAAkB,CAChB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,YAAY,EAClB,WAAW,CAAC,EAAE,uBAAuB,GACpC,YAAY;IAYf,cAAc,IAAI,YAAY;IAIxB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ3D,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAI/D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ContextState, PeriodicWaveConstraints, OfflineAudioContextOptions,
|
|
1
|
+
import { ContextState, PeriodicWaveConstraints, OfflineAudioContextOptions, AudioBufferBaseSourceNodeOptions } from '../types';
|
|
2
2
|
import BaseAudioContext from './BaseAudioContext';
|
|
3
3
|
import AnalyserNode from './AnalyserNode';
|
|
4
4
|
import AudioDestinationNode from './AudioDestinationNode';
|
|
@@ -21,7 +21,7 @@ export default class OfflineAudioContext implements BaseAudioContext {
|
|
|
21
21
|
createGain(): GainNode;
|
|
22
22
|
createStereoPanner(): StereoPannerNode;
|
|
23
23
|
createBiquadFilter(): BiquadFilterNode;
|
|
24
|
-
createBufferSource(options?:
|
|
24
|
+
createBufferSource(options?: AudioBufferBaseSourceNodeOptions): Promise<AudioBufferSourceNode>;
|
|
25
25
|
createBuffer(numOfChannels: number, length: number, sampleRate: number): AudioBuffer;
|
|
26
26
|
createPeriodicWave(real: Float32Array, imag: Float32Array, constraints?: PeriodicWaveConstraints): PeriodicWave;
|
|
27
27
|
createAnalyser(): AnalyserNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OfflineAudioContext.d.ts","sourceRoot":"","sources":["../../../src/web-core/OfflineAudioContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,0BAA0B,EAC1B,
|
|
1
|
+
{"version":3,"file":"OfflineAudioContext.d.ts","sourceRoot":"","sources":["../../../src/web-core/OfflineAudioContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,0BAA0B,EAC1B,gCAAgC,EACjC,MAAM,UAAU,CAAC;AAElB,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAIlD,MAAM,CAAC,OAAO,OAAO,mBAAoB,YAAW,gBAAgB;IAClE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,mBAAmB,CAAC;IAEjD,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEhB,OAAO,EAAE,0BAA0B;gBACnC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAsBxE,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,KAAK,IAAI,YAAY,CAE/B;IAED,gBAAgB,IAAI,cAAc;IAIlC,UAAU,IAAI,QAAQ;IAItB,kBAAkB,IAAI,gBAAgB;IAItC,kBAAkB,IAAI,gBAAgB;IAIhC,kBAAkB,CACtB,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,qBAAqB,CAAC;IAgBjC,YAAY,CACV,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,WAAW;IAwBd,kBAAkB,CAChB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,YAAY,EAClB,WAAW,CAAC,EAAE,uBAAuB,GACpC,YAAY;IAYf,cAAc,IAAI,YAAY;IAIxB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ3D,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAI/D,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAItC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGlD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-audio-api",
|
|
3
|
-
"version": "0.8.3-nightly-
|
|
3
|
+
"version": "0.8.3-nightly-d178688-20250925",
|
|
4
4
|
"description": "react-native-audio-api provides system for controlling audio in React Native environment compatible with Web Audio API specification",
|
|
5
5
|
"bin": {
|
|
6
6
|
"setup-rn-audio-api-web": "./scripts/setup-rn-audio-api-web.js"
|
|
@@ -2,7 +2,7 @@ import { IBaseAudioContext } from '../interfaces';
|
|
|
2
2
|
import {
|
|
3
3
|
ContextState,
|
|
4
4
|
PeriodicWaveConstraints,
|
|
5
|
-
|
|
5
|
+
AudioBufferBaseSourceNodeOptions,
|
|
6
6
|
} from '../types';
|
|
7
7
|
import AudioDestinationNode from './AudioDestinationNode';
|
|
8
8
|
import OscillatorNode from './OscillatorNode';
|
|
@@ -62,7 +62,7 @@ export default class BaseAudioContext {
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
createBufferSource(
|
|
65
|
-
options?:
|
|
65
|
+
options?: AudioBufferBaseSourceNodeOptions
|
|
66
66
|
): AudioBufferSourceNode {
|
|
67
67
|
const pitchCorrection = options?.pitchCorrection ?? false;
|
|
68
68
|
|
|
@@ -72,10 +72,14 @@ export default class BaseAudioContext {
|
|
|
72
72
|
);
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
createBufferQueueSource(
|
|
75
|
+
createBufferQueueSource(
|
|
76
|
+
options?: AudioBufferBaseSourceNodeOptions
|
|
77
|
+
): AudioBufferQueueSourceNode {
|
|
78
|
+
const pitchCorrection = options?.pitchCorrection ?? false;
|
|
79
|
+
|
|
76
80
|
return new AudioBufferQueueSourceNode(
|
|
77
81
|
this,
|
|
78
|
-
this.context.createBufferQueueSource()
|
|
82
|
+
this.context.createBufferQueueSource(pitchCorrection)
|
|
79
83
|
);
|
|
80
84
|
}
|
|
81
85
|
|
package/src/interfaces.ts
CHANGED
|
@@ -20,7 +20,9 @@ export interface IBaseAudioContext {
|
|
|
20
20
|
createStereoPanner(): IStereoPannerNode;
|
|
21
21
|
createBiquadFilter: () => IBiquadFilterNode;
|
|
22
22
|
createBufferSource: (pitchCorrection: boolean) => IAudioBufferSourceNode;
|
|
23
|
-
createBufferQueueSource: (
|
|
23
|
+
createBufferQueueSource: (
|
|
24
|
+
pitchCorrection: boolean
|
|
25
|
+
) => IAudioBufferQueueSourceNode;
|
|
24
26
|
createBuffer: (
|
|
25
27
|
channels: number,
|
|
26
28
|
length: number,
|
package/src/types.ts
CHANGED
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
ContextState,
|
|
3
3
|
PeriodicWaveConstraints,
|
|
4
4
|
AudioContextOptions,
|
|
5
|
-
|
|
5
|
+
AudioBufferBaseSourceNodeOptions,
|
|
6
6
|
} from '../types';
|
|
7
7
|
import { InvalidAccessError, NotSupportedError } from '../errors';
|
|
8
8
|
import BaseAudioContext from './BaseAudioContext';
|
|
@@ -66,7 +66,7 @@ export default class AudioContext implements BaseAudioContext {
|
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
async createBufferSource(
|
|
69
|
-
options?:
|
|
69
|
+
options?: AudioBufferBaseSourceNodeOptions
|
|
70
70
|
): Promise<AudioBufferSourceNode> {
|
|
71
71
|
if (!options || !options.pitchCorrection) {
|
|
72
72
|
return new AudioBufferSourceNode(
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
ContextState,
|
|
3
3
|
PeriodicWaveConstraints,
|
|
4
4
|
OfflineAudioContextOptions,
|
|
5
|
-
|
|
5
|
+
AudioBufferBaseSourceNodeOptions,
|
|
6
6
|
} from '../types';
|
|
7
7
|
import { InvalidAccessError, NotSupportedError } from '../errors';
|
|
8
8
|
import BaseAudioContext from './BaseAudioContext';
|
|
@@ -72,7 +72,7 @@ export default class OfflineAudioContext implements BaseAudioContext {
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
async createBufferSource(
|
|
75
|
-
options?:
|
|
75
|
+
options?: AudioBufferBaseSourceNodeOptions
|
|
76
76
|
): Promise<AudioBufferSourceNode> {
|
|
77
77
|
if (!options || !options.pitchCorrection) {
|
|
78
78
|
return new AudioBufferSourceNode(
|