react-native-audio-api 0.4.12 → 0.5.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/android/src/main/java/com/swmansion/audioapi/AudioAPIModule.kt +7 -6
  2. package/android/src/main/java/com/swmansion/audioapi/AudioAPIPackage.kt +25 -24
  3. package/common/cpp/audioapi/HostObjects/AnalyserNodeHostObject.h +17 -41
  4. package/common/cpp/audioapi/HostObjects/AudioBufferHostObject.h +22 -32
  5. package/common/cpp/audioapi/HostObjects/AudioBufferSourceNodeHostObject.h +2 -17
  6. package/common/cpp/audioapi/HostObjects/AudioContextHostObject.h +14 -4
  7. package/common/cpp/audioapi/HostObjects/AudioParamHostObject.h +5 -8
  8. package/common/cpp/audioapi/HostObjects/BaseAudioContextHostObject.h +13 -9
  9. package/common/cpp/audioapi/HostObjects/BiquadFilterNodeHostObject.h +8 -19
  10. package/common/cpp/audioapi/core/AudioContext.cpp +14 -4
  11. package/common/cpp/audioapi/core/AudioContext.h +2 -2
  12. package/common/cpp/audioapi/core/BaseAudioContext.cpp +4 -2
  13. package/common/cpp/audioapi/core/BaseAudioContext.h +1 -1
  14. package/common/cpp/audioapi/core/effects/BiquadFilterNode.cpp +5 -6
  15. package/common/cpp/audioapi/core/effects/BiquadFilterNode.h +4 -3
  16. package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.cpp +5 -11
  17. package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.h +3 -31
  18. package/lib/module/api.js +1 -1
  19. package/lib/module/api.js.map +1 -1
  20. package/lib/module/api.web.js +1 -2
  21. package/lib/module/api.web.js.map +1 -1
  22. package/lib/module/core/AnalyserNode.js.map +1 -1
  23. package/lib/module/core/AudioBuffer.js.map +1 -1
  24. package/lib/module/core/AudioBufferSourceNode.js +0 -6
  25. package/lib/module/core/AudioBufferSourceNode.js.map +1 -1
  26. package/lib/module/core/AudioParam.js.map +1 -1
  27. package/lib/module/core/BaseAudioContext.js +3 -2
  28. package/lib/module/core/BaseAudioContext.js.map +1 -1
  29. package/lib/module/core/BiquadFilterNode.js.map +1 -1
  30. package/lib/module/utils/index.js +6 -0
  31. package/lib/module/utils/index.js.map +1 -0
  32. package/lib/module/web-core/AnalyserNode.js +4 -20
  33. package/lib/module/web-core/AnalyserNode.js.map +1 -1
  34. package/lib/module/web-core/AudioBuffer.js +2 -6
  35. package/lib/module/web-core/AudioBuffer.js.map +1 -1
  36. package/lib/module/web-core/AudioBufferSourceNode.js +161 -21
  37. package/lib/module/web-core/AudioBufferSourceNode.js.map +1 -1
  38. package/lib/module/web-core/AudioContext.js +7 -8
  39. package/lib/module/web-core/AudioContext.js.map +1 -1
  40. package/lib/module/web-core/AudioParam.js +1 -1
  41. package/lib/module/web-core/AudioParam.js.map +1 -1
  42. package/lib/module/web-core/BiquadFilterNode.js +1 -9
  43. package/lib/module/web-core/BiquadFilterNode.js.map +1 -1
  44. package/lib/module/web-core/custom/signalsmithStretch/README.md +1 -1
  45. package/lib/module/web-core/custom/signalsmithStretch/SignalsmithStretch.mjs +2 -2
  46. package/lib/module/web-core/custom/signalsmithStretch/SignalsmithStretch.mjs.map +1 -1
  47. package/lib/typescript/api.d.ts +1 -1
  48. package/lib/typescript/api.d.ts.map +1 -1
  49. package/lib/typescript/api.web.d.ts +1 -2
  50. package/lib/typescript/api.web.d.ts.map +1 -1
  51. package/lib/typescript/core/AnalyserNode.d.ts +4 -4
  52. package/lib/typescript/core/AnalyserNode.d.ts.map +1 -1
  53. package/lib/typescript/core/AudioBuffer.d.ts +3 -3
  54. package/lib/typescript/core/AudioBuffer.d.ts.map +1 -1
  55. package/lib/typescript/core/AudioBufferSourceNode.d.ts +0 -3
  56. package/lib/typescript/core/AudioBufferSourceNode.d.ts.map +1 -1
  57. package/lib/typescript/core/AudioParam.d.ts +1 -1
  58. package/lib/typescript/core/AudioParam.d.ts.map +1 -1
  59. package/lib/typescript/core/BaseAudioContext.d.ts +3 -3
  60. package/lib/typescript/core/BaseAudioContext.d.ts.map +1 -1
  61. package/lib/typescript/core/BiquadFilterNode.d.ts +1 -1
  62. package/lib/typescript/core/BiquadFilterNode.d.ts.map +1 -1
  63. package/lib/typescript/interfaces.d.ts +12 -13
  64. package/lib/typescript/interfaces.d.ts.map +1 -1
  65. package/lib/typescript/types.d.ts +3 -1
  66. package/lib/typescript/types.d.ts.map +1 -1
  67. package/lib/typescript/utils/index.d.ts +2 -0
  68. package/lib/typescript/utils/index.d.ts.map +1 -0
  69. package/lib/typescript/web-core/AnalyserNode.d.ts +4 -4
  70. package/lib/typescript/web-core/AnalyserNode.d.ts.map +1 -1
  71. package/lib/typescript/web-core/AudioBuffer.d.ts +2 -2
  72. package/lib/typescript/web-core/AudioBuffer.d.ts.map +1 -1
  73. package/lib/typescript/web-core/AudioBufferSourceNode.d.ts +58 -6
  74. package/lib/typescript/web-core/AudioBufferSourceNode.d.ts.map +1 -1
  75. package/lib/typescript/web-core/AudioContext.d.ts +3 -5
  76. package/lib/typescript/web-core/AudioContext.d.ts.map +1 -1
  77. package/lib/typescript/web-core/AudioParam.d.ts +1 -1
  78. package/lib/typescript/web-core/AudioParam.d.ts.map +1 -1
  79. package/lib/typescript/web-core/BaseAudioContext.d.ts +2 -2
  80. package/lib/typescript/web-core/BaseAudioContext.d.ts.map +1 -1
  81. package/lib/typescript/web-core/BiquadFilterNode.d.ts +1 -1
  82. package/lib/typescript/web-core/BiquadFilterNode.d.ts.map +1 -1
  83. package/package.json +8 -8
  84. package/scripts/setup-rn-audio-api-web.js +58 -0
  85. package/src/api.ts +0 -1
  86. package/src/api.web.ts +0 -2
  87. package/src/core/AnalyserNode.ts +4 -4
  88. package/src/core/AudioBuffer.ts +3 -3
  89. package/src/core/AudioBufferSourceNode.ts +0 -9
  90. package/src/core/AudioParam.ts +1 -1
  91. package/src/core/BaseAudioContext.ts +16 -5
  92. package/src/core/BiquadFilterNode.ts +3 -3
  93. package/src/interfaces.ts +14 -16
  94. package/src/types.ts +3 -1
  95. package/src/utils/index.ts +3 -0
  96. package/src/web-core/AnalyserNode.tsx +8 -30
  97. package/src/web-core/AudioBuffer.tsx +4 -14
  98. package/src/web-core/AudioBufferSourceNode.tsx +357 -31
  99. package/src/web-core/AudioContext.tsx +19 -13
  100. package/src/web-core/AudioParam.tsx +2 -6
  101. package/src/web-core/BaseAudioContext.tsx +3 -3
  102. package/src/web-core/BiquadFilterNode.tsx +6 -16
  103. package/src/web-core/custom/signalsmithStretch/README.md +1 -1
  104. package/src/web-core/custom/signalsmithStretch/SignalsmithStretch.mjs +4 -3
  105. package/common/cpp/audioapi/core/types/TimeStretchType.h +0 -7
  106. package/lib/module/web-core/StretcherNode.js +0 -64
  107. package/lib/module/web-core/StretcherNode.js.map +0 -1
  108. package/lib/module/web-core/custom/signalsmithStretch/SignalsmithStretch.js +0 -822
  109. package/lib/module/web-core/custom/signalsmithStretch/SignalsmithStretch.js.map +0 -1
  110. package/lib/typescript/web-core/StretcherNode.d.ts +0 -45
  111. package/lib/typescript/web-core/StretcherNode.d.ts.map +0 -1
  112. package/scripts/setup-custom-wasm.js +0 -104
  113. package/src/web-core/StretcherNode.tsx +0 -125
  114. package/src/web-core/custom/signalsmithStretch/SignalsmithStretch.js +0 -945
@@ -2,7 +2,6 @@
2
2
 
3
3
  #include <audioapi/core/sources/AudioBuffer.h>
4
4
  #include <audioapi/core/sources/AudioScheduledSourceNode.h>
5
- #include <audioapi/core/types/TimeStretchType.h>
6
5
 
7
6
  #include <memory>
8
7
  #include <cstddef>
@@ -16,22 +15,19 @@ class AudioParam;
16
15
 
17
16
  class AudioBufferSourceNode : public AudioScheduledSourceNode {
18
17
  public:
19
- explicit AudioBufferSourceNode(BaseAudioContext *context);
18
+ explicit AudioBufferSourceNode(BaseAudioContext *context, bool pitchCorrection);
20
19
 
21
20
  [[nodiscard]] bool getLoop() const;
22
21
  [[nodiscard]] double getLoopStart() const;
23
22
  [[nodiscard]] double getLoopEnd() const;
24
23
  [[nodiscard]] std::shared_ptr<AudioParam> getDetuneParam() const;
25
24
  [[nodiscard]] std::shared_ptr<AudioParam> getPlaybackRateParam() const;
26
- [[nodiscard]] std::shared_ptr<AudioParam> getSemitonesParam() const;
27
25
  [[nodiscard]] std::shared_ptr<AudioBuffer> getBuffer() const;
28
- [[nodiscard]] std::string getTimeStretchType() const;
29
26
 
30
27
  void setLoop(bool loop);
31
28
  void setLoopStart(double loopStart);
32
29
  void setLoopEnd(double loopEnd);
33
30
  void setBuffer(const std::shared_ptr<AudioBuffer> &buffer);
34
- void setTimeStretchType(const std::string &type);
35
31
 
36
32
  void start(double when, double offset, double duration = -1);
37
33
 
@@ -41,38 +37,14 @@ class AudioBufferSourceNode : public AudioScheduledSourceNode {
41
37
  double getStopTime() const override;
42
38
 
43
39
  private:
44
- static TimeStretchType fromString(const std::string &type) {
45
- std::string lowerType = type;
46
- std::transform(
47
- lowerType.begin(), lowerType.end(), lowerType.begin(), ::tolower);
48
-
49
- if (lowerType == "linear")
50
- return TimeStretchType::LINEAR;
51
- if (lowerType == "speech-music")
52
- return TimeStretchType::SPEECH_MUSIC;
53
-
54
- throw std::invalid_argument("Unknown time stretch type: " + type);
55
- }
56
-
57
- static std::string toString(TimeStretchType type) {
58
- switch (type) {
59
- case TimeStretchType::LINEAR:
60
- return "linear";
61
- case TimeStretchType::SPEECH_MUSIC:
62
- return "speech-music";
63
- }
64
-
65
- throw std::invalid_argument("Unknown time stretch type");
66
- }
67
-
68
40
  // Looping related properties
69
41
  bool loop_;
70
42
  double loopStart_;
71
43
  double loopEnd_;
72
44
  std::mutex bufferLock_;
73
45
 
74
- // time-stretching and pitch-shifting
75
- TimeStretchType timeStretchType_;
46
+ // pitch correction
47
+ bool pitchCorrection_;
76
48
 
77
49
  // k-rate params
78
50
  std::shared_ptr<AudioParam> detuneParam_;
package/lib/module/api.js CHANGED
@@ -25,6 +25,6 @@ export { default as BiquadFilterNode } from "./core/BiquadFilterNode.js";
25
25
  export { default as GainNode } from "./core/GainNode.js";
26
26
  export { default as OscillatorNode } from "./core/OscillatorNode.js";
27
27
  export { default as StereoPannerNode } from "./core/StereoPannerNode.js";
28
- export { OscillatorType, BiquadFilterType, ChannelCountMode, ChannelInterpretation, ContextState, WindowType, PeriodicWaveConstraints, TimeStretchType } from "./types.js";
28
+ export { OscillatorType, BiquadFilterType, ChannelCountMode, ChannelInterpretation, ContextState, WindowType, PeriodicWaveConstraints } from "./types.js";
29
29
  export { IndexSizeError, InvalidAccessError, InvalidStateError, RangeError, NotSupportedError } from "./errors/index.js";
30
30
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeAudioAPIModule","global","createAudioContext","Error","install","default","AudioBuffer","AudioBufferSourceNode","AudioContext","AudioDestinationNode","AudioNode","AnalyserNode","AudioParam","AudioScheduledSourceNode","BaseAudioContext","BiquadFilterNode","GainNode","OscillatorNode","StereoPannerNode","OscillatorType","BiquadFilterType","ChannelCountMode","ChannelInterpretation","ContextState","WindowType","PeriodicWaveConstraints","TimeStretchType","IndexSizeError","InvalidAccessError","InvalidStateError","RangeError","NotSupportedError"],"sourceRoot":"../../src","sources":["api.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,iCAA8B;;AAG/D;;AAIA;;AAEA,IAAIC,MAAM,CAACC,kBAAkB,IAAI,IAAI,EAAE;EACrC,IAAI,CAACF,oBAAoB,EAAE;IACzB,MAAM,IAAIG,KAAK,CACb,iFACF,CAAC;EACH;EAEAH,oBAAoB,CAACI,OAAO,CAAC,CAAC;AAChC;AAEA,SAASC,OAAO,IAAIC,WAAW,QAAQ,uBAAoB;AAC3D,SAASD,OAAO,IAAIE,qBAAqB,QAAQ,iCAA8B;AAC/E,SAASF,OAAO,IAAIG,YAAY,QAAQ,wBAAqB;AAC7D,SAASH,OAAO,IAAII,oBAAoB,QAAQ,gCAA6B;AAC7E,SAASJ,OAAO,IAAIK,SAAS,QAAQ,qBAAkB;AACvD,SAASL,OAAO,IAAIM,YAAY,QAAQ,wBAAqB;AAC7D,SAASN,OAAO,IAAIO,UAAU,QAAQ,sBAAmB;AACzD,SAASP,OAAO,IAAIQ,wBAAwB,QAAQ,oCAAiC;AACrF,SAASR,OAAO,IAAIS,gBAAgB,QAAQ,4BAAyB;AACrE,SAAST,OAAO,IAAIU,gBAAgB,QAAQ,4BAAyB;AACrE,SAASV,OAAO,IAAIW,QAAQ,QAAQ,oBAAiB;AACrD,SAASX,OAAO,IAAIY,cAAc,QAAQ,0BAAuB;AACjE,SAASZ,OAAO,IAAIa,gBAAgB,QAAQ,4BAAyB;AAErE,SACEC,cAAc,EACdC,gBAAgB,EAChBC,gBAAgB,EAChBC,qBAAqB,EACrBC,YAAY,EACZC,UAAU,EACVC,uBAAuB,EACvBC,eAAe,QACV,YAAS;AAEhB,SACEC,cAAc,EACdC,kBAAkB,EAClBC,iBAAiB,EACjBC,UAAU,EACVC,iBAAiB,QACZ,mBAAU","ignoreList":[]}
1
+ {"version":3,"names":["NativeAudioAPIModule","global","createAudioContext","Error","install","default","AudioBuffer","AudioBufferSourceNode","AudioContext","AudioDestinationNode","AudioNode","AnalyserNode","AudioParam","AudioScheduledSourceNode","BaseAudioContext","BiquadFilterNode","GainNode","OscillatorNode","StereoPannerNode","OscillatorType","BiquadFilterType","ChannelCountMode","ChannelInterpretation","ContextState","WindowType","PeriodicWaveConstraints","IndexSizeError","InvalidAccessError","InvalidStateError","RangeError","NotSupportedError"],"sourceRoot":"../../src","sources":["api.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,iCAA8B;;AAG/D;;AAIA;;AAEA,IAAIC,MAAM,CAACC,kBAAkB,IAAI,IAAI,EAAE;EACrC,IAAI,CAACF,oBAAoB,EAAE;IACzB,MAAM,IAAIG,KAAK,CACb,iFACF,CAAC;EACH;EAEAH,oBAAoB,CAACI,OAAO,CAAC,CAAC;AAChC;AAEA,SAASC,OAAO,IAAIC,WAAW,QAAQ,uBAAoB;AAC3D,SAASD,OAAO,IAAIE,qBAAqB,QAAQ,iCAA8B;AAC/E,SAASF,OAAO,IAAIG,YAAY,QAAQ,wBAAqB;AAC7D,SAASH,OAAO,IAAII,oBAAoB,QAAQ,gCAA6B;AAC7E,SAASJ,OAAO,IAAIK,SAAS,QAAQ,qBAAkB;AACvD,SAASL,OAAO,IAAIM,YAAY,QAAQ,wBAAqB;AAC7D,SAASN,OAAO,IAAIO,UAAU,QAAQ,sBAAmB;AACzD,SAASP,OAAO,IAAIQ,wBAAwB,QAAQ,oCAAiC;AACrF,SAASR,OAAO,IAAIS,gBAAgB,QAAQ,4BAAyB;AACrE,SAAST,OAAO,IAAIU,gBAAgB,QAAQ,4BAAyB;AACrE,SAASV,OAAO,IAAIW,QAAQ,QAAQ,oBAAiB;AACrD,SAASX,OAAO,IAAIY,cAAc,QAAQ,0BAAuB;AACjE,SAASZ,OAAO,IAAIa,gBAAgB,QAAQ,4BAAyB;AAErE,SACEC,cAAc,EACdC,gBAAgB,EAChBC,gBAAgB,EAChBC,qBAAqB,EACrBC,YAAY,EACZC,UAAU,EACVC,uBAAuB,QAClB,YAAS;AAEhB,SACEC,cAAc,EACdC,kBAAkB,EAClBC,iBAAiB,EACjBC,UAAU,EACVC,iBAAiB,QACZ,mBAAU","ignoreList":[]}
@@ -13,8 +13,7 @@ export { default as BiquadFilterNode } from "./web-core/BiquadFilterNode.js";
13
13
  export { default as GainNode } from "./web-core/GainNode.js";
14
14
  export { default as OscillatorNode } from "./web-core/OscillatorNode.js";
15
15
  export { default as StereoPannerNode } from "./web-core/StereoPannerNode.js";
16
- export { default as StretcherNode } from "./web-core/StretcherNode.js";
17
16
  export * from "./web-core/custom/index.js";
18
- export { OscillatorType, BiquadFilterType, ChannelCountMode, ChannelInterpretation, ContextState, WindowType, PeriodicWaveConstraints, TimeStretchType } from "./types.js";
17
+ export { OscillatorType, BiquadFilterType, ChannelCountMode, ChannelInterpretation, ContextState, WindowType, PeriodicWaveConstraints } from "./types.js";
19
18
  export { IndexSizeError, InvalidAccessError, InvalidStateError, RangeError, NotSupportedError } from "./errors/index.js";
20
19
  //# sourceMappingURL=api.web.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","AudioBuffer","AudioBufferSourceNode","AudioContext","AudioDestinationNode","AudioNode","AnalyserNode","AudioParam","AudioScheduledSourceNode","BaseAudioContext","BiquadFilterNode","GainNode","OscillatorNode","StereoPannerNode","StretcherNode","OscillatorType","BiquadFilterType","ChannelCountMode","ChannelInterpretation","ContextState","WindowType","PeriodicWaveConstraints","TimeStretchType","IndexSizeError","InvalidAccessError","InvalidStateError","RangeError","NotSupportedError"],"sourceRoot":"../../src","sources":["api.web.ts"],"mappings":";;AAAA,SAASA,OAAO,IAAIC,WAAW,QAAQ,2BAAwB;AAC/D,SAASD,OAAO,IAAIE,qBAAqB,QAAQ,qCAAkC;AACnF,SAASF,OAAO,IAAIG,YAAY,QAAQ,4BAAyB;AACjE,SAASH,OAAO,IAAII,oBAAoB,QAAQ,oCAAiC;AACjF,SAASJ,OAAO,IAAIK,SAAS,QAAQ,yBAAsB;AAC3D,SAASL,OAAO,IAAIM,YAAY,QAAQ,4BAAyB;AACjE,SAASN,OAAO,IAAIO,UAAU,QAAQ,0BAAuB;AAC7D,SAASP,OAAO,IAAIQ,wBAAwB,QAAQ,wCAAqC;AACzF,SAASR,OAAO,IAAIS,gBAAgB,QAAQ,gCAA6B;AACzE,SAAST,OAAO,IAAIU,gBAAgB,QAAQ,gCAA6B;AACzE,SAASV,OAAO,IAAIW,QAAQ,QAAQ,wBAAqB;AACzD,SAASX,OAAO,IAAIY,cAAc,QAAQ,8BAA2B;AACrE,SAASZ,OAAO,IAAIa,gBAAgB,QAAQ,gCAA6B;AACzE,SAASb,OAAO,IAAIc,aAAa,QAAQ,6BAA0B;AAEnE,cAAc,4BAAmB;AAEjC,SACEC,cAAc,EACdC,gBAAgB,EAChBC,gBAAgB,EAChBC,qBAAqB,EACrBC,YAAY,EACZC,UAAU,EACVC,uBAAuB,EACvBC,eAAe,QACV,YAAS;AAEhB,SACEC,cAAc,EACdC,kBAAkB,EAClBC,iBAAiB,EACjBC,UAAU,EACVC,iBAAiB,QACZ,mBAAU","ignoreList":[]}
1
+ {"version":3,"names":["default","AudioBuffer","AudioBufferSourceNode","AudioContext","AudioDestinationNode","AudioNode","AnalyserNode","AudioParam","AudioScheduledSourceNode","BaseAudioContext","BiquadFilterNode","GainNode","OscillatorNode","StereoPannerNode","OscillatorType","BiquadFilterType","ChannelCountMode","ChannelInterpretation","ContextState","WindowType","PeriodicWaveConstraints","IndexSizeError","InvalidAccessError","InvalidStateError","RangeError","NotSupportedError"],"sourceRoot":"../../src","sources":["api.web.ts"],"mappings":";;AAAA,SAASA,OAAO,IAAIC,WAAW,QAAQ,2BAAwB;AAC/D,SAASD,OAAO,IAAIE,qBAAqB,QAAQ,qCAAkC;AACnF,SAASF,OAAO,IAAIG,YAAY,QAAQ,4BAAyB;AACjE,SAASH,OAAO,IAAII,oBAAoB,QAAQ,oCAAiC;AACjF,SAASJ,OAAO,IAAIK,SAAS,QAAQ,yBAAsB;AAC3D,SAASL,OAAO,IAAIM,YAAY,QAAQ,4BAAyB;AACjE,SAASN,OAAO,IAAIO,UAAU,QAAQ,0BAAuB;AAC7D,SAASP,OAAO,IAAIQ,wBAAwB,QAAQ,wCAAqC;AACzF,SAASR,OAAO,IAAIS,gBAAgB,QAAQ,gCAA6B;AACzE,SAAST,OAAO,IAAIU,gBAAgB,QAAQ,gCAA6B;AACzE,SAASV,OAAO,IAAIW,QAAQ,QAAQ,wBAAqB;AACzD,SAASX,OAAO,IAAIY,cAAc,QAAQ,8BAA2B;AACrE,SAASZ,OAAO,IAAIa,gBAAgB,QAAQ,gCAA6B;AAEzE,cAAc,4BAAmB;AAEjC,SACEC,cAAc,EACdC,gBAAgB,EAChBC,gBAAgB,EAChBC,qBAAqB,EACrBC,YAAY,EACZC,UAAU,EACVC,uBAAuB,QAClB,YAAS;AAEhB,SACEC,cAAc,EACdC,kBAAkB,EAClBC,iBAAiB,EACjBC,UAAU,EACVC,iBAAiB,QACZ,mBAAU","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["IndexSizeError","AudioNode","AnalyserNode","allowedFFTSize","fftSize","node","value","includes","minDecibels","maxDecibels","smoothingTimeConstant","window","frequencyBinCount","getFloatFrequencyData","array","getByteFrequencyData","getFloatTimeDomainData","getByteTimeDomainData"],"sourceRoot":"../../../src","sources":["core/AnalyserNode.ts"],"mappings":";;AAAA,SAASA,cAAc,QAAQ,oBAAW;AAG1C,OAAOC,SAAS,MAAM,gBAAa;AAEnC,eAAe,MAAMC,YAAY,SAASD,SAAS,CAAC;EAClD,OAAeE,cAAc,GAAa,CACxC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAC5D;EAED,IAAWC,OAAOA,CAAA,EAAW;IAC3B,OAAQ,IAAI,CAACC,IAAI,CAAmBD,OAAO;EAC7C;EAEA,IAAWA,OAAOA,CAACE,KAAa,EAAE;IAChC,IAAI,CAACJ,YAAY,CAACC,cAAc,CAACI,QAAQ,CAACD,KAAK,CAAC,EAAE;MAChD,MAAM,IAAIN,cAAc,CACtB,mBAAmBM,KAAK,6CAC1B,CAAC;IACH;IAEC,IAAI,CAACD,IAAI,CAAmBD,OAAO,GAAGE,KAAK;EAC9C;EAEA,IAAWE,WAAWA,CAAA,EAAW;IAC/B,OAAQ,IAAI,CAACH,IAAI,CAAmBG,WAAW;EACjD;EAEA,IAAWA,WAAWA,CAACF,KAAa,EAAE;IACpC,IAAIA,KAAK,IAAI,IAAI,CAACG,WAAW,EAAE;MAC7B,MAAM,IAAIT,cAAc,CACtB,0BAA0BM,KAAK,iCACjC,CAAC;IACH;IAEC,IAAI,CAACD,IAAI,CAAmBG,WAAW,GAAGF,KAAK;EAClD;EAEA,IAAWG,WAAWA,CAAA,EAAW;IAC/B,OAAQ,IAAI,CAACJ,IAAI,CAAmBI,WAAW;EACjD;EAEA,IAAWA,WAAWA,CAACH,KAAa,EAAE;IACpC,IAAIA,KAAK,IAAI,IAAI,CAACE,WAAW,EAAE;MAC7B,MAAM,IAAIR,cAAc,CACtB,0BAA0BM,KAAK,oCACjC,CAAC;IACH;IAEC,IAAI,CAACD,IAAI,CAAmBI,WAAW,GAAGH,KAAK;EAClD;EAEA,IAAWI,qBAAqBA,CAAA,EAAW;IACzC,OAAQ,IAAI,CAACL,IAAI,CAAmBK,qBAAqB;EAC3D;EAEA,IAAWA,qBAAqBA,CAACJ,KAAa,EAAE;IAC9C,IAAIA,KAAK,GAAG,CAAC,IAAIA,KAAK,GAAG,CAAC,EAAE;MAC1B,MAAM,IAAIN,cAAc,CACtB,oCAAoCM,KAAK,2BAC3C,CAAC;IACH;IAEC,IAAI,CAACD,IAAI,CAAmBK,qBAAqB,GAAGJ,KAAK;EAC5D;EAEA,IAAWK,MAAMA,CAAA,EAAe;IAC9B,OAAQ,IAAI,CAACN,IAAI,CAAmBM,MAAM;EAC5C;EAEA,IAAWA,MAAMA,CAACL,KAAiB,EAAE;IAClC,IAAI,CAACD,IAAI,CAAmBM,MAAM,GAAGL,KAAK;EAC7C;EAEA,IAAWM,iBAAiBA,CAAA,EAAW;IACrC,OAAQ,IAAI,CAACP,IAAI,CAAmBO,iBAAiB;EACvD;EAEOC,qBAAqBA,CAACC,KAAe,EAAQ;IACjD,IAAI,CAACT,IAAI,CAAmBQ,qBAAqB,CAACC,KAAK,CAAC;EAC3D;EAEOC,oBAAoBA,CAACD,KAAe,EAAQ;IAChD,IAAI,CAACT,IAAI,CAAmBU,oBAAoB,CAACD,KAAK,CAAC;EAC1D;EAEOE,sBAAsBA,CAACF,KAAe,EAAQ;IAClD,IAAI,CAACT,IAAI,CAAmBW,sBAAsB,CAACF,KAAK,CAAC;EAC5D;EAEOG,qBAAqBA,CAACH,KAAe,EAAQ;IACjD,IAAI,CAACT,IAAI,CAAmBY,qBAAqB,CAACH,KAAK,CAAC;EAC3D;AACF","ignoreList":[]}
1
+ {"version":3,"names":["IndexSizeError","AudioNode","AnalyserNode","allowedFFTSize","fftSize","node","value","includes","minDecibels","maxDecibels","smoothingTimeConstant","window","frequencyBinCount","getFloatFrequencyData","array","getByteFrequencyData","getFloatTimeDomainData","getByteTimeDomainData"],"sourceRoot":"../../../src","sources":["core/AnalyserNode.ts"],"mappings":";;AAAA,SAASA,cAAc,QAAQ,oBAAW;AAG1C,OAAOC,SAAS,MAAM,gBAAa;AAEnC,eAAe,MAAMC,YAAY,SAASD,SAAS,CAAC;EAClD,OAAeE,cAAc,GAAa,CACxC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAC5D;EAED,IAAWC,OAAOA,CAAA,EAAW;IAC3B,OAAQ,IAAI,CAACC,IAAI,CAAmBD,OAAO;EAC7C;EAEA,IAAWA,OAAOA,CAACE,KAAa,EAAE;IAChC,IAAI,CAACJ,YAAY,CAACC,cAAc,CAACI,QAAQ,CAACD,KAAK,CAAC,EAAE;MAChD,MAAM,IAAIN,cAAc,CACtB,mBAAmBM,KAAK,6CAC1B,CAAC;IACH;IAEC,IAAI,CAACD,IAAI,CAAmBD,OAAO,GAAGE,KAAK;EAC9C;EAEA,IAAWE,WAAWA,CAAA,EAAW;IAC/B,OAAQ,IAAI,CAACH,IAAI,CAAmBG,WAAW;EACjD;EAEA,IAAWA,WAAWA,CAACF,KAAa,EAAE;IACpC,IAAIA,KAAK,IAAI,IAAI,CAACG,WAAW,EAAE;MAC7B,MAAM,IAAIT,cAAc,CACtB,0BAA0BM,KAAK,iCACjC,CAAC;IACH;IAEC,IAAI,CAACD,IAAI,CAAmBG,WAAW,GAAGF,KAAK;EAClD;EAEA,IAAWG,WAAWA,CAAA,EAAW;IAC/B,OAAQ,IAAI,CAACJ,IAAI,CAAmBI,WAAW;EACjD;EAEA,IAAWA,WAAWA,CAACH,KAAa,EAAE;IACpC,IAAIA,KAAK,IAAI,IAAI,CAACE,WAAW,EAAE;MAC7B,MAAM,IAAIR,cAAc,CACtB,0BAA0BM,KAAK,oCACjC,CAAC;IACH;IAEC,IAAI,CAACD,IAAI,CAAmBI,WAAW,GAAGH,KAAK;EAClD;EAEA,IAAWI,qBAAqBA,CAAA,EAAW;IACzC,OAAQ,IAAI,CAACL,IAAI,CAAmBK,qBAAqB;EAC3D;EAEA,IAAWA,qBAAqBA,CAACJ,KAAa,EAAE;IAC9C,IAAIA,KAAK,GAAG,CAAC,IAAIA,KAAK,GAAG,CAAC,EAAE;MAC1B,MAAM,IAAIN,cAAc,CACtB,oCAAoCM,KAAK,2BAC3C,CAAC;IACH;IAEC,IAAI,CAACD,IAAI,CAAmBK,qBAAqB,GAAGJ,KAAK;EAC5D;EAEA,IAAWK,MAAMA,CAAA,EAAe;IAC9B,OAAQ,IAAI,CAACN,IAAI,CAAmBM,MAAM;EAC5C;EAEA,IAAWA,MAAMA,CAACL,KAAiB,EAAE;IAClC,IAAI,CAACD,IAAI,CAAmBM,MAAM,GAAGL,KAAK;EAC7C;EAEA,IAAWM,iBAAiBA,CAAA,EAAW;IACrC,OAAQ,IAAI,CAACP,IAAI,CAAmBO,iBAAiB;EACvD;EAEOC,qBAAqBA,CAACC,KAAmB,EAAQ;IACrD,IAAI,CAACT,IAAI,CAAmBQ,qBAAqB,CAACC,KAAK,CAAC;EAC3D;EAEOC,oBAAoBA,CAACD,KAAiB,EAAQ;IAClD,IAAI,CAACT,IAAI,CAAmBU,oBAAoB,CAACD,KAAK,CAAC;EAC1D;EAEOE,sBAAsBA,CAACF,KAAmB,EAAQ;IACtD,IAAI,CAACT,IAAI,CAAmBW,sBAAsB,CAACF,KAAK,CAAC;EAC5D;EAEOG,qBAAqBA,CAACH,KAAiB,EAAQ;IACnD,IAAI,CAACT,IAAI,CAAmBY,qBAAqB,CAACH,KAAK,CAAC;EAC3D;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["IndexSizeError","AudioBuffer","constructor","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","copyFromChannel","destination","channelNumber","startInChannel","copyToChannel","source"],"sourceRoot":"../../../src","sources":["core/AudioBuffer.ts"],"mappings":";;AACA,SAASA,cAAc,QAAQ,oBAAW;AAE1C,eAAe,MAAMC,WAAW,CAAC;EAK/B;;EAGAC,WAAWA,CAACC,MAAoB,EAAE;IAChC,IAAI,CAACA,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGD,MAAM,CAACC,MAAM;IAC3B,IAAI,CAACC,QAAQ,GAAGF,MAAM,CAACE,QAAQ;IAC/B,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAI,CAACC,gBAAgB,GAAGJ,MAAM,CAACI,gBAAgB;EACjD;EAEOC,cAAcA,CAACC,OAAe,EAAY;IAC/C,IAAIA,OAAO,GAAG,CAAC,IAAIA,OAAO,IAAI,IAAI,CAACF,gBAAgB,EAAE;MACnD,MAAM,IAAIP,cAAc,CACtB,gCAAgCS,OAAO,8BAA8B,IAAI,CAACF,gBAAgB,GAAG,CAAC,GAChG,CAAC;IACH;IACA,OAAO,IAAI,CAACJ,MAAM,CAACK,cAAc,CAACC,OAAO,CAAC;EAC5C;EAEOC,eAAeA,CACpBC,WAAqB,EACrBC,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACL,gBAAgB,EAAE;MAC/D,MAAM,IAAIP,cAAc,CACtB,gCAAgCY,aAAa,8BAA8B,IAAI,CAACL,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIM,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACT,MAAM,EAAE;MACvD,MAAM,IAAIJ,cAAc,CACtB,uCAAuCa,cAAc,8BAA8B,IAAI,CAACT,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACO,eAAe,CAACC,WAAW,EAAEC,aAAa,EAAEC,cAAc,CAAC;EACzE;EAEOC,aAAaA,CAClBC,MAAgB,EAChBH,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACL,gBAAgB,EAAE;MAC/D,MAAM,IAAIP,cAAc,CACtB,gCAAgCY,aAAa,8BAA8B,IAAI,CAACL,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIM,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACT,MAAM,EAAE;MACvD,MAAM,IAAIJ,cAAc,CACtB,uCAAuCa,cAAc,8BAA8B,IAAI,CAACT,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACW,aAAa,CAACC,MAAM,EAAEH,aAAa,EAAEC,cAAc,CAAC;EAClE;AACF","ignoreList":[]}
1
+ {"version":3,"names":["IndexSizeError","AudioBuffer","constructor","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","copyFromChannel","destination","channelNumber","startInChannel","copyToChannel","source"],"sourceRoot":"../../../src","sources":["core/AudioBuffer.ts"],"mappings":";;AACA,SAASA,cAAc,QAAQ,oBAAW;AAE1C,eAAe,MAAMC,WAAW,CAAC;EAK/B;;EAGAC,WAAWA,CAACC,MAAoB,EAAE;IAChC,IAAI,CAACA,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGD,MAAM,CAACC,MAAM;IAC3B,IAAI,CAACC,QAAQ,GAAGF,MAAM,CAACE,QAAQ;IAC/B,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAI,CAACC,gBAAgB,GAAGJ,MAAM,CAACI,gBAAgB;EACjD;EAEOC,cAAcA,CAACC,OAAe,EAAgB;IACnD,IAAIA,OAAO,GAAG,CAAC,IAAIA,OAAO,IAAI,IAAI,CAACF,gBAAgB,EAAE;MACnD,MAAM,IAAIP,cAAc,CACtB,gCAAgCS,OAAO,8BAA8B,IAAI,CAACF,gBAAgB,GAAG,CAAC,GAChG,CAAC;IACH;IACA,OAAO,IAAI,CAACJ,MAAM,CAACK,cAAc,CAACC,OAAO,CAAC;EAC5C;EAEOC,eAAeA,CACpBC,WAAyB,EACzBC,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACL,gBAAgB,EAAE;MAC/D,MAAM,IAAIP,cAAc,CACtB,gCAAgCY,aAAa,8BAA8B,IAAI,CAACL,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIM,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACT,MAAM,EAAE;MACvD,MAAM,IAAIJ,cAAc,CACtB,uCAAuCa,cAAc,8BAA8B,IAAI,CAACT,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACO,eAAe,CAACC,WAAW,EAAEC,aAAa,EAAEC,cAAc,CAAC;EACzE;EAEOC,aAAaA,CAClBC,MAAoB,EACpBH,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACL,gBAAgB,EAAE;MAC/D,MAAM,IAAIP,cAAc,CACtB,gCAAgCY,aAAa,8BAA8B,IAAI,CAACL,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIM,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACT,MAAM,EAAE;MACvD,MAAM,IAAIJ,cAAc,CACtB,uCAAuCa,cAAc,8BAA8B,IAAI,CAACT,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACW,aAAa,CAACC,MAAM,EAAEH,aAAa,EAAEC,cAAc,CAAC;EAClE;AACF","ignoreList":[]}
@@ -42,12 +42,6 @@ export default class AudioBufferSourceNode extends AudioScheduledSourceNode {
42
42
  set loopEnd(value) {
43
43
  this.node.loopEnd = value;
44
44
  }
45
- get timeStretch() {
46
- return this.node.timeStretch;
47
- }
48
- set timeStretch(value) {
49
- this.node.timeStretch = value;
50
- }
51
45
  start(when = 0, offset = 0, duration) {
52
46
  if (when < 0) {
53
47
  throw new RangeError(`when must be a finite non-negative number: ${when}`);
@@ -1 +1 @@
1
- {"version":3,"names":["AudioScheduledSourceNode","AudioBuffer","AudioParam","InvalidStateError","RangeError","AudioBufferSourceNode","constructor","context","node","detune","playbackRate","buffer","loop","value","loopStart","loopEnd","timeStretch","start","when","offset","duration","hasBeenStarted"],"sourceRoot":"../../../src","sources":["core/AudioBufferSourceNode.ts"],"mappings":";;AACA,OAAOA,wBAAwB,MAAM,+BAA4B;AAEjE,OAAOC,WAAW,MAAM,kBAAe;AACvC,OAAOC,UAAU,MAAM,iBAAc;AACrC,SAASC,iBAAiB,EAAEC,UAAU,QAAQ,oBAAW;AAGzD,eAAe,MAAMC,qBAAqB,SAASL,wBAAwB,CAAC;EAI1EM,WAAWA,CAACC,OAAyB,EAAEC,IAA4B,EAAE;IACnE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIP,UAAU,CAACM,IAAI,CAACC,MAAM,CAAC;IACzC,IAAI,CAACC,YAAY,GAAG,IAAIR,UAAU,CAACM,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,IAAIV,WAAW,CAACU,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;EAEA,IAAWG,WAAWA,CAAA,EAAoB;IACxC,OAAQ,IAAI,CAACR,IAAI,CAA4BQ,WAAW;EAC1D;EAEA,IAAWA,WAAWA,CAACH,KAAsB,EAAE;IAC5C,IAAI,CAACL,IAAI,CAA4BQ,WAAW,GAAGH,KAAK;EAC3D;EAEOI,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAEC,MAAc,GAAG,CAAC,EAAEC,QAAiB,EAAQ;IAC1E,IAAIF,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAId,UAAU,CAClB,8CAA8Cc,IAAI,EACpD,CAAC;IACH;IAEA,IAAIC,MAAM,GAAG,CAAC,EAAE;MACd,MAAM,IAAIf,UAAU,CAClB,gDAAgDe,MAAM,EACxD,CAAC;IACH;IAEA,IAAIC,QAAQ,IAAIA,QAAQ,GAAG,CAAC,EAAE;MAC5B,MAAM,IAAIhB,UAAU,CAClB,kDAAkDgB,QAAQ,EAC5D,CAAC;IACH;IAEA,IAAI,IAAI,CAACC,cAAc,EAAE;MACvB,MAAM,IAAIlB,iBAAiB,CAAC,kCAAkC,CAAC;IACjE;IAEA,IAAI,CAACkB,cAAc,GAAG,IAAI;IACzB,IAAI,CAACb,IAAI,CAA4BS,KAAK,CAACC,IAAI,EAAEC,MAAM,EAAEC,QAAQ,CAAC;EACrE;AACF","ignoreList":[]}
1
+ {"version":3,"names":["AudioScheduledSourceNode","AudioBuffer","AudioParam","InvalidStateError","RangeError","AudioBufferSourceNode","constructor","context","node","detune","playbackRate","buffer","loop","value","loopStart","loopEnd","start","when","offset","duration","hasBeenStarted"],"sourceRoot":"../../../src","sources":["core/AudioBufferSourceNode.ts"],"mappings":";;AACA,OAAOA,wBAAwB,MAAM,+BAA4B;AAEjE,OAAOC,WAAW,MAAM,kBAAe;AACvC,OAAOC,UAAU,MAAM,iBAAc;AACrC,SAASC,iBAAiB,EAAEC,UAAU,QAAQ,oBAAW;AAEzD,eAAe,MAAMC,qBAAqB,SAASL,wBAAwB,CAAC;EAI1EM,WAAWA,CAACC,OAAyB,EAAEC,IAA4B,EAAE;IACnE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIP,UAAU,CAACM,IAAI,CAACC,MAAM,CAAC;IACzC,IAAI,CAACC,YAAY,GAAG,IAAIR,UAAU,CAACM,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,IAAIV,WAAW,CAACU,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;EAEOG,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAEC,MAAc,GAAG,CAAC,EAAEC,QAAiB,EAAQ;IAC1E,IAAIF,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIb,UAAU,CAClB,8CAA8Ca,IAAI,EACpD,CAAC;IACH;IAEA,IAAIC,MAAM,GAAG,CAAC,EAAE;MACd,MAAM,IAAId,UAAU,CAClB,gDAAgDc,MAAM,EACxD,CAAC;IACH;IAEA,IAAIC,QAAQ,IAAIA,QAAQ,GAAG,CAAC,EAAE;MAC5B,MAAM,IAAIf,UAAU,CAClB,kDAAkDe,QAAQ,EAC5D,CAAC;IACH;IAEA,IAAI,IAAI,CAACC,cAAc,EAAE;MACvB,MAAM,IAAIjB,iBAAiB,CAAC,kCAAkC,CAAC;IACjE;IAEA,IAAI,CAACiB,cAAc,GAAG,IAAI;IACzB,IAAI,CAACZ,IAAI,CAA4BQ,KAAK,CAACC,IAAI,EAAEC,MAAM,EAAEC,QAAQ,CAAC;EACrE;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["RangeError","InvalidStateError","AudioParam","constructor","audioParam","value","defaultValue","minValue","maxValue","setValueAtTime","startTime","linearRampToValueAtTime","endTime","exponentialRampToValueAtTime","setTargetAtTime","target","timeConstant","setValueCurveAtTime","values","duration","length","cancelScheduledValues","cancelTime","cancelAndHoldAtTime"],"sourceRoot":"../../../src","sources":["core/AudioParam.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["RangeError","InvalidStateError","AudioParam","constructor","audioParam","value","defaultValue","minValue","maxValue","setValueAtTime","startTime","linearRampToValueAtTime","endTime","exponentialRampToValueAtTime","setTargetAtTime","target","timeConstant","setValueCurveAtTime","values","duration","length","cancelScheduledValues","cancelTime","cancelAndHoldAtTime"],"sourceRoot":"../../../src","sources":["core/AudioParam.ts"],"mappings":"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","ignoreList":[]}
@@ -34,8 +34,9 @@ export default class BaseAudioContext {
34
34
  createBiquadFilter() {
35
35
  return new BiquadFilterNode(this, this.context.createBiquadFilter());
36
36
  }
37
- createBufferSource() {
38
- return new AudioBufferSourceNode(this, this.context.createBufferSource());
37
+ createBufferSource(options) {
38
+ const pitchCorrection = options?.pitchCorrection ?? false;
39
+ return new AudioBufferSourceNode(this, this.context.createBufferSource(pitchCorrection));
39
40
  }
40
41
  createBuffer(numOfChannels, length, sampleRate) {
41
42
  if (numOfChannels < 1 || numOfChannels >= 32) {
@@ -1 +1 @@
1
- {"version":3,"names":["AudioDestinationNode","OscillatorNode","GainNode","StereoPannerNode","BiquadFilterNode","AudioBufferSourceNode","AudioBuffer","PeriodicWave","AnalyserNode","InvalidAccessError","NotSupportedError","BaseAudioContext","constructor","context","destination","sampleRate","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","disableNormalization","createAnalyser","decodeAudioDataSource","sourcePath","startsWith","replace"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AudioDestinationNode","OscillatorNode","GainNode","StereoPannerNode","BiquadFilterNode","AudioBufferSourceNode","AudioBuffer","PeriodicWave","AnalyserNode","InvalidAccessError","NotSupportedError","BaseAudioContext","constructor","context","destination","sampleRate","currentTime","state","createOscillator","createGain","createStereoPanner","createBiquadFilter","createBufferSource","options","pitchCorrection","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","disableNormalization","createAnalyser","decodeAudioDataSource","sourcePath","startsWith","replace"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["InvalidAccessError","AudioNode","AudioParam","BiquadFilterNode","constructor","context","biquadFilter","frequency","detune","Q","gain","type","node","value","getFrequencyResponse","frequencyArray","magResponseOutput","phaseResponseOutput","length"],"sourceRoot":"../../../src","sources":["core/BiquadFilterNode.ts"],"mappings":";;AAAA,SAASA,kBAAkB,QAAQ,oBAAW;AAE9C,OAAOC,SAAS,MAAM,gBAAa;AACnC,OAAOC,UAAU,MAAM,iBAAc;AAIrC,eAAe,MAAMC,gBAAgB,SAASF,SAAS,CAAC;EAMtDG,WAAWA,CAACC,OAAyB,EAAEC,YAA+B,EAAE;IACtE,KAAK,CAACD,OAAO,EAAEC,YAAY,CAAC;IAC5B,IAAI,CAACC,SAAS,GAAG,IAAIL,UAAU,CAACI,YAAY,CAACC,SAAS,CAAC;IACvD,IAAI,CAACC,MAAM,GAAG,IAAIN,UAAU,CAACI,YAAY,CAACE,MAAM,CAAC;IACjD,IAAI,CAACC,CAAC,GAAG,IAAIP,UAAU,CAACI,YAAY,CAACG,CAAC,CAAC;IACvC,IAAI,CAACC,IAAI,GAAG,IAAIR,UAAU,CAACI,YAAY,CAACI,IAAI,CAAC;EAC/C;EAEA,IAAWC,IAAIA,CAAA,EAAqB;IAClC,OAAQ,IAAI,CAACC,IAAI,CAAuBD,IAAI;EAC9C;EAEA,IAAWA,IAAIA,CAACE,KAAuB,EAAE;IACtC,IAAI,CAACD,IAAI,CAAuBD,IAAI,GAAGE,KAAK;EAC/C;EAEOC,oBAAoBA,CACzBC,cAAwB,EACxBC,iBAA2B,EAC3BC,mBAA6B,EAC7B;IACA,IACEF,cAAc,CAACG,MAAM,KAAKF,iBAAiB,CAACE,MAAM,IAClDH,cAAc,CAACG,MAAM,KAAKD,mBAAmB,CAACC,MAAM,EACpD;MACA,MAAM,IAAIlB,kBAAkB,CAC1B,8DAA8De,cAAc,CAACG,MAAM,wBAAwBF,iBAAiB,CAACE,MAAM,0BAA0BD,mBAAmB,CAACC,MAAM,EACzL,CAAC;IACH;IACC,IAAI,CAACN,IAAI,CAAuBE,oBAAoB,CACnDC,cAAc,EACdC,iBAAiB,EACjBC,mBACF,CAAC;EACH;AACF","ignoreList":[]}
1
+ {"version":3,"names":["InvalidAccessError","AudioNode","AudioParam","BiquadFilterNode","constructor","context","biquadFilter","frequency","detune","Q","gain","type","node","value","getFrequencyResponse","frequencyArray","magResponseOutput","phaseResponseOutput","length"],"sourceRoot":"../../../src","sources":["core/BiquadFilterNode.ts"],"mappings":";;AAAA,SAASA,kBAAkB,QAAQ,oBAAW;AAE9C,OAAOC,SAAS,MAAM,gBAAa;AACnC,OAAOC,UAAU,MAAM,iBAAc;AAIrC,eAAe,MAAMC,gBAAgB,SAASF,SAAS,CAAC;EAMtDG,WAAWA,CAACC,OAAyB,EAAEC,YAA+B,EAAE;IACtE,KAAK,CAACD,OAAO,EAAEC,YAAY,CAAC;IAC5B,IAAI,CAACC,SAAS,GAAG,IAAIL,UAAU,CAACI,YAAY,CAACC,SAAS,CAAC;IACvD,IAAI,CAACC,MAAM,GAAG,IAAIN,UAAU,CAACI,YAAY,CAACE,MAAM,CAAC;IACjD,IAAI,CAACC,CAAC,GAAG,IAAIP,UAAU,CAACI,YAAY,CAACG,CAAC,CAAC;IACvC,IAAI,CAACC,IAAI,GAAG,IAAIR,UAAU,CAACI,YAAY,CAACI,IAAI,CAAC;EAC/C;EAEA,IAAWC,IAAIA,CAAA,EAAqB;IAClC,OAAQ,IAAI,CAACC,IAAI,CAAuBD,IAAI;EAC9C;EAEA,IAAWA,IAAIA,CAACE,KAAuB,EAAE;IACtC,IAAI,CAACD,IAAI,CAAuBD,IAAI,GAAGE,KAAK;EAC/C;EAEOC,oBAAoBA,CACzBC,cAA4B,EAC5BC,iBAA+B,EAC/BC,mBAAiC,EACjC;IACA,IACEF,cAAc,CAACG,MAAM,KAAKF,iBAAiB,CAACE,MAAM,IAClDH,cAAc,CAACG,MAAM,KAAKD,mBAAmB,CAACC,MAAM,EACpD;MACA,MAAM,IAAIlB,kBAAkB,CAC1B,8DAA8De,cAAc,CAACG,MAAM,wBAAwBF,iBAAiB,CAACE,MAAM,0BAA0BD,mBAAmB,CAACC,MAAM,EACzL,CAAC;IACH;IACC,IAAI,CAACN,IAAI,CAAuBE,oBAAoB,CACnDC,cAAc,EACdC,iBAAiB,EACjBC,mBACF,CAAC;EACH;AACF","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function clamp(value, min, max) {
4
+ return Math.min(Math.max(value, min), max);
5
+ }
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["clamp","value","min","max","Math"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AAAA,OAAO,SAASA,KAAKA,CAACC,KAAa,EAAEC,GAAW,EAAEC,GAAW,EAAU;EACrE,OAAOC,IAAI,CAACF,GAAG,CAACE,IAAI,CAACD,GAAG,CAACF,KAAK,EAAEC,GAAG,CAAC,EAAEC,GAAG,CAAC;AAC5C","ignoreList":[]}
@@ -17,32 +17,16 @@ export default class AnalyserNode extends AudioNode {
17
17
  console.log('React Native Audio API: setting window is not supported on web');
18
18
  }
19
19
  getByteFrequencyData(array) {
20
- const data = new Uint8Array(array);
21
- this.node.getByteFrequencyData(data);
22
- for (let i = 0; i < array.length; i++) {
23
- array[i] = data[i];
24
- }
20
+ this.node.getByteFrequencyData(array);
25
21
  }
26
22
  getByteTimeDomainData(array) {
27
- const data = new Uint8Array(array);
28
- this.node.getByteTimeDomainData(data);
29
- for (let i = 0; i < array.length; i++) {
30
- array[i] = data[i];
31
- }
23
+ this.node.getByteTimeDomainData(array);
32
24
  }
33
25
  getFloatFrequencyData(array) {
34
- const data = new Float32Array(array);
35
- this.node.getFloatFrequencyData(data);
36
- for (let i = 0; i < array.length; i++) {
37
- array[i] = data[i];
38
- }
26
+ this.node.getFloatFrequencyData(array);
39
27
  }
40
28
  getFloatTimeDomainData(array) {
41
- const data = new Float32Array(array);
42
- this.node.getFloatTimeDomainData(data);
43
- for (let i = 0; i < array.length; i++) {
44
- array[i] = data[i];
45
- }
29
+ this.node.getFloatTimeDomainData(array);
46
30
  }
47
31
  }
48
32
  //# sourceMappingURL=AnalyserNode.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["AudioNode","AnalyserNode","constructor","context","node","fftSize","frequencyBinCount","minDecibels","maxDecibels","smoothingTimeConstant","window","value","console","log","getByteFrequencyData","array","data","Uint8Array","i","length","getByteTimeDomainData","getFloatFrequencyData","Float32Array","getFloatTimeDomainData"],"sourceRoot":"../../../src","sources":["web-core/AnalyserNode.tsx"],"mappings":";;AAAA,OAAOA,SAAS,MAAM,gBAAa;AAInC,eAAe,MAAMC,YAAY,SAASD,SAAS,CAAC;EAOlDE,WAAWA,CAACC,OAAyB,EAAEC,IAA6B,EAAE;IACpE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,OAAO,GAAGD,IAAI,CAACC,OAAO;IAC3B,IAAI,CAACC,iBAAiB,GAAGF,IAAI,CAACE,iBAAiB;IAC/C,IAAI,CAACC,WAAW,GAAGH,IAAI,CAACG,WAAW;IACnC,IAAI,CAACC,WAAW,GAAGJ,IAAI,CAACI,WAAW;IACnC,IAAI,CAACC,qBAAqB,GAAGL,IAAI,CAACK,qBAAqB;EACzD;EAEA,IAAWC,MAAMA,CAAA,EAAe;IAC9B,OAAO,UAAU;EACnB;EAEA,IAAWA,MAAMA,CAACC,KAAiB,EAAE;IACnCC,OAAO,CAACC,GAAG,CACT,gEACF,CAAC;EACH;EAEOC,oBAAoBA,CAACC,KAAe,EAAQ;IACjD,MAAMC,IAAI,GAAG,IAAIC,UAAU,CAACF,KAAK,CAAC;IAEjC,IAAI,CAACX,IAAI,CAA6BU,oBAAoB,CAACE,IAAI,CAAC;IAEjE,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;MACrCH,KAAK,CAACG,CAAC,CAAC,GAAGF,IAAI,CAACE,CAAC,CAAC;IACpB;EACF;EAEOE,qBAAqBA,CAACL,KAAe,EAAQ;IAClD,MAAMC,IAAI,GAAG,IAAIC,UAAU,CAACF,KAAK,CAAC;IAEjC,IAAI,CAACX,IAAI,CAA6BgB,qBAAqB,CAACJ,IAAI,CAAC;IAElE,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;MACrCH,KAAK,CAACG,CAAC,CAAC,GAAGF,IAAI,CAACE,CAAC,CAAC;IACpB;EACF;EAEOG,qBAAqBA,CAACN,KAAe,EAAQ;IAClD,MAAMC,IAAI,GAAG,IAAIM,YAAY,CAACP,KAAK,CAAC;IACnC,IAAI,CAACX,IAAI,CAA6BiB,qBAAqB,CAACL,IAAI,CAAC;IAElE,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;MACrCH,KAAK,CAACG,CAAC,CAAC,GAAGF,IAAI,CAACE,CAAC,CAAC;IACpB;EACF;EAEOK,sBAAsBA,CAACR,KAAe,EAAQ;IACnD,MAAMC,IAAI,GAAG,IAAIM,YAAY,CAACP,KAAK,CAAC;IACnC,IAAI,CAACX,IAAI,CAA6BmB,sBAAsB,CAACP,IAAI,CAAC;IAEnE,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;MACrCH,KAAK,CAACG,CAAC,CAAC,GAAGF,IAAI,CAACE,CAAC,CAAC;IACpB;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["AudioNode","AnalyserNode","constructor","context","node","fftSize","frequencyBinCount","minDecibels","maxDecibels","smoothingTimeConstant","window","value","console","log","getByteFrequencyData","array","getByteTimeDomainData","getFloatFrequencyData","getFloatTimeDomainData"],"sourceRoot":"../../../src","sources":["web-core/AnalyserNode.tsx"],"mappings":";;AAAA,OAAOA,SAAS,MAAM,gBAAa;AAInC,eAAe,MAAMC,YAAY,SAASD,SAAS,CAAC;EAOlDE,WAAWA,CAACC,OAAyB,EAAEC,IAA6B,EAAE;IACpE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,OAAO,GAAGD,IAAI,CAACC,OAAO;IAC3B,IAAI,CAACC,iBAAiB,GAAGF,IAAI,CAACE,iBAAiB;IAC/C,IAAI,CAACC,WAAW,GAAGH,IAAI,CAACG,WAAW;IACnC,IAAI,CAACC,WAAW,GAAGJ,IAAI,CAACI,WAAW;IACnC,IAAI,CAACC,qBAAqB,GAAGL,IAAI,CAACK,qBAAqB;EACzD;EAEA,IAAWC,MAAMA,CAAA,EAAe;IAC9B,OAAO,UAAU;EACnB;EAEA,IAAWA,MAAMA,CAACC,KAAiB,EAAE;IACnCC,OAAO,CAACC,GAAG,CACT,gEACF,CAAC;EACH;EAEOC,oBAAoBA,CAACC,KAAiB,EAAQ;IAClD,IAAI,CAACX,IAAI,CAA6BU,oBAAoB,CAACC,KAAK,CAAC;EACpE;EAEOC,qBAAqBA,CAACD,KAAiB,EAAQ;IACnD,IAAI,CAACX,IAAI,CAA6BY,qBAAqB,CAACD,KAAK,CAAC;EACrE;EAEOE,qBAAqBA,CAACF,KAAmB,EAAQ;IACrD,IAAI,CAACX,IAAI,CAA6Ba,qBAAqB,CAACF,KAAK,CAAC;EACrE;EAEOG,sBAAsBA,CAACH,KAAmB,EAAQ;IACtD,IAAI,CAACX,IAAI,CAA6Bc,sBAAsB,CAACH,KAAK,CAAC;EACtE;AACF","ignoreList":[]}
@@ -24,11 +24,7 @@ export default class AudioBuffer {
24
24
  if (startInChannel < 0 || startInChannel >= this.length) {
25
25
  throw new IndexSizeError(`The startInChannel number provided (${startInChannel}) is outside the range [0, ${this.length - 1}]`);
26
26
  }
27
- const array = new Float32Array(destination);
28
- this.buffer.copyFromChannel(array, channelNumber, startInChannel);
29
- for (let i = 0; i < destination.length; i++) {
30
- destination[i] = array[i];
31
- }
27
+ this.buffer.copyFromChannel(destination, channelNumber, startInChannel);
32
28
  }
33
29
  copyToChannel(source, channelNumber, startInChannel = 0) {
34
30
  if (channelNumber < 0 || channelNumber >= this.numberOfChannels) {
@@ -37,7 +33,7 @@ export default class AudioBuffer {
37
33
  if (startInChannel < 0 || startInChannel >= this.length) {
38
34
  throw new IndexSizeError(`The startInChannel number provided (${startInChannel}) is outside the range [0, ${this.length - 1}]`);
39
35
  }
40
- this.buffer.copyToChannel(new Float32Array(source), channelNumber, startInChannel);
36
+ this.buffer.copyToChannel(source, channelNumber, startInChannel);
41
37
  }
42
38
  }
43
39
  //# sourceMappingURL=AudioBuffer.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["IndexSizeError","AudioBuffer","constructor","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","copyFromChannel","destination","channelNumber","startInChannel","array","Float32Array","i","copyToChannel","source"],"sourceRoot":"../../../src","sources":["web-core/AudioBuffer.tsx"],"mappings":";;AAAA,SAASA,cAAc,QAAQ,oBAAW;AAE1C,eAAe,MAAMC,WAAW,CAAC;EAM/B;;EAGAC,WAAWA,CAACC,MAA8B,EAAE;IAC1C,IAAI,CAACA,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGD,MAAM,CAACC,MAAM;IAC3B,IAAI,CAACC,QAAQ,GAAGF,MAAM,CAACE,QAAQ;IAC/B,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAI,CAACC,gBAAgB,GAAGJ,MAAM,CAACI,gBAAgB;EACjD;EAEOC,cAAcA,CAACC,OAAe,EAAgB;IACnD,IAAIA,OAAO,GAAG,CAAC,IAAIA,OAAO,IAAI,IAAI,CAACF,gBAAgB,EAAE;MACnD,MAAM,IAAIP,cAAc,CACtB,gCAAgCS,OAAO,8BAA8B,IAAI,CAACF,gBAAgB,GAAG,CAAC,GAChG,CAAC;IACH;IAEA,OAAO,IAAI,CAACJ,MAAM,CAACK,cAAc,CAACC,OAAO,CAAC;EAC5C;EAEOC,eAAeA,CACpBC,WAAqB,EACrBC,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACL,gBAAgB,EAAE;MAC/D,MAAM,IAAIP,cAAc,CACtB,gCAAgCY,aAAa,8BAA8B,IAAI,CAACL,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIM,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACT,MAAM,EAAE;MACvD,MAAM,IAAIJ,cAAc,CACtB,uCAAuCa,cAAc,8BAA8B,IAAI,CAACT,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,MAAMU,KAAK,GAAG,IAAIC,YAAY,CAACJ,WAAW,CAAC;IAE3C,IAAI,CAACR,MAAM,CAACO,eAAe,CAACI,KAAK,EAAEF,aAAa,EAAEC,cAAc,CAAC;IAEjE,KAAK,IAAIG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,WAAW,CAACP,MAAM,EAAEY,CAAC,EAAE,EAAE;MAC3CL,WAAW,CAACK,CAAC,CAAC,GAAGF,KAAK,CAACE,CAAC,CAAC;IAC3B;EACF;EAEOC,aAAaA,CAClBC,MAAgB,EAChBN,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACL,gBAAgB,EAAE;MAC/D,MAAM,IAAIP,cAAc,CACtB,gCAAgCY,aAAa,8BAA8B,IAAI,CAACL,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIM,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACT,MAAM,EAAE;MACvD,MAAM,IAAIJ,cAAc,CACtB,uCAAuCa,cAAc,8BAA8B,IAAI,CAACT,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACc,aAAa,CACvB,IAAIF,YAAY,CAACG,MAAM,CAAC,EACxBN,aAAa,EACbC,cACF,CAAC;EACH;AACF","ignoreList":[]}
1
+ {"version":3,"names":["IndexSizeError","AudioBuffer","constructor","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","copyFromChannel","destination","channelNumber","startInChannel","copyToChannel","source"],"sourceRoot":"../../../src","sources":["web-core/AudioBuffer.tsx"],"mappings":";;AAAA,SAASA,cAAc,QAAQ,oBAAW;AAE1C,eAAe,MAAMC,WAAW,CAAC;EAM/B;;EAGAC,WAAWA,CAACC,MAA8B,EAAE;IAC1C,IAAI,CAACA,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGD,MAAM,CAACC,MAAM;IAC3B,IAAI,CAACC,QAAQ,GAAGF,MAAM,CAACE,QAAQ;IAC/B,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAI,CAACC,gBAAgB,GAAGJ,MAAM,CAACI,gBAAgB;EACjD;EAEOC,cAAcA,CAACC,OAAe,EAAgB;IACnD,IAAIA,OAAO,GAAG,CAAC,IAAIA,OAAO,IAAI,IAAI,CAACF,gBAAgB,EAAE;MACnD,MAAM,IAAIP,cAAc,CACtB,gCAAgCS,OAAO,8BAA8B,IAAI,CAACF,gBAAgB,GAAG,CAAC,GAChG,CAAC;IACH;IAEA,OAAO,IAAI,CAACJ,MAAM,CAACK,cAAc,CAACC,OAAO,CAAC;EAC5C;EAEOC,eAAeA,CACpBC,WAAyB,EACzBC,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACL,gBAAgB,EAAE;MAC/D,MAAM,IAAIP,cAAc,CACtB,gCAAgCY,aAAa,8BAA8B,IAAI,CAACL,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIM,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACT,MAAM,EAAE;MACvD,MAAM,IAAIJ,cAAc,CACtB,uCAAuCa,cAAc,8BAA8B,IAAI,CAACT,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACO,eAAe,CAACC,WAAW,EAAEC,aAAa,EAAEC,cAAc,CAAC;EACzE;EAEOC,aAAaA,CAClBC,MAAoB,EACpBH,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACL,gBAAgB,EAAE;MAC/D,MAAM,IAAIP,cAAc,CACtB,gCAAgCY,aAAa,8BAA8B,IAAI,CAACL,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIM,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACT,MAAM,EAAE;MACvD,MAAM,IAAIJ,cAAc,CACtB,uCAAuCa,cAAc,8BAA8B,IAAI,CAACT,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACW,aAAa,CAACC,MAAM,EAAEH,aAAa,EAAEC,cAAc,CAAC;EAClE;AACF","ignoreList":[]}
@@ -1,52 +1,168 @@
1
1
  "use strict";
2
2
 
3
- import AudioScheduledSourceNode from "./AudioScheduledSourceNode.js";
3
+ import { InvalidStateError, RangeError } from "../errors/index.js";
4
4
  import AudioParam from "./AudioParam.js";
5
5
  import AudioBuffer from "./AudioBuffer.js";
6
- import { InvalidStateError, RangeError } from "../errors/index.js";
6
+ import AudioScheduledSourceNode from "./AudioScheduledSourceNode.js";
7
+ import { clamp } from "../utils/index.js";
8
+ import { globalTag } from "./custom/LoadCustomWasm.js";
9
+ class IStretcherNodeAudioParam {
10
+ constructor(value, setter, automationRate, minValue, maxValue, defaultValue) {
11
+ this._value = value;
12
+ this.automationRate = automationRate;
13
+ this.minValue = minValue;
14
+ this.maxValue = maxValue;
15
+ this.defaultValue = defaultValue;
16
+ this._setter = setter;
17
+ }
18
+ get value() {
19
+ return this._value;
20
+ }
21
+ set value(value) {
22
+ this._value = value;
23
+ this._setter(value);
24
+ }
25
+ cancelAndHoldAtTime(cancelTime) {
26
+ this._setter(this.defaultValue, cancelTime);
27
+ return this;
28
+ }
29
+ cancelScheduledValues(cancelTime) {
30
+ this._setter(this.defaultValue, cancelTime);
31
+ return this;
32
+ }
33
+ exponentialRampToValueAtTime(_value, _endTime) {
34
+ console.warn('exponentialRampToValueAtTime is not implemented for pitch correction mode');
35
+ return this;
36
+ }
37
+ linearRampToValueAtTime(_value, _endTime) {
38
+ console.warn('linearRampToValueAtTime is not implemented for pitch correction mode');
39
+ return this;
40
+ }
41
+ setTargetAtTime(_target, _startTime, _timeConstant) {
42
+ console.warn('setTargetAtTime is not implemented for pitch correction mode');
43
+ return this;
44
+ }
45
+ setValueAtTime(value, startTime) {
46
+ this._setter(value, startTime);
47
+ return this;
48
+ }
49
+ setValueCurveAtTime(_values, _startTime, _duration) {
50
+ console.warn('setValueCurveAtTime is not implemented for pitch correction mode');
51
+ return this;
52
+ }
53
+ }
7
54
  export default class AudioBufferSourceNode extends AudioScheduledSourceNode {
8
- constructor(context, node) {
55
+ _loop = false;
56
+ _loopStart = -1;
57
+ _loopEnd = -1;
58
+ _buffer = null;
59
+ constructor(context, node, pitchCorrection) {
9
60
  super(context, node);
10
- this.detune = new AudioParam(node.detune);
11
- this.playbackRate = new AudioParam(node.playbackRate);
61
+ this._pitchCorrection = pitchCorrection;
62
+ if (pitchCorrection) {
63
+ this.detune = new AudioParam(new IStretcherNodeAudioParam(0, this.setDetune.bind(this), 'a-rate', -1200, 1200, 0));
64
+ this.playbackRate = new AudioParam(new IStretcherNodeAudioParam(1, this.setPlaybackRate.bind(this), 'a-rate', 0, Infinity, 1));
65
+ } else {
66
+ this.detune = new AudioParam(node.detune);
67
+ this.playbackRate = new AudioParam(node.playbackRate);
68
+ }
69
+ }
70
+ isStretcherNode() {
71
+ return this._pitchCorrection;
72
+ }
73
+ asStretcher() {
74
+ return this.node;
75
+ }
76
+ asBufferSource() {
77
+ return this.node;
78
+ }
79
+ setDetune(value, when = 0) {
80
+ if (!this.isStretcherNode() || !this.hasBeenStarted) {
81
+ return;
82
+ }
83
+ this.asStretcher().schedule({
84
+ semitones: Math.floor(clamp(value / 100, -12, 12)),
85
+ output: when
86
+ });
87
+ }
88
+ setPlaybackRate(value, when = 0) {
89
+ if (!this.isStretcherNode() || !this.hasBeenStarted) {
90
+ return;
91
+ }
92
+ this.asStretcher().schedule({
93
+ rate: value,
94
+ output: when
95
+ });
12
96
  }
13
97
  get buffer() {
14
- const buffer = this.node.buffer;
98
+ if (this.isStretcherNode()) {
99
+ return this._buffer;
100
+ }
101
+ const buffer = this.asBufferSource().buffer;
15
102
  if (!buffer) {
16
103
  return null;
17
104
  }
18
105
  return new AudioBuffer(buffer);
19
106
  }
20
107
  set buffer(buffer) {
108
+ if (this.isStretcherNode()) {
109
+ this._buffer = buffer;
110
+ const stretcher = this.asStretcher();
111
+ stretcher.dropBuffers();
112
+ if (!buffer) {
113
+ return;
114
+ }
115
+ const channelArrays = [];
116
+ for (let i = 0; i < buffer.numberOfChannels; i++) {
117
+ channelArrays.push(buffer.getChannelData(i));
118
+ }
119
+ stretcher.addBuffers(channelArrays);
120
+ return;
121
+ }
21
122
  if (!buffer) {
22
- this.node = null;
123
+ this.asBufferSource().buffer = null;
23
124
  return;
24
125
  }
25
- this.node.buffer = buffer.buffer;
126
+ this.asBufferSource().buffer = buffer.buffer;
26
127
  }
27
128
  get loop() {
28
- return this.node.loop;
129
+ if (this.isStretcherNode()) {
130
+ return this._loop;
131
+ }
132
+ return this.asBufferSource().loop;
29
133
  }
30
134
  set loop(value) {
31
- this.node.loop = value;
135
+ if (this.isStretcherNode()) {
136
+ this._loop = value;
137
+ return;
138
+ }
139
+ this.asBufferSource().loop = value;
32
140
  }
33
141
  get loopStart() {
34
- return this.node.loopStart;
142
+ if (this.isStretcherNode()) {
143
+ return this._loopStart;
144
+ }
145
+ return this.asBufferSource().loopStart;
35
146
  }
36
147
  set loopStart(value) {
37
- this.node.loopStart = value;
148
+ if (this.isStretcherNode()) {
149
+ this._loopStart = value;
150
+ return;
151
+ }
152
+ this.asBufferSource().loopStart = value;
38
153
  }
39
154
  get loopEnd() {
40
- return this.node.loopEnd;
155
+ if (this.isStretcherNode()) {
156
+ return this._loopEnd;
157
+ }
158
+ return this.asBufferSource().loopEnd;
41
159
  }
42
160
  set loopEnd(value) {
43
- this.node.loopEnd = value;
44
- }
45
- get timeStretch() {
46
- return 'linear';
47
- }
48
- set timeStretch(value) {
49
- console.log('React Native Audio API: setting timeStretch is not supported on web');
161
+ if (this.isStretcherNode()) {
162
+ this._loopEnd = value;
163
+ return;
164
+ }
165
+ this.asBufferSource().loopEnd = value;
50
166
  }
51
167
  start(when, offset, duration) {
52
168
  if (when && when < 0) {
@@ -62,7 +178,31 @@ export default class AudioBufferSourceNode extends AudioScheduledSourceNode {
62
178
  throw new InvalidStateError('Cannot call start more than once');
63
179
  }
64
180
  this.hasBeenStarted = true;
65
- this.node.start(when, offset, duration);
181
+ if (!this.isStretcherNode()) {
182
+ this.asBufferSource().start(when, offset, duration);
183
+ return;
184
+ }
185
+ const startAt = !when || when < this.context.currentTime ? this.context.currentTime : when;
186
+ if (this.loop && this._loopStart !== -1 && this._loopEnd !== -1) {
187
+ this.asStretcher().schedule({
188
+ loopStart: this._loopStart,
189
+ loopEnd: this._loopEnd
190
+ });
191
+ }
192
+ this.asStretcher().start(startAt, offset, duration, this.playbackRate.value, Math.floor(clamp(this.detune.value / 100, -12, 12)));
193
+ }
194
+ stop(when = 0) {
195
+ if (when < 0) {
196
+ throw new RangeError(`when must be a finite non-negative number: ${when}`);
197
+ }
198
+ if (!this.hasBeenStarted) {
199
+ throw new InvalidStateError('Cannot call stop without calling start first');
200
+ }
201
+ if (!this.isStretcherNode()) {
202
+ this.asBufferSource().stop(when);
203
+ return;
204
+ }
205
+ this.asStretcher().stop(when);
66
206
  }
67
207
  }
68
208
  //# sourceMappingURL=AudioBufferSourceNode.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["AudioScheduledSourceNode","AudioParam","AudioBuffer","InvalidStateError","RangeError","AudioBufferSourceNode","constructor","context","node","detune","playbackRate","buffer","loop","value","loopStart","loopEnd","timeStretch","console","log","start","when","offset","duration","hasBeenStarted"],"sourceRoot":"../../../src","sources":["web-core/AudioBufferSourceNode.tsx"],"mappings":";;AAAA,OAAOA,wBAAwB,MAAM,+BAA4B;AACjE,OAAOC,UAAU,MAAM,iBAAc;AACrC,OAAOC,WAAW,MAAM,kBAAe;AACvC,SAASC,iBAAiB,EAAEC,UAAU,QAAQ,oBAAW;AAIzD,eAAe,MAAMC,qBAAqB,SAASL,wBAAwB,CAAC;EAI1EM,WAAWA,CACTC,OAAyB,EACzBC,IAAsC,EACtC;IACA,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIR,UAAU,CAACO,IAAI,CAACC,MAAM,CAAC;IACzC,IAAI,CAACC,YAAY,GAAG,IAAIT,UAAU,CAACO,IAAI,CAACE,YAAY,CAAC;EACvD;EAEA,IAAWC,MAAMA,CAAA,EAAuB;IACtC,MAAMA,MAAM,GAAI,IAAI,CAACH,IAAI,CAAsCG,MAAM;IAErE,IAAI,CAACA,MAAM,EAAE;MACX,OAAO,IAAI;IACb;IAEA,OAAO,IAAIT,WAAW,CAACS,MAAM,CAAC;EAChC;EAEA,IAAWA,MAAMA,CAACA,MAA0B,EAAE;IAC5C,IAAI,CAACA,MAAM,EAAE;MACV,IAAI,CAACH,IAAI,GAA+C,IAAI;MAC7D;IACF;IAEC,IAAI,CAACA,IAAI,CAAsCG,MAAM,GAAGA,MAAM,CAACA,MAAM;EACxE;EAEA,IAAWC,IAAIA,CAAA,EAAY;IACzB,OAAQ,IAAI,CAACJ,IAAI,CAAsCI,IAAI;EAC7D;EAEA,IAAWA,IAAIA,CAACC,KAAc,EAAE;IAC7B,IAAI,CAACL,IAAI,CAAsCI,IAAI,GAAGC,KAAK;EAC9D;EAEA,IAAWC,SAASA,CAAA,EAAW;IAC7B,OAAQ,IAAI,CAACN,IAAI,CAAsCM,SAAS;EAClE;EAEA,IAAWA,SAASA,CAACD,KAAa,EAAE;IACjC,IAAI,CAACL,IAAI,CAAsCM,SAAS,GAAGD,KAAK;EACnE;EAEA,IAAWE,OAAOA,CAAA,EAAW;IAC3B,OAAQ,IAAI,CAACP,IAAI,CAAsCO,OAAO;EAChE;EAEA,IAAWA,OAAOA,CAACF,KAAa,EAAE;IAC/B,IAAI,CAACL,IAAI,CAAsCO,OAAO,GAAGF,KAAK;EACjE;EAEA,IAAWG,WAAWA,CAAA,EAAoB;IACxC,OAAO,QAAQ;EACjB;EAEA,IAAWA,WAAWA,CAACH,KAAsB,EAAE;IAC7CI,OAAO,CAACC,GAAG,CACT,qEACF,CAAC;EACH;EAEOC,KAAKA,CAACC,IAAa,EAAEC,MAAe,EAAEC,QAAiB,EAAQ;IACpE,IAAIF,IAAI,IAAIA,IAAI,GAAG,CAAC,EAAE;MACpB,MAAM,IAAIhB,UAAU,CAClB,8CAA8CgB,IAAI,EACpD,CAAC;IACH;IAEA,IAAIC,MAAM,IAAIA,MAAM,GAAG,CAAC,EAAE;MACxB,MAAM,IAAIjB,UAAU,CAClB,gDAAgDiB,MAAM,EACxD,CAAC;IACH;IAEA,IAAIC,QAAQ,IAAIA,QAAQ,GAAG,CAAC,EAAE;MAC5B,MAAM,IAAIlB,UAAU,CAClB,kDAAkDkB,QAAQ,EAC5D,CAAC;IACH;IAEA,IAAI,IAAI,CAACC,cAAc,EAAE;MACvB,MAAM,IAAIpB,iBAAiB,CAAC,kCAAkC,CAAC;IACjE;IAEA,IAAI,CAACoB,cAAc,GAAG,IAAI;IACzB,IAAI,CAACf,IAAI,CAAsCW,KAAK,CACnDC,IAAI,EACJC,MAAM,EACNC,QACF,CAAC;EACH;AACF","ignoreList":[]}
1
+ {"version":3,"names":["InvalidStateError","RangeError","AudioParam","AudioBuffer","AudioScheduledSourceNode","clamp","globalTag","IStretcherNodeAudioParam","constructor","value","setter","automationRate","minValue","maxValue","defaultValue","_value","_setter","cancelAndHoldAtTime","cancelTime","cancelScheduledValues","exponentialRampToValueAtTime","_endTime","console","warn","linearRampToValueAtTime","setTargetAtTime","_target","_startTime","_timeConstant","setValueAtTime","startTime","setValueCurveAtTime","_values","_duration","AudioBufferSourceNode","_loop","_loopStart","_loopEnd","_buffer","context","node","pitchCorrection","_pitchCorrection","detune","setDetune","bind","playbackRate","setPlaybackRate","Infinity","isStretcherNode","asStretcher","asBufferSource","when","hasBeenStarted","schedule","semitones","Math","floor","output","rate","buffer","stretcher","dropBuffers","channelArrays","i","numberOfChannels","push","getChannelData","addBuffers","loop","loopStart","loopEnd","start","offset","duration","startAt","currentTime","stop"],"sourceRoot":"../../../src","sources":["web-core/AudioBufferSourceNode.tsx"],"mappings":"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","ignoreList":[]}
@@ -10,7 +10,6 @@ import GainNode from "./GainNode.js";
10
10
  import OscillatorNode from "./OscillatorNode.js";
11
11
  import PeriodicWave from "./PeriodicWave.js";
12
12
  import StereoPannerNode from "./StereoPannerNode.js";
13
- import StretcherNode from "./StretcherNode.js";
14
13
  import { globalWasmPromise, globalTag } from "./custom/LoadCustomWasm.js";
15
14
  export default class AudioContext {
16
15
  constructor(options) {
@@ -39,8 +38,13 @@ export default class AudioContext {
39
38
  createBiquadFilter() {
40
39
  return new BiquadFilterNode(this, this.context.createBiquadFilter());
41
40
  }
42
- createBufferSource() {
43
- return new AudioBufferSourceNode(this, this.context.createBufferSource());
41
+ async createBufferSource(options) {
42
+ if (!options || !options.pitchCorrection) {
43
+ return new AudioBufferSourceNode(this, this.context.createBufferSource(), false);
44
+ }
45
+ await globalWasmPromise;
46
+ const wasmStretch = await window[globalTag](this.context);
47
+ return new AudioBufferSourceNode(this, wasmStretch, true);
44
48
  }
45
49
  createBuffer(numOfChannels, length, sampleRate) {
46
50
  if (numOfChannels < 1 || numOfChannels >= 32) {
@@ -63,11 +67,6 @@ export default class AudioContext {
63
67
  createAnalyser() {
64
68
  return new AnalyserNode(this, this.context.createAnalyser());
65
69
  }
66
- async createStretcher() {
67
- await globalWasmPromise;
68
- const wasmStretch = await window[globalTag](this.context);
69
- return new StretcherNode(this, wasmStretch);
70
- }
71
70
  async decodeAudioDataSource(source) {
72
71
  const arrayBuffer = await fetch(source).then(response => response.arrayBuffer());
73
72
  return new AudioBuffer(await this.context.decodeAudioData(arrayBuffer));