react-native-audio-api 0.3.0-rc2 → 0.3.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/CMakeLists.txt +2 -2
- package/android/src/main/cpp/AudioAPIInstaller/AudioAPIInstaller.cpp +3 -9
- package/android/src/main/cpp/AudioAPIInstaller/AudioAPIInstaller.h +0 -2
- package/common/cpp/AudioAPIInstaller/AudioAPIInstallerHostObject.h +25 -28
- package/common/cpp/HostObjects/AudioBufferHostObject.h +79 -13
- package/common/cpp/HostObjects/AudioBufferSourceNodeHostObject.h +93 -14
- package/common/cpp/HostObjects/AudioContextHostObject.h +10 -21
- package/common/cpp/HostObjects/AudioDestinationNodeHostObject.h +3 -16
- package/common/cpp/HostObjects/AudioNodeHostObject.h +48 -11
- package/common/cpp/HostObjects/AudioParamHostObject.h +56 -14
- package/common/cpp/HostObjects/AudioScheduledSourceNodeHostObject.h +23 -16
- package/common/cpp/HostObjects/BaseAudioContextHostObject.h +131 -14
- package/common/cpp/HostObjects/BiquadFilterNodeHostObject.h +76 -18
- package/common/cpp/HostObjects/Constants.h +2 -0
- package/common/cpp/HostObjects/GainNodeHostObject.h +10 -15
- package/common/cpp/HostObjects/OscillatorNodeHostObject.h +40 -17
- package/common/cpp/HostObjects/PeriodicWaveHostObject.h +4 -17
- package/common/cpp/HostObjects/StereoPannerNodeHostObject.h +10 -17
- package/common/cpp/core/AudioBufferSourceNode.cpp +180 -73
- package/common/cpp/core/AudioBufferSourceNode.h +41 -1
- package/common/cpp/core/AudioDestinationNode.h +1 -1
- package/common/cpp/core/AudioScheduledSourceNode.cpp +86 -21
- package/common/cpp/core/AudioScheduledSourceNode.h +12 -4
- package/common/cpp/core/OscillatorNode.cpp +7 -2
- package/common/cpp/jsi/JsiHostObject.cpp +85 -0
- package/common/cpp/jsi/JsiHostObject.h +94 -0
- package/common/cpp/{utils → jsi}/JsiPromise.cpp +10 -9
- package/common/cpp/jsi/JsiPromise.h +48 -0
- package/common/cpp/utils/AudioUtils.cpp +26 -0
- package/common/cpp/utils/AudioUtils.h +16 -0
- package/ios/AudioAPIModule.mm +2 -6
- package/ios/AudioDecoder/AudioDecoder.m +9 -10
- package/ios/AudioPlayer/AudioPlayer.m +2 -1
- package/lib/module/core/AudioBufferSourceNode.js +15 -0
- package/lib/module/core/AudioBufferSourceNode.js.map +1 -1
- package/lib/module/index.js +18 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/core/AudioBufferSourceNode.d.ts +7 -0
- package/lib/typescript/core/AudioBufferSourceNode.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +6 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/interfaces.d.ts +4 -0
- package/lib/typescript/interfaces.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/core/AudioBufferSourceNode.ts +23 -0
- package/src/index.ts +24 -0
- package/src/interfaces.ts +5 -0
- package/common/cpp/AudioAPIInstaller/AudioAPIInstallerHostObject.cpp +0 -58
- package/common/cpp/AudioAPIInstaller/AudioAPIInstallerWrapper.h +0 -38
- package/common/cpp/AudioAPIInstaller/android/AudioAPIInstallerWrapper.cpp +0 -16
- package/common/cpp/AudioAPIInstaller/ios/AudioAPIInstallerWrapper.cpp +0 -12
- package/common/cpp/HostObjects/AudioBufferHostObject.cpp +0 -150
- package/common/cpp/HostObjects/AudioBufferSourceNodeHostObject.cpp +0 -79
- package/common/cpp/HostObjects/AudioContextHostObject.cpp +0 -55
- package/common/cpp/HostObjects/AudioDestinationNodeHostObject.cpp +0 -33
- package/common/cpp/HostObjects/AudioNodeHostObject.cpp +0 -102
- package/common/cpp/HostObjects/AudioParamHostObject.cpp +0 -115
- package/common/cpp/HostObjects/AudioScheduledSourceNodeHostObject.cpp +0 -73
- package/common/cpp/HostObjects/BaseAudioContextHostObject.cpp +0 -250
- package/common/cpp/HostObjects/BiquadFilterNodeHostObject.cpp +0 -125
- package/common/cpp/HostObjects/GainNodeHostObject.cpp +0 -41
- package/common/cpp/HostObjects/OscillatorNodeHostObject.cpp +0 -88
- package/common/cpp/HostObjects/PeriodicWaveHostObject.cpp +0 -33
- package/common/cpp/HostObjects/StereoPannerNodeHostObject.cpp +0 -41
- package/common/cpp/utils/JsiPromise.h +0 -48
- package/common/cpp/wrappers/AudioBufferSourceNodeWrapper.cpp +0 -45
- package/common/cpp/wrappers/AudioBufferSourceNodeWrapper.h +0 -26
- package/common/cpp/wrappers/AudioBufferWrapper.cpp +0 -46
- package/common/cpp/wrappers/AudioBufferWrapper.h +0 -30
- package/common/cpp/wrappers/AudioContextWrapper.cpp +0 -17
- package/common/cpp/wrappers/AudioContextWrapper.h +0 -19
- package/common/cpp/wrappers/AudioDestinationNodeWrapper.h +0 -16
- package/common/cpp/wrappers/AudioNodeWrapper.cpp +0 -37
- package/common/cpp/wrappers/AudioNodeWrapper.h +0 -25
- package/common/cpp/wrappers/AudioParamWrapper.cpp +0 -42
- package/common/cpp/wrappers/AudioParamWrapper.h +0 -25
- package/common/cpp/wrappers/AudioScheduledSourceNodeWrapper.cpp +0 -23
- package/common/cpp/wrappers/AudioScheduledSourceNodeWrapper.h +0 -23
- package/common/cpp/wrappers/BaseAudioContextWrapper.cpp +0 -83
- package/common/cpp/wrappers/BaseAudioContextWrapper.h +0 -51
- package/common/cpp/wrappers/BiquadFilterNodeWrapper.cpp +0 -60
- package/common/cpp/wrappers/BiquadFilterNodeWrapper.h +0 -37
- package/common/cpp/wrappers/GainNodeWrapper.cpp +0 -14
- package/common/cpp/wrappers/GainNodeWrapper.h +0 -20
- package/common/cpp/wrappers/OscillatorNodeWrapper.cpp +0 -44
- package/common/cpp/wrappers/OscillatorNodeWrapper.h +0 -31
- package/common/cpp/wrappers/PeriodicWaveWrapper.h +0 -17
- package/common/cpp/wrappers/StereoPannerNodeWrapper.cpp +0 -16
- package/common/cpp/wrappers/StereoPannerNodeWrapper.h +0 -21
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <jsi/jsi.h>
|
|
4
|
+
#include <memory>
|
|
5
|
+
#include <string>
|
|
6
|
+
#include <unordered_map>
|
|
7
|
+
#include <utility>
|
|
8
|
+
#include <vector>
|
|
9
|
+
|
|
10
|
+
#define JSI_HOST_FUNCTION(NAME) \
|
|
11
|
+
jsi::Value NAME( \
|
|
12
|
+
jsi::Runtime &runtime, \
|
|
13
|
+
const jsi::Value &thisVal, \
|
|
14
|
+
const jsi::Value *args, \
|
|
15
|
+
size_t count)
|
|
16
|
+
|
|
17
|
+
#define JSI_EXPORT_FUNCTION(CLASS, FUNCTION) \
|
|
18
|
+
std::make_pair( \
|
|
19
|
+
std::string(#FUNCTION), \
|
|
20
|
+
static_cast<jsi::Value (JsiHostObject::*)( \
|
|
21
|
+
jsi::Runtime &, const jsi::Value &, const jsi::Value *, size_t)>( \
|
|
22
|
+
&CLASS::FUNCTION))
|
|
23
|
+
|
|
24
|
+
#define JSI_PROPERTY_GETTER(name) jsi::Value name(jsi::Runtime &runtime)
|
|
25
|
+
|
|
26
|
+
#define JSI_EXPORT_PROPERTY_GETTER(CLASS, FUNCTION) \
|
|
27
|
+
std::make_pair( \
|
|
28
|
+
std::string(#FUNCTION), \
|
|
29
|
+
static_cast<jsi::Value (JsiHostObject::*)(jsi::Runtime &)>( \
|
|
30
|
+
&CLASS::FUNCTION))
|
|
31
|
+
|
|
32
|
+
#define JSI_PROPERTY_SETTER(name) \
|
|
33
|
+
void name(jsi::Runtime &runtime, const jsi::Value &value)
|
|
34
|
+
|
|
35
|
+
#define JSI_EXPORT_PROPERTY_SETTER(CLASS, FUNCTION) \
|
|
36
|
+
std::make_pair( \
|
|
37
|
+
std::string(#FUNCTION), \
|
|
38
|
+
static_cast<void (JsiHostObject::*)( \
|
|
39
|
+
jsi::Runtime &, const jsi::Value &)>(&CLASS::FUNCTION))
|
|
40
|
+
|
|
41
|
+
namespace audioapi {
|
|
42
|
+
|
|
43
|
+
using namespace facebook;
|
|
44
|
+
|
|
45
|
+
class JsiHostObject : public jsi::HostObject {
|
|
46
|
+
public:
|
|
47
|
+
JsiHostObject();
|
|
48
|
+
|
|
49
|
+
std::vector<jsi::PropNameID> getPropertyNames(jsi::Runtime &rt) override;
|
|
50
|
+
|
|
51
|
+
jsi::Value get(jsi::Runtime &runtime, const jsi::PropNameID &name) override;
|
|
52
|
+
|
|
53
|
+
void set(
|
|
54
|
+
jsi::Runtime &runtime,
|
|
55
|
+
const jsi::PropNameID &name,
|
|
56
|
+
const jsi::Value &value) override;
|
|
57
|
+
|
|
58
|
+
template <typename... Args>
|
|
59
|
+
void addGetters(Args... args) {
|
|
60
|
+
(propertyGetters_->insert(args), ...);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
template <typename... Args>
|
|
64
|
+
void addSetters(Args... args) {
|
|
65
|
+
(propertySetters_->insert(args), ...);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
template <typename... Args>
|
|
69
|
+
void addFunctions(Args... args) {
|
|
70
|
+
(propertyFunctions_->insert(args), ...);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
protected:
|
|
74
|
+
std::unique_ptr<std::unordered_map<
|
|
75
|
+
std::string,
|
|
76
|
+
jsi::Value (JsiHostObject::*)(jsi::Runtime &)>>
|
|
77
|
+
propertyGetters_;
|
|
78
|
+
|
|
79
|
+
std::unique_ptr<std::unordered_map<
|
|
80
|
+
std::string,
|
|
81
|
+
jsi::Value (JsiHostObject::*)(
|
|
82
|
+
jsi::Runtime &,
|
|
83
|
+
const jsi::Value &,
|
|
84
|
+
const jsi::Value *,
|
|
85
|
+
size_t)>>
|
|
86
|
+
propertyFunctions_;
|
|
87
|
+
|
|
88
|
+
std::unique_ptr<std::unordered_map<
|
|
89
|
+
std::string,
|
|
90
|
+
void (JsiHostObject::*)(jsi::Runtime &, const jsi::Value &)>>
|
|
91
|
+
propertySetters_;
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
} // namespace audioapi
|
|
@@ -4,17 +4,18 @@
|
|
|
4
4
|
#include <jsi/jsi.h>
|
|
5
5
|
#include <functional>
|
|
6
6
|
|
|
7
|
-
namespace
|
|
7
|
+
namespace audioapi {
|
|
8
8
|
|
|
9
9
|
using namespace facebook;
|
|
10
10
|
|
|
11
11
|
jsi::Value PromiseVendor::createPromise(
|
|
12
|
-
std::function<void(std::shared_ptr<Promise>)>
|
|
13
|
-
if (
|
|
14
|
-
throw
|
|
12
|
+
const std::function<void(std::shared_ptr<Promise>)> &function) {
|
|
13
|
+
if (runtime_ == nullptr) {
|
|
14
|
+
throw std::runtime_error("Runtime was null!");
|
|
15
15
|
}
|
|
16
|
-
|
|
17
|
-
auto
|
|
16
|
+
|
|
17
|
+
auto &runtime = *runtime_;
|
|
18
|
+
auto callInvoker = callInvoker_;
|
|
18
19
|
|
|
19
20
|
// get Promise constructor
|
|
20
21
|
auto promiseCtor = runtime.global().getPropertyAsFunction(runtime, "Promise");
|
|
@@ -24,7 +25,7 @@ jsi::Value PromiseVendor::createPromise(
|
|
|
24
25
|
runtime,
|
|
25
26
|
jsi::PropNameID::forUtf8(runtime, "runPromise"),
|
|
26
27
|
2,
|
|
27
|
-
[callInvoker,
|
|
28
|
+
[callInvoker, function](
|
|
28
29
|
jsi::Runtime &runtime,
|
|
29
30
|
const jsi::Value &thisValue,
|
|
30
31
|
const jsi::Value *arguments,
|
|
@@ -52,7 +53,7 @@ jsi::Value PromiseVendor::createPromise(
|
|
|
52
53
|
};
|
|
53
54
|
|
|
54
55
|
auto promise = std::make_shared<Promise>(resolveWrapper, rejectWrapper);
|
|
55
|
-
|
|
56
|
+
function(promise);
|
|
56
57
|
|
|
57
58
|
return jsi::Value::undefined();
|
|
58
59
|
});
|
|
@@ -61,4 +62,4 @@ jsi::Value PromiseVendor::createPromise(
|
|
|
61
62
|
return promiseCtor.callAsConstructor(runtime, runPromise);
|
|
62
63
|
}
|
|
63
64
|
|
|
64
|
-
} // namespace
|
|
65
|
+
} // namespace audioapi
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <ReactCommon/CallInvoker.h>
|
|
4
|
+
#include <jsi/jsi.h>
|
|
5
|
+
#include <memory>
|
|
6
|
+
#include <string>
|
|
7
|
+
#include <utility>
|
|
8
|
+
|
|
9
|
+
namespace audioapi {
|
|
10
|
+
|
|
11
|
+
using namespace facebook;
|
|
12
|
+
|
|
13
|
+
class Promise {
|
|
14
|
+
public:
|
|
15
|
+
Promise(
|
|
16
|
+
std::function<void(jsi::Value)> resolve,
|
|
17
|
+
std::function<void(const std::string &)> reject)
|
|
18
|
+
: resolve_(std::move(resolve)), reject_(std::move(reject)) {}
|
|
19
|
+
|
|
20
|
+
void resolve(jsi::Value &&value) {
|
|
21
|
+
resolve_(std::forward<jsi::Value>(value));
|
|
22
|
+
}
|
|
23
|
+
void reject(const std::string &errorMessage) {
|
|
24
|
+
reject_(errorMessage);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
private:
|
|
28
|
+
std::function<void(jsi::Value)> resolve_;
|
|
29
|
+
std::function<void(const std::string &)> reject_;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
class PromiseVendor {
|
|
33
|
+
public:
|
|
34
|
+
PromiseVendor(
|
|
35
|
+
jsi::Runtime *runtime,
|
|
36
|
+
const std::shared_ptr<react::CallInvoker> &callInvoker)
|
|
37
|
+
: runtime_(runtime), callInvoker_(callInvoker) {}
|
|
38
|
+
|
|
39
|
+
public:
|
|
40
|
+
jsi::Value createPromise(
|
|
41
|
+
const std::function<void(std::shared_ptr<Promise>)> &function);
|
|
42
|
+
|
|
43
|
+
private:
|
|
44
|
+
jsi::Runtime *runtime_;
|
|
45
|
+
std::shared_ptr<react::CallInvoker> callInvoker_;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
} // namespace audioapi
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
#include "AudioUtils.h"
|
|
2
|
+
|
|
3
|
+
namespace audioapi::AudioUtils {
|
|
4
|
+
size_t timeToSampleFrame(double time, int sampleRate) {
|
|
5
|
+
return static_cast<size_t>(time * sampleRate);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
double sampleFrameToTime(int sampleFrame, int sampleRate) {
|
|
9
|
+
return static_cast<double>(sampleFrame) / sampleRate;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
float linearInterpolate(
|
|
13
|
+
const float *source,
|
|
14
|
+
size_t firstIndex,
|
|
15
|
+
size_t secondIndex,
|
|
16
|
+
float factor) {
|
|
17
|
+
if (firstIndex == secondIndex && firstIndex >= 1) {
|
|
18
|
+
return source[firstIndex] +
|
|
19
|
+
factor * (source[firstIndex] - source[firstIndex - 1]);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
return source[firstIndex] +
|
|
23
|
+
factor * (source[secondIndex] - source[firstIndex]);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
} // namespace audioapi::AudioUtils
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <cstddef>
|
|
4
|
+
|
|
5
|
+
namespace audioapi::AudioUtils {
|
|
6
|
+
size_t timeToSampleFrame(double time, int sampleRate);
|
|
7
|
+
|
|
8
|
+
double sampleFrameToTime(int sampleFrame, int sampleRate);
|
|
9
|
+
|
|
10
|
+
float linearInterpolate(
|
|
11
|
+
const float *source,
|
|
12
|
+
size_t firstIndex,
|
|
13
|
+
size_t secondIndex,
|
|
14
|
+
float factor);
|
|
15
|
+
|
|
16
|
+
} // namespace audioapi::AudioUtils
|
package/ios/AudioAPIModule.mm
CHANGED
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
#import <jsi/jsi.h>
|
|
8
8
|
|
|
9
9
|
#import "AudioAPIInstallerHostObject.h"
|
|
10
|
-
#import "AudioAPIInstallerWrapper.h"
|
|
11
10
|
|
|
12
11
|
@implementation AudioAPIModule
|
|
13
12
|
|
|
@@ -34,11 +33,8 @@ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(install)
|
|
|
34
33
|
|
|
35
34
|
auto &runtime = *jsRuntime;
|
|
36
35
|
|
|
37
|
-
auto
|
|
38
|
-
|
|
39
|
-
std::make_shared<audioapi::AudioAPIInstallerHostObject>(wrapper, jsRuntime, cxxBridge.jsCallInvoker);
|
|
40
|
-
auto object = jsi::Object::createFromHostObject(runtime, hostObject);
|
|
41
|
-
runtime.global().setProperty(runtime, "__AudioAPIInstaller", std::move(object));
|
|
36
|
+
auto hostObject = std::make_shared<audioapi::AudioAPIInstallerHostObject>(jsRuntime, cxxBridge.jsCallInvoker);
|
|
37
|
+
hostObject->install();
|
|
42
38
|
|
|
43
39
|
NSLog(@"Successfully installed JSI bindings for react-native-audio-api!");
|
|
44
40
|
return @true;
|
|
@@ -51,16 +51,15 @@
|
|
|
51
51
|
[[AVAudioPCMBuffer alloc] initWithPCMFormat:format frameCapacity:(AVAudioFrameCount)buffer.frameCapacity];
|
|
52
52
|
|
|
53
53
|
AVAudioConverterInputBlock inputBlock =
|
|
54
|
-
^AVAudioBuffer *(AVAudioPacketCount inNumberOfPackets, AVAudioConverterInputStatus *outStatus)
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
};
|
|
54
|
+
^AVAudioBuffer *(AVAudioPacketCount inNumberOfPackets, AVAudioConverterInputStatus *outStatus) {
|
|
55
|
+
if (buffer.frameLength > 0) {
|
|
56
|
+
*outStatus = AVAudioConverterInputStatus_HaveData;
|
|
57
|
+
return buffer;
|
|
58
|
+
} else {
|
|
59
|
+
*outStatus = AVAudioConverterInputStatus_NoDataNow;
|
|
60
|
+
return nil;
|
|
61
|
+
}
|
|
62
|
+
};
|
|
64
63
|
|
|
65
64
|
[converter convertToBuffer:convertedBuffer error:&error withInputFromBlock:inputBlock];
|
|
66
65
|
|
|
@@ -62,7 +62,8 @@
|
|
|
62
62
|
// which is safer to base our internal AudioBus sizes.
|
|
63
63
|
// Buut no documentation => no guarantee :)
|
|
64
64
|
// If something is crackling when it should play silence, start here 📻
|
|
65
|
-
double maxBufferDuration =
|
|
65
|
+
double maxBufferDuration =
|
|
66
|
+
fmax(0.02, fmax(self.audioSession.IOBufferDuration, self.audioSession.preferredIOBufferDuration));
|
|
66
67
|
return (int)(maxBufferDuration * self.audioSession.sampleRate + 1);
|
|
67
68
|
}
|
|
68
69
|
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import AudioScheduledSourceNode from './AudioScheduledSourceNode';
|
|
2
2
|
import AudioBuffer from './AudioBuffer';
|
|
3
|
+
import AudioParam from './AudioParam';
|
|
3
4
|
export default class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
4
5
|
constructor(context, node) {
|
|
5
6
|
super(context, node);
|
|
7
|
+
this.detune = new AudioParam(node.detune);
|
|
8
|
+
this.playbackRate = new AudioParam(node.playbackRate);
|
|
6
9
|
}
|
|
7
10
|
get buffer() {
|
|
8
11
|
const buffer = this.node.buffer;
|
|
@@ -24,5 +27,17 @@ export default class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
|
24
27
|
set loop(value) {
|
|
25
28
|
this.node.loop = value;
|
|
26
29
|
}
|
|
30
|
+
get loopStart() {
|
|
31
|
+
return this.node.loopStart;
|
|
32
|
+
}
|
|
33
|
+
set loopStart(value) {
|
|
34
|
+
this.node.loopStart = value;
|
|
35
|
+
}
|
|
36
|
+
get loopEnd() {
|
|
37
|
+
return this.node.loopEnd;
|
|
38
|
+
}
|
|
39
|
+
set loopEnd(value) {
|
|
40
|
+
this.node.loopEnd = value;
|
|
41
|
+
}
|
|
27
42
|
}
|
|
28
43
|
//# sourceMappingURL=AudioBufferSourceNode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AudioScheduledSourceNode","AudioBuffer","AudioBufferSourceNode","constructor","context","node","buffer","loop","value"],"sourceRoot":"../../../src","sources":["core/AudioBufferSourceNode.ts"],"mappings":"AACA,OAAOA,wBAAwB,MAAM,4BAA4B;AAEjE,OAAOC,WAAW,MAAM,eAAe;
|
|
1
|
+
{"version":3,"names":["AudioScheduledSourceNode","AudioBuffer","AudioParam","AudioBufferSourceNode","constructor","context","node","detune","playbackRate","buffer","loop","value","loopStart","loopEnd"],"sourceRoot":"../../../src","sources":["core/AudioBufferSourceNode.ts"],"mappings":"AACA,OAAOA,wBAAwB,MAAM,4BAA4B;AAEjE,OAAOC,WAAW,MAAM,eAAe;AACvC,OAAOC,UAAU,MAAM,cAAc;AAErC,eAAe,MAAMC,qBAAqB,SAASH,wBAAwB,CAAC;EAI1EI,WAAWA,CAACC,OAAyB,EAAEC,IAA4B,EAAE;IACnE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIL,UAAU,CAACI,IAAI,CAACC,MAAM,CAAC;IACzC,IAAI,CAACC,YAAY,GAAG,IAAIN,UAAU,CAACI,IAAI,CAACE,YAAY,CAAC;EACvD;EAEA,IAAWC,MAAMA,CAAA,EAAuB;IACtC,MAAMA,MAAM,GAAI,IAAI,CAACH,IAAI,CAA4BG,MAAM;IAC3D,IAAI,CAACA,MAAM,EAAE;MACX,OAAO,IAAI;IACb;IACA,OAAO,IAAIR,WAAW,CAACQ,MAAM,CAAC;EAChC;EAEA,IAAWA,MAAMA,CAACA,MAA0B,EAAE;IAC5C,IAAI,CAACA,MAAM,EAAE;MACV,IAAI,CAACH,IAAI,CAA4BG,MAAM,GAAG,IAAI;MACnD;IACF;IAEC,IAAI,CAACH,IAAI,CAA4BG,MAAM,GAAGA,MAAM,CAACA,MAAM;EAC9D;EAEA,IAAWC,IAAIA,CAAA,EAAY;IACzB,OAAQ,IAAI,CAACJ,IAAI,CAA4BI,IAAI;EACnD;EAEA,IAAWA,IAAIA,CAACC,KAAc,EAAE;IAC7B,IAAI,CAACL,IAAI,CAA4BI,IAAI,GAAGC,KAAK;EACpD;EAEA,IAAWC,SAASA,CAAA,EAAW;IAC7B,OAAQ,IAAI,CAACN,IAAI,CAA4BM,SAAS;EACxD;EAEA,IAAWA,SAASA,CAACD,KAAa,EAAE;IACjC,IAAI,CAACL,IAAI,CAA4BM,SAAS,GAAGD,KAAK;EACzD;EAEA,IAAWE,OAAOA,CAAA,EAAW;IAC3B,OAAQ,IAAI,CAACP,IAAI,CAA4BO,OAAO;EACtD;EAEA,IAAWA,OAAOA,CAACF,KAAa,EAAE;IAC/B,IAAI,CAACL,IAAI,CAA4BO,OAAO,GAAGF,KAAK;EACvD;AACF","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export class AudioBuffer {
|
|
2
|
+
/** @internal */
|
|
3
|
+
|
|
2
4
|
constructor(buffer) {
|
|
3
5
|
this.buffer = buffer;
|
|
4
6
|
this.length = buffer.length;
|
|
@@ -81,6 +83,8 @@ export class AudioScheduledSourceNode extends AudioNode {
|
|
|
81
83
|
export class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
82
84
|
constructor(context, node) {
|
|
83
85
|
super(context, node);
|
|
86
|
+
this.detune = new AudioParam(node.detune);
|
|
87
|
+
this.playbackRate = new AudioParam(node.playbackRate);
|
|
84
88
|
}
|
|
85
89
|
get buffer() {
|
|
86
90
|
const buffer = this.node.buffer;
|
|
@@ -102,6 +106,18 @@ export class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
|
102
106
|
set loop(value) {
|
|
103
107
|
this.node.loop = value;
|
|
104
108
|
}
|
|
109
|
+
get loopStart() {
|
|
110
|
+
return this.node.loopStart;
|
|
111
|
+
}
|
|
112
|
+
set loopStart(value) {
|
|
113
|
+
this.node.loopStart = value;
|
|
114
|
+
}
|
|
115
|
+
get loopEnd() {
|
|
116
|
+
return this.node.loopEnd;
|
|
117
|
+
}
|
|
118
|
+
set loopEnd(value) {
|
|
119
|
+
this.node.loopEnd = value;
|
|
120
|
+
}
|
|
105
121
|
}
|
|
106
122
|
export class AudioDestinationNode extends AudioNode {
|
|
107
123
|
constructor(context, node) {
|
|
@@ -153,6 +169,8 @@ export class BiquadFilterNode extends AudioNode {
|
|
|
153
169
|
}
|
|
154
170
|
}
|
|
155
171
|
export class PeriodicWave {
|
|
172
|
+
/** @internal */
|
|
173
|
+
|
|
156
174
|
constructor(periodicWave) {
|
|
157
175
|
this.periodicWave = periodicWave;
|
|
158
176
|
}
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AudioBuffer","constructor","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","Error","Array","from","copyFromChannel","destination","channelNumber","startInChannel","Float32Array","copyToChannel","source","AudioNode","context","node","numberOfInputs","numberOfOutputs","channelCount","channelCountMode","channelInterpretation","connect","disconnect","AudioScheduledSourceNode","hasBeenStarted","start","when","RangeError","stop","AudioBufferSourceNode","loop","value","AudioDestinationNode","AudioParam","param","defaultValue","minValue","maxValue","setValueAtTime","startTime","linearRampToValueAtTime","endTime","exponentialRampToValueAtTime","BiquadFilterNode","biquadFilter","frequency","detune","Q","gain","type","getFrequencyResponse","frequencyArray","magResponseOutput","phaseResponseOutput","PeriodicWave","periodicWave","OscillatorNode","setPeriodicWave","wave","GainNode","StereoPannerNode","pan","AudioContext","window","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","createBuffer","numOfChannels","createPeriodicWave","real","imag","constraints","decodeAudioDataSource","arrayBuffer","fetch","then","response","decodeAudioData","close","ContextState","OscillatorType","BiquadFilterType","ChannelCountMode","ChannelInterpretation"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["AudioBuffer","constructor","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","Error","Array","from","copyFromChannel","destination","channelNumber","startInChannel","Float32Array","copyToChannel","source","AudioNode","context","node","numberOfInputs","numberOfOutputs","channelCount","channelCountMode","channelInterpretation","connect","disconnect","AudioScheduledSourceNode","hasBeenStarted","start","when","RangeError","stop","AudioBufferSourceNode","detune","AudioParam","playbackRate","loop","value","loopStart","loopEnd","AudioDestinationNode","param","defaultValue","minValue","maxValue","setValueAtTime","startTime","linearRampToValueAtTime","endTime","exponentialRampToValueAtTime","BiquadFilterNode","biquadFilter","frequency","Q","gain","type","getFrequencyResponse","frequencyArray","magResponseOutput","phaseResponseOutput","PeriodicWave","periodicWave","OscillatorNode","setPeriodicWave","wave","GainNode","StereoPannerNode","pan","AudioContext","window","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","createBuffer","numOfChannels","createPeriodicWave","real","imag","constraints","decodeAudioDataSource","arrayBuffer","fetch","then","response","decodeAudioData","close","ContextState","OscillatorType","BiquadFilterType","ChannelCountMode","ChannelInterpretation"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,11 +2,18 @@ import { IAudioBufferSourceNode } from '../interfaces';
|
|
|
2
2
|
import AudioScheduledSourceNode from './AudioScheduledSourceNode';
|
|
3
3
|
import BaseAudioContext from './BaseAudioContext';
|
|
4
4
|
import AudioBuffer from './AudioBuffer';
|
|
5
|
+
import AudioParam from './AudioParam';
|
|
5
6
|
export default class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
7
|
+
readonly playbackRate: AudioParam;
|
|
8
|
+
readonly detune: AudioParam;
|
|
6
9
|
constructor(context: BaseAudioContext, node: IAudioBufferSourceNode);
|
|
7
10
|
get buffer(): AudioBuffer | null;
|
|
8
11
|
set buffer(buffer: AudioBuffer | null);
|
|
9
12
|
get loop(): boolean;
|
|
10
13
|
set loop(value: boolean);
|
|
14
|
+
get loopStart(): number;
|
|
15
|
+
set loopStart(value: number);
|
|
16
|
+
get loopEnd(): number;
|
|
17
|
+
set loopEnd(value: number);
|
|
11
18
|
}
|
|
12
19
|
//# sourceMappingURL=AudioBufferSourceNode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AudioBufferSourceNode.d.ts","sourceRoot":"","sources":["../../../src/core/AudioBufferSourceNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"AudioBufferSourceNode.d.ts","sourceRoot":"","sources":["../../../src/core/AudioBufferSourceNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,wBAAwB;IACzE,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;gBAEhB,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,sBAAsB;IAOnE,IAAW,MAAM,IAAI,WAAW,GAAG,IAAI,CAMtC;IAED,IAAW,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,EAO3C;IAED,IAAW,IAAI,IAAI,OAAO,CAEzB;IAED,IAAW,IAAI,CAAC,KAAK,EAAE,OAAO,EAE7B;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,EAEjC;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAE/B;CACF"}
|
|
@@ -4,7 +4,6 @@ export declare class AudioBuffer {
|
|
|
4
4
|
readonly duration: number;
|
|
5
5
|
readonly sampleRate: number;
|
|
6
6
|
readonly numberOfChannels: number;
|
|
7
|
-
readonly buffer: globalThis.AudioBuffer;
|
|
8
7
|
constructor(buffer: globalThis.AudioBuffer);
|
|
9
8
|
getChannelData(channel: number): number[];
|
|
10
9
|
copyFromChannel(destination: number[], channelNumber: number, startInChannel?: number): void;
|
|
@@ -29,11 +28,17 @@ export declare class AudioScheduledSourceNode extends AudioNode {
|
|
|
29
28
|
stop(when?: number): void;
|
|
30
29
|
}
|
|
31
30
|
export declare class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
31
|
+
readonly playbackRate: AudioParam;
|
|
32
|
+
readonly detune: AudioParam;
|
|
32
33
|
constructor(context: AudioContext, node: globalThis.AudioBufferSourceNode);
|
|
33
34
|
get buffer(): AudioBuffer | null;
|
|
34
35
|
set buffer(buffer: AudioBuffer | null);
|
|
35
36
|
get loop(): boolean;
|
|
36
37
|
set loop(value: boolean);
|
|
38
|
+
get loopStart(): number;
|
|
39
|
+
set loopStart(value: number);
|
|
40
|
+
get loopEnd(): number;
|
|
41
|
+
set loopEnd(value: number);
|
|
37
42
|
}
|
|
38
43
|
export declare class AudioDestinationNode extends AudioNode {
|
|
39
44
|
constructor(context: AudioContext, node: globalThis.AudioDestinationNode);
|
|
@@ -61,7 +66,6 @@ export declare class BiquadFilterNode extends AudioNode {
|
|
|
61
66
|
getFrequencyResponse(frequencyArray: number[], magResponseOutput: number[], phaseResponseOutput: number[]): void;
|
|
62
67
|
}
|
|
63
68
|
export declare class PeriodicWave {
|
|
64
|
-
readonly periodicWave: globalThis.PeriodicWave;
|
|
65
69
|
constructor(periodicWave: globalThis.PeriodicWave);
|
|
66
70
|
}
|
|
67
71
|
export declare class OscillatorNode extends AudioScheduledSourceNode {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAErE,qBAAa,WAAW;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,6 +55,10 @@ export interface IOscillatorNode extends IAudioScheduledSourceNode {
|
|
|
55
55
|
export interface IAudioBufferSourceNode extends IAudioScheduledSourceNode {
|
|
56
56
|
buffer: IAudioBuffer | null;
|
|
57
57
|
loop: boolean;
|
|
58
|
+
loopStart: number;
|
|
59
|
+
loopEnd: number;
|
|
60
|
+
detune: IAudioParam;
|
|
61
|
+
playbackRate: IAudioParam;
|
|
58
62
|
}
|
|
59
63
|
export interface IAudioBuffer {
|
|
60
64
|
readonly length: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-audio-api",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "react-native-audio-api provides system for controlling audio in React Native environment compatible with Web Audio API specification",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
@@ -2,10 +2,17 @@ import { IAudioBufferSourceNode } from '../interfaces';
|
|
|
2
2
|
import AudioScheduledSourceNode from './AudioScheduledSourceNode';
|
|
3
3
|
import BaseAudioContext from './BaseAudioContext';
|
|
4
4
|
import AudioBuffer from './AudioBuffer';
|
|
5
|
+
import AudioParam from './AudioParam';
|
|
5
6
|
|
|
6
7
|
export default class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
8
|
+
readonly playbackRate: AudioParam;
|
|
9
|
+
readonly detune: AudioParam;
|
|
10
|
+
|
|
7
11
|
constructor(context: BaseAudioContext, node: IAudioBufferSourceNode) {
|
|
8
12
|
super(context, node);
|
|
13
|
+
|
|
14
|
+
this.detune = new AudioParam(node.detune);
|
|
15
|
+
this.playbackRate = new AudioParam(node.playbackRate);
|
|
9
16
|
}
|
|
10
17
|
|
|
11
18
|
public get buffer(): AudioBuffer | null {
|
|
@@ -32,4 +39,20 @@ export default class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
|
32
39
|
public set loop(value: boolean) {
|
|
33
40
|
(this.node as IAudioBufferSourceNode).loop = value;
|
|
34
41
|
}
|
|
42
|
+
|
|
43
|
+
public get loopStart(): number {
|
|
44
|
+
return (this.node as IAudioBufferSourceNode).loopStart;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
public set loopStart(value: number) {
|
|
48
|
+
(this.node as IAudioBufferSourceNode).loopStart = value;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public get loopEnd(): number {
|
|
52
|
+
return (this.node as IAudioBufferSourceNode).loopEnd;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
public set loopEnd(value: number) {
|
|
56
|
+
(this.node as IAudioBufferSourceNode).loopEnd = value;
|
|
57
|
+
}
|
|
35
58
|
}
|
package/src/index.ts
CHANGED
|
@@ -6,6 +6,7 @@ export class AudioBuffer {
|
|
|
6
6
|
readonly sampleRate: number;
|
|
7
7
|
readonly numberOfChannels: number;
|
|
8
8
|
|
|
9
|
+
/** @internal */
|
|
9
10
|
public readonly buffer: globalThis.AudioBuffer;
|
|
10
11
|
|
|
11
12
|
constructor(buffer: globalThis.AudioBuffer) {
|
|
@@ -150,8 +151,14 @@ export class AudioScheduledSourceNode extends AudioNode {
|
|
|
150
151
|
}
|
|
151
152
|
|
|
152
153
|
export class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
154
|
+
readonly playbackRate: AudioParam;
|
|
155
|
+
readonly detune: AudioParam;
|
|
156
|
+
|
|
153
157
|
constructor(context: AudioContext, node: globalThis.AudioBufferSourceNode) {
|
|
154
158
|
super(context, node);
|
|
159
|
+
|
|
160
|
+
this.detune = new AudioParam(node.detune);
|
|
161
|
+
this.playbackRate = new AudioParam(node.playbackRate);
|
|
155
162
|
}
|
|
156
163
|
|
|
157
164
|
public get buffer(): AudioBuffer | null {
|
|
@@ -180,6 +187,22 @@ export class AudioBufferSourceNode extends AudioScheduledSourceNode {
|
|
|
180
187
|
public set loop(value: boolean) {
|
|
181
188
|
(this.node as globalThis.AudioBufferSourceNode).loop = value;
|
|
182
189
|
}
|
|
190
|
+
|
|
191
|
+
public get loopStart(): number {
|
|
192
|
+
return (this.node as globalThis.AudioBufferSourceNode).loopStart;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
public set loopStart(value: number) {
|
|
196
|
+
(this.node as globalThis.AudioBufferSourceNode).loopStart = value;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
public get loopEnd(): number {
|
|
200
|
+
return (this.node as globalThis.AudioBufferSourceNode).loopEnd;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
public set loopEnd(value: number) {
|
|
204
|
+
(this.node as globalThis.AudioBufferSourceNode).loopEnd = value;
|
|
205
|
+
}
|
|
183
206
|
}
|
|
184
207
|
|
|
185
208
|
export class AudioDestinationNode extends AudioNode {
|
|
@@ -271,6 +294,7 @@ export class BiquadFilterNode extends AudioNode {
|
|
|
271
294
|
}
|
|
272
295
|
|
|
273
296
|
export class PeriodicWave {
|
|
297
|
+
/** @internal */
|
|
274
298
|
readonly periodicWave: globalThis.PeriodicWave;
|
|
275
299
|
|
|
276
300
|
constructor(periodicWave: globalThis.PeriodicWave) {
|
package/src/interfaces.ts
CHANGED
|
@@ -86,6 +86,11 @@ export interface IOscillatorNode extends IAudioScheduledSourceNode {
|
|
|
86
86
|
export interface IAudioBufferSourceNode extends IAudioScheduledSourceNode {
|
|
87
87
|
buffer: IAudioBuffer | null;
|
|
88
88
|
loop: boolean;
|
|
89
|
+
loopStart: number;
|
|
90
|
+
loopEnd: number;
|
|
91
|
+
|
|
92
|
+
detune: IAudioParam;
|
|
93
|
+
playbackRate: IAudioParam;
|
|
89
94
|
}
|
|
90
95
|
|
|
91
96
|
export interface IAudioBuffer {
|