react-native-audio-api 0.3.0-rc1 → 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.
Files changed (121) hide show
  1. package/android/CMakeLists.txt +4 -4
  2. package/android/build.gradle +1 -3
  3. package/android/libs/include/miniaudio.h +92621 -0
  4. package/android/src/main/cpp/AudioAPIInstaller/AudioAPIInstaller.cpp +10 -12
  5. package/android/src/main/cpp/AudioAPIInstaller/AudioAPIInstaller.h +16 -9
  6. package/android/src/main/cpp/AudioDecoder/AudioDecoder.cpp +64 -0
  7. package/android/src/main/cpp/AudioDecoder/AudioDecoder.h +21 -0
  8. package/android/src/main/cpp/AudioPlayer/AudioPlayer.h +2 -2
  9. package/android/src/main/java/com/swmansion/audioapi/module/AudioAPIInstaller.kt +14 -4
  10. package/android/src/main/java/com/swmansion/audioapi/nativemodules/AudioAPIModule.kt +2 -3
  11. package/common/cpp/AudioAPIInstaller/AudioAPIInstallerHostObject.h +26 -27
  12. package/common/cpp/HostObjects/AudioBufferHostObject.h +79 -13
  13. package/common/cpp/HostObjects/AudioBufferSourceNodeHostObject.h +93 -14
  14. package/common/cpp/HostObjects/AudioContextHostObject.h +10 -19
  15. package/common/cpp/HostObjects/AudioDestinationNodeHostObject.h +3 -16
  16. package/common/cpp/HostObjects/AudioNodeHostObject.h +48 -11
  17. package/common/cpp/HostObjects/AudioParamHostObject.h +56 -14
  18. package/common/cpp/HostObjects/AudioScheduledSourceNodeHostObject.h +23 -16
  19. package/common/cpp/HostObjects/BaseAudioContextHostObject.h +131 -13
  20. package/common/cpp/HostObjects/BiquadFilterNodeHostObject.h +76 -18
  21. package/common/cpp/HostObjects/Constants.h +2 -0
  22. package/common/cpp/HostObjects/GainNodeHostObject.h +10 -15
  23. package/common/cpp/HostObjects/OscillatorNodeHostObject.h +40 -17
  24. package/common/cpp/HostObjects/PeriodicWaveHostObject.h +4 -17
  25. package/common/cpp/HostObjects/StereoPannerNodeHostObject.h +10 -17
  26. package/common/cpp/core/AudioBufferSourceNode.cpp +180 -73
  27. package/common/cpp/core/AudioBufferSourceNode.h +41 -1
  28. package/common/cpp/core/AudioDestinationNode.cpp +1 -0
  29. package/common/cpp/core/AudioDestinationNode.h +1 -1
  30. package/common/cpp/core/AudioScheduledSourceNode.cpp +86 -21
  31. package/common/cpp/core/AudioScheduledSourceNode.h +12 -4
  32. package/common/cpp/core/BaseAudioContext.cpp +8 -5
  33. package/common/cpp/core/BaseAudioContext.h +5 -3
  34. package/common/cpp/core/OscillatorNode.cpp +7 -2
  35. package/common/cpp/jsi/JsiHostObject.cpp +85 -0
  36. package/common/cpp/jsi/JsiHostObject.h +94 -0
  37. package/common/cpp/jsi/JsiPromise.cpp +65 -0
  38. package/common/cpp/jsi/JsiPromise.h +48 -0
  39. package/common/cpp/utils/AudioUtils.cpp +26 -0
  40. package/common/cpp/utils/AudioUtils.h +16 -0
  41. package/ios/AudioAPIModule.mm +3 -6
  42. package/ios/AudioDecoder/AudioDecoder.h +1 -1
  43. package/ios/AudioDecoder/AudioDecoder.m +14 -102
  44. package/ios/AudioDecoder/IOSAudioDecoder.h +2 -0
  45. package/ios/AudioDecoder/IOSAudioDecoder.mm +7 -1
  46. package/ios/AudioPlayer/AudioPlayer.m +3 -1
  47. package/lib/module/core/AudioBufferSourceNode.js +15 -0
  48. package/lib/module/core/AudioBufferSourceNode.js.map +1 -1
  49. package/lib/module/core/BaseAudioContext.js +2 -3
  50. package/lib/module/core/BaseAudioContext.js.map +1 -1
  51. package/lib/module/index.js +18 -3
  52. package/lib/module/index.js.map +1 -1
  53. package/lib/typescript/core/AudioBufferSourceNode.d.ts +7 -0
  54. package/lib/typescript/core/AudioBufferSourceNode.d.ts.map +1 -1
  55. package/lib/typescript/core/BaseAudioContext.d.ts +2 -2
  56. package/lib/typescript/core/BaseAudioContext.d.ts.map +1 -1
  57. package/lib/typescript/core/types.d.ts +0 -6
  58. package/lib/typescript/core/types.d.ts.map +1 -1
  59. package/lib/typescript/index.d.ts +8 -4
  60. package/lib/typescript/index.d.ts.map +1 -1
  61. package/lib/typescript/interfaces.d.ts +5 -1
  62. package/lib/typescript/interfaces.d.ts.map +1 -1
  63. package/package.json +1 -1
  64. package/src/core/AudioBufferSourceNode.ts +23 -0
  65. package/src/core/BaseAudioContext.ts +3 -8
  66. package/src/core/types.ts +0 -7
  67. package/src/index.ts +26 -12
  68. package/src/interfaces.ts +6 -1
  69. package/android/libs/fftw3/x86/libfftw3.a +0 -0
  70. package/android/libs/fftw3/x86_64/libfftw3.a +0 -0
  71. package/common/cpp/AudioAPIInstaller/AudioAPIInstallerHostObject.cpp +0 -54
  72. package/common/cpp/AudioAPIInstaller/AudioAPIInstallerWrapper.h +0 -38
  73. package/common/cpp/AudioAPIInstaller/android/AudioAPIInstallerWrapper.cpp +0 -16
  74. package/common/cpp/AudioAPIInstaller/ios/AudioAPIInstallerWrapper.cpp +0 -12
  75. package/common/cpp/HostObjects/AudioBufferHostObject.cpp +0 -149
  76. package/common/cpp/HostObjects/AudioBufferSourceNodeHostObject.cpp +0 -79
  77. package/common/cpp/HostObjects/AudioContextHostObject.cpp +0 -54
  78. package/common/cpp/HostObjects/AudioDestinationNodeHostObject.cpp +0 -33
  79. package/common/cpp/HostObjects/AudioNodeHostObject.cpp +0 -102
  80. package/common/cpp/HostObjects/AudioParamHostObject.cpp +0 -115
  81. package/common/cpp/HostObjects/AudioScheduledSourceNodeHostObject.cpp +0 -73
  82. package/common/cpp/HostObjects/BaseAudioContextHostObject.cpp +0 -240
  83. package/common/cpp/HostObjects/BiquadFilterNodeHostObject.cpp +0 -125
  84. package/common/cpp/HostObjects/GainNodeHostObject.cpp +0 -41
  85. package/common/cpp/HostObjects/OscillatorNodeHostObject.cpp +0 -88
  86. package/common/cpp/HostObjects/PeriodicWaveHostObject.cpp +0 -33
  87. package/common/cpp/HostObjects/StereoPannerNodeHostObject.cpp +0 -41
  88. package/common/cpp/utils/JsiPromise.cpp +0 -59
  89. package/common/cpp/utils/JsiPromise.h +0 -42
  90. package/common/cpp/wrappers/AudioBufferSourceNodeWrapper.cpp +0 -45
  91. package/common/cpp/wrappers/AudioBufferSourceNodeWrapper.h +0 -26
  92. package/common/cpp/wrappers/AudioBufferWrapper.cpp +0 -46
  93. package/common/cpp/wrappers/AudioBufferWrapper.h +0 -30
  94. package/common/cpp/wrappers/AudioContextWrapper.cpp +0 -17
  95. package/common/cpp/wrappers/AudioContextWrapper.h +0 -19
  96. package/common/cpp/wrappers/AudioDestinationNodeWrapper.h +0 -16
  97. package/common/cpp/wrappers/AudioNodeWrapper.cpp +0 -37
  98. package/common/cpp/wrappers/AudioNodeWrapper.h +0 -25
  99. package/common/cpp/wrappers/AudioParamWrapper.cpp +0 -42
  100. package/common/cpp/wrappers/AudioParamWrapper.h +0 -25
  101. package/common/cpp/wrappers/AudioScheduledSourceNodeWrapper.cpp +0 -23
  102. package/common/cpp/wrappers/AudioScheduledSourceNodeWrapper.h +0 -23
  103. package/common/cpp/wrappers/BaseAudioContextWrapper.cpp +0 -83
  104. package/common/cpp/wrappers/BaseAudioContextWrapper.h +0 -50
  105. package/common/cpp/wrappers/BiquadFilterNodeWrapper.cpp +0 -60
  106. package/common/cpp/wrappers/BiquadFilterNodeWrapper.h +0 -37
  107. package/common/cpp/wrappers/GainNodeWrapper.cpp +0 -14
  108. package/common/cpp/wrappers/GainNodeWrapper.h +0 -20
  109. package/common/cpp/wrappers/OscillatorNodeWrapper.cpp +0 -44
  110. package/common/cpp/wrappers/OscillatorNodeWrapper.h +0 -31
  111. package/common/cpp/wrappers/PeriodicWaveWrapper.h +0 -17
  112. package/common/cpp/wrappers/StereoPannerNodeWrapper.cpp +0 -16
  113. package/common/cpp/wrappers/StereoPannerNodeWrapper.h +0 -21
  114. package/lib/module/utils/resolveAudioSource.js +0 -10
  115. package/lib/module/utils/resolveAudioSource.js.map +0 -1
  116. package/lib/typescript/utils/resolveAudioSource.d.ts +0 -3
  117. package/lib/typescript/utils/resolveAudioSource.d.ts.map +0 -1
  118. package/src/utils/resolveAudioSource.ts +0 -14
  119. /package/android/libs/{fftw3/arm64-v8a → arm64-v8a}/libfftw3.a +0 -0
  120. /package/android/libs/{fftw3/armeabi-v7a → armeabi-v7a}/libfftw3.a +0 -0
  121. /package/android/libs/include/{fftw3/fftw3.h → fftw3.h} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["AudioDestinationNode","OscillatorNode","GainNode","StereoPannerNode","BiquadFilterNode","AudioBufferSourceNode","AudioBuffer","PeriodicWave","InvalidAccessError","resolveAudioSource","BaseAudioContext","constructor","context","destination","sampleRate","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","createBuffer","numOfChannels","length","RangeError","createPeriodicWave","real","imag","constraints","disableNormalization","decodeAudioDataSource","source","buffer"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AudioDestinationNode","OscillatorNode","GainNode","StereoPannerNode","BiquadFilterNode","AudioBufferSourceNode","AudioBuffer","PeriodicWave","InvalidAccessError","BaseAudioContext","constructor","context","destination","sampleRate","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","createBuffer","numOfChannels","length","RangeError","createPeriodicWave","real","imag","constraints","disableNormalization","decodeAudioDataSource","sourcePath","buffer"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":"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","ignoreList":[]}
@@ -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
  }
@@ -222,9 +240,6 @@ export class AudioContext {
222
240
  return new PeriodicWave(this.context.createPeriodicWave(real, imag, constraints));
223
241
  }
224
242
  async decodeAudioDataSource(source) {
225
- if (typeof source === 'number') {
226
- throw new Error('Not yet implemented');
227
- }
228
243
  const arrayBuffer = await fetch(source).then(response => response.arrayBuffer());
229
244
  return new AudioBuffer(await this.context.decodeAudioData(arrayBuffer));
230
245
  }
@@ -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;AAExC,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,wBAAwB;gBAC7D,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,sBAAsB;IAInE,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;CACF"}
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"}
@@ -1,5 +1,5 @@
1
1
  import { IBaseAudioContext } from '../interfaces';
2
- import { ContextState, PeriodicWaveConstraints, AudioSource } from './types';
2
+ import { ContextState, PeriodicWaveConstraints } from './types';
3
3
  import AudioDestinationNode from './AudioDestinationNode';
4
4
  import OscillatorNode from './OscillatorNode';
5
5
  import GainNode from './GainNode';
@@ -22,6 +22,6 @@ export default class BaseAudioContext {
22
22
  createBufferSource(): AudioBufferSourceNode;
23
23
  createBuffer(numOfChannels: number, length: number, sampleRate: number): AudioBuffer;
24
24
  createPeriodicWave(real: number[], imag: number[], constraints?: PeriodicWaveConstraints): PeriodicWave;
25
- decodeAudioDataSource(source: AudioSource | number): Promise<AudioBuffer>;
25
+ decodeAudioDataSource(sourcePath: string): Promise<AudioBuffer>;
26
26
  }
27
27
  //# sourceMappingURL=BaseAudioContext.d.ts.map
@@ -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,EAAE,YAAY,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC7E,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;AAI1C,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;gBAElC,OAAO,EAAE,iBAAiB;IAMtC,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;IAItC,kBAAkB,IAAI,qBAAqB;IAI3C,YAAY,CACV,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,WAAW;IAwBd,kBAAkB,CAChB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,CAAC,EAAE,uBAAuB,GACpC,YAAY;IAcT,qBAAqB,CACzB,MAAM,EAAE,WAAW,GAAG,MAAM,GAC3B,OAAO,CAAC,WAAW,CAAC;CAOxB"}
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,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAChE,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;AAG1C,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;gBAElC,OAAO,EAAE,iBAAiB;IAMtC,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;IAItC,kBAAkB,IAAI,qBAAqB;IAI3C,YAAY,CACV,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,WAAW;IAwBd,kBAAkB,CAChB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,CAAC,EAAE,uBAAuB,GACpC,YAAY;IAcT,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;CAKtE"}
@@ -6,10 +6,4 @@ export type OscillatorType = 'sine' | 'square' | 'sawtooth' | 'triangle' | 'cust
6
6
  export interface PeriodicWaveConstraints {
7
7
  disableNormalization: boolean;
8
8
  }
9
- /**
10
- * A type that defines the source of the audio which can be expressed in several forms:
11
- * 1. A string path, which could be an HTTPS URL or a local file path.
12
- * 2. A string, which is a result of resolving an asset source.
13
- */
14
- export type AudioSource = string;
15
9
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/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,CAAC;AAEhD,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;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/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,CAAC;AAEhD,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"}
@@ -1,10 +1,9 @@
1
- import { AudioSource, ContextState, PeriodicWaveConstraints } from './core/types';
1
+ import { ContextState, PeriodicWaveConstraints } from './core/types';
2
2
  export declare class AudioBuffer {
3
3
  readonly length: number;
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 {
@@ -94,7 +98,7 @@ export declare class AudioContext {
94
98
  createBufferSource(): AudioBufferSourceNode;
95
99
  createBuffer(numOfChannels: number, length: number, sampleRate: number): AudioBuffer;
96
100
  createPeriodicWave(real: number[], imag: number[], constraints?: PeriodicWaveConstraints): PeriodicWave;
97
- decodeAudioDataSource(source: AudioSource | number): Promise<AudioBuffer>;
101
+ decodeAudioDataSource(source: string): Promise<AudioBuffer>;
98
102
  close(): void;
99
103
  }
100
104
  export { ContextState, OscillatorType, BiquadFilterType, ChannelCountMode, ChannelInterpretation, } from './core/types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export interface IBaseAudioContext {
11
11
  createBufferSource: () => IAudioBufferSourceNode;
12
12
  createBuffer: (channels: number, length: number, sampleRate: number) => IAudioBuffer;
13
13
  createPeriodicWave: (real: number[], imag: number[], disableNormalization: boolean) => IPeriodicWave;
14
- decodeAudioDataSource: (source: string) => Promise<IAudioBuffer>;
14
+ decodeAudioDataSource: (sourcePath: string) => Promise<IAudioBuffer>;
15
15
  }
16
16
  export interface IAudioContext extends IBaseAudioContext {
17
17
  close(): void;
@@ -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.0-rc1",
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
  }
@@ -1,5 +1,5 @@
1
1
  import { IBaseAudioContext } from '../interfaces';
2
- import { ContextState, PeriodicWaveConstraints, AudioSource } from './types';
2
+ import { ContextState, PeriodicWaveConstraints } from './types';
3
3
  import AudioDestinationNode from './AudioDestinationNode';
4
4
  import OscillatorNode from './OscillatorNode';
5
5
  import GainNode from './GainNode';
@@ -9,7 +9,6 @@ import AudioBufferSourceNode from './AudioBufferSourceNode';
9
9
  import AudioBuffer from './AudioBuffer';
10
10
  import PeriodicWave from './PeriodicWave';
11
11
  import { InvalidAccessError } from '../errors';
12
- import { resolveAudioSource } from '../utils/resolveAudioSource';
13
12
 
14
13
  export default class BaseAudioContext {
15
14
  readonly destination: AudioDestinationNode;
@@ -96,12 +95,8 @@ export default class BaseAudioContext {
96
95
  );
97
96
  }
98
97
 
99
- async decodeAudioDataSource(
100
- source: AudioSource | number
101
- ): Promise<AudioBuffer> {
102
- const buffer = await this.context.decodeAudioDataSource(
103
- resolveAudioSource(source)
104
- );
98
+ async decodeAudioDataSource(sourcePath: string): Promise<AudioBuffer> {
99
+ const buffer = await this.context.decodeAudioDataSource(sourcePath);
105
100
 
106
101
  return new AudioBuffer(buffer);
107
102
  }
package/src/core/types.ts CHANGED
@@ -24,10 +24,3 @@ export type OscillatorType =
24
24
  export interface PeriodicWaveConstraints {
25
25
  disableNormalization: boolean;
26
26
  }
27
-
28
- /**
29
- * A type that defines the source of the audio which can be expressed in several forms:
30
- * 1. A string path, which could be an HTTPS URL or a local file path.
31
- * 2. A string, which is a result of resolving an asset source.
32
- */
33
- export type AudioSource = string;
package/src/index.ts CHANGED
@@ -1,8 +1,4 @@
1
- import {
2
- AudioSource,
3
- ContextState,
4
- PeriodicWaveConstraints,
5
- } from './core/types';
1
+ import { ContextState, PeriodicWaveConstraints } from './core/types';
6
2
 
7
3
  export class AudioBuffer {
8
4
  readonly length: number;
@@ -10,6 +6,7 @@ export class AudioBuffer {
10
6
  readonly sampleRate: number;
11
7
  readonly numberOfChannels: number;
12
8
 
9
+ /** @internal */
13
10
  public readonly buffer: globalThis.AudioBuffer;
14
11
 
15
12
  constructor(buffer: globalThis.AudioBuffer) {
@@ -154,8 +151,14 @@ export class AudioScheduledSourceNode extends AudioNode {
154
151
  }
155
152
 
156
153
  export class AudioBufferSourceNode extends AudioScheduledSourceNode {
154
+ readonly playbackRate: AudioParam;
155
+ readonly detune: AudioParam;
156
+
157
157
  constructor(context: AudioContext, node: globalThis.AudioBufferSourceNode) {
158
158
  super(context, node);
159
+
160
+ this.detune = new AudioParam(node.detune);
161
+ this.playbackRate = new AudioParam(node.playbackRate);
159
162
  }
160
163
 
161
164
  public get buffer(): AudioBuffer | null {
@@ -184,6 +187,22 @@ export class AudioBufferSourceNode extends AudioScheduledSourceNode {
184
187
  public set loop(value: boolean) {
185
188
  (this.node as globalThis.AudioBufferSourceNode).loop = value;
186
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
+ }
187
206
  }
188
207
 
189
208
  export class AudioDestinationNode extends AudioNode {
@@ -275,6 +294,7 @@ export class BiquadFilterNode extends AudioNode {
275
294
  }
276
295
 
277
296
  export class PeriodicWave {
297
+ /** @internal */
278
298
  readonly periodicWave: globalThis.PeriodicWave;
279
299
 
280
300
  constructor(periodicWave: globalThis.PeriodicWave) {
@@ -391,13 +411,7 @@ export class AudioContext {
391
411
  );
392
412
  }
393
413
 
394
- async decodeAudioDataSource(
395
- source: AudioSource | number
396
- ): Promise<AudioBuffer> {
397
- if (typeof source === 'number') {
398
- throw new Error('Not yet implemented');
399
- }
400
-
414
+ async decodeAudioDataSource(source: string): Promise<AudioBuffer> {
401
415
  const arrayBuffer = await fetch(source).then((response) =>
402
416
  response.arrayBuffer()
403
417
  );
package/src/interfaces.ts CHANGED
@@ -27,7 +27,7 @@ export interface IBaseAudioContext {
27
27
  imag: number[],
28
28
  disableNormalization: boolean
29
29
  ) => IPeriodicWave;
30
- decodeAudioDataSource: (source: string) => Promise<IAudioBuffer>;
30
+ decodeAudioDataSource: (sourcePath: string) => Promise<IAudioBuffer>;
31
31
  }
32
32
 
33
33
  export interface IAudioContext extends IBaseAudioContext {
@@ -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 {
Binary file
@@ -1,54 +0,0 @@
1
- #include "AudioAPIInstallerHostObject.h"
2
-
3
- namespace audioapi {
4
- using namespace facebook;
5
-
6
- AudioAPIInstallerHostObject::AudioAPIInstallerHostObject(
7
- const std::shared_ptr<AudioAPIInstallerWrapper> &wrapper, jsi::Runtime* runtime, const std::shared_ptr<facebook::react::CallInvoker> &jsInvoker)
8
- : wrapper_(wrapper) {
9
- promiseVendor_ = std::make_shared<JsiPromise::PromiseVendor>(runtime, jsInvoker);
10
- }
11
-
12
- std::vector<jsi::PropNameID> AudioAPIInstallerHostObject::getPropertyNames(
13
- jsi::Runtime &runtime) {
14
- std::vector<jsi::PropNameID> propertyNames;
15
- propertyNames.push_back(
16
- jsi::PropNameID::forUtf8(runtime, "createAudioContext"));
17
- return propertyNames;
18
- }
19
-
20
- jsi::Value AudioAPIInstallerHostObject::get(
21
- jsi::Runtime &runtime,
22
- const jsi::PropNameID &propNameId) {
23
- auto propName = propNameId.utf8(runtime);
24
-
25
- if (propName == "createAudioContext") {
26
- return jsi::Function::createFromHostFunction(
27
- runtime,
28
- propNameId,
29
- 0,
30
- [this](
31
- jsi::Runtime &runtime,
32
- const jsi::Value &thisValue,
33
- const jsi::Value *arguments,
34
- size_t count) -> jsi::Value {
35
- auto audioContext = wrapper_->createAudioContext();
36
- auto audioContextHostObject =
37
- AudioContextHostObject::createFromWrapper(audioContext, promiseVendor_);
38
- return jsi::Object::createFromHostObject(
39
- runtime, audioContextHostObject);
40
- });
41
- }
42
-
43
- throw std::runtime_error("Not yet implemented!");
44
- }
45
-
46
- void AudioAPIInstallerHostObject::set(
47
- jsi::Runtime &runtime,
48
- const jsi::PropNameID &propNameId,
49
- const jsi::Value &value) {
50
- auto propName = propNameId.utf8(runtime);
51
-
52
- throw std::runtime_error("Not yet implemented!");
53
- }
54
- } // namespace audioapi
@@ -1,38 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
- #include <string>
5
- #include <utility>
6
-
7
- #include "AudioContextWrapper.h"
8
-
9
- #ifdef ANDROID
10
- #include "AudioAPIInstaller.h"
11
- #else
12
- #include "AudioContext.h"
13
- #endif
14
-
15
- namespace audioapi {
16
-
17
- #ifdef ANDROID
18
- class AudioAPIInstaller;
19
- #endif
20
-
21
- class AudioAPIInstallerWrapper {
22
- #ifdef ANDROID
23
-
24
- public:
25
- explicit AudioAPIInstallerWrapper(AudioAPIInstaller *audioAPIInstaller);
26
-
27
- private:
28
- AudioAPIInstaller *audioAPIInstaller_;
29
- #else
30
-
31
- public:
32
- AudioAPIInstallerWrapper() = default;
33
- #endif
34
-
35
- public:
36
- std::shared_ptr<AudioContextWrapper> createAudioContext() const;
37
- };
38
- } // namespace audioapi
@@ -1,16 +0,0 @@
1
- #ifdef ANDROID
2
- #include "AudioAPIInstallerWrapper.h"
3
-
4
- namespace audioapi {
5
-
6
- AudioAPIInstallerWrapper::AudioAPIInstallerWrapper(
7
- AudioAPIInstaller *audioAPIInstaller)
8
- : audioAPIInstaller_(audioAPIInstaller) {}
9
-
10
- std::shared_ptr<AudioContextWrapper>
11
- AudioAPIInstallerWrapper::createAudioContext() const {
12
- auto audioContext = audioAPIInstaller_->createAudioContext();
13
- return std::make_shared<AudioContextWrapper>(audioContext);
14
- }
15
- } // namespace audioapi
16
- #endif
@@ -1,12 +0,0 @@
1
- #ifndef ANDROID
2
- #include "AudioAPIInstallerWrapper.h"
3
-
4
- namespace audioapi {
5
-
6
- std::shared_ptr<AudioContextWrapper>
7
- AudioAPIInstallerWrapper::createAudioContext() const {
8
- auto audioContext = std::make_shared<AudioContext>();
9
- return std::make_shared<audioapi::AudioContextWrapper>(audioContext);
10
- }
11
- } // namespace audioapi
12
- #endif