react-native-audio-api 0.10.0-nightly-e16d7ff-20251030 → 0.11.0-alpha.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 (288) hide show
  1. package/RNAudioAPI.podspec +11 -16
  2. package/android/build.gradle +3 -33
  3. package/android/src/main/cpp/audioapi/CMakeLists.txt +0 -6
  4. package/android/src/main/cpp/audioapi/android/AudioAPIModule.cpp +0 -5
  5. package/android/src/main/cpp/audioapi/android/AudioAPIModule.h +0 -1
  6. package/android/src/main/cpp/audioapi/android/core/AndroidAudioRecorder.cpp +142 -28
  7. package/android/src/main/cpp/audioapi/android/core/AndroidAudioRecorder.h +40 -13
  8. package/android/src/main/cpp/audioapi/android/core/AudioPlayer.cpp +2 -4
  9. package/android/src/main/cpp/audioapi/android/core/NativeAudioRecorder.hpp +9 -9
  10. package/android/src/main/cpp/audioapi/android/core/utils/AndroidFileWriterBackend.h +37 -0
  11. package/android/src/main/cpp/audioapi/android/core/utils/AndroidRecorderCallback.cpp +187 -0
  12. package/android/src/main/cpp/audioapi/android/core/utils/AndroidRecorderCallback.h +57 -0
  13. package/android/src/main/cpp/audioapi/android/core/utils/AudioDecoder.cpp +0 -6
  14. package/android/src/main/cpp/audioapi/android/core/utils/FileUtils.h +34 -0
  15. package/android/src/main/cpp/audioapi/android/core/utils/FileUtilts.cpp +133 -0
  16. package/android/src/main/cpp/audioapi/android/core/utils/MiniaudioImplementation.cpp +3 -0
  17. package/android/src/main/cpp/audioapi/android/core/utils/ffmpegBackend/FFmpegAudioFileOptions.cpp +154 -0
  18. package/android/src/main/cpp/audioapi/android/core/utils/ffmpegBackend/FFmpegAudioFileOptions.h +41 -0
  19. package/android/src/main/cpp/audioapi/android/core/utils/ffmpegBackend/FFmpegFileWriter.cpp +429 -0
  20. package/android/src/main/cpp/audioapi/android/core/utils/ffmpegBackend/FFmpegFileWriter.h +113 -0
  21. package/android/src/main/cpp/audioapi/android/core/utils/miniaudioBackend/MiniAudioFileOptions.cpp +47 -0
  22. package/android/src/main/cpp/audioapi/android/core/utils/miniaudioBackend/MiniAudioFileOptions.h +28 -0
  23. package/android/src/main/cpp/audioapi/android/core/utils/miniaudioBackend/MiniAudioFileWriter.cpp +269 -0
  24. package/android/src/main/cpp/audioapi/android/core/utils/miniaudioBackend/MiniAudioFileWriter.h +47 -0
  25. package/android/src/main/cpp/audioapi/android/system/NativeFileInfo.hpp +31 -0
  26. package/android/src/main/java/com/swmansion/audioapi/AudioAPIModule.kt +3 -29
  27. package/android/src/main/java/com/swmansion/audioapi/system/AudioFocusListener.kt +9 -21
  28. package/android/src/main/java/com/swmansion/audioapi/system/LockScreenManager.kt +6 -27
  29. package/android/src/main/java/com/swmansion/audioapi/system/MediaNotificationManager.kt +0 -11
  30. package/android/src/main/java/com/swmansion/audioapi/system/NativeFileInfo.kt +18 -0
  31. package/android/src/main/jniLibs/arm64-v8a/libavcodec.so +0 -0
  32. package/android/src/main/jniLibs/arm64-v8a/libavformat.so +0 -0
  33. package/android/src/main/jniLibs/arm64-v8a/libavutil.so +0 -0
  34. package/android/src/main/jniLibs/arm64-v8a/libswresample.so +0 -0
  35. package/android/src/main/jniLibs/armeabi-v7a/libavcodec.so +0 -0
  36. package/android/src/main/jniLibs/armeabi-v7a/libavformat.so +0 -0
  37. package/android/src/main/jniLibs/armeabi-v7a/libavutil.so +0 -0
  38. package/android/src/main/jniLibs/armeabi-v7a/libswresample.so +0 -0
  39. package/android/src/main/jniLibs/x86/libavcodec.so +0 -0
  40. package/android/src/main/jniLibs/x86/libavformat.so +0 -0
  41. package/android/src/main/jniLibs/x86/libavutil.so +0 -0
  42. package/android/src/main/jniLibs/x86/libswresample.so +0 -0
  43. package/android/src/main/jniLibs/x86_64/libavcodec.so +0 -0
  44. package/android/src/main/jniLibs/x86_64/libavformat.so +0 -0
  45. package/android/src/main/jniLibs/x86_64/libavutil.so +0 -0
  46. package/android/src/main/jniLibs/x86_64/libswresample.so +0 -0
  47. package/common/cpp/audioapi/AudioAPIModuleInstaller.h +2 -30
  48. package/common/cpp/audioapi/HostObjects/BaseAudioContextHostObject.cpp +0 -18
  49. package/common/cpp/audioapi/HostObjects/BaseAudioContextHostObject.h +0 -1
  50. package/common/cpp/audioapi/HostObjects/effects/BiquadFilterNodeHostObject.cpp +1 -1
  51. package/common/cpp/audioapi/HostObjects/inputs/AudioRecorderHostObject.cpp +97 -18
  52. package/common/cpp/audioapi/HostObjects/inputs/AudioRecorderHostObject.h +18 -6
  53. package/common/cpp/audioapi/core/AudioNode.h +2 -3
  54. package/common/cpp/audioapi/core/AudioParam.cpp +2 -2
  55. package/common/cpp/audioapi/core/BaseAudioContext.cpp +0 -10
  56. package/common/cpp/audioapi/core/BaseAudioContext.h +0 -2
  57. package/common/cpp/audioapi/core/effects/BiquadFilterNode.cpp +32 -69
  58. package/common/cpp/audioapi/core/effects/BiquadFilterNode.h +1 -37
  59. package/common/cpp/audioapi/core/inputs/AudioRecorder.cpp +36 -82
  60. package/common/cpp/audioapi/core/inputs/AudioRecorder.h +52 -31
  61. package/common/cpp/audioapi/core/sources/StreamerNode.cpp +58 -59
  62. package/common/cpp/audioapi/core/sources/StreamerNode.h +8 -37
  63. package/common/cpp/audioapi/core/utils/AudioNodeManager.cpp +0 -5
  64. package/common/cpp/audioapi/core/utils/Constants.h +1 -2
  65. package/common/cpp/audioapi/core/utils/worklets/SafeIncludes.h +10 -0
  66. package/common/cpp/audioapi/dsp/AudioUtils.cpp +1 -1
  67. package/common/cpp/audioapi/dsp/FFT.cpp +26 -0
  68. package/common/cpp/audioapi/dsp/FFT.h +2 -26
  69. package/common/cpp/audioapi/external/arm64-v8a/libcrypto.a +0 -0
  70. package/common/cpp/audioapi/external/arm64-v8a/libogg.a +0 -0
  71. package/common/cpp/audioapi/external/arm64-v8a/libopus.a +0 -0
  72. package/common/cpp/audioapi/external/arm64-v8a/libopusfile.a +0 -0
  73. package/common/cpp/audioapi/external/arm64-v8a/libssl.a +0 -0
  74. package/common/cpp/audioapi/external/arm64-v8a/libvorbis.a +0 -0
  75. package/common/cpp/audioapi/external/arm64-v8a/libvorbisenc.a +0 -0
  76. package/common/cpp/audioapi/external/arm64-v8a/libvorbisfile.a +0 -0
  77. package/common/cpp/audioapi/external/armeabi-v7a/libcrypto.a +0 -0
  78. package/common/cpp/audioapi/external/armeabi-v7a/libogg.a +0 -0
  79. package/common/cpp/audioapi/external/armeabi-v7a/libopus.a +0 -0
  80. package/common/cpp/audioapi/external/armeabi-v7a/libopusfile.a +0 -0
  81. package/common/cpp/audioapi/external/armeabi-v7a/libssl.a +0 -0
  82. package/common/cpp/audioapi/external/armeabi-v7a/libvorbis.a +0 -0
  83. package/common/cpp/audioapi/external/armeabi-v7a/libvorbisenc.a +0 -0
  84. package/common/cpp/audioapi/external/armeabi-v7a/libvorbisfile.a +0 -0
  85. package/common/cpp/audioapi/external/ffmpeg_include/libavcodec/avcodec.h +2 -2
  86. package/common/cpp/audioapi/external/ffmpeg_include/libavcodec/codec.h +1 -1
  87. package/common/cpp/audioapi/external/ffmpeg_include/libavcodec/codec_desc.h +1 -1
  88. package/common/cpp/audioapi/external/ffmpeg_include/libavcodec/codec_id.h +1 -1
  89. package/common/cpp/audioapi/external/ffmpeg_include/libavcodec/codec_par.h +1 -1
  90. package/common/cpp/audioapi/external/ffmpeg_include/libavformat/avformat.h +2 -2
  91. package/common/cpp/audioapi/external/ffmpeg_include/libavutil/avutil.h +2 -2
  92. package/common/cpp/audioapi/external/iphoneos/libcrypto.a +0 -0
  93. package/common/cpp/audioapi/external/iphoneos/libogg.a +0 -0
  94. package/common/cpp/audioapi/external/iphoneos/libopus.a +0 -0
  95. package/common/cpp/audioapi/external/iphoneos/libopusfile.a +0 -0
  96. package/common/cpp/audioapi/external/iphoneos/libssl.a +0 -0
  97. package/common/cpp/audioapi/external/iphoneos/libvorbis.a +0 -0
  98. package/common/cpp/audioapi/external/iphoneos/libvorbisenc.a +0 -0
  99. package/common/cpp/audioapi/external/iphoneos/libvorbisfile.a +0 -0
  100. package/common/cpp/audioapi/external/iphonesimulator/libcrypto.a +0 -0
  101. package/common/cpp/audioapi/external/iphonesimulator/libogg.a +0 -0
  102. package/common/cpp/audioapi/external/iphonesimulator/libopus.a +0 -0
  103. package/common/cpp/audioapi/external/iphonesimulator/libopusfile.a +0 -0
  104. package/common/cpp/audioapi/external/iphonesimulator/libssl.a +0 -0
  105. package/common/cpp/audioapi/external/iphonesimulator/libvorbis.a +0 -0
  106. package/common/cpp/audioapi/external/iphonesimulator/libvorbisenc.a +0 -0
  107. package/common/cpp/audioapi/external/iphonesimulator/libvorbisfile.a +0 -0
  108. package/common/cpp/audioapi/external/libavcodec.xcframework/Info.plist +44 -0
  109. package/common/cpp/audioapi/external/libavcodec.xcframework/ios-arm64/libavcodec.framework/Info.plist +1 -0
  110. package/common/cpp/audioapi/external/libavcodec.xcframework/ios-arm64/libavcodec.framework/libavcodec +0 -0
  111. package/common/cpp/audioapi/external/libavcodec.xcframework/ios-arm64_x86_64-simulator/libavcodec.framework/Info.plist +1 -0
  112. package/common/cpp/audioapi/external/libavcodec.xcframework/ios-arm64_x86_64-simulator/libavcodec.framework/libavcodec +0 -0
  113. package/common/cpp/audioapi/external/libavformat.xcframework/Info.plist +44 -0
  114. package/common/cpp/audioapi/external/libavformat.xcframework/ios-arm64/libavformat.framework/Info.plist +1 -0
  115. package/common/cpp/audioapi/external/libavformat.xcframework/ios-arm64/libavformat.framework/libavformat +0 -0
  116. package/common/cpp/audioapi/external/libavformat.xcframework/ios-arm64_x86_64-simulator/libavformat.framework/Info.plist +1 -0
  117. package/common/cpp/audioapi/external/libavformat.xcframework/ios-arm64_x86_64-simulator/libavformat.framework/libavformat +0 -0
  118. package/common/cpp/audioapi/external/libavutil.xcframework/Info.plist +44 -0
  119. package/common/cpp/audioapi/external/libavutil.xcframework/ios-arm64/libavutil.framework/Info.plist +1 -0
  120. package/common/cpp/audioapi/external/libavutil.xcframework/ios-arm64/libavutil.framework/libavutil +0 -0
  121. package/common/cpp/audioapi/external/libavutil.xcframework/ios-arm64_x86_64-simulator/libavutil.framework/Info.plist +1 -0
  122. package/common/cpp/audioapi/external/libavutil.xcframework/ios-arm64_x86_64-simulator/libavutil.framework/libavutil +0 -0
  123. package/common/cpp/audioapi/external/libswresample.xcframework/Info.plist +44 -0
  124. package/common/cpp/audioapi/external/libswresample.xcframework/ios-arm64/libswresample.framework/Info.plist +1 -0
  125. package/common/cpp/audioapi/external/libswresample.xcframework/ios-arm64/libswresample.framework/libswresample +0 -0
  126. package/common/cpp/audioapi/external/libswresample.xcframework/ios-arm64_x86_64-simulator/libswresample.framework/Info.plist +1 -0
  127. package/common/cpp/audioapi/external/libswresample.xcframework/ios-arm64_x86_64-simulator/libswresample.framework/libswresample +0 -0
  128. package/common/cpp/audioapi/external/x86/libcrypto.a +0 -0
  129. package/common/cpp/audioapi/external/x86/libogg.a +0 -0
  130. package/common/cpp/audioapi/external/x86/libopus.a +0 -0
  131. package/common/cpp/audioapi/external/x86/libopusfile.a +0 -0
  132. package/common/cpp/audioapi/external/x86/libssl.a +0 -0
  133. package/common/cpp/audioapi/external/x86/libvorbis.a +0 -0
  134. package/common/cpp/audioapi/external/x86/libvorbisenc.a +0 -0
  135. package/common/cpp/audioapi/external/x86/libvorbisfile.a +0 -0
  136. package/common/cpp/audioapi/external/x86_64/libcrypto.a +0 -0
  137. package/common/cpp/audioapi/external/x86_64/libogg.a +0 -0
  138. package/common/cpp/audioapi/external/x86_64/libopus.a +0 -0
  139. package/common/cpp/audioapi/external/x86_64/libopusfile.a +0 -0
  140. package/common/cpp/audioapi/external/x86_64/libssl.a +0 -0
  141. package/common/cpp/audioapi/external/x86_64/libvorbis.a +0 -0
  142. package/common/cpp/audioapi/external/x86_64/libvorbisenc.a +0 -0
  143. package/common/cpp/audioapi/external/x86_64/libvorbisfile.a +0 -0
  144. package/common/cpp/audioapi/libs/ffmpeg/FFmpegDecoding.cpp +3 -2
  145. package/common/cpp/audioapi/libs/ffmpeg/INSTRUCTIONS.md +32 -0
  146. package/common/cpp/audioapi/libs/ffmpeg/create_xcframework.sh +111 -0
  147. package/common/cpp/audioapi/libs/ffmpeg/ffmpeg_setup.sh +391 -0
  148. package/common/cpp/audioapi/utils/AudioBus.cpp +0 -28
  149. package/common/cpp/audioapi/utils/AudioBus.h +0 -3
  150. package/common/cpp/audioapi/utils/ThreadPool.hpp +1 -59
  151. package/common/cpp/test/CMakeLists.txt +14 -19
  152. package/ios/audioapi/ios/AudioAPIModule.h +1 -2
  153. package/ios/audioapi/ios/AudioAPIModule.mm +0 -2
  154. package/ios/audioapi/ios/core/IOSAudioFileOptions.h +36 -0
  155. package/ios/audioapi/ios/core/IOSAudioFileOptions.mm +140 -0
  156. package/ios/audioapi/ios/core/IOSAudioFileWriter.h +51 -0
  157. package/ios/audioapi/ios/core/IOSAudioFileWriter.mm +223 -0
  158. package/ios/audioapi/ios/core/IOSAudioRecorder.h +28 -10
  159. package/ios/audioapi/ios/core/IOSAudioRecorder.mm +117 -30
  160. package/ios/audioapi/ios/core/IOSRecorderCallback.h +57 -0
  161. package/ios/audioapi/ios/core/IOSRecorderCallback.mm +189 -0
  162. package/ios/audioapi/ios/core/NativeAudioRecorder.h +4 -9
  163. package/ios/audioapi/ios/core/NativeAudioRecorder.m +29 -71
  164. package/ios/audioapi/ios/core/utils/AudioDecoder.mm +1 -0
  165. package/ios/audioapi/ios/system/AudioEngine.mm +3 -3
  166. package/ios/audioapi/ios/system/AudioSessionManager.mm +0 -9
  167. package/ios/audioapi/ios/system/LockScreenManager.h +1 -0
  168. package/ios/audioapi/ios/system/LockScreenManager.mm +19 -6
  169. package/lib/commonjs/api.js +76 -141
  170. package/lib/commonjs/api.js.map +1 -1
  171. package/lib/commonjs/api.web.js +0 -8
  172. package/lib/commonjs/api.web.js.map +1 -1
  173. package/lib/commonjs/core/AudioContext.js +1 -1
  174. package/lib/commonjs/core/AudioContext.js.map +1 -1
  175. package/lib/commonjs/core/AudioRecorder.js +171 -13
  176. package/lib/commonjs/core/AudioRecorder.js.map +1 -1
  177. package/lib/commonjs/core/BaseAudioContext.js +25 -28
  178. package/lib/commonjs/core/BaseAudioContext.js.map +1 -1
  179. package/lib/commonjs/core/OfflineAudioContext.js +1 -1
  180. package/lib/commonjs/core/OfflineAudioContext.js.map +1 -1
  181. package/lib/commonjs/types.js +46 -0
  182. package/lib/commonjs/types.js.map +1 -1
  183. package/lib/commonjs/utils/bitEnums.js +33 -0
  184. package/lib/commonjs/utils/bitEnums.js.map +1 -0
  185. package/lib/commonjs/utils/index.js +21 -19
  186. package/lib/commonjs/utils/index.js.map +1 -1
  187. package/lib/commonjs/web-core/AudioContext.js +0 -12
  188. package/lib/commonjs/web-core/AudioContext.js.map +1 -1
  189. package/lib/commonjs/web-core/OfflineAudioContext.js +0 -12
  190. package/lib/commonjs/web-core/OfflineAudioContext.js.map +1 -1
  191. package/lib/module/api.js +15 -16
  192. package/lib/module/api.js.map +1 -1
  193. package/lib/module/api.web.js +0 -1
  194. package/lib/module/api.web.js.map +1 -1
  195. package/lib/module/core/AudioContext.js +2 -2
  196. package/lib/module/core/AudioContext.js.map +1 -1
  197. package/lib/module/core/AudioRecorder.js +171 -13
  198. package/lib/module/core/AudioRecorder.js.map +1 -1
  199. package/lib/module/core/BaseAudioContext.js +26 -29
  200. package/lib/module/core/BaseAudioContext.js.map +1 -1
  201. package/lib/module/core/OfflineAudioContext.js +2 -2
  202. package/lib/module/core/OfflineAudioContext.js.map +1 -1
  203. package/lib/module/types.js +45 -1
  204. package/lib/module/types.js.map +1 -1
  205. package/lib/module/utils/bitEnums.js +27 -0
  206. package/lib/module/utils/bitEnums.js.map +1 -0
  207. package/lib/module/utils/index.js +2 -15
  208. package/lib/module/utils/index.js.map +1 -1
  209. package/lib/module/web-core/AudioContext.js +0 -12
  210. package/lib/module/web-core/AudioContext.js.map +1 -1
  211. package/lib/module/web-core/OfflineAudioContext.js +0 -12
  212. package/lib/module/web-core/OfflineAudioContext.js.map +1 -1
  213. package/lib/typescript/api.d.ts +17 -19
  214. package/lib/typescript/api.d.ts.map +1 -1
  215. package/lib/typescript/api.web.d.ts +0 -1
  216. package/lib/typescript/api.web.d.ts.map +1 -1
  217. package/lib/typescript/core/AudioContext.d.ts.map +1 -1
  218. package/lib/typescript/core/AudioRecorder.d.ts +62 -7
  219. package/lib/typescript/core/AudioRecorder.d.ts.map +1 -1
  220. package/lib/typescript/core/BaseAudioContext.d.ts +1 -3
  221. package/lib/typescript/core/BaseAudioContext.d.ts.map +1 -1
  222. package/lib/typescript/events/types.d.ts +16 -0
  223. package/lib/typescript/events/types.d.ts.map +1 -1
  224. package/lib/typescript/interfaces.d.ts +42 -9
  225. package/lib/typescript/interfaces.d.ts.map +1 -1
  226. package/lib/typescript/types.d.ts +79 -8
  227. package/lib/typescript/types.d.ts.map +1 -1
  228. package/lib/typescript/utils/bitEnums.d.ts +4 -0
  229. package/lib/typescript/utils/bitEnums.d.ts.map +1 -0
  230. package/lib/typescript/utils/index.d.ts +2 -5
  231. package/lib/typescript/utils/index.d.ts.map +1 -1
  232. package/lib/typescript/web-core/AudioContext.d.ts +0 -3
  233. package/lib/typescript/web-core/AudioContext.d.ts.map +1 -1
  234. package/lib/typescript/web-core/BaseAudioContext.d.ts +0 -2
  235. package/lib/typescript/web-core/BaseAudioContext.d.ts.map +1 -1
  236. package/lib/typescript/web-core/OfflineAudioContext.d.ts +0 -3
  237. package/lib/typescript/web-core/OfflineAudioContext.d.ts.map +1 -1
  238. package/package.json +4 -7
  239. package/src/api.ts +18 -45
  240. package/src/api.web.ts +0 -1
  241. package/src/core/AudioContext.ts +2 -3
  242. package/src/core/AudioRecorder.ts +211 -24
  243. package/src/core/BaseAudioContext.ts +60 -67
  244. package/src/core/OfflineAudioContext.ts +2 -2
  245. package/src/events/types.ts +18 -0
  246. package/src/interfaces.ts +52 -16
  247. package/src/types.ts +90 -9
  248. package/src/utils/bitEnums.ts +51 -0
  249. package/src/utils/index.ts +2 -22
  250. package/src/web-core/AudioContext.tsx +0 -25
  251. package/src/web-core/BaseAudioContext.tsx +0 -2
  252. package/src/web-core/OfflineAudioContext.tsx +0 -25
  253. package/common/cpp/audioapi/HostObjects/effects/ConvolverNodeHostObject.cpp +0 -47
  254. package/common/cpp/audioapi/HostObjects/effects/ConvolverNodeHostObject.h +0 -20
  255. package/common/cpp/audioapi/core/effects/ConvolverNode.cpp +0 -210
  256. package/common/cpp/audioapi/core/effects/ConvolverNode.h +0 -55
  257. package/common/cpp/audioapi/dsp/Convolver.cpp +0 -213
  258. package/common/cpp/audioapi/dsp/Convolver.h +0 -45
  259. package/common/cpp/audioapi/libs/ffmpeg/relinking.md +0 -24
  260. package/common/cpp/audioapi/utils/AlignedAllocator.hpp +0 -50
  261. package/common/cpp/test/src/biquad/BiquadFilterChromium.cpp +0 -389
  262. package/common/cpp/test/src/biquad/BiquadFilterChromium.h +0 -64
  263. package/common/cpp/test/src/biquad/BiquadFilterTest.cpp +0 -284
  264. package/common/cpp/test/src/biquad/BiquadFilterTest.h +0 -40
  265. package/lib/commonjs/core/ConvolverNode.js +0 -37
  266. package/lib/commonjs/core/ConvolverNode.js.map +0 -1
  267. package/lib/commonjs/web-core/ConvolverNode.js +0 -40
  268. package/lib/commonjs/web-core/ConvolverNode.js.map +0 -1
  269. package/lib/commonjs/web-core/ConvolverNodeOptions.js +0 -6
  270. package/lib/commonjs/web-core/ConvolverNodeOptions.js.map +0 -1
  271. package/lib/module/core/ConvolverNode.js +0 -31
  272. package/lib/module/core/ConvolverNode.js.map +0 -1
  273. package/lib/module/web-core/ConvolverNode.js +0 -34
  274. package/lib/module/web-core/ConvolverNode.js.map +0 -1
  275. package/lib/module/web-core/ConvolverNodeOptions.js +0 -4
  276. package/lib/module/web-core/ConvolverNodeOptions.js.map +0 -1
  277. package/lib/typescript/core/ConvolverNode.d.ts +0 -12
  278. package/lib/typescript/core/ConvolverNode.d.ts.map +0 -1
  279. package/lib/typescript/web-core/ConvolverNode.d.ts +0 -11
  280. package/lib/typescript/web-core/ConvolverNode.d.ts.map +0 -1
  281. package/lib/typescript/web-core/ConvolverNodeOptions.d.ts +0 -6
  282. package/lib/typescript/web-core/ConvolverNodeOptions.d.ts.map +0 -1
  283. package/scripts/download-prebuilt-binaries.sh +0 -52
  284. package/scripts/rnaa_utils.rb +0 -8
  285. package/scripts/validate-worklets-version.js +0 -28
  286. package/src/core/ConvolverNode.ts +0 -35
  287. package/src/web-core/ConvolverNode.tsx +0 -43
  288. package/src/web-core/ConvolverNodeOptions.tsx +0 -6
@@ -1,38 +1,196 @@
1
1
  "use strict";
2
2
 
3
- import AudioBuffer from "./AudioBuffer.js";
4
3
  import { AudioEventEmitter } from "../events/index.js";
4
+ import { AndroidFormat, BitDepth, FileDirectory, IOSAudioQuality, IOSFormat } from "../types.js";
5
+ import { encodeFlags } from "../utils/index.js";
6
+ import AudioBuffer from "./AudioBuffer.js";
7
+ function withDefaultOptions(inOptions) {
8
+ return {
9
+ directory: FileDirectory.Cache,
10
+ sampleRate: 48000,
11
+ channels: 2,
12
+ bitRate: 128000,
13
+ bitDepth: BitDepth.Bit24,
14
+ ...inOptions,
15
+ ios: {
16
+ format: IOSFormat.M4A,
17
+ quality: IOSAudioQuality.High,
18
+ ...(inOptions.ios ?? {})
19
+ },
20
+ android: {
21
+ format: AndroidFormat.M4A,
22
+ ...(inOptions.android ?? {})
23
+ }
24
+ };
25
+ }
26
+ function parseFileOptions(inOptions) {
27
+ const {
28
+ sampleRate,
29
+ channels,
30
+ bitRate,
31
+ directory,
32
+ bitDepth,
33
+ ios,
34
+ android
35
+ } = withDefaultOptions(inOptions);
36
+ const iosFlags = encodeFlags(ios.format, ios.quality, ios.flacCompressionLevel || 0, directory, bitDepth);
37
+
38
+ // TODO: ensure directory and bitDepth are last in the bitmask
39
+ const androidFlags = encodeFlags(android.format, directory, bitDepth);
40
+ return {
41
+ sampleRate,
42
+ channels,
43
+ bitRate,
44
+ ios: iosFlags,
45
+ android: androidFlags
46
+ };
47
+ }
5
48
  export default class AudioRecorder {
49
+ onAudioReadySubscription = null;
50
+ options_ = null;
51
+ isFileOutputEnabled = false;
6
52
  audioEventEmitter = new AudioEventEmitter(global.AudioEventEmitter);
7
- constructor(options) {
8
- this.recorder = global.createAudioRecorder(options);
53
+ constructor() {
54
+ this.recorder = global.createAudioRecorder();
55
+ }
56
+ enableFileOutput(options) {
57
+ if (this.recorder.isRecording()) {
58
+ throw new Error('Cannot enable file output while recording is in progress. Please stop the recorder before changing output options.');
59
+ }
60
+ this.options_ = options;
61
+ const parsedOptions = parseFileOptions(options);
62
+ this.recorder.enableFileOutput(parsedOptions);
63
+ this.isFileOutputEnabled = true;
9
64
  }
65
+ get options() {
66
+ return this.options_;
67
+ }
68
+ disableFileOutput() {
69
+ this.options_ = null;
70
+ this.recorder.disableFileOutput();
71
+ this.isFileOutputEnabled = false;
72
+ }
73
+
74
+ /** Starts the audio recording process with configured output options */
10
75
  start() {
11
- this.recorder.start();
76
+ if (!this.isFileOutputEnabled) {
77
+ this.recorder.start();
78
+ return;
79
+ }
80
+ return this.recorder.start();
12
81
  }
82
+
83
+ /** Stops the audio recording process and releases internal resources */
13
84
  stop() {
14
- this.recorder.stop();
85
+ return this.recorder.stop();
86
+ }
87
+
88
+ /** Pauses the audio recording process without tearing down anything */
89
+ pause() {
90
+ this.recorder.pause();
15
91
  }
92
+
93
+ /** Resumes the audio recording process after being paused */
94
+ resume() {
95
+ this.recorder.resume();
96
+ }
97
+
98
+ /**
99
+ * Connects a {@link RecorderAdapterNode} to the recorder’s audio graph.
100
+ *
101
+ * Each node can only be connected once. Attempting to connect a node multiple
102
+ * times will throw an error.
103
+ *
104
+ * @param node - The adapter node to connect to the recorder.
105
+ * @throws If the node has already been connected.
106
+ */
16
107
  connect(node) {
108
+ if (this.recorder.isRecording()) {
109
+ throw new Error('Cannot connect adapter node while recording is in progress. Please stop the recorder before connecting new nodes.');
110
+ }
17
111
  if (node.wasConnected) {
18
112
  throw new Error('RecorderAdapterNode cannot be connected more than once. Refer to the documentation for more details.');
19
113
  }
20
114
  node.wasConnected = true;
21
115
  this.recorder.connect(node.getNode());
22
116
  }
117
+
118
+ /**
119
+ * Disconnects the recorder from all connected adapter nodes.
120
+ *
121
+ * After calling this method, any connected {@link RecorderAdapterNode} will no
122
+ * longer receive audio data until reconnected.
123
+ */
23
124
  disconnect() {
24
125
  this.recorder.disconnect();
25
126
  }
26
- onAudioReady(callback) {
27
- const onAudioReadyCallback = event => {
127
+
128
+ /**
129
+ * Registers a callback to receive raw audio data during an active recording
130
+ * session.
131
+ *
132
+ * The callback is periodically invoked with audio buffers that match the
133
+ * preferred configuration provided in `options`. These parameters (sample
134
+ * rate, buffer length, and channel count) guide how audio data is chunked and
135
+ * delivered, though the exact values may vary depending on device
136
+ * capabilities. Values may vary depending on device capabilities.
137
+ *
138
+ * @param options - Preferred configuration for the audio buffers delivered to
139
+ * the callback.
140
+ * @param callback - Function invoked each time a new audio buffer is
141
+ * available. The callback receives an {@link OnAudioReadyEventType} object
142
+ * containing the audio data and associated metadata.
143
+ */
144
+ onAudioReady(options, callback) {
145
+ if (this.recorder.isRecording()) {
146
+ throw new Error('Cannot set onAudioReady callback while recording is in progress. Please stop the recorder before setting a new callback.');
147
+ }
148
+ if (this.onAudioReadySubscription) {
149
+ this.recorder.clearOnAudioReady();
150
+ this.onAudioReadySubscription.remove();
151
+ this.onAudioReadySubscription = null;
152
+ }
153
+ this.onAudioReadySubscription = this.audioEventEmitter.addAudioEventListener('audioReady', event => {
154
+ const audioBuffer = new AudioBuffer(event.buffer);
28
155
  callback({
29
- buffer: new AudioBuffer(event.buffer),
30
- numFrames: event.numFrames,
31
- when: event.when
156
+ ...event,
157
+ buffer: audioBuffer
32
158
  });
33
- };
34
- const subscription = this.audioEventEmitter.addAudioEventListener('audioReady', onAudioReadyCallback);
35
- this.recorder.onAudioReady = subscription.subscriptionId;
159
+ });
160
+ this.recorder.setOnAudioReady({
161
+ sampleRate: options.sampleRate,
162
+ bufferLength: options.bufferLength,
163
+ channelCount: options.channelCount,
164
+ callbackId: this.onAudioReadySubscription.subscriptionId
165
+ });
166
+ }
167
+
168
+ /**
169
+ * Removes the previously registered audio data callback, if any.
170
+ *
171
+ * This stops further `onAudioReady` events from being delivered during
172
+ * recording. Calling this method is safe even if no callback is currently
173
+ * registered.
174
+ */
175
+ clearOnAudioReady() {
176
+ if (this.recorder.isRecording()) {
177
+ throw new Error('Cannot clear onAudioReady callback while recording is in progress. Please stop the recorder before clearing the callback.');
178
+ }
179
+ if (!this.onAudioReadySubscription) {
180
+ return;
181
+ }
182
+ this.recorder.clearOnAudioReady();
183
+ this.onAudioReadySubscription.remove();
184
+ this.onAudioReadySubscription = null;
185
+ }
186
+ isRecording() {
187
+ return this.recorder.isRecording();
188
+ }
189
+ isPaused() {
190
+ return this.recorder.isPaused();
191
+ }
192
+ getCurrentDuration() {
193
+ return this.recorder.getCurrentDuration();
36
194
  }
37
195
  }
38
196
  //# sourceMappingURL=AudioRecorder.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["AudioBuffer","AudioEventEmitter","AudioRecorder","audioEventEmitter","global","constructor","options","recorder","createAudioRecorder","start","stop","connect","node","wasConnected","Error","getNode","disconnect","onAudioReady","callback","onAudioReadyCallback","event","buffer","numFrames","when","subscription","addAudioEventListener","subscriptionId"],"sourceRoot":"../../../src","sources":["core/AudioRecorder.ts"],"mappings":";;AAEA,OAAOA,WAAW,MAAM,kBAAe;AAEvC,SAASC,iBAAiB,QAAQ,oBAAW;AAG7C,eAAe,MAAMC,aAAa,CAAC;EAGhBC,iBAAiB,GAAG,IAAIF,iBAAiB,CACxDG,MAAM,CAACH,iBACT,CAAC;EAEDI,WAAWA,CAACC,OAA6B,EAAE;IACzC,IAAI,CAACC,QAAQ,GAAGH,MAAM,CAACI,mBAAmB,CAACF,OAAO,CAAC;EACrD;EAEOG,KAAKA,CAAA,EAAS;IACnB,IAAI,CAACF,QAAQ,CAACE,KAAK,CAAC,CAAC;EACvB;EAEOC,IAAIA,CAAA,EAAS;IAClB,IAAI,CAACH,QAAQ,CAACG,IAAI,CAAC,CAAC;EACtB;EAEOC,OAAOA,CAACC,IAAyB,EAAQ;IAC9C,IAAIA,IAAI,CAACC,YAAY,EAAE;MACrB,MAAM,IAAIC,KAAK,CACb,sGACF,CAAC;IACH;IACAF,IAAI,CAACC,YAAY,GAAG,IAAI;IACxB,IAAI,CAACN,QAAQ,CAACI,OAAO,CAACC,IAAI,CAACG,OAAO,CAAC,CAAC,CAAC;EACvC;EAEOC,UAAUA,CAAA,EAAS;IACxB,IAAI,CAACT,QAAQ,CAACS,UAAU,CAAC,CAAC;EAC5B;EAEOC,YAAYA,CAACC,QAAgD,EAAQ;IAC1E,MAAMC,oBAAoB,GAAIC,KAA4B,IAAK;MAC7DF,QAAQ,CAAC;QACPG,MAAM,EAAE,IAAIrB,WAAW,CAACoB,KAAK,CAACC,MAAM,CAAC;QACrCC,SAAS,EAAEF,KAAK,CAACE,SAAS;QAC1BC,IAAI,EAAEH,KAAK,CAACG;MACd,CAAC,CAAC;IACJ,CAAC;IAED,MAAMC,YAAY,GAAG,IAAI,CAACrB,iBAAiB,CAACsB,qBAAqB,CAC/D,YAAY,EACZN,oBACF,CAAC;IAED,IAAI,CAACZ,QAAQ,CAACU,YAAY,GAAGO,YAAY,CAACE,cAAc;EAC1D;AACF","ignoreList":[]}
1
+ {"version":3,"names":["AudioEventEmitter","AndroidFormat","BitDepth","FileDirectory","IOSAudioQuality","IOSFormat","encodeFlags","AudioBuffer","withDefaultOptions","inOptions","directory","Cache","sampleRate","channels","bitRate","bitDepth","Bit24","ios","format","M4A","quality","High","android","parseFileOptions","iosFlags","flacCompressionLevel","androidFlags","AudioRecorder","onAudioReadySubscription","options_","isFileOutputEnabled","audioEventEmitter","global","constructor","recorder","createAudioRecorder","enableFileOutput","options","isRecording","Error","parsedOptions","disableFileOutput","start","stop","pause","resume","connect","node","wasConnected","getNode","disconnect","onAudioReady","callback","clearOnAudioReady","remove","addAudioEventListener","event","audioBuffer","buffer","setOnAudioReady","bufferLength","channelCount","callbackId","subscriptionId","isPaused","getCurrentDuration"],"sourceRoot":"../../../src","sources":["core/AudioRecorder.ts"],"mappings":"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","ignoreList":[]}
@@ -1,13 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  import { InvalidAccessError, NotSupportedError } from "../errors/index.js";
4
- import { assertWorkletsEnabled, workletsModule } from "../utils/index.js";
4
+ import { isWorkletsAvailable, workletsModule } from "../utils/index.js";
5
5
  import WorkletSourceNode from "./WorkletSourceNode.js";
6
6
  import WorkletProcessingNode from "./WorkletProcessingNode.js";
7
7
  import AnalyserNode from "./AnalyserNode.js";
8
8
  import AudioBuffer from "./AudioBuffer.js";
9
9
  import AudioBufferQueueSourceNode from "./AudioBufferQueueSourceNode.js";
10
- import ConvolverNode from "./ConvolverNode.js";
11
10
  import AudioBufferSourceNode from "./AudioBufferSourceNode.js";
12
11
  import AudioDestinationNode from "./AudioDestinationNode.js";
13
12
  import BiquadFilterNode from "./BiquadFilterNode.js";
@@ -48,28 +47,37 @@ export default class BaseAudioContext {
48
47
  if (bufferLength < 1) {
49
48
  throw new NotSupportedError(`The buffer length provided (${bufferLength}) can not be less than 1`);
50
49
  }
51
- assertWorkletsEnabled();
52
- const shareableWorklet = workletsModule.makeShareableCloneRecursive((audioBuffers, channelCount) => {
53
- 'worklet';
50
+ if (isWorkletsAvailable) {
51
+ const shareableWorklet = workletsModule.makeShareableCloneRecursive((audioBuffers, channelCount) => {
52
+ 'worklet';
54
53
 
55
- const floatAudioData = audioBuffers.map(buffer => new Float32Array(buffer));
56
- callback(floatAudioData, channelCount);
57
- });
58
- return new WorkletNode(this, this.context.createWorkletNode(shareableWorklet, workletRuntime === 'UIRuntime', bufferLength, inputChannelCount));
54
+ const floatAudioData = audioBuffers.map(buffer => new Float32Array(buffer));
55
+ callback(floatAudioData, channelCount);
56
+ });
57
+ return new WorkletNode(this, this.context.createWorkletNode(shareableWorklet, workletRuntime === 'UIRuntime', bufferLength, inputChannelCount));
58
+ }
59
+ /// User does not have worklets as a dependency so he cannot use the worklet API.
60
+ throw new Error('[RnAudioApi] Worklets are not available, please install react-native-worklets as a dependency. Refer to documentation for more details.');
59
61
  }
60
62
  createWorkletProcessingNode(callback, workletRuntime = 'AudioRuntime') {
61
- assertWorkletsEnabled();
62
- const shareableWorklet = workletsModule.makeShareableCloneRecursive((inputBuffers, outputBuffers, framesToProcess, currentTime) => {
63
- 'worklet';
63
+ if (isWorkletsAvailable) {
64
+ const shareableWorklet = workletsModule.makeShareableCloneRecursive((inputBuffers, outputBuffers, framesToProcess, currentTime) => {
65
+ 'worklet';
64
66
 
65
- const inputData = inputBuffers.map(buffer => new Float32Array(buffer, 0, framesToProcess));
66
- const outputData = outputBuffers.map(buffer => new Float32Array(buffer, 0, framesToProcess));
67
- callback(inputData, outputData, framesToProcess, currentTime);
68
- });
69
- return new WorkletProcessingNode(this, this.context.createWorkletProcessingNode(shareableWorklet, workletRuntime === 'UIRuntime'));
67
+ const inputData = inputBuffers.map(buffer => new Float32Array(buffer, 0, framesToProcess));
68
+ const outputData = outputBuffers.map(buffer => new Float32Array(buffer, 0, framesToProcess));
69
+ callback(inputData, outputData, framesToProcess, currentTime);
70
+ });
71
+ return new WorkletProcessingNode(this, this.context.createWorkletProcessingNode(shareableWorklet, workletRuntime === 'UIRuntime'));
72
+ }
73
+ /// User does not have worklets as a dependency so he cannot use the worklet API.
74
+ throw new Error('[RnAudioApi] Worklets are not available, please install react-native-worklets as a dependency. Refer to documentation for more details.');
70
75
  }
71
76
  createWorkletSourceNode(callback, workletRuntime = 'AudioRuntime') {
72
- assertWorkletsEnabled();
77
+ if (!isWorkletsAvailable) {
78
+ /// User does not have worklets as a dependency so he cannot use the worklet API.
79
+ throw new Error('[RnAudioApi] Worklets are not available, please install react-native-worklets as a dependency. Refer to documentation for more details.');
80
+ }
73
81
  const shareableWorklet = workletsModule.makeShareableCloneRecursive((audioBuffers, framesToProcess, currentTime, startOffset) => {
74
82
  'worklet';
75
83
 
@@ -129,16 +137,5 @@ export default class BaseAudioContext {
129
137
  createAnalyser() {
130
138
  return new AnalyserNode(this, this.context.createAnalyser());
131
139
  }
132
- createConvolver(options) {
133
- if (options?.buffer) {
134
- const numberOfChannels = options.buffer.numberOfChannels;
135
- if (numberOfChannels !== 1 && numberOfChannels !== 2 && numberOfChannels !== 4) {
136
- throw new NotSupportedError(`The number of channels provided (${numberOfChannels}) in impulse response for ConvolverNode buffer must be 1 or 2 or 4.`);
137
- }
138
- }
139
- const buffer = options?.buffer ?? null;
140
- const disableNormalization = options?.disableNormalization ?? false;
141
- return new ConvolverNode(this, this.context.createConvolver(buffer?.buffer, disableNormalization));
142
- }
143
140
  }
144
141
  //# sourceMappingURL=BaseAudioContext.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["InvalidAccessError","NotSupportedError","assertWorkletsEnabled","workletsModule","WorkletSourceNode","WorkletProcessingNode","AnalyserNode","AudioBuffer","AudioBufferQueueSourceNode","ConvolverNode","AudioBufferSourceNode","AudioDestinationNode","BiquadFilterNode","ConstantSourceNode","GainNode","OscillatorNode","PeriodicWave","RecorderAdapterNode","StereoPannerNode","StreamerNode","WorkletNode","decodeAudioData","decodePCMInBase64","BaseAudioContext","constructor","context","destination","sampleRate","currentTime","state","input","ArrayBuffer","TypeError","base64String","inputSampleRate","inputChannelCount","isInterleaved","createWorkletNode","callback","bufferLength","workletRuntime","shareableWorklet","makeShareableCloneRecursive","audioBuffers","channelCount","floatAudioData","map","buffer","Float32Array","createWorkletProcessingNode","inputBuffers","outputBuffers","framesToProcess","inputData","outputData","createWorkletSourceNode","startOffset","createRecorderAdapter","createOscillator","createStreamer","createConstantSource","createGain","createStereoPanner","createBiquadFilter","createBufferSource","options","pitchCorrection","createBufferQueueSource","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","disableNormalization","createAnalyser","createConvolver","numberOfChannels"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["InvalidAccessError","NotSupportedError","isWorkletsAvailable","workletsModule","WorkletSourceNode","WorkletProcessingNode","AnalyserNode","AudioBuffer","AudioBufferQueueSourceNode","AudioBufferSourceNode","AudioDestinationNode","BiquadFilterNode","ConstantSourceNode","GainNode","OscillatorNode","PeriodicWave","RecorderAdapterNode","StereoPannerNode","StreamerNode","WorkletNode","decodeAudioData","decodePCMInBase64","BaseAudioContext","constructor","context","destination","sampleRate","currentTime","state","input","ArrayBuffer","TypeError","base64String","inputSampleRate","inputChannelCount","isInterleaved","createWorkletNode","callback","bufferLength","workletRuntime","shareableWorklet","makeShareableCloneRecursive","audioBuffers","channelCount","floatAudioData","map","buffer","Float32Array","Error","createWorkletProcessingNode","inputBuffers","outputBuffers","framesToProcess","inputData","outputData","createWorkletSourceNode","startOffset","createRecorderAdapter","createOscillator","createStreamer","createConstantSource","createGain","createStereoPanner","createBiquadFilter","createBufferSource","options","pitchCorrection","createBufferQueueSource","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","disableNormalization","createAnalyser"],"sourceRoot":"../../../src","sources":["core/BaseAudioContext.ts"],"mappings":"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","ignoreList":[]}
@@ -3,11 +3,11 @@
3
3
  import BaseAudioContext from "./BaseAudioContext.js";
4
4
  import { InvalidStateError, NotSupportedError } from "../errors/index.js";
5
5
  import AudioBuffer from "./AudioBuffer.js";
6
- import { isWorkletsVersionSupported, workletsModule } from "../utils/index.js";
6
+ import { isWorkletsAvailable, workletsModule } from "../utils/index.js";
7
7
  export default class OfflineAudioContext extends BaseAudioContext {
8
8
  constructor(arg0, arg1, arg2) {
9
9
  let audioRuntime = null;
10
- if (isWorkletsVersionSupported) {
10
+ if (isWorkletsAvailable) {
11
11
  audioRuntime = workletsModule.createWorkletRuntime('AudioWorkletRuntime');
12
12
  }
13
13
  if (typeof arg0 === 'object') {
@@ -1 +1 @@
1
- {"version":3,"names":["BaseAudioContext","InvalidStateError","NotSupportedError","AudioBuffer","isWorkletsVersionSupported","workletsModule","OfflineAudioContext","constructor","arg0","arg1","arg2","audioRuntime","createWorkletRuntime","numberOfChannels","length","sampleRate","global","createOfflineAudioContext","duration","isSuspended","isRendering","resume","context","suspend","suspendTime","currentTime","startRendering","audioBuffer"],"sourceRoot":"../../../src","sources":["core/OfflineAudioContext.ts"],"mappings":";;AACA,OAAOA,gBAAgB,MAAM,uBAAoB;AAEjD,SAASC,iBAAiB,EAAEC,iBAAiB,QAAQ,oBAAW;AAChE,OAAOC,WAAW,MAAM,kBAAe;AACvC,SAASC,0BAA0B,EAAEC,cAAc,QAAQ,mBAAU;AAErE,eAAe,MAAMC,mBAAmB,SAASN,gBAAgB,CAAC;EAOhEO,WAAWA,CACTC,IAAyC,EACzCC,IAAa,EACbC,IAAa,EACb;IACA,IAAIC,YAAY,GAAG,IAAI;IACvB,IAAIP,0BAA0B,EAAE;MAC9BO,YAAY,GAAGN,cAAc,CAACO,oBAAoB,CAAC,qBAAqB,CAAC;IAC3E;IAEA,IAAI,OAAOJ,IAAI,KAAK,QAAQ,EAAE;MAC5B,MAAM;QAAEK,gBAAgB;QAAEC,MAAM;QAAEC;MAAW,CAAC,GAAGP,IAAI;MACrD,KAAK,CACHQ,MAAM,CAACC,yBAAyB,CAC9BJ,gBAAgB,EAChBC,MAAM,EACNC,UAAU,EACVJ,YACF,CACF,CAAC;MAED,IAAI,CAACO,QAAQ,GAAGJ,MAAM,GAAGC,UAAU;IACrC,CAAC,MAAM,IACL,OAAOP,IAAI,KAAK,QAAQ,IACxB,OAAOC,IAAI,KAAK,QAAQ,IACxB,OAAOC,IAAI,KAAK,QAAQ,EACxB;MACA,KAAK,CAACM,MAAM,CAACC,yBAAyB,CAACT,IAAI,EAAEC,IAAI,EAAEC,IAAI,EAAEC,YAAY,CAAC,CAAC;MACvE,IAAI,CAACO,QAAQ,GAAGT,IAAI,GAAGC,IAAI;IAC7B,CAAC,MAAM;MACL,MAAM,IAAIR,iBAAiB,CAAC,+BAA+B,CAAC;IAC9D;IAEA,IAAI,CAACiB,WAAW,GAAG,KAAK;IACxB,IAAI,CAACC,WAAW,GAAG,KAAK;EAC1B;EAEA,MAAMC,MAAMA,CAAA,EAAuB;IACjC,IAAI,CAAC,IAAI,CAACD,WAAW,EAAE;MACrB,MAAM,IAAInB,iBAAiB,CACzB,sDACF,CAAC;IACH;IAEA,IAAI,CAAC,IAAI,CAACkB,WAAW,EAAE;MACrB,MAAM,IAAIlB,iBAAiB,CACzB,4DACF,CAAC;IACH;IAEA,IAAI,CAACkB,WAAW,GAAG,KAAK;IAExB,MAAO,IAAI,CAACG,OAAO,CAA0BD,MAAM,CAAC,CAAC;EACvD;EAEA,MAAME,OAAOA,CAACC,WAAmB,EAAsB;IACrD,IAAIA,WAAW,GAAG,CAAC,EAAE;MACnB,MAAM,IAAIvB,iBAAiB,CAAC,2CAA2C,CAAC;IAC1E;IAEA,IAAIuB,WAAW,GAAG,IAAI,CAACF,OAAO,CAACG,WAAW,EAAE;MAC1C,MAAM,IAAIxB,iBAAiB,CACzB,sDAAsDuB,WAAW,EACnE,CAAC;IACH;IAEA,IAAIA,WAAW,GAAG,IAAI,CAACN,QAAQ,EAAE;MAC/B,MAAM,IAAIjB,iBAAiB,CACzB,8DAA8DuB,WAAW,EAC3E,CAAC;IACH;IAEA,IAAI,CAACL,WAAW,GAAG,IAAI;IAEvB,MAAO,IAAI,CAACG,OAAO,CAA0BC,OAAO,CAACC,WAAW,CAAC;EACnE;EAEA,MAAME,cAAcA,CAAA,EAAyB;IAC3C,IAAI,IAAI,CAACN,WAAW,EAAE;MACpB,MAAM,IAAInB,iBAAiB,CAAC,0CAA0C,CAAC;IACzE;IAEA,IAAI,CAACmB,WAAW,GAAG,IAAI;IAEvB,MAAMO,WAAW,GAAG,MAClB,IAAI,CAACL,OAAO,CACZI,cAAc,CAAC,CAAC;IAElB,OAAO,IAAIvB,WAAW,CAACwB,WAAW,CAAC;EACrC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["BaseAudioContext","InvalidStateError","NotSupportedError","AudioBuffer","isWorkletsAvailable","workletsModule","OfflineAudioContext","constructor","arg0","arg1","arg2","audioRuntime","createWorkletRuntime","numberOfChannels","length","sampleRate","global","createOfflineAudioContext","duration","isSuspended","isRendering","resume","context","suspend","suspendTime","currentTime","startRendering","audioBuffer"],"sourceRoot":"../../../src","sources":["core/OfflineAudioContext.ts"],"mappings":";;AACA,OAAOA,gBAAgB,MAAM,uBAAoB;AAEjD,SAASC,iBAAiB,EAAEC,iBAAiB,QAAQ,oBAAW;AAChE,OAAOC,WAAW,MAAM,kBAAe;AACvC,SAASC,mBAAmB,EAAEC,cAAc,QAAQ,mBAAU;AAE9D,eAAe,MAAMC,mBAAmB,SAASN,gBAAgB,CAAC;EAOhEO,WAAWA,CACTC,IAAyC,EACzCC,IAAa,EACbC,IAAa,EACb;IACA,IAAIC,YAAY,GAAG,IAAI;IACvB,IAAIP,mBAAmB,EAAE;MACvBO,YAAY,GAAGN,cAAc,CAACO,oBAAoB,CAAC,qBAAqB,CAAC;IAC3E;IAEA,IAAI,OAAOJ,IAAI,KAAK,QAAQ,EAAE;MAC5B,MAAM;QAAEK,gBAAgB;QAAEC,MAAM;QAAEC;MAAW,CAAC,GAAGP,IAAI;MACrD,KAAK,CACHQ,MAAM,CAACC,yBAAyB,CAC9BJ,gBAAgB,EAChBC,MAAM,EACNC,UAAU,EACVJ,YACF,CACF,CAAC;MAED,IAAI,CAACO,QAAQ,GAAGJ,MAAM,GAAGC,UAAU;IACrC,CAAC,MAAM,IACL,OAAOP,IAAI,KAAK,QAAQ,IACxB,OAAOC,IAAI,KAAK,QAAQ,IACxB,OAAOC,IAAI,KAAK,QAAQ,EACxB;MACA,KAAK,CAACM,MAAM,CAACC,yBAAyB,CAACT,IAAI,EAAEC,IAAI,EAAEC,IAAI,EAAEC,YAAY,CAAC,CAAC;MACvE,IAAI,CAACO,QAAQ,GAAGT,IAAI,GAAGC,IAAI;IAC7B,CAAC,MAAM;MACL,MAAM,IAAIR,iBAAiB,CAAC,+BAA+B,CAAC;IAC9D;IAEA,IAAI,CAACiB,WAAW,GAAG,KAAK;IACxB,IAAI,CAACC,WAAW,GAAG,KAAK;EAC1B;EAEA,MAAMC,MAAMA,CAAA,EAAuB;IACjC,IAAI,CAAC,IAAI,CAACD,WAAW,EAAE;MACrB,MAAM,IAAInB,iBAAiB,CACzB,sDACF,CAAC;IACH;IAEA,IAAI,CAAC,IAAI,CAACkB,WAAW,EAAE;MACrB,MAAM,IAAIlB,iBAAiB,CACzB,4DACF,CAAC;IACH;IAEA,IAAI,CAACkB,WAAW,GAAG,KAAK;IAExB,MAAO,IAAI,CAACG,OAAO,CAA0BD,MAAM,CAAC,CAAC;EACvD;EAEA,MAAME,OAAOA,CAACC,WAAmB,EAAsB;IACrD,IAAIA,WAAW,GAAG,CAAC,EAAE;MACnB,MAAM,IAAIvB,iBAAiB,CAAC,2CAA2C,CAAC;IAC1E;IAEA,IAAIuB,WAAW,GAAG,IAAI,CAACF,OAAO,CAACG,WAAW,EAAE;MAC1C,MAAM,IAAIxB,iBAAiB,CACzB,sDAAsDuB,WAAW,EACnE,CAAC;IACH;IAEA,IAAIA,WAAW,GAAG,IAAI,CAACN,QAAQ,EAAE;MAC/B,MAAM,IAAIjB,iBAAiB,CACzB,8DAA8DuB,WAAW,EAC3E,CAAC;IACH;IAEA,IAAI,CAACL,WAAW,GAAG,IAAI;IAEvB,MAAO,IAAI,CAACG,OAAO,CAA0BC,OAAO,CAACC,WAAW,CAAC;EACnE;EAEA,MAAME,cAAcA,CAAA,EAAyB;IAC3C,IAAI,IAAI,CAACN,WAAW,EAAE;MACpB,MAAM,IAAInB,iBAAiB,CAAC,0CAA0C,CAAC;IACzE;IAEA,IAAI,CAACmB,WAAW,GAAG,IAAI;IAEvB,MAAMO,WAAW,GAAG,MAClB,IAAI,CAACL,OAAO,CACZI,cAAc,CAAC,CAAC;IAElB,OAAO,IAAIvB,WAAW,CAACwB,WAAW,CAAC;EACrC;AACF","ignoreList":[]}
@@ -1,4 +1,48 @@
1
1
  "use strict";
2
2
 
3
- export {};
3
+ export let FileDirectory = /*#__PURE__*/function (FileDirectory) {
4
+ FileDirectory[FileDirectory["Document"] = 1] = "Document";
5
+ FileDirectory[FileDirectory["Cache"] = 2] = "Cache";
6
+ return FileDirectory;
7
+ }({});
8
+ export let IOSFormat = /*#__PURE__*/function (IOSFormat) {
9
+ IOSFormat[IOSFormat["Wav"] = 1] = "Wav";
10
+ IOSFormat[IOSFormat["Caf"] = 2] = "Caf";
11
+ IOSFormat[IOSFormat["M4A"] = 3] = "M4A";
12
+ IOSFormat[IOSFormat["Flac"] = 4] = "Flac";
13
+ return IOSFormat;
14
+ }({});
15
+ export let IOSAudioQuality = /*#__PURE__*/function (IOSAudioQuality) {
16
+ IOSAudioQuality[IOSAudioQuality["Min"] = 1] = "Min";
17
+ IOSAudioQuality[IOSAudioQuality["Low"] = 2] = "Low";
18
+ IOSAudioQuality[IOSAudioQuality["Medium"] = 3] = "Medium";
19
+ IOSAudioQuality[IOSAudioQuality["High"] = 4] = "High";
20
+ IOSAudioQuality[IOSAudioQuality["Max"] = 5] = "Max";
21
+ return IOSAudioQuality;
22
+ }({});
23
+ export let AndroidFormat = /*#__PURE__*/function (AndroidFormat) {
24
+ AndroidFormat[AndroidFormat["Wav"] = 1] = "Wav";
25
+ AndroidFormat[AndroidFormat["Caf"] = 2] = "Caf";
26
+ AndroidFormat[AndroidFormat["M4A"] = 3] = "M4A";
27
+ AndroidFormat[AndroidFormat["Flac"] = 4] = "Flac";
28
+ return AndroidFormat;
29
+ }({});
30
+ export let FlacCompressionLevel = /*#__PURE__*/function (FlacCompressionLevel) {
31
+ FlacCompressionLevel[FlacCompressionLevel["L0"] = 1] = "L0";
32
+ FlacCompressionLevel[FlacCompressionLevel["L1"] = 2] = "L1";
33
+ FlacCompressionLevel[FlacCompressionLevel["L2"] = 3] = "L2";
34
+ FlacCompressionLevel[FlacCompressionLevel["L3"] = 4] = "L3";
35
+ FlacCompressionLevel[FlacCompressionLevel["L4"] = 5] = "L4";
36
+ FlacCompressionLevel[FlacCompressionLevel["L5"] = 6] = "L5";
37
+ FlacCompressionLevel[FlacCompressionLevel["L6"] = 7] = "L6";
38
+ FlacCompressionLevel[FlacCompressionLevel["L7"] = 8] = "L7";
39
+ FlacCompressionLevel[FlacCompressionLevel["L8"] = 9] = "L8";
40
+ return FlacCompressionLevel;
41
+ }({});
42
+ export let BitDepth = /*#__PURE__*/function (BitDepth) {
43
+ BitDepth[BitDepth["Bit16"] = 1] = "Bit16";
44
+ BitDepth[BitDepth["Bit24"] = 2] = "Bit24";
45
+ BitDepth[BitDepth["Bit32"] = 3] = "Bit32";
46
+ return BitDepth;
47
+ }({});
4
48
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":["FileDirectory","IOSFormat","IOSAudioQuality","AndroidFormat","FlacCompressionLevel","BitDepth"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAwCA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAKzB,WAAYC,SAAS,0BAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAAA,OAATA,SAAS;AAAA;AAOrB,WAAYC,eAAe,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAQ3B,WAAYC,aAAa,0BAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAOzB,WAAYC,oBAAoB,0BAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAYhC,WAAYC,QAAQ,0BAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAAA,OAARA,QAAQ;AAAA","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ function setBitValue(output, value, shift, bitWidth = 4) {
4
+ const fieldMask = (1 << bitWidth) - 1;
5
+ if ((value & ~fieldMask) !== 0) {
6
+ throw new Error(`Value ${value} exceeds the maximum for a field with width ${bitWidth} bits.`);
7
+ }
8
+ return output & ~(fieldMask << shift) | (value & fieldMask) << shift;
9
+ }
10
+ function getBitValue(input, shift, bitWidth = 4) {
11
+ const fieldMask = (1 << bitWidth) - 1;
12
+ return input >> shift & fieldMask;
13
+ }
14
+ export function setEnumValue(output, value, shift, bitWidth = 4) {
15
+ return setBitValue(output, value, shift, bitWidth);
16
+ }
17
+ export function getEnumValue(input, _enum, shift, bitWidth = 4) {
18
+ return getBitValue(input, shift, bitWidth);
19
+ }
20
+ export function encodeFlags(...flags) {
21
+ let output = 0;
22
+ for (let i = 0; i < flags.length; i++) {
23
+ output |= setEnumValue(output, flags[i], i * 4);
24
+ }
25
+ return output;
26
+ }
27
+ //# sourceMappingURL=bitEnums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setBitValue","output","value","shift","bitWidth","fieldMask","Error","getBitValue","input","setEnumValue","getEnumValue","_enum","encodeFlags","flags","i","length"],"sourceRoot":"../../../src","sources":["utils/bitEnums.ts"],"mappings":";;AAAA,SAASA,WAAWA,CAClBC,MAAc,EACdC,KAAa,EACbC,KAAa,EACbC,QAAQ,GAAG,CAAC,EACJ;EACR,MAAMC,SAAS,GAAG,CAAC,CAAC,IAAID,QAAQ,IAAI,CAAC;EAErC,IAAI,CAACF,KAAK,GAAG,CAACG,SAAS,MAAM,CAAC,EAAE;IAC9B,MAAM,IAAIC,KAAK,CACb,SAASJ,KAAK,+CAA+CE,QAAQ,QACvE,CAAC;EACH;EAEA,OAAQH,MAAM,GAAG,EAAEI,SAAS,IAAIF,KAAK,CAAC,GAAK,CAACD,KAAK,GAAGG,SAAS,KAAKF,KAAM;AAC1E;AAEA,SAASI,WAAWA,CAACC,KAAa,EAAEL,KAAa,EAAEC,QAAQ,GAAG,CAAC,EAAU;EACvE,MAAMC,SAAS,GAAG,CAAC,CAAC,IAAID,QAAQ,IAAI,CAAC;EACrC,OAAQI,KAAK,IAAIL,KAAK,GAAIE,SAAS;AACrC;AAEA,OAAO,SAASI,YAAYA,CAC1BR,MAAc,EACdC,KAAiB,EACjBC,KAAa,EACbC,QAAQ,GAAG,CAAC,EACJ;EACR,OAAOJ,WAAW,CAACC,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAEC,QAAQ,CAAC;AACpD;AAEA,OAAO,SAASM,YAAYA,CAC1BF,KAAa,EACbG,KAAQ,EACRR,KAAa,EACbC,QAAQ,GAAG,CAAC,EACA;EACZ,OAAOG,WAAW,CAACC,KAAK,EAAEL,KAAK,EAAEC,QAAQ,CAAC;AAC5C;AAEA,OAAO,SAASQ,WAAWA,CACzB,GAAGC,KAAwB,EACnB;EACR,IAAIZ,MAAM,GAAG,CAAC;EAEd,KAAK,IAAIa,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,KAAK,CAACE,MAAM,EAAED,CAAC,EAAE,EAAE;IACrCb,MAAM,IAAIQ,YAAY,CAACR,MAAM,EAAEY,KAAK,CAACC,CAAC,CAAC,EAAEA,CAAC,GAAG,CAAC,CAAC;EACjD;EAEA,OAAOb,MAAM;AACf","ignoreList":[]}
@@ -1,27 +1,14 @@
1
1
  "use strict";
2
2
 
3
+ export * from "./bitEnums.js";
3
4
  export function clamp(value, min, max) {
4
5
  return Math.min(Math.max(value, min), max);
5
6
  }
6
- let isWorkletsAvailable = false;
7
- export let isWorkletsVersionSupported = false;
8
- export let workletsVersion = 'unknown';
9
- export const supportedWorkletsVersions = ['0.6.0', '0.6.1'];
7
+ export let isWorkletsAvailable = false;
10
8
  export let workletsModule;
11
- export function assertWorkletsEnabled() {
12
- if (!isWorkletsAvailable) {
13
- throw new Error('[react-native-audio-api]: Worklets are not available. Please install react-native-worklets to use this feature.');
14
- } else if (!isWorkletsVersionSupported) {
15
- throw new Error(`[react-native-audio-api]: Worklets version ${workletsVersion} is not supported.
16
- Please install react-native-worklets of one of the following versions: [${supportedWorkletsVersions.join(', ')}] to use this feature.`);
17
- }
18
- }
19
9
  try {
20
10
  workletsModule = require('react-native-worklets');
21
- const workletsModuleJson = require('react-native-worklets/package.json');
22
- isWorkletsVersionSupported = supportedWorkletsVersions.includes(workletsModuleJson.version);
23
11
  isWorkletsAvailable = true;
24
- workletsVersion = workletsModuleJson.version;
25
12
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
26
13
  } catch (error) {
27
14
  isWorkletsAvailable = false;
@@ -1 +1 @@
1
- {"version":3,"names":["clamp","value","min","max","Math","isWorkletsAvailable","isWorkletsVersionSupported","workletsVersion","supportedWorkletsVersions","workletsModule","assertWorkletsEnabled","Error","join","require","workletsModuleJson","includes","version","error"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AAWA,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;AAEA,IAAIE,mBAAmB,GAAG,KAAK;AAC/B,OAAO,IAAIC,0BAA0B,GAAG,KAAK;AAC7C,OAAO,IAAIC,eAAe,GAAG,SAAS;AACtC,OAAO,MAAMC,yBAAyB,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;AAC3D,OAAO,IAAIC,cAAuC;AAElD,OAAO,SAASC,qBAAqBA,CAAA,EAAG;EACtC,IAAI,CAACL,mBAAmB,EAAE;IACxB,MAAM,IAAIM,KAAK,CACb,iHACF,CAAC;EACH,CAAC,MAAM,IAAI,CAACL,0BAA0B,EAAE;IACtC,MAAM,IAAIK,KAAK,CACb,8CAA8CJ,eAAe;AACnE,gFAAgFC,yBAAyB,CAACI,IAAI,CAAC,IAAI,CAAC,wBAChH,CAAC;EACH;AACF;AAEA,IAAI;EACFH,cAAc,GAAGI,OAAO,CAAC,uBAAuB,CAAC;EACjD,MAAMC,kBAAkB,GAAGD,OAAO,CAAC,oCAAoC,CAAC;EACxEP,0BAA0B,GAAGE,yBAAyB,CAACO,QAAQ,CAC7DD,kBAAkB,CAACE,OACrB,CAAC;EACDX,mBAAmB,GAAG,IAAI;EAC1BE,eAAe,GAAGO,kBAAkB,CAACE,OAAO;EAC5C;AACF,CAAC,CAAC,OAAOC,KAAK,EAAE;EACdZ,mBAAmB,GAAG,KAAK;AAC7B","ignoreList":[]}
1
+ {"version":3,"names":["clamp","value","min","max","Math","isWorkletsAvailable","workletsModule","require","error"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AACA,cAAc,eAAY;AAW1B,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;AAEA,OAAO,IAAIE,mBAAmB,GAAG,KAAK;AACtC,OAAO,IAAIC,cAAuC;AAElD,IAAI;EACFA,cAAc,GAAGC,OAAO,CAAC,uBAAuB,CAAC;EACjDF,mBAAmB,GAAG,IAAI;EAC1B;AACF,CAAC,CAAC,OAAOG,KAAK,EAAE;EACdH,mBAAmB,GAAG,KAAK;AAC7B","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 ConvolverNode from "./ConvolverNode.js";
14
13
  import { globalWasmPromise, globalTag } from "./custom/LoadCustomWasm.js";
15
14
  import ConstantSourceNode from "./ConstantSourceNode.js";
16
15
  export default class AudioContext {
@@ -45,17 +44,6 @@ export default class AudioContext {
45
44
  createBiquadFilter() {
46
45
  return new BiquadFilterNode(this, this.context.createBiquadFilter());
47
46
  }
48
- createConvolver(options) {
49
- if (options?.buffer) {
50
- const numberOfChannels = options.buffer.numberOfChannels;
51
- if (numberOfChannels !== 1 && numberOfChannels !== 2 && numberOfChannels !== 4) {
52
- throw new NotSupportedError(`The number of channels provided (${numberOfChannels}) in impulse response for ConvolverNode buffer must be 1 or 2 or 4.`);
53
- }
54
- }
55
- const buffer = options?.buffer ?? null;
56
- const disableNormalization = options?.disableNormalization ?? false;
57
- return new ConvolverNode(this, this.context.createConvolver(), buffer, disableNormalization);
58
- }
59
47
  async createBufferSource(options) {
60
48
  if (!options || !options.pitchCorrection) {
61
49
  return new AudioBufferSourceNode(this, this.context.createBufferSource(), false);
@@ -1 +1 @@
1
- {"version":3,"names":["InvalidAccessError","NotSupportedError","AnalyserNode","AudioDestinationNode","AudioBuffer","AudioBufferSourceNode","BiquadFilterNode","GainNode","OscillatorNode","PeriodicWave","StereoPannerNode","ConvolverNode","globalWasmPromise","globalTag","ConstantSourceNode","AudioContext","constructor","options","_initSuspended","sampleRate","context","window","destination","currentTime","state","createOscillator","createConstantSource","createGain","createStereoPanner","createBiquadFilter","createConvolver","buffer","numberOfChannels","disableNormalization","createBufferSource","pitchCorrection","wasmStretch","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","createAnalyser","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","close","resume","suspend"],"sourceRoot":"../../../src","sources":["web-core/AudioContext.tsx"],"mappings":";;AAMA,SAASA,kBAAkB,EAAEC,iBAAiB,QAAQ,oBAAW;AAEjE,OAAOC,YAAY,MAAM,mBAAgB;AACzC,OAAOC,oBAAoB,MAAM,2BAAwB;AACzD,OAAOC,WAAW,MAAM,kBAAe;AACvC,OAAOC,qBAAqB,MAAM,4BAAyB;AAC3D,OAAOC,gBAAgB,MAAM,uBAAoB;AACjD,OAAOC,QAAQ,MAAM,eAAY;AACjC,OAAOC,cAAc,MAAM,qBAAkB;AAC7C,OAAOC,YAAY,MAAM,mBAAgB;AACzC,OAAOC,gBAAgB,MAAM,uBAAoB;AACjD,OAAOC,aAAa,MAAM,oBAAiB;AAG3C,SAASC,iBAAiB,EAAEC,SAAS,QAAQ,4BAAyB;AACtE,OAAOC,kBAAkB,MAAM,yBAAsB;AAErD,eAAe,MAAMC,YAAY,CAA6B;EAM5DC,WAAWA,CAACC,OAA6B,EAAEC,cAAuB,GAAG,KAAK,EAAE;IAC1E,IACED,OAAO,IACPA,OAAO,CAACE,UAAU,KACjBF,OAAO,CAACE,UAAU,GAAG,IAAI,IAAIF,OAAO,CAACE,UAAU,GAAG,KAAK,CAAC,EACzD;MACA,MAAM,IAAIlB,iBAAiB,CACzB,6CAA6CgB,OAAO,CAACE,UAAU,EACjE,CAAC;IACH;IAEA,IAAI,CAACC,OAAO,GAAG,IAAIC,MAAM,CAACN,YAAY,CAAC;MAAEI,UAAU,EAAEF,OAAO,EAAEE;IAAW,CAAC,CAAC;IAE3E,IAAI,CAACA,UAAU,GAAG,IAAI,CAACC,OAAO,CAACD,UAAU;IACzC,IAAI,CAACG,WAAW,GAAG,IAAInB,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAACiB,OAAO,CAACE,WAAW,CAAC;EAC7E;EAEA,IAAWC,WAAWA,CAAA,EAAW;IAC/B,OAAO,IAAI,CAACH,OAAO,CAACG,WAAW;EACjC;EAEA,IAAWC,KAAKA,CAAA,EAAiB;IAC/B,OAAO,IAAI,CAACJ,OAAO,CAACI,KAAK;EAC3B;EAEAC,gBAAgBA,CAAA,EAAmB;IACjC,OAAO,IAAIjB,cAAc,CAAC,IAAI,EAAE,IAAI,CAACY,OAAO,CAACK,gBAAgB,CAAC,CAAC,CAAC;EAClE;EAEAC,oBAAoBA,CAAA,EAAuB;IACzC,OAAO,IAAIZ,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAACM,OAAO,CAACM,oBAAoB,CAAC,CAAC,CAAC;EAC1E;EAEAC,UAAUA,CAAA,EAAa;IACrB,OAAO,IAAIpB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAACa,OAAO,CAACO,UAAU,CAAC,CAAC,CAAC;EACtD;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIlB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAACU,OAAO,CAACQ,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAC,kBAAkBA,CAAA,EAAqB;IACrC,OAAO,IAAIvB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAACc,OAAO,CAACS,kBAAkB,CAAC,CAAC,CAAC;EACtE;EAEAC,eAAeA,CAACb,OAA8B,EAAiB;IAC7D,IAAIA,OAAO,EAAEc,MAAM,EAAE;MACnB,MAAMC,gBAAgB,GAAGf,OAAO,CAACc,MAAM,CAACC,gBAAgB;MACxD,IACEA,gBAAgB,KAAK,CAAC,IACtBA,gBAAgB,KAAK,CAAC,IACtBA,gBAAgB,KAAK,CAAC,EACtB;QACA,MAAM,IAAI/B,iBAAiB,CACzB,oCAAoC+B,gBAAgB,qEACtD,CAAC;MACH;IACF;IACA,MAAMD,MAAM,GAAGd,OAAO,EAAEc,MAAM,IAAI,IAAI;IACtC,MAAME,oBAAoB,GAAGhB,OAAO,EAAEgB,oBAAoB,IAAI,KAAK;IACnE,OAAO,IAAItB,aAAa,CACtB,IAAI,EACJ,IAAI,CAACS,OAAO,CAACU,eAAe,CAAC,CAAC,EAC9BC,MAAM,EACNE,oBACF,CAAC;EACH;EAEA,MAAMC,kBAAkBA,CACtBjB,OAA0C,EACV;IAChC,IAAI,CAACA,OAAO,IAAI,CAACA,OAAO,CAACkB,eAAe,EAAE;MACxC,OAAO,IAAI9B,qBAAqB,CAC9B,IAAI,EACJ,IAAI,CAACe,OAAO,CAACc,kBAAkB,CAAC,CAAC,EACjC,KACF,CAAC;IACH;IAEA,MAAMtB,iBAAiB;IAEvB,MAAMwB,WAAW,GAAG,MAAMf,MAAM,CAACR,SAAS,CAAC,CAAC,IAAI,CAACO,OAAO,CAAC;IAEzD,OAAO,IAAIf,qBAAqB,CAAC,IAAI,EAAE+B,WAAW,EAAE,IAAI,CAAC;EAC3D;EAEAC,YAAYA,CACVC,aAAqB,EACrBC,MAAc,EACdpB,UAAkB,EACL;IACb,IAAImB,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,EAAE,EAAE;MAC5C,MAAM,IAAIrC,iBAAiB,CACzB,oCAAoCqC,aAAa,gCACnD,CAAC;IACH;IAEA,IAAIC,MAAM,IAAI,CAAC,EAAE;MACf,MAAM,IAAItC,iBAAiB,CACzB,kCAAkCsC,MAAM,kDAC1C,CAAC;IACH;IAEA,IAAIpB,UAAU,GAAG,IAAI,IAAIA,UAAU,GAAG,KAAK,EAAE;MAC3C,MAAM,IAAIlB,iBAAiB,CACzB,6BAA6BkB,UAAU,sCACzC,CAAC;IACH;IAEA,OAAO,IAAIf,WAAW,CACpB,IAAI,CAACgB,OAAO,CAACiB,YAAY,CAACC,aAAa,EAAEC,MAAM,EAAEpB,UAAU,CAC7D,CAAC;EACH;EAEAqB,kBAAkBA,CAChBC,IAAkB,EAClBC,IAAkB,EAClBC,WAAqC,EACvB;IACd,IAAIF,IAAI,CAACF,MAAM,KAAKG,IAAI,CAACH,MAAM,EAAE;MAC/B,MAAM,IAAIvC,kBAAkB,CAC1B,4BAA4ByC,IAAI,CAACF,MAAM,oBAAoBG,IAAI,CAACH,MAAM,sBACxE,CAAC;IACH;IAEA,OAAO,IAAI9B,YAAY,CACrB,IAAI,CAACW,OAAO,CAACoB,kBAAkB,CAACC,IAAI,EAAEC,IAAI,EAAEC,WAAW,CACzD,CAAC;EACH;EAEAC,cAAcA,CAAA,EAAiB;IAC7B,OAAO,IAAI1C,YAAY,CAAC,IAAI,EAAE,IAAI,CAACkB,OAAO,CAACwB,cAAc,CAAC,CAAC,CAAC;EAC9D;EAEA,MAAMC,qBAAqBA,CAACC,MAAc,EAAwB;IAChE,MAAMC,WAAW,GAAG,MAAMC,KAAK,CAACF,MAAM,CAAC,CAACG,IAAI,CAAEC,QAAQ,IACpDA,QAAQ,CAACH,WAAW,CAAC,CACvB,CAAC;IAED,OAAO,IAAI,CAACI,eAAe,CAACJ,WAAW,CAAC;EAC1C;EAEA,MAAMI,eAAeA,CAACJ,WAAwB,EAAwB;IACpE,OAAO,IAAI3C,WAAW,CAAC,MAAM,IAAI,CAACgB,OAAO,CAAC+B,eAAe,CAACJ,WAAW,CAAC,CAAC;EACzE;EAEA,MAAMK,KAAKA,CAAA,EAAkB;IAC3B,MAAM,IAAI,CAAChC,OAAO,CAACgC,KAAK,CAAC,CAAC;EAC5B;EAEA,MAAMC,MAAMA,CAAA,EAAkB;IAC5B,MAAM,IAAI,CAACjC,OAAO,CAACiC,MAAM,CAAC,CAAC;EAC7B;EAEA,MAAMC,OAAOA,CAAA,EAAkB;IAC7B,MAAM,IAAI,CAAClC,OAAO,CAACkC,OAAO,CAAC,CAAC;EAC9B;AACF","ignoreList":[]}
1
+ {"version":3,"names":["InvalidAccessError","NotSupportedError","AnalyserNode","AudioDestinationNode","AudioBuffer","AudioBufferSourceNode","BiquadFilterNode","GainNode","OscillatorNode","PeriodicWave","StereoPannerNode","globalWasmPromise","globalTag","ConstantSourceNode","AudioContext","constructor","options","_initSuspended","sampleRate","context","window","destination","currentTime","state","createOscillator","createConstantSource","createGain","createStereoPanner","createBiquadFilter","createBufferSource","pitchCorrection","wasmStretch","createBuffer","numOfChannels","length","createPeriodicWave","real","imag","constraints","createAnalyser","decodeAudioDataSource","source","arrayBuffer","fetch","then","response","decodeAudioData","close","resume","suspend"],"sourceRoot":"../../../src","sources":["web-core/AudioContext.tsx"],"mappings":"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","ignoreList":[]}
@@ -12,7 +12,6 @@ import PeriodicWave from "./PeriodicWave.js";
12
12
  import StereoPannerNode from "./StereoPannerNode.js";
13
13
  import ConstantSourceNode from "./ConstantSourceNode.js";
14
14
  import { globalWasmPromise, globalTag } from "./custom/LoadCustomWasm.js";
15
- import ConvolverNode from "./ConvolverNode.js";
16
15
  export default class OfflineAudioContext {
17
16
  constructor(arg0, arg1, arg2) {
18
17
  if (typeof arg0 === 'object') {
@@ -46,17 +45,6 @@ export default class OfflineAudioContext {
46
45
  createBiquadFilter() {
47
46
  return new BiquadFilterNode(this, this.context.createBiquadFilter());
48
47
  }
49
- createConvolver(options) {
50
- if (options?.buffer) {
51
- const numberOfChannels = options.buffer.numberOfChannels;
52
- if (numberOfChannels !== 1 && numberOfChannels !== 2 && numberOfChannels !== 4) {
53
- throw new NotSupportedError(`The number of channels provided (${numberOfChannels}) in impulse response for ConvolverNode buffer must be 1 or 2 or 4.`);
54
- }
55
- }
56
- const buffer = options?.buffer ?? null;
57
- const disableNormalization = options?.disableNormalization ?? false;
58
- return new ConvolverNode(this, this.context.createConvolver(), buffer, disableNormalization);
59
- }
60
48
  async createBufferSource(options) {
61
49
  if (!options || !options.pitchCorrection) {
62
50
  return new AudioBufferSourceNode(this, this.context.createBufferSource(), false);