react-native-audio-api 0.13.0 → 0.13.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/android/src/main/cpp/audioapi/android/AudioAPIModule.cpp +4 -0
- package/android/src/main/cpp/audioapi/android/core/utils/AndroidRotatingFileWriter.cpp +3 -1
- package/android/src/main/cpp/audioapi/android/system/NativeFileInfo.cpp +48 -0
- package/android/src/main/cpp/audioapi/android/system/NativeFileInfo.hpp +6 -8
- package/ios/audioapi/ios/core/utils/IOSRotatingFileWriter.mm +3 -1
- package/lib/commonjs/web-core/AudioBufferSourceNode.web.js +7 -1
- package/lib/commonjs/web-core/AudioBufferSourceNode.web.js.map +1 -1
- package/lib/commonjs/web-core/AudioContext.web.js +2 -4
- package/lib/commonjs/web-core/AudioContext.web.js.map +1 -1
- package/lib/commonjs/web-core/OfflineAudioContext.web.js +2 -4
- package/lib/commonjs/web-core/OfflineAudioContext.web.js.map +1 -1
- package/lib/commonjs/web-core/custom/index.js +7 -0
- package/lib/commonjs/web-core/custom/index.js.map +1 -1
- package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.js +58 -6
- package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.js.map +1 -1
- package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.js +37 -0
- package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.js.map +1 -0
- package/lib/{module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.js → commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.mjs} +1 -1
- package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.mjs.map +1 -0
- package/lib/commonjs/web-core/utils/AudioBufferSourceNodeStandard.js +8 -2
- package/lib/commonjs/web-core/utils/AudioBufferSourceNodeStandard.js.map +1 -1
- package/lib/module/web-core/AudioBufferSourceNode.web.js +7 -1
- package/lib/module/web-core/AudioBufferSourceNode.web.js.map +1 -1
- package/lib/module/web-core/AudioContext.web.js +2 -4
- package/lib/module/web-core/AudioContext.web.js.map +1 -1
- package/lib/module/web-core/OfflineAudioContext.web.js +2 -4
- package/lib/module/web-core/OfflineAudioContext.web.js.map +1 -1
- package/lib/module/web-core/custom/index.js +1 -0
- package/lib/module/web-core/custom/index.js.map +1 -1
- package/lib/module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.js +57 -6
- package/lib/module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.js.map +1 -1
- package/lib/module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.js +33 -0
- package/lib/module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.js.map +1 -0
- package/lib/{commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.js → module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.mjs} +6 -10
- package/lib/module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.mjs.map +1 -0
- package/lib/module/web-core/utils/AudioBufferSourceNodeStandard.js +8 -2
- package/lib/module/web-core/utils/AudioBufferSourceNodeStandard.js.map +1 -1
- package/lib/typescript/web-core/AudioBufferSourceNode.web.d.ts +2 -0
- package/lib/typescript/web-core/AudioBufferSourceNode.web.d.ts.map +1 -1
- package/lib/typescript/web-core/AudioContext.web.d.ts +3 -1
- package/lib/typescript/web-core/AudioContext.web.d.ts.map +1 -1
- package/lib/typescript/web-core/BaseAudioContext.web.d.ts +3 -1
- package/lib/typescript/web-core/BaseAudioContext.web.d.ts.map +1 -1
- package/lib/typescript/web-core/OfflineAudioContext.web.d.ts +3 -1
- package/lib/typescript/web-core/OfflineAudioContext.web.d.ts.map +1 -1
- package/lib/typescript/web-core/custom/index.d.ts +1 -0
- package/lib/typescript/web-core/custom/index.d.ts.map +1 -1
- package/lib/typescript/web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.d.ts +5 -1
- package/lib/typescript/web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.d.ts.map +1 -1
- package/lib/typescript/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.d.ts +5 -0
- package/lib/typescript/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.d.ts.map +1 -0
- package/lib/typescript/web-core/types.web.d.ts +3 -1
- package/lib/typescript/web-core/types.web.d.ts.map +1 -1
- package/lib/typescript/web-core/utils/AudioBufferSourceNodeStandard.d.ts +2 -0
- package/lib/typescript/web-core/utils/AudioBufferSourceNodeStandard.d.ts.map +1 -1
- package/package.json +1 -1
- package/scripts/setup-rn-audio-api-web.js +4 -4
- package/src/web-core/AudioBufferSourceNode.web.ts +9 -1
- package/src/web-core/AudioContext.web.ts +4 -2
- package/src/web-core/BaseAudioContext.web.ts +3 -1
- package/src/web-core/OfflineAudioContext.web.ts +4 -2
- package/src/web-core/custom/index.ts +1 -0
- package/src/web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.ts +72 -12
- package/src/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.ts +39 -0
- package/src/web-core/types.web.ts +4 -1
- package/src/web-core/utils/AudioBufferSourceNodeStandard.ts +12 -2
- package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.d.js +0 -6
- package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.d.js.map +0 -1
- package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.js.map +0 -1
- package/lib/module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.d.js +0 -4
- package/lib/module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.d.js.map +0 -1
- package/lib/module/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.js.map +0 -1
- package/src/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.d.ts +0 -4
- /package/src/web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/{SignalsmithStretch.js → SignalsmithStretch.mjs} +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#include <audioapi/android/AudioAPIModule.h>
|
|
2
2
|
#include <audioapi/android/JniEventPayloadParser.h>
|
|
3
|
+
#include <audioapi/android/system/NativeFileInfo.hpp>
|
|
3
4
|
#include <memory>
|
|
4
5
|
|
|
5
6
|
namespace audioapi {
|
|
@@ -53,6 +54,9 @@ void AudioAPIModule::registerNatives() {
|
|
|
53
54
|
}
|
|
54
55
|
|
|
55
56
|
void AudioAPIModule::injectJSIBindings() {
|
|
57
|
+
// cache app directory paths on the attached thread
|
|
58
|
+
NativeFileInfo::warmCache();
|
|
59
|
+
|
|
56
60
|
#if RN_AUDIO_API_ENABLE_WORKLETS
|
|
57
61
|
auto uiWorkletRuntime = weakWorkletsModuleProxy_.lock()->getUIWorkletRuntime();
|
|
58
62
|
#else
|
|
@@ -28,7 +28,9 @@ OpenFileResult AndroidRotatingFileWriter::openFile(
|
|
|
28
28
|
streamSampleRate_ = streamSampleRate;
|
|
29
29
|
streamChannelCount_ = streamChannelCount;
|
|
30
30
|
streamMaxBufferSize_ = streamMaxBufferSizeInFrames;
|
|
31
|
-
|
|
31
|
+
if (!fileNameOverride.empty()) {
|
|
32
|
+
fileProperties_->fileNamePrefix = fileNameOverride + fileProperties_->fileNamePrefix;
|
|
33
|
+
}
|
|
32
34
|
if (currentWriter_ == nullptr) {
|
|
33
35
|
currentWriter_ = writerFactory_(fileProperties_);
|
|
34
36
|
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
#include <audioapi/android/system/NativeFileInfo.hpp>
|
|
2
|
+
|
|
3
|
+
#include <atomic>
|
|
4
|
+
#include <string>
|
|
5
|
+
|
|
6
|
+
namespace audioapi {
|
|
7
|
+
|
|
8
|
+
namespace {
|
|
9
|
+
|
|
10
|
+
std::string cachedFilesDir;
|
|
11
|
+
std::string cachedCacheDir;
|
|
12
|
+
std::atomic<bool> cacheReady{false};
|
|
13
|
+
|
|
14
|
+
std::string fetchFilesDirFromJava() {
|
|
15
|
+
static const auto method =
|
|
16
|
+
NativeFileInfo::javaClassStatic()->getStaticMethod<jni::JString()>("getFilesDir");
|
|
17
|
+
return method(NativeFileInfo::javaClassStatic())->toStdString();
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
std::string fetchCacheDirFromJava() {
|
|
21
|
+
static const auto method =
|
|
22
|
+
NativeFileInfo::javaClassStatic()->getStaticMethod<jni::JString()>("getCacheDir");
|
|
23
|
+
return method(NativeFileInfo::javaClassStatic())->toStdString();
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
} // namespace
|
|
27
|
+
|
|
28
|
+
void NativeFileInfo::warmCache() {
|
|
29
|
+
cachedFilesDir = fetchFilesDirFromJava();
|
|
30
|
+
cachedCacheDir = fetchCacheDirFromJava();
|
|
31
|
+
cacheReady.store(true, std::memory_order_release);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
std::string NativeFileInfo::getFilesDir() {
|
|
35
|
+
if (cacheReady.load(std::memory_order_acquire)) {
|
|
36
|
+
return cachedFilesDir;
|
|
37
|
+
}
|
|
38
|
+
return fetchFilesDirFromJava();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
std::string NativeFileInfo::getCacheDir() {
|
|
42
|
+
if (cacheReady.load(std::memory_order_acquire)) {
|
|
43
|
+
return cachedCacheDir;
|
|
44
|
+
}
|
|
45
|
+
return fetchCacheDirFromJava();
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
} // namespace audioapi
|
|
@@ -7,19 +7,17 @@ namespace audioapi {
|
|
|
7
7
|
|
|
8
8
|
using namespace facebook;
|
|
9
9
|
|
|
10
|
+
/// @brief JNI bridge to Kotlin paths for recorder file output.
|
|
11
|
+
/// @note Call warmCache() from a JNI-attached thread
|
|
10
12
|
class NativeFileInfo : public jni::JavaClass<NativeFileInfo> {
|
|
11
13
|
public:
|
|
12
14
|
static auto constexpr kJavaDescriptor = "Lcom/swmansion/audioapi/system/NativeFileInfo;";
|
|
13
15
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
return method(javaClassStatic())->toStdString();
|
|
17
|
-
}
|
|
16
|
+
/// @brief Fetches and caches directory paths via JNI. Must run before recording.
|
|
17
|
+
static void warmCache();
|
|
18
18
|
|
|
19
|
-
static std::string
|
|
20
|
-
|
|
21
|
-
return method(javaClassStatic())->toStdString();
|
|
22
|
-
}
|
|
19
|
+
static std::string getFilesDir();
|
|
20
|
+
static std::string getCacheDir();
|
|
23
21
|
};
|
|
24
22
|
|
|
25
23
|
} // namespace audioapi
|
|
@@ -36,7 +36,9 @@ OpenFileResult IOSRotatingFileWriter::openFile(
|
|
|
36
36
|
{
|
|
37
37
|
streamFormat_ = streamFormat;
|
|
38
38
|
streamMaxBufferSizeInFrames_ = streamMaxBufferSizeInFrames;
|
|
39
|
-
|
|
39
|
+
if (!fileNameOverride.empty()) {
|
|
40
|
+
fileProperties_->fileNamePrefix = fileNameOverride + fileProperties_->fileNamePrefix;
|
|
41
|
+
}
|
|
40
42
|
if (currentWriter_ == nullptr) {
|
|
41
43
|
currentWriter_ = writerFactory_(fileProperties_);
|
|
42
44
|
}
|
|
@@ -19,9 +19,15 @@ class AudioBufferSourceNode {
|
|
|
19
19
|
start(when = 0, offset, duration) {
|
|
20
20
|
this.node.start(when, offset, duration);
|
|
21
21
|
}
|
|
22
|
-
stop(when
|
|
22
|
+
stop(when) {
|
|
23
23
|
this.node.stop(when);
|
|
24
24
|
}
|
|
25
|
+
get onEnded() {
|
|
26
|
+
return this.node.onEnded;
|
|
27
|
+
}
|
|
28
|
+
set onEnded(callback) {
|
|
29
|
+
this.node.onEnded = callback;
|
|
30
|
+
}
|
|
25
31
|
get detune() {
|
|
26
32
|
return this.node.detune;
|
|
27
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_custom","require","_utils","AudioBufferSourceNode","constructor","context","options","node","pitchCorrection","AudioBufferSourceNodeStretcher","AudioBufferSourceNodeStandard","connect","destination","disconnect","start","when","offset","duration","stop","detune","playbackRate","buffer","loop","value","loopStart","loopEnd","loopSkip","onLoopEnded","
|
|
1
|
+
{"version":3,"names":["_custom","require","_utils","AudioBufferSourceNode","constructor","context","options","node","pitchCorrection","AudioBufferSourceNodeStretcher","AudioBufferSourceNodeStandard","connect","destination","disconnect","start","when","offset","duration","stop","onEnded","callback","detune","playbackRate","buffer","loop","value","loopStart","loopEnd","loopSkip","onLoopEnded","exports","default"],"sourceRoot":"../../../src","sources":["web-core/AudioBufferSourceNode.web.ts"],"mappings":";;;;;;AAMA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEe,MAAME,qBAAqB,CAAC;EAGzCC,WAAWA,CAACC,OAAyB,EAAEC,OAAkC,EAAE;IACzE,IAAI,CAACC,IAAI,GAAGD,OAAO,EAAEE,eAAe,GAChC,IAAIC,sCAA8B,CAACJ,OAAO,EAAEC,OAAO,CAAC,GACpD,IAAII,oCAA6B,CAACL,OAAO,EAAEC,OAAO,CAAC;EACzD;EAEAK,OAAOA,CAACC,WAAmC,EAA0B;IACnE,OAAO,IAAI,CAACL,IAAI,CAACI,OAAO,CAACC,WAAW,CAAC;EACvC;EAEAC,UAAUA,CAACD,WAAoC,EAAQ;IACrD,IAAI,CAACL,IAAI,CAACM,UAAU,CAACD,WAAW,CAAC;EACnC;EAEAE,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAEC,MAAe,EAAEC,QAAiB,EAAQ;IAChE,IAAI,CAACV,IAAI,CAACO,KAAK,CAACC,IAAI,EAAEC,MAAM,EAAEC,QAAQ,CAAC;EACzC;EAEAC,IAAIA,CAACH,IAAa,EAAQ;IACxB,IAAI,CAACR,IAAI,CAACW,IAAI,CAACH,IAAI,CAAC;EACtB;EAEA,IAAII,OAAOA,CAAA,EAAoC;IAC7C,OAAO,IAAI,CAACZ,IAAI,CAACY,OAAO;EAC1B;EAEA,IAAIA,OAAOA,CAACC,QAAyC,EAAE;IACrD,IAAI,CAACb,IAAI,CAACY,OAAO,GAAGC,QAAQ;EAC9B;EAEA,IAAIC,MAAMA,CAAA,EAAe;IACvB,OAAO,IAAI,CAACd,IAAI,CAACc,MAAM;EACzB;EAEA,IAAIC,YAAYA,CAAA,EAAe;IAC7B,OAAO,IAAI,CAACf,IAAI,CAACe,YAAY;EAC/B;EAEA,IAAIC,MAAMA,CAAA,EAAuB;IAC/B,OAAO,IAAI,CAAChB,IAAI,CAACgB,MAAM;EACzB;EAEA,IAAIA,MAAMA,CAACA,MAA0B,EAAE;IACrC,IAAI,CAAChB,IAAI,CAACgB,MAAM,GAAGA,MAAM;EAC3B;EAEA,IAAIC,IAAIA,CAAA,EAAY;IAClB,OAAO,IAAI,CAACjB,IAAI,CAACiB,IAAI;EACvB;EAEA,IAAIA,IAAIA,CAACC,KAAc,EAAE;IACvB,IAAI,CAAClB,IAAI,CAACiB,IAAI,GAAGC,KAAK;EACxB;EAEA,IAAIC,SAASA,CAAA,EAAW;IACtB,OAAO,IAAI,CAACnB,IAAI,CAACmB,SAAS;EAC5B;EAEA,IAAIA,SAASA,CAACD,KAAa,EAAE;IAC3B,IAAI,CAAClB,IAAI,CAACmB,SAAS,GAAGD,KAAK;EAC7B;EAEA,IAAIE,OAAOA,CAAA,EAAW;IACpB,OAAO,IAAI,CAACpB,IAAI,CAACoB,OAAO;EAC1B;EAEA,IAAIA,OAAOA,CAACF,KAAa,EAAE;IACzB,IAAI,CAAClB,IAAI,CAACoB,OAAO,GAAGF,KAAK;EAC3B;EAEA,IAAIG,QAAQA,CAAA,EAAY;IACtB,OAAO,IAAI,CAACrB,IAAI,CAACqB,QAAQ;EAC3B;EAEA,IAAIA,QAAQA,CAACH,KAAc,EAAE;IAC3B,IAAI,CAAClB,IAAI,CAACqB,QAAQ,GAAGH,KAAK;EAC5B;EAEA,IAAII,WAAWA,CAAA,EAA0C;IACvD,OAAO,IAAI,CAACtB,IAAI,CAACsB,WAAW;EAC9B;EAEA,IAAIA,WAAWA,CAACT,QAA0C,EAAE;IAC1D,IAAI,CAACb,IAAI,CAACsB,WAAW,GAAGT,QAAQ;EAClC;AACF;AAACU,OAAA,CAAAC,OAAA,GAAA5B,qBAAA","ignoreList":[]}
|
|
@@ -67,10 +67,8 @@ class AudioContext {
|
|
|
67
67
|
feedback
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
|
-
createBufferSource(
|
|
71
|
-
return new _AudioBufferSourceNode.default(this,
|
|
72
|
-
pitchCorrection
|
|
73
|
-
});
|
|
70
|
+
createBufferSource(options) {
|
|
71
|
+
return new _AudioBufferSourceNode.default(this, options);
|
|
74
72
|
}
|
|
75
73
|
createMediaElementSource(mediaElement) {
|
|
76
74
|
return new _MediaElementAudioSourceNode.default(this, this.context.createMediaElementSource(mediaElement), mediaElement);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioBuffer","_AudioBufferSourceNode","_AudioDestinationNode","_BiquadFilterNode","_ConvolverNode","_DelayNode","_GainNode","_IIRFilterNode","_MediaElementAudioSourceNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_ConstantSourceNode","_WaveShaperNode","e","__esModule","default","AudioContext","constructor","options","sampleRate","NotSupportedError","context","window","destination","AudioDestinationNode","currentTime","state","createOscillator","OscillatorNode","createConstantSource","ConstantSourceNode","createGain","GainNode","createDelay","maxDelayTime","DelayNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createConvolver","ConvolverNode","createIIRFilter","feedforward","feedback","IIRFilterNode","createBufferSource","
|
|
1
|
+
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioBuffer","_AudioBufferSourceNode","_AudioDestinationNode","_BiquadFilterNode","_ConvolverNode","_DelayNode","_GainNode","_IIRFilterNode","_MediaElementAudioSourceNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_ConstantSourceNode","_WaveShaperNode","e","__esModule","default","AudioContext","constructor","options","sampleRate","NotSupportedError","context","window","destination","AudioDestinationNode","currentTime","state","createOscillator","OscillatorNode","createConstantSource","ConstantSourceNode","createGain","GainNode","createDelay","maxDelayTime","DelayNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createConvolver","ConvolverNode","createIIRFilter","feedforward","feedback","IIRFilterNode","createBufferSource","AudioBufferSourceNode","createMediaElementSource","mediaElement","MediaElementAudioSourceNode","createBuffer","numberOfChannels","length","AudioBuffer","createPeriodicWave","real","imag","constraints","InvalidAccessError","PeriodicWave","createAnalyser","AnalyserNode","createWaveShaper","WaveShaperNode","decodeAudioData","source","fetchOptions","ArrayBuffer","decodedData","response","fetch","ok","arrayBuffer","TypeError","close","resume","suspend","exports"],"sourceRoot":"../../../src","sources":["web-core/AudioContext.web.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,YAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,sBAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,qBAAA,GAAAH,sBAAA,CAAAF,OAAA;AAEA,IAAAM,iBAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,cAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,UAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,SAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,cAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,4BAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,eAAA,GAAAV,sBAAA,CAAAF,OAAA;AACA,IAAAa,aAAA,GAAAX,sBAAA,CAAAF,OAAA;AACA,IAAAc,iBAAA,GAAAZ,sBAAA,CAAAF,OAAA;AACA,IAAAe,mBAAA,GAAAb,sBAAA,CAAAF,OAAA;AACA,IAAAgB,eAAA,GAAAd,sBAAA,CAAAF,OAAA;AAAkD,SAAAE,uBAAAe,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnC,MAAMG,YAAY,CAA6B;EAM5DC,WAAWA,CAACC,OAA6B,EAAE;IACzC,IACEA,OAAO,IACPA,OAAO,CAACC,UAAU,KACjBD,OAAO,CAACC,UAAU,GAAG,IAAI,IAAID,OAAO,CAACC,UAAU,GAAG,KAAK,CAAC,EACzD;MACA,MAAM,IAAIC,yBAAiB,CACzB,6CAA6CF,OAAO,CAACC,UAAU,EACjE,CAAC;IACH;IAEA,IAAI,CAACE,OAAO,GAAG,IAAIC,MAAM,CAACN,YAAY,CAAC;MAAEG,UAAU,EAAED,OAAO,EAAEC;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,CAAC;EACjC;EAEAC,oBAAoBA,CAAA,EAAuB;IACzC,OAAO,IAAIC,2BAAkB,CAAC,IAAI,CAAC;EACrC;EAEAC,UAAUA,CAAA,EAAa;IACrB,OAAO,IAAIC,iBAAQ,CAAC,IAAI,CAAC;EAC3B;EAEAC,WAAWA,CAACC,YAAqB,EAAa;IAC5C,OAAO,IAAIC,kBAAS,CAAC,IAAI,EAAE;MAAED;IAAa,CAAC,CAAC;EAC9C;EAEAE,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIC,yBAAgB,CAAC,IAAI,CAAC;EACnC;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIC,yBAAgB,CAAC,IAAI,CAAC;EACnC;EAEAC,eAAeA,CAAA,EAAkB;IAC/B,OAAO,IAAIC,sBAAa,CAAC,IAAI,CAAC;EAChC;EAEAC,eAAeA,CAACC,WAAqB,EAAEC,QAAkB,EAAiB;IACxE,OAAO,IAAIC,sBAAa,CAAC,IAAI,EAAE;MAAEF,WAAW;MAAEC;IAAS,CAAC,CAAC;EAC3D;EAEAE,kBAAkBA,CAAC5B,OAElB,EAAyB;IACxB,OAAO,IAAI6B,8BAAqB,CAAC,IAAI,EAAE7B,OAAO,CAAC;EACjD;EAEA8B,wBAAwBA,CACtBC,YAA8B,EACD;IAC7B,OAAO,IAAIC,oCAA2B,CACpC,IAAI,EACJ,IAAI,CAAC7B,OAAO,CAAC2B,wBAAwB,CAACC,YAAY,CAAC,EACnDA,YACF,CAAC;EACH;EAEAE,YAAYA,CACVC,gBAAwB,EACxBC,MAAc,EACdlC,UAAkB,EACL;IACb,IAAIiC,gBAAgB,GAAG,CAAC,IAAIA,gBAAgB,IAAI,EAAE,EAAE;MAClD,MAAM,IAAIhC,yBAAiB,CACzB,oCAAoCgC,gBAAgB,gCACtD,CAAC;IACH;IAEA,IAAIC,MAAM,IAAI,CAAC,EAAE;MACf,MAAM,IAAIjC,yBAAiB,CACzB,kCAAkCiC,MAAM,kDAC1C,CAAC;IACH;IAEA,IAAIlC,UAAU,GAAG,IAAI,IAAIA,UAAU,GAAG,KAAK,EAAE;MAC3C,MAAM,IAAIC,yBAAiB,CACzB,6BAA6BD,UAAU,sCACzC,CAAC;IACH;IAEA,OAAO,IAAImC,oBAAW,CAAC;MAAEF,gBAAgB;MAAEC,MAAM;MAAElC;IAAW,CAAC,CAAC;EAClE;EAEAoC,kBAAkBA,CAChBC,IAAkB,EAClBC,IAAkB,EAClBC,WAAqC,EACvB;IACd,IAAIF,IAAI,CAACH,MAAM,KAAKI,IAAI,CAACJ,MAAM,EAAE;MAC/B,MAAM,IAAIM,0BAAkB,CAC1B,4BAA4BH,IAAI,CAACH,MAAM,oBAAoBI,IAAI,CAACJ,MAAM,sBACxE,CAAC;IACH;IAEA,OAAO,IAAIO,qBAAY,CAAC,IAAI,EAAE;MAAEJ,IAAI;MAAEC,IAAI;MAAE,GAAGC;IAAY,CAAC,CAAC;EAC/D;EAEAG,cAAcA,CAAA,EAAiB;IAC7B,OAAO,IAAIC,qBAAY,CAAC,IAAI,CAAC;EAC/B;EAEAC,gBAAgBA,CAAA,EAAmB;IACjC,OAAO,IAAIC,uBAAc,CAAC,IAAI,EAAE,IAAI,CAAC3C,OAAO,CAAC0C,gBAAgB,CAAC,CAAC,CAAC;EAClE;EAEA,MAAME,eAAeA,CACnBC,MAAuB,EACvBC,YAA0B,EACJ;IACtB,IAAID,MAAM,YAAYE,WAAW,EAAE;MACjC,MAAMC,WAAW,GAAG,MAAM,IAAI,CAAChD,OAAO,CAAC4C,eAAe,CAACC,MAAM,CAAC;MAC9D,OAAO,IAAIZ,oBAAW,CAACe,WAAW,CAAC;IACrC;IAEA,IAAI,OAAOH,MAAM,KAAK,QAAQ,EAAE;MAC9B,MAAMI,QAAQ,GAAG,MAAMC,KAAK,CAACL,MAAM,EAAEC,YAAY,CAAC;MAElD,IAAI,CAACG,QAAQ,CAACE,EAAE,EAAE;QAChB,MAAM,IAAIb,0BAAkB,CAC1B,wDAAwDO,MAAM,EAChE,CAAC;MACH;MAEA,MAAMO,WAAW,GAAG,MAAMH,QAAQ,CAACG,WAAW,CAAC,CAAC;MAChD,MAAMJ,WAAW,GAAG,MAAM,IAAI,CAAChD,OAAO,CAAC4C,eAAe,CAACQ,WAAW,CAAC;MACnE,OAAO,IAAInB,oBAAW,CAACe,WAAW,CAAC;IACrC;IAEA,MAAM,IAAIK,SAAS,CAAC,0CAA0C,GAAGR,MAAM,CAAC;EAC1E;EAEA,MAAMS,KAAKA,CAAA,EAAkB;IAC3B,MAAM,IAAI,CAACtD,OAAO,CAACsD,KAAK,CAAC,CAAC;EAC5B;EAEA,MAAMC,MAAMA,CAAA,EAAkB;IAC5B,MAAM,IAAI,CAACvD,OAAO,CAACuD,MAAM,CAAC,CAAC;EAC7B;EAEA,MAAMC,OAAOA,CAAA,EAAkB;IAC7B,MAAM,IAAI,CAACxD,OAAO,CAACwD,OAAO,CAAC,CAAC;EAC9B;AACF;AAACC,OAAA,CAAA/D,OAAA,GAAAC,YAAA","ignoreList":[]}
|
|
@@ -67,10 +67,8 @@ class OfflineAudioContext {
|
|
|
67
67
|
feedback
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
|
-
createBufferSource(
|
|
71
|
-
return new _AudioBufferSourceNode.default(this,
|
|
72
|
-
pitchCorrection
|
|
73
|
-
});
|
|
70
|
+
createBufferSource(options) {
|
|
71
|
+
return new _AudioBufferSourceNode.default(this, options);
|
|
74
72
|
}
|
|
75
73
|
createBuffer(numberOfChannels, length, sampleRate) {
|
|
76
74
|
if (numberOfChannels < 1 || numberOfChannels >= 32) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioDestinationNode","_AudioBuffer","_AudioBufferSourceNode","_BiquadFilterNode","_IIRFilterNode","_GainNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_ConstantSourceNode","_WaveShaperNode","_ConvolverNode","_DelayNode","e","__esModule","default","OfflineAudioContext","constructor","arg0","arg1","arg2","context","window","NotSupportedError","sampleRate","destination","AudioDestinationNode","currentTime","state","createOscillator","OscillatorNode","createConstantSource","ConstantSourceNode","createGain","GainNode","createDelay","maxDelayTime","DelayNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createConvolver","ConvolverNode","createIIRFilter","feedforward","feedback","IIRFilterNode","createBufferSource","
|
|
1
|
+
{"version":3,"names":["_errors","require","_AnalyserNode","_interopRequireDefault","_AudioDestinationNode","_AudioBuffer","_AudioBufferSourceNode","_BiquadFilterNode","_IIRFilterNode","_GainNode","_OscillatorNode","_PeriodicWave","_StereoPannerNode","_ConstantSourceNode","_WaveShaperNode","_ConvolverNode","_DelayNode","e","__esModule","default","OfflineAudioContext","constructor","arg0","arg1","arg2","context","window","NotSupportedError","sampleRate","destination","AudioDestinationNode","currentTime","state","createOscillator","OscillatorNode","createConstantSource","ConstantSourceNode","createGain","GainNode","createDelay","maxDelayTime","DelayNode","createStereoPanner","StereoPannerNode","createBiquadFilter","BiquadFilterNode","createConvolver","ConvolverNode","createIIRFilter","feedforward","feedback","IIRFilterNode","createBufferSource","options","AudioBufferSourceNode","createBuffer","numberOfChannels","length","AudioBuffer","createPeriodicWave","real","imag","constraints","InvalidAccessError","PeriodicWave","createAnalyser","AnalyserNode","createWaveShaper","WaveShaperNode","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","startRendering","resume","suspend","suspendTime","exports"],"sourceRoot":"../../../src","sources":["web-core/OfflineAudioContext.web.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,6 +9,13 @@ Object.defineProperty(exports, "AudioBufferSourceNodeStretcher", {
|
|
|
9
9
|
return _AudioBufferSourceNodeStretcher.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "LoadCustomWasm", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _LoadCustomWasm.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
12
18
|
var _AudioBufferSourceNodeStretcher = _interopRequireDefault(require("./wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher"));
|
|
19
|
+
var _LoadCustomWasm = _interopRequireDefault(require("./wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm"));
|
|
13
20
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_AudioBufferSourceNodeStretcher","_interopRequireDefault","require","e","__esModule","default"],"sourceRoot":"../../../../src","sources":["web-core/custom/index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_AudioBufferSourceNodeStretcher","_interopRequireDefault","require","_LoadCustomWasm","e","__esModule","default"],"sourceRoot":"../../../../src","sources":["web-core/custom/index.ts"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,+BAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAF,sBAAA,CAAAC,OAAA;AAAsG,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA","ignoreList":[]}
|
|
@@ -7,8 +7,9 @@ exports.default = void 0;
|
|
|
7
7
|
var _errors = require("../../../errors");
|
|
8
8
|
var _AudioParam = _interopRequireDefault(require("../../AudioParam.web"));
|
|
9
9
|
var _utils = require("../../../utils");
|
|
10
|
-
var
|
|
10
|
+
var _LoadCustomWasm = _interopRequireWildcard(require("./LoadCustomWasm"));
|
|
11
11
|
var _AudioStretcherParam = _interopRequireDefault(require("./AudioStretcherParam"));
|
|
12
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
12
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
14
|
function buildScheduleOptions(options, time) {
|
|
14
15
|
if (time === undefined) {
|
|
@@ -26,6 +27,7 @@ class AudioBufferSourceNodeStretcher {
|
|
|
26
27
|
stretcherPromise = null;
|
|
27
28
|
node = null;
|
|
28
29
|
hasBeenStarted = false;
|
|
30
|
+
_onEnded = null;
|
|
29
31
|
_loop = false;
|
|
30
32
|
_loopStart = -1;
|
|
31
33
|
_loopEnd = -1;
|
|
@@ -37,7 +39,15 @@ class AudioBufferSourceNodeStretcher {
|
|
|
37
39
|
_pendingParamEvents = [];
|
|
38
40
|
constructor(context, options) {
|
|
39
41
|
this.context = context;
|
|
40
|
-
|
|
42
|
+
// The worklet is loaded as a static asset (served next to the app) rather
|
|
43
|
+
// than bundled, so it is never transformed by the consumer's bundler. The
|
|
44
|
+
// consumer preloads it via LoadCustomWasm(prefix); this call is idempotent.
|
|
45
|
+
const stretcherPromise = (async () => {
|
|
46
|
+
await (0, _LoadCustomWasm.default)('/react-native-audio-api');
|
|
47
|
+
await _LoadCustomWasm.globalWasmPromise;
|
|
48
|
+
const factory = window[_LoadCustomWasm.globalTag];
|
|
49
|
+
return factory(context.context);
|
|
50
|
+
})();
|
|
41
51
|
this.stretcherPromise = stretcherPromise;
|
|
42
52
|
stretcherPromise.then(node => {
|
|
43
53
|
this.node = node;
|
|
@@ -143,22 +153,29 @@ class AudioBufferSourceNodeStretcher {
|
|
|
143
153
|
this.hasBeenStarted = true;
|
|
144
154
|
const startAt = !when || when < this.context.currentTime ? this.context.currentTime : when;
|
|
145
155
|
this.runOnStretcher(node => {
|
|
156
|
+
const playbackRate = this.playbackRate.getValueAtTime(startAt);
|
|
157
|
+
const detune = this.detune.getValueAtTime(startAt);
|
|
158
|
+
node.start(startAt, offset, duration, playbackRate, detuneCentsToSemitones(detune));
|
|
159
|
+
|
|
160
|
+
// Pin the loop to the same segment start() just scheduled (output=startAt).
|
|
161
|
+
// A separate schedule() with no output would land at the worklet's own
|
|
162
|
+
// (later) currentTime as an inactive trailing segment and silence playback.
|
|
146
163
|
if (this.loop && this._loopStart !== -1 && this._loopEnd !== -1) {
|
|
147
164
|
node.schedule({
|
|
165
|
+
output: startAt,
|
|
148
166
|
loopStart: this._loopStart,
|
|
149
167
|
loopEnd: this._loopEnd
|
|
150
168
|
});
|
|
151
169
|
}
|
|
152
|
-
const playbackRate = this.playbackRate.getValueAtTime(startAt);
|
|
153
|
-
const detune = this.detune.getValueAtTime(startAt);
|
|
154
|
-
node.start(startAt, offset, duration, playbackRate, detuneCentsToSemitones(detune));
|
|
155
170
|
this.flushPendingParamEvents();
|
|
156
171
|
});
|
|
157
172
|
}
|
|
158
173
|
stop(when) {
|
|
159
|
-
if (when < 0) {
|
|
174
|
+
if (when !== undefined && when < 0) {
|
|
160
175
|
throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
|
|
161
176
|
}
|
|
177
|
+
// Passing `undefined` lets the worklet stop at its own fresh currentTime.
|
|
178
|
+
// Passing 0 would schedule deactivation before the start segment (a no-op).
|
|
162
179
|
this.runOnStretcher(node => {
|
|
163
180
|
node.stop(when);
|
|
164
181
|
});
|
|
@@ -186,23 +203,49 @@ class AudioBufferSourceNodeStretcher {
|
|
|
186
203
|
node.addBuffers(channelArrays);
|
|
187
204
|
});
|
|
188
205
|
}
|
|
206
|
+
|
|
207
|
+
// Unlike the browser AudioBufferSourceNode, the WASM worklet only picks up
|
|
208
|
+
// loop bounds when they are scheduled. start() schedules the initial loop;
|
|
209
|
+
// these setters must re-schedule so live changes take effect while playing.
|
|
210
|
+
applyLoopToStretcher() {
|
|
211
|
+
if (!this.hasBeenStarted) {
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
this.runOnStretcher(node => {
|
|
215
|
+
if (this._loop && this._loopStart !== -1 && this._loopEnd !== -1) {
|
|
216
|
+
node.schedule({
|
|
217
|
+
loopStart: this._loopStart,
|
|
218
|
+
loopEnd: this._loopEnd
|
|
219
|
+
});
|
|
220
|
+
} else {
|
|
221
|
+
// Zero-length loop disables looping in the worklet going forward.
|
|
222
|
+
node.schedule({
|
|
223
|
+
loopStart: 0,
|
|
224
|
+
loopEnd: 0
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
}
|
|
189
229
|
get loop() {
|
|
190
230
|
return this._loop;
|
|
191
231
|
}
|
|
192
232
|
set loop(value) {
|
|
193
233
|
this._loop = value;
|
|
234
|
+
this.applyLoopToStretcher();
|
|
194
235
|
}
|
|
195
236
|
get loopStart() {
|
|
196
237
|
return this._loopStart;
|
|
197
238
|
}
|
|
198
239
|
set loopStart(value) {
|
|
199
240
|
this._loopStart = value;
|
|
241
|
+
this.applyLoopToStretcher();
|
|
200
242
|
}
|
|
201
243
|
get loopEnd() {
|
|
202
244
|
return this._loopEnd;
|
|
203
245
|
}
|
|
204
246
|
set loopEnd(value) {
|
|
205
247
|
this._loopEnd = value;
|
|
248
|
+
this.applyLoopToStretcher();
|
|
206
249
|
}
|
|
207
250
|
get loopSkip() {
|
|
208
251
|
return this._loopSkip;
|
|
@@ -218,6 +261,15 @@ class AudioBufferSourceNodeStretcher {
|
|
|
218
261
|
set onLoopEnded(callback) {
|
|
219
262
|
this._onLoopEnded = callback ?? undefined;
|
|
220
263
|
}
|
|
264
|
+
get onEnded() {
|
|
265
|
+
return this._onEnded;
|
|
266
|
+
}
|
|
267
|
+
set onEnded(callback) {
|
|
268
|
+
this._onEnded = callback;
|
|
269
|
+
this.runOnStretcher(node => {
|
|
270
|
+
node.onEnded = callback;
|
|
271
|
+
});
|
|
272
|
+
}
|
|
221
273
|
}
|
|
222
274
|
exports.default = AudioBufferSourceNodeStretcher;
|
|
223
275
|
//# sourceMappingURL=AudioBufferSourceNodeStretcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_errors","require","_AudioParam","_interopRequireDefault","_utils","_SignalsmithStretch","_AudioStretcherParam","e","__esModule","default","buildScheduleOptions","options","time","undefined","output","detuneCentsToSemitones","cents","clamp","AudioBufferSourceNodeStretcher","stretcherPromise","node","hasBeenStarted","_loop","_loopStart","_loopEnd","_loopSkip","_onLoopEnded","_buffer","bufferHasBeenSet","_operationChain","Promise","resolve","_pendingParamEvents","constructor","context","SignalsmithStretch","then","detune","AudioStretcherParam","event","handleParamEvent","value","semitones","cancelTime","cancelStretcherAutomation","playbackRate","Infinity","rate","buffer","runOnStretcher","action","scheduleStretcher","scheduleOptions","schedule","filter","pending","cancelScheduledValues","param","mapOptions","push","applyParamEvent","samples","sampleAutomation","sample","flushPendingParamEvents","connect","destination","AudioParam","disconnect","start","when","offset","duration","RangeError","InvalidStateError","startAt","currentTime","loop","loopStart","loopEnd","getValueAtTime","stop","dropBuffers","channelArrays","i","numberOfChannels","getChannelData","addBuffers","loopSkip","onLoopEnded","callback","exports"],"sourceRoot":"../../../../../src","sources":["web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_errors","require","_AudioParam","_interopRequireDefault","_utils","_LoadCustomWasm","_interopRequireWildcard","_AudioStretcherParam","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","buildScheduleOptions","options","time","undefined","output","detuneCentsToSemitones","cents","clamp","AudioBufferSourceNodeStretcher","stretcherPromise","node","hasBeenStarted","_onEnded","_loop","_loopStart","_loopEnd","_loopSkip","_onLoopEnded","_buffer","bufferHasBeenSet","_operationChain","Promise","resolve","_pendingParamEvents","constructor","context","LoadCustomWasm","globalWasmPromise","factory","window","globalTag","then","detune","AudioStretcherParam","event","handleParamEvent","value","semitones","cancelTime","cancelStretcherAutomation","playbackRate","Infinity","rate","buffer","runOnStretcher","action","scheduleStretcher","scheduleOptions","schedule","filter","pending","cancelScheduledValues","param","mapOptions","push","applyParamEvent","samples","sampleAutomation","sample","flushPendingParamEvents","connect","destination","AudioParam","disconnect","start","when","offset","duration","RangeError","InvalidStateError","startAt","currentTime","getValueAtTime","loop","loopStart","loopEnd","stop","dropBuffers","channelArrays","numberOfChannels","getChannelData","addBuffers","applyLoopToStretcher","loopSkip","onLoopEnded","callback","onEnded","exports"],"sourceRoot":"../../../../../src","sources":["web-core/custom/wasm-audio-bufffer-source-node-stretcher/AudioBufferSourceNodeStretcher.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.globalWasmPromise = exports.globalTag = exports.default = void 0;
|
|
7
|
+
const globalTag = exports.globalTag = '__rnaaCstStretch';
|
|
8
|
+
const eventTitle = 'rnaaCstStretchLoaded';
|
|
9
|
+
let globalWasmPromise = exports.globalWasmPromise = null;
|
|
10
|
+
const LoadCustomWasm = async (pathPrefix = '') => {
|
|
11
|
+
if (typeof window === 'undefined') {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
if (globalWasmPromise) {
|
|
15
|
+
return globalWasmPromise;
|
|
16
|
+
}
|
|
17
|
+
exports.globalWasmPromise = globalWasmPromise = new Promise(resolve => {
|
|
18
|
+
const loadScript = document.createElement('script');
|
|
19
|
+
document.head.appendChild(loadScript);
|
|
20
|
+
loadScript.type = 'module';
|
|
21
|
+
loadScript.textContent = `
|
|
22
|
+
import SignalsmithStretch from '${pathPrefix}/signalsmithStretch.mjs';
|
|
23
|
+
window.${globalTag} = SignalsmithStretch;
|
|
24
|
+
window.postMessage('${eventTitle}');
|
|
25
|
+
`;
|
|
26
|
+
function onScriptLoaded(event) {
|
|
27
|
+
if (event.data !== eventTitle) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
resolve();
|
|
31
|
+
window.removeEventListener('message', onScriptLoaded);
|
|
32
|
+
}
|
|
33
|
+
window.addEventListener('message', onScriptLoaded);
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
var _default = exports.default = LoadCustomWasm;
|
|
37
|
+
//# sourceMappingURL=LoadCustomWasm.js.map
|
package/lib/commonjs/web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["globalTag","exports","eventTitle","globalWasmPromise","LoadCustomWasm","pathPrefix","window","Promise","resolve","loadScript","document","createElement","head","appendChild","type","textContent","onScriptLoaded","event","data","removeEventListener","addEventListener","_default","default"],"sourceRoot":"../../../../../src","sources":["web-core/custom/wasm-audio-bufffer-source-node-stretcher/LoadCustomWasm.ts"],"mappings":";;;;;;AAAO,MAAMA,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,kBAAkB;AAC3C,MAAME,UAAU,GAAG,sBAAsB;AAElC,IAAIC,iBAAuC,GAAAF,OAAA,CAAAE,iBAAA,GAAG,IAAI;AAEzD,MAAMC,cAAc,GAAG,MAAAA,CAAOC,UAAkB,GAAG,EAAE,KAAK;EACxD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;IACjC,OAAO,IAAI;EACb;EAEA,IAAIH,iBAAiB,EAAE;IACrB,OAAOA,iBAAiB;EAC1B;EAEAF,OAAA,CAAAE,iBAAA,GAAAA,iBAAiB,GAAG,IAAII,OAAO,CAAQC,OAAO,IAAK;IACjD,MAAMC,UAAU,GAAGC,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;IACnDD,QAAQ,CAACE,IAAI,CAACC,WAAW,CAACJ,UAAU,CAAC;IACrCA,UAAU,CAACK,IAAI,GAAG,QAAQ;IAE1BL,UAAU,CAACM,WAAW,GAAG;AAC7B,wCAAwCV,UAAU;AAClD,eAAeL,SAAS;AACxB,4BAA4BE,UAAU;AACtC,KAAK;IAED,SAASc,cAAcA,CAACC,KAA2B,EAAE;MACnD,IAAIA,KAAK,CAACC,IAAI,KAAKhB,UAAU,EAAE;QAC7B;MACF;MAEAM,OAAO,CAAC,CAAC;MACTF,MAAM,CAACa,mBAAmB,CAAC,SAAS,EAAEH,cAAc,CAAC;IACvD;IAEAV,MAAM,CAACc,gBAAgB,CAAC,SAAS,EAAEJ,cAAc,CAAC;EACpD,CAAC,CAAC;AACJ,CAAC;AAAC,IAAAK,QAAA,GAAApB,OAAA,CAAAqB,OAAA,GAEalB,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["module","exports","SignalsmithStretch","_scriptName","document","currentScript","src","undefined","moduleArg","moduleRtn","Module","readyPromiseResolve","readyPromiseReject","readyPromise","Promise","resolve","reject","ENVIRONMENT_IS_WEB","window","ENVIRONMENT_IS_WORKER","WorkerGlobalScope","ENVIRONMENT_IS_NODE","process","versions","node","type","ENVIRONMENT_IS_SHELL","crypto","globalThis","getRandomValues","array","i","length","Math","random","performance","now","_","Date","moduleOverrides","Object","assign","arguments_","quit_","status","toThrow","scriptDirectory","readAsync","readBinary","f","readbuffer","Uint8Array","data","read","assert","clearTimeout","id","setTimeout","arguments","scriptArgs","quit","ExitStatus","toLog","stack","err","print","console","log","warn","error","printErr","self","location","href","startsWith","slice","replace","lastIndexOf","url","xhr","XMLHttpRequest","open","responseType","send","response","fetch","credentials","ok","arrayBuffer","Error","out","bind","wasmBinary","wasmMemory","ABORT","EXITSTATUS","HEAP8","HEAPU8","HEAP16","HEAPU16","HEAP32","HEAPU32","HEAPF32","HEAP64","HEAPU64","HEAPF64","runtimeInitialized","updateMemoryViews","b","buffer","Int8Array","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array","preRun","initRuntime","wasmExports","preMain","postRun","runDependencies","dependenciesFulfilled","addRunDependency","removeRunDependency","callback","abort","what","e","WebAssembly","RuntimeError","wasmBinaryFile","getBinarySync","file","binary","tryParseAsDataURI","getWasmBinary","binaryFile","instantiateArrayBuffer","imports","instance","instantiate","reason","instantiateAsync","getWasmImports","a","wasmImports","createWasm","receiveInstance","receiveInstantiationResult","result","info","name","constructor","message","base64Decode","b64","b1","b2","j","bLength","output","base64ReverseLookup","charCodeAt","isDataURI","filename","dataURIPrefix","__abort_js","getHeapMax","alignMemory","size","alignment","ceil","abortOnCannotGrowMemory","requestedSize","growMemory","pages","byteLength","grow","_emscripten_resize_heap","oldSize","maxHeapSize","cutDown","overGrownHeapSize","min","newSize","max","replacement","initRandomFill","view","randomFill","_random_get","subarray","keepRuntimeAlive","_proc_exit","code","exitJS","implicit","handleException","UTF8Decoder","TextDecoder","UTF8ArrayToString","heapOrArray","idx","maxBytesToRead","NaN","endIdx","endPtr","decode","str","u0","String","fromCharCode","u1","u2","ch","UTF8ToString","ptr","c","___wasm_call_ctors","_setBuffers","_blockSamples","_intervalSamples","_inputLatency","_outputLatency","_reset","_presetDefault","_presetCheaper","_configure","_setTransposeFactor","_setTransposeSemitones","_seek","_process","_flush","_main","callMain","entryFunction","argc","argv","ret","run","doRun","noInitialRun","registerWorkletProcessor","audioNodeKey","WasmProcessor","AudioWorkletProcessor","options","wasmReady","wasmModule","channels","buffersIn","buffersOut","audioBuffers","audioBuffersStart","audioBuffersEnd","timeIntervalSamples","sampleRate","timeIntervalCounter","timeMap","active","input","rate","semitones","loopStart","loopEnd","remoteMethods","configure","config","blockChanged","blockMs","intervalMs","setUpdateInterval","seconds","stop","when","currentTime","schedule","start","offset","duration","obj","outputLatencySeconds","objIn","adjustPrevious","outputTime","latestSegment","existingIndex","findIndex","segment","splice","insertAt","push","previous","currentMapSegment","shift","inputTime","port","postMessage","dropBuffers","toSeconds","buffers","flat","map","value","end","transfer","first","endSamples","endSeconds","forEach","addBuffers","sampleBuffers","concat","pendingMessages","onmessage","event","then","numberOfOutputs","outputChannelCount","messageId","method","methodArgCounts","key","tonalityHz","blockSamples","round","intervalSamples","updateBuffers","inputLatencySeconds","bufferLength","lengthBytes","bufferPointer","inputList","outputList","parameters","channel","fill","outputBlockSize","memory","inputs","channelBuffer","set","loopLength","inputSamplesEnd","audioBufferIndex","audioSamples","inputSamples","audioBuffer","startIndex","bufferEnd","count","registerProcessor","promiseKey","Symbol","createNode","audioContext","audioNode","numberOfInputs","AudioWorkletNode","moduleUrl","moduleCode","JSON","stringify","URL","createObjectURL","Blob","audioWorklet","addModule","requestMap","idCounter","timeUpdateCallback","post","remoteMethodKeys","keys","argCount","args","pop","define","_export"],"sourceRoot":"../../../../../../src","sources":["web-core/custom/wasm-audio-bufffer-source-node-stretcher/signalsmithStretch/SignalsmithStretch.mjs"],"mappings":"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","ignoreList":[]}
|
|
@@ -42,8 +42,8 @@ class AudioBufferSourceNodeStandard {
|
|
|
42
42
|
this.hasBeenStarted = true;
|
|
43
43
|
this.node.start(when, offset, duration);
|
|
44
44
|
}
|
|
45
|
-
stop(when
|
|
46
|
-
if (when < 0) {
|
|
45
|
+
stop(when) {
|
|
46
|
+
if (when !== undefined && when < 0) {
|
|
47
47
|
throw new RangeError(`when must be a finite non-negative number: ${when}`);
|
|
48
48
|
}
|
|
49
49
|
if (!this.hasBeenStarted) {
|
|
@@ -108,6 +108,12 @@ class AudioBufferSourceNodeStandard {
|
|
|
108
108
|
set loopSkip(value) {
|
|
109
109
|
this._loopSkip = value;
|
|
110
110
|
}
|
|
111
|
+
get onEnded() {
|
|
112
|
+
return this.node.onended;
|
|
113
|
+
}
|
|
114
|
+
set onEnded(callback) {
|
|
115
|
+
this.node.onended = callback;
|
|
116
|
+
}
|
|
111
117
|
get onLoopEnded() {
|
|
112
118
|
return this._onLoopEnded;
|
|
113
119
|
}
|