react-native-audio-api 0.13.3 → 0.13.5

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 (96) hide show
  1. package/android/src/main/java/com/swmansion/audioapi/system/AudioEvent.kt +1 -0
  2. package/common/cpp/audioapi/HostObjects/sources/AudioFileSourceNodeHostObject.cpp +8 -2
  3. package/common/cpp/audioapi/HostObjects/sources/AudioFileSourceNodeHostObject.h +1 -0
  4. package/common/cpp/audioapi/HostObjects/utils/JsEnumParser.cpp +2 -0
  5. package/common/cpp/audioapi/core/sources/AudioFileSourceNode.cpp +15 -1
  6. package/common/cpp/audioapi/core/sources/AudioFileSourceNode.h +19 -0
  7. package/common/cpp/audioapi/core/sources/RecorderAdapterNode.cpp +12 -1
  8. package/common/cpp/audioapi/core/sources/RecorderAdapterNode.h +6 -0
  9. package/common/cpp/audioapi/core/utils/param/ParamQueueBase.hpp +1 -1
  10. package/common/cpp/audioapi/core/utils/param/ParamRenderQueue.cpp +35 -12
  11. package/common/cpp/audioapi/core/utils/param/ParamRenderQueue.h +9 -0
  12. package/common/cpp/audioapi/core/utils/worklets/SafeIncludes.h +3 -3
  13. package/common/cpp/audioapi/core/utils/worklets/WorkletsRunner.cpp +2 -2
  14. package/common/cpp/audioapi/events/AudioEvent.h +1 -0
  15. package/common/cpp/audioapi/events/AudioEventPayload.h +11 -0
  16. package/common/cpp/audioapi/events/AudioEventPayloadMapping.h +1 -0
  17. package/common/cpp/audioapi/utils/events/BufferingStateDispatcher.cpp +49 -0
  18. package/common/cpp/audioapi/utils/events/BufferingStateDispatcher.h +42 -0
  19. package/ios/audioapi/ios/core/IOSAudioRecorder.h +12 -1
  20. package/ios/audioapi/ios/core/IOSAudioRecorder.mm +195 -72
  21. package/ios/audioapi/ios/core/NativeAudioRecorder.h +3 -1
  22. package/ios/audioapi/ios/core/NativeAudioRecorder.m +41 -14
  23. package/ios/audioapi/ios/core/utils/FileOptions.mm +18 -5
  24. package/ios/audioapi/ios/core/utils/IOSFileWriter.h +8 -0
  25. package/ios/audioapi/ios/core/utils/IOSFileWriter.mm +55 -8
  26. package/ios/audioapi/ios/core/utils/IOSRotatingFileWriter.h +3 -0
  27. package/ios/audioapi/ios/core/utils/IOSRotatingFileWriter.mm +16 -0
  28. package/ios/audioapi/ios/system/AudioEngine.h +2 -1
  29. package/ios/audioapi/ios/system/AudioEngine.mm +49 -23
  30. package/ios/audioapi/ios/system/SystemNotificationManager.mm +10 -0
  31. package/lib/commonjs/Audio/Audio.js +30 -3
  32. package/lib/commonjs/Audio/Audio.js.map +1 -1
  33. package/lib/commonjs/Audio/Audio.web.js +21 -3
  34. package/lib/commonjs/Audio/Audio.web.js.map +1 -1
  35. package/lib/commonjs/Audio/AudioFileSourceNode.js +20 -0
  36. package/lib/commonjs/Audio/AudioFileSourceNode.js.map +1 -1
  37. package/lib/commonjs/Audio/controls/AudioControls.js +90 -94
  38. package/lib/commonjs/Audio/controls/AudioControls.js.map +1 -1
  39. package/lib/commonjs/Audio/controls/audioControlUtils.js +48 -18
  40. package/lib/commonjs/Audio/controls/audioControlUtils.js.map +1 -1
  41. package/lib/commonjs/Audio/index.js +7 -0
  42. package/lib/commonjs/Audio/index.js.map +1 -1
  43. package/lib/commonjs/Audio/utils.js +16 -5
  44. package/lib/commonjs/Audio/utils.js.map +1 -1
  45. package/lib/commonjs/AudioAPIModule/AudioAPIModule.js +1 -1
  46. package/lib/commonjs/core/AudioDecoder.js +4 -1
  47. package/lib/commonjs/core/AudioDecoder.js.map +1 -1
  48. package/lib/module/Audio/Audio.js +30 -3
  49. package/lib/module/Audio/Audio.js.map +1 -1
  50. package/lib/module/Audio/Audio.web.js +21 -3
  51. package/lib/module/Audio/Audio.web.js.map +1 -1
  52. package/lib/module/Audio/AudioFileSourceNode.js +20 -0
  53. package/lib/module/Audio/AudioFileSourceNode.js.map +1 -1
  54. package/lib/module/Audio/controls/AudioControls.js +92 -96
  55. package/lib/module/Audio/controls/AudioControls.js.map +1 -1
  56. package/lib/module/Audio/controls/audioControlUtils.js +48 -19
  57. package/lib/module/Audio/controls/audioControlUtils.js.map +1 -1
  58. package/lib/module/Audio/index.js +1 -0
  59. package/lib/module/Audio/index.js.map +1 -1
  60. package/lib/module/Audio/utils.js +15 -5
  61. package/lib/module/Audio/utils.js.map +1 -1
  62. package/lib/module/AudioAPIModule/AudioAPIModule.js +1 -1
  63. package/lib/module/core/AudioDecoder.js +4 -1
  64. package/lib/module/core/AudioDecoder.js.map +1 -1
  65. package/lib/typescript/Audio/Audio.d.ts.map +1 -1
  66. package/lib/typescript/Audio/Audio.web.d.ts.map +1 -1
  67. package/lib/typescript/Audio/AudioFileSourceNode.d.ts +2 -0
  68. package/lib/typescript/Audio/AudioFileSourceNode.d.ts.map +1 -1
  69. package/lib/typescript/Audio/controls/AudioControls.d.ts.map +1 -1
  70. package/lib/typescript/Audio/controls/audioControlUtils.d.ts +11 -4
  71. package/lib/typescript/Audio/controls/audioControlUtils.d.ts.map +1 -1
  72. package/lib/typescript/Audio/index.d.ts +1 -0
  73. package/lib/typescript/Audio/index.d.ts.map +1 -1
  74. package/lib/typescript/Audio/types.d.ts +15 -1
  75. package/lib/typescript/Audio/types.d.ts.map +1 -1
  76. package/lib/typescript/Audio/utils.d.ts +2 -1
  77. package/lib/typescript/Audio/utils.d.ts.map +1 -1
  78. package/lib/typescript/core/AudioDecoder.d.ts.map +1 -1
  79. package/lib/typescript/events/types.d.ts +5 -0
  80. package/lib/typescript/events/types.d.ts.map +1 -1
  81. package/lib/typescript/jsi-interfaces.d.ts +1 -0
  82. package/lib/typescript/jsi-interfaces.d.ts.map +1 -1
  83. package/package.json +8 -8
  84. package/scripts/validate-worklets-version.js +1 -1
  85. package/src/Audio/Audio.tsx +38 -2
  86. package/src/Audio/Audio.web.tsx +26 -2
  87. package/src/Audio/AudioFileSourceNode.ts +28 -0
  88. package/src/Audio/controls/AudioControls.tsx +117 -116
  89. package/src/Audio/controls/audioControlUtils.ts +63 -31
  90. package/src/Audio/index.ts +1 -0
  91. package/src/Audio/types.ts +15 -1
  92. package/src/Audio/utils.ts +20 -2
  93. package/src/AudioAPIModule/AudioAPIModule.ts +1 -1
  94. package/src/core/AudioDecoder.ts +5 -3
  95. package/src/events/types.ts +6 -0
  96. package/src/jsi-interfaces.ts +1 -0
@@ -17,6 +17,7 @@
17
17
  @interface AudioEngineInputRegistration : NSObject
18
18
 
19
19
  @property (nonatomic, copy) AVAudioSinkNodeReceiverBlock receiverBlock;
20
+ @property (nonatomic, copy) void (^onInputConfigurationChange)(void);
20
21
 
21
22
  @end
22
23
 
@@ -24,7 +25,7 @@
24
25
  @end
25
26
 
26
27
  @interface AudioEngine () {
27
- std::mutex _engineLock;
28
+ std::recursive_mutex _engineLock;
28
29
  BOOL _isRebuildingAudioEngine;
29
30
  }
30
31
 
@@ -43,6 +44,7 @@
43
44
  - (AVAudioFormat *)liveInputFormat;
44
45
  - (void)resetInputNode;
45
46
  - (void)rebuildAudioEngineAndResumeIfNeeded;
47
+ - (void)notifyConfigurationChanges;
46
48
 
47
49
  @end
48
50
 
@@ -161,6 +163,29 @@ static AudioEngine *_sharedInstance = nil;
161
163
  [self.audioEngine connect:sourceNode to:self.audioEngine.mainMixerNode format:format];
162
164
  }
163
165
 
166
+ - (AVAudioFormat *)liveInputFormat
167
+ {
168
+ std::scoped_lock lock(_engineLock);
169
+
170
+ if (self.audioEngine == nil) {
171
+ return nil;
172
+ }
173
+
174
+ AVAudioInputNode *engineInputNode = self.audioEngine.inputNode;
175
+
176
+ if (engineInputNode == nil) {
177
+ return nil;
178
+ }
179
+
180
+ AVAudioFormat *inputFormat = [engineInputNode outputFormatForBus:0];
181
+
182
+ if (inputFormat == nil || inputFormat.sampleRate <= 0 || inputFormat.channelCount == 0) {
183
+ return nil;
184
+ }
185
+
186
+ return inputFormat;
187
+ }
188
+
164
189
  - (AVAudioFormat *)currentInputConnectionFormat
165
190
  {
166
191
  AVAudioFormat *inputFormat = [self liveInputFormat];
@@ -186,6 +211,14 @@ static AudioEngine *_sharedInstance = nil;
186
211
  return YES;
187
212
  }
188
213
 
214
+ NSError *sessionError = nil;
215
+ if (![self.sessionManager ensureActive:true error:&sessionError]) {
216
+ NSLog(
217
+ @"Error while activating audio session before input materialization: %@",
218
+ [sessionError debugDescription]);
219
+ return NO;
220
+ }
221
+
189
222
  AVAudioFormat *inputFormat = [self currentInputConnectionFormat];
190
223
 
191
224
  if (inputFormat == nil) {
@@ -253,6 +286,7 @@ static AudioEngine *_sharedInstance = nil;
253
286
  }
254
287
 
255
288
  - (void)attachInputNodeWithReceiverBlock:(AVAudioSinkNodeReceiverBlock)receiverBlock
289
+ onInputConfigurationChange:(void (^)(void))onInputConfigurationChange
256
290
  {
257
291
  std::scoped_lock lock(_engineLock);
258
292
  [self createAudioEngineIfNeeded];
@@ -263,6 +297,7 @@ static AudioEngine *_sharedInstance = nil;
263
297
 
264
298
  AudioEngineInputRegistration *registration = [[AudioEngineInputRegistration alloc] init];
265
299
  registration.receiverBlock = receiverBlock;
300
+ registration.onInputConfigurationChange = onInputConfigurationChange;
266
301
  self.inputRegistration = registration;
267
302
 
268
303
  [self materializeInputNodeIfNeeded];
@@ -292,30 +327,8 @@ static AudioEngine *_sharedInstance = nil;
292
327
  [self resetInputNode];
293
328
  }
294
329
 
295
- - (AVAudioFormat *)liveInputFormat
296
- {
297
- if (self.audioEngine == nil) {
298
- return nil;
299
- }
300
-
301
- AVAudioInputNode *engineInputNode = self.audioEngine.inputNode;
302
-
303
- if (engineInputNode == nil) {
304
- return nil;
305
- }
306
-
307
- AVAudioFormat *inputFormat = [engineInputNode outputFormatForBus:0];
308
-
309
- if (inputFormat == nil || inputFormat.sampleRate <= 0 || inputFormat.channelCount == 0) {
310
- return nil;
311
- }
312
-
313
- return inputFormat;
314
- }
315
-
316
330
  - (AVAudioFormat *)getLiveInputFormat
317
331
  {
318
- std::scoped_lock lock(_engineLock);
319
332
  return [self liveInputFormat];
320
333
  }
321
334
 
@@ -377,6 +390,7 @@ static AudioEngine *_sharedInstance = nil;
377
390
 
378
391
  if (!shouldResume) {
379
392
  self.state = AudioEngineState::AudioEngineStatePaused;
393
+ [self notifyConfigurationChanges];
380
394
  return;
381
395
  }
382
396
 
@@ -388,11 +402,20 @@ static AudioEngine *_sharedInstance = nil;
388
402
  @"Error while restarting the audio engine after interruption: %@",
389
403
  [error debugDescription]);
390
404
  self.state = AudioEngineState::AudioEngineStateIdle;
405
+ [self notifyConfigurationChanges];
391
406
  return;
392
407
  }
393
408
 
394
409
  self.state = AudioEngineState::AudioEngineStateRunning;
395
410
  self.sessionDeactivationInvalidatedGraph = false;
411
+ [self notifyConfigurationChanges];
412
+ }
413
+
414
+ - (void)notifyConfigurationChanges
415
+ {
416
+ if (self.inputRegistration != nil && self.inputRegistration.onInputConfigurationChange != nil) {
417
+ self.inputRegistration.onInputConfigurationChange();
418
+ }
396
419
  }
397
420
 
398
421
  - (AudioEngineState)getState
@@ -426,6 +449,8 @@ static AudioEngine *_sharedInstance = nil;
426
449
  [self startEngine];
427
450
  }
428
451
 
452
+ [self notifyConfigurationChanges];
453
+
429
454
  _isRebuildingAudioEngine = NO;
430
455
  }
431
456
 
@@ -497,6 +522,7 @@ static AudioEngine *_sharedInstance = nil;
497
522
  std::scoped_lock lock(_engineLock);
498
523
  if (self.state == AudioEngineState::AudioEngineStateRunning && self.audioEngine != nil &&
499
524
  [self.audioEngine isRunning]) {
525
+ [self materializeTrackedNodesIfNeeded];
500
526
  return true;
501
527
  }
502
528
 
@@ -218,6 +218,16 @@ static NSString *NotificationManagerContext = @"SystemNotificationManagerContext
218
218
  invokeHandlerWithEventName:audioapi::AudioEvent::ROUTE_CHANGE
219
219
  payload:audioapi::StringPayload{
220
220
  .name = "reason", .reason = [reasonStr UTF8String]}];
221
+
222
+ switch (routeChangeReason) {
223
+ case AVAudioSessionRouteChangeReasonNewDeviceAvailable:
224
+ case AVAudioSessionRouteChangeReasonOldDeviceUnavailable:
225
+ case AVAudioSessionRouteChangeReasonRouteConfigurationChange:
226
+ [self handleEngineConfigurationChange:nil];
227
+ break;
228
+ default:
229
+ break;
230
+ }
221
231
  }
222
232
 
223
233
  - (void)handleMediaServicesReset:(NSNotification *)notification
@@ -36,13 +36,20 @@ const Audio = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwa
36
36
  onEnded: onEndedCallback,
37
37
  onPlay,
38
38
  onPause,
39
- onVolumeChange
39
+ onVolumeChange,
40
+ onWaiting,
41
+ onPlaying
40
42
  } = (0, _utils.useStableAudioProps)(props);
41
43
  const [volumeState, setVolumeState] = (0, _react.useState)(null);
42
44
  const [mutedState, setMutedState] = (0, _react.useState)(null);
43
45
  const [ready, setReady] = (0, _react.useState)(false);
44
46
  const [playbackState, setPlaybackState] = (0, _react.useState)('idle');
47
+ const [isBuffering, setIsBuffering] = (0, _react.useState)(false);
45
48
  const [currentTime, setCurrentTime] = (0, _react.useState)(0);
49
+
50
+ // Derived rather than folded into playbackState directly, so the
51
+ // buffering-subscription effect below isn't torn down on every stall.
52
+ const publicPlaybackState = (0, _react.useMemo)(() => playbackState === 'playing' && isBuffering ? 'buffering' : playbackState, [playbackState, isBuffering]);
46
53
  const path = (0, _react.useMemo)(() => (0, _utils.resolveSourcePath)(source), [source]);
47
54
  const lastEffectiveVolumeRef = (0, _react.useRef)(muted ? 0 : volume);
48
55
  (0, _react.useEffect)(() => {
@@ -164,6 +171,26 @@ const Audio = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwa
164
171
  fileSource?.stopPositionTracking();
165
172
  };
166
173
  }, [onPositionChange, playbackState, fileSourceRef]);
174
+ (0, _react.useEffect)(() => {
175
+ if (playbackState !== 'playing') {
176
+ // Not an active stall (paused/idle/ended) — clear any stale flag from
177
+ // a stall that was in progress when playback stopped.
178
+ setIsBuffering(false);
179
+ return;
180
+ }
181
+ const fileSource = fileSourceRef.current;
182
+ fileSource?.startBufferingTracking(buffering => {
183
+ setIsBuffering(buffering);
184
+ if (buffering) {
185
+ onWaiting();
186
+ } else {
187
+ onPlaying();
188
+ }
189
+ });
190
+ return () => {
191
+ fileSource?.stopBufferingTracking();
192
+ };
193
+ }, [onWaiting, onPlaying, playbackState, fileSourceRef]);
167
194
  (0, _react.useImperativeHandle)(ref, () => ({
168
195
  play,
169
196
  pause,
@@ -182,7 +209,7 @@ const Audio = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwa
182
209
  ready,
183
210
  setMuted: setMutedState,
184
211
  muted: effectiveMutedState,
185
- playbackState,
212
+ playbackState: publicPlaybackState,
186
213
  currentTime,
187
214
  duration,
188
215
  autoPlay,
@@ -193,7 +220,7 @@ const Audio = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwa
193
220
  preservesPitch,
194
221
  sourcePath: path,
195
222
  source
196
- }), [play, pause, seekToTime, setVolumeState, effectiveVolumeState, ready, setMutedState, effectiveMutedState, playbackState, currentTime, duration, autoPlay, controls, loop, preload, playbackRate, preservesPitch, path, source]);
223
+ }), [play, pause, seekToTime, setVolumeState, effectiveVolumeState, ready, setMutedState, effectiveMutedState, publicPlaybackState, currentTime, duration, autoPlay, controls, loop, preload, playbackRate, preservesPitch, path, source]);
197
224
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_AudioTagContext.AudioComponentContext.Provider, {
198
225
  value: ctxValue,
199
226
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_AudioTagContext","_utils","_AudioControls","_interopRequireDefault","_useAudioSourceLoader","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Audio","React","memo","forwardRef","props","ref","children","autoPlay","controls","loop","muted","preload","forceDownload","source","playbackRate","preservesPitch","volume","context","onLoadStart","onLoad","onError","onPositionChange","onEnded","onEndedCallback","onPlay","onPause","onVolumeChange","useStableAudioProps","volumeState","setVolumeState","useState","mutedState","setMutedState","ready","setReady","playbackState","setPlaybackState","currentTime","setCurrentTime","path","useMemo","resolveSourcePath","lastEffectiveVolumeRef","useRef","useEffect","fileSourceRef","current","disconnect","pause","dispose","effectiveMutedState","effectiveVolumeState","effectiveVolumeRef","playRef","handleAutoPlay","useCallback","handleEnded","endedDuration","loaderReady","duration","loadForPlayback","useAudioSourceLoader","preloadMode","onAutoPlay","setVolume","play","loaded","setPlaybackRate","nextPlaybackRate","seekToTime","seconds","nextTime","Math","max","min","setLoop","setPreservesPitch","fileSource","startPositionTracking","stopPositionTracking","useImperativeHandle","setMuted","getFileSourceNode","ctxValue","sourcePath","jsx","AudioComponentContext","Provider","value","jsxs","View","style","alignSelf","width","_default","exports"],"sourceRoot":"../../../src","sources":["Audio/Audio.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_AudioTagContext","_utils","_AudioControls","_interopRequireDefault","_useAudioSourceLoader","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Audio","React","memo","forwardRef","props","ref","children","autoPlay","controls","loop","muted","preload","forceDownload","source","playbackRate","preservesPitch","volume","context","onLoadStart","onLoad","onError","onPositionChange","onEnded","onEndedCallback","onPlay","onPause","onVolumeChange","onWaiting","onPlaying","useStableAudioProps","volumeState","setVolumeState","useState","mutedState","setMutedState","ready","setReady","playbackState","setPlaybackState","isBuffering","setIsBuffering","currentTime","setCurrentTime","publicPlaybackState","useMemo","path","resolveSourcePath","lastEffectiveVolumeRef","useRef","useEffect","fileSourceRef","current","disconnect","pause","dispose","effectiveMutedState","effectiveVolumeState","effectiveVolumeRef","playRef","handleAutoPlay","useCallback","handleEnded","endedDuration","loaderReady","duration","loadForPlayback","useAudioSourceLoader","preloadMode","onAutoPlay","setVolume","play","loaded","setPlaybackRate","nextPlaybackRate","seekToTime","seconds","nextTime","Math","max","min","setLoop","setPreservesPitch","fileSource","startPositionTracking","stopPositionTracking","startBufferingTracking","buffering","stopBufferingTracking","useImperativeHandle","setMuted","getFileSourceNode","ctxValue","sourcePath","jsx","AudioComponentContext","Provider","value","jsxs","View","style","alignSelf","width","_default","exports"],"sourceRoot":"../../../src","sources":["Audio/Audio.tsx"],"mappings":"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","ignoreList":[]}
@@ -31,15 +31,23 @@ const Audio = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwa
31
31
  onEnded: onEndedCallback,
32
32
  onPlay,
33
33
  onPause,
34
- onVolumeChange
34
+ onVolumeChange,
35
+ onWaiting,
36
+ onPlaying
35
37
  } = (0, _utils.useStableAudioProps)(props);
36
38
  const audioRef = (0, _react.useRef)(null);
37
39
  const [volumeState, setVolumeState] = (0, _react.useState)(volume);
38
40
  const [mutedState, setMutedState] = (0, _react.useState)(null);
39
41
  const [ready, setReady] = (0, _react.useState)(false);
40
42
  const [playbackState, setPlaybackState] = (0, _react.useState)('idle');
43
+ const [isBuffering, setIsBuffering] = (0, _react.useState)(false);
41
44
  const [currentTime, setCurrentTime] = (0, _react.useState)(0);
42
45
  const [duration, setDuration] = (0, _react.useState)(0);
46
+
47
+ // See the native Audio.tsx's identical comment: kept derived rather than
48
+ // folded into playbackState so a stall starting/ending doesn't have to
49
+ // tear down whatever effect is watching playbackState.
50
+ const publicPlaybackState = (0, _react.useMemo)(() => playbackState === 'playing' && isBuffering ? 'buffering' : playbackState, [playbackState, isBuffering]);
43
51
  const lastElementVolumeRef = (0, _react.useRef)(muted ? 0 : volume);
44
52
  const effectiveMutedState = (0, _react.useMemo)(() => {
45
53
  return mutedState ?? muted;
@@ -164,7 +172,7 @@ const Audio = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwa
164
172
  volume: reportedVolumeState,
165
173
  setMuted,
166
174
  muted: effectiveMutedState,
167
- playbackState,
175
+ playbackState: publicPlaybackState,
168
176
  currentTime,
169
177
  duration,
170
178
  autoPlay,
@@ -174,7 +182,7 @@ const Audio = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwa
174
182
  playbackRate,
175
183
  preservesPitch,
176
184
  audioContext: null
177
- }), [play, pause, seekToTime, setVolume, ready, reportedVolumeState, setMuted, effectiveMutedState, playbackState, currentTime, duration, autoPlay, controls, loop, preload, playbackRate, preservesPitch]);
185
+ }), [play, pause, seekToTime, setVolume, ready, reportedVolumeState, setMuted, effectiveMutedState, publicPlaybackState, currentTime, duration, autoPlay, controls, loop, preload, playbackRate, preservesPitch]);
178
186
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_AudioTagContext.AudioComponentContext.Provider, {
179
187
  value: ctxValue,
180
188
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
@@ -204,16 +212,26 @@ const Audio = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwa
204
212
  },
205
213
  onPause: () => {
206
214
  setPlaybackState(state => state === 'playing' ? 'paused' : state);
215
+ setIsBuffering(false);
207
216
  onPause();
208
217
  },
209
218
  onEnded: () => {
210
219
  setPlaybackState('idle');
211
220
  setCurrentTime(duration);
221
+ setIsBuffering(false);
212
222
  onEndedCallback();
213
223
  },
214
224
  onError: () => {
215
225
  setReady(false);
216
226
  onError(new Error('Failed to load audio element source'));
227
+ },
228
+ onWaiting: () => {
229
+ setIsBuffering(true);
230
+ onWaiting();
231
+ },
232
+ onPlaying: () => {
233
+ setIsBuffering(false);
234
+ onPlaying();
217
235
  }
218
236
  }), children]
219
237
  })
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_AudioTagContext","_utils","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Audio","React","memo","forwardRef","props","ref","children","autoPlay","controls","loop","muted","preload","source","playbackRate","preservesPitch","volume","onLoadStart","onLoad","onError","onPositionChange","onEnded","onEndedCallback","onPlay","onPause","onVolumeChange","useStableAudioProps","audioRef","useRef","volumeState","setVolumeState","useState","mutedState","setMutedState","ready","setReady","playbackState","setPlaybackState","currentTime","setCurrentTime","duration","setDuration","lastElementVolumeRef","effectiveMutedState","useMemo","effectiveVolumeState","reportedVolumeState","path","Error","uri","useEffect","el","current","handleTimeUpdate","handleVolumeChange","nextMuted","nextVolume","addEventListener","removeEventListener","play","useCallback","pause","seekToTime","seconds","nextTime","Math","max","min","setVolume","next","setMuted","setPlaybackRate","nextPlaybackRate","useImperativeHandle","ctxValue","audioContext","jsx","AudioComponentContext","Provider","value","jsxs","View","style","alignSelf","width","src","onLoadedData","state","_default","exports"],"sourceRoot":"../../../src","sources":["Audio/Audio.web.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,YAAA,GAAAD,OAAA;AAOA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAA8C,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,wBAAAM,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAR,uBAAA,YAAAA,CAAAM,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE9C,MAAMkB,KAAK,gBAAGC,cAAK,CAACC,IAAI,cACtBD,cAAK,CAACE,UAAU,CAA6B,CAACC,KAAK,EAAEC,GAAG,KAAK;EAC3D,MAAM;IAAEC;EAAS,CAAC,GAAGF,KAAK;EAC1B,MAAM;IACJG,QAAQ;IACRC,QAAQ;IACRC,IAAI;IACJC,KAAK;IACLC,OAAO;IACPC,MAAM;IACNC,YAAY;IACZC,cAAc;IACdC,MAAM;IACNC,WAAW;IACXC,MAAM;IACNC,OAAO;IACPC,gBAAgB;IAChBC,OAAO,EAAEC,eAAe;IACxBC,MAAM;IACNC,OAAO;IACPC;EACF,CAAC,GAAG,IAAAC,0BAAmB,EAACrB,KAAK,CAAC;EAE9B,MAAMsB,QAAQ,GAAG,IAAAC,aAAM,EAAmB,IAAI,CAAC;EAC/C,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAACf,MAAM,CAAC;EACtD,MAAM,CAACgB,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAF,eAAQ,EAAiB,IAAI,CAAC;EAClE,MAAM,CAACG,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAJ,eAAQ,EAAC,KAAK,CAAC;EACzC,MAAM,CAACK,aAAa,EAAEC,gBAAgB,CAAC,GACrC,IAAAN,eAAQ,EAAwB,MAAM,CAAC;EACzC,MAAM,CAACO,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAR,eAAQ,EAAC,CAAC,CAAC;EACjD,MAAM,CAACS,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAV,eAAQ,EAAC,CAAC,CAAC;EAC3C,MAAMW,oBAAoB,GAAG,IAAAd,aAAM,EAACjB,KAAK,GAAG,CAAC,GAAGK,MAAM,CAAC;EAEvD,MAAM2B,mBAAmB,GAAG,IAAAC,cAAO,EAAC,MAAM;IACxC,OAAOZ,UAAU,IAAIrB,KAAK;EAC5B,CAAC,EAAE,CAACqB,UAAU,EAAErB,KAAK,CAAC,CAAC;EAEvB,MAAMkC,oBAAoB,GAAG,IAAAD,cAAO,EAAC,MAAM;IACzC,OAAOf,WAAW,IAAIb,MAAM;EAC9B,CAAC,EAAE,CAACa,WAAW,EAAEb,MAAM,CAAC,CAAC;EAEzB,MAAM8B,mBAAmB,GAAG,IAAAF,cAAO,EAAC,MAAM;IACxC,OAAOD,mBAAmB,GAAG,CAAC,GAAGE,oBAAoB;EACvD,CAAC,EAAE,CAACF,mBAAmB,EAAEE,oBAAoB,CAAC,CAAC;EAE/C,MAAME,IAAI,GAAG,IAAAH,cAAO,EAAC,MAAM;IACzB,IAAI,CAAC/B,MAAM,EAAE;MACX,OAAO,EAAE;IACX;IACA,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;MAC9B,OAAOA,MAAM;IACf;IACA,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;MAC9B,MAAM,IAAImC,KAAK,CAAC,sCAAsC,CAAC;IACzD;IACA,OAAOnC,MAAM,CAACoC,GAAG,IAAI,EAAE;EACzB,CAAC,EAAE,CAACpC,MAAM,CAAC,CAAC;EAEZ,IAAAqC,gBAAS,EAAC,MAAM;IACd,MAAMC,EAAE,GAAGxB,QAAQ,CAACyB,OAAO;IAC3B,IAAI,CAACD,EAAE,EAAE;MACP;IACF;IACAA,EAAE,CAACzC,IAAI,GAAGA,IAAI;IACdyC,EAAE,CAACrC,YAAY,GAAGA,YAAY;IAC9B;IACCqC,EAAE,CAAqDpC,cAAc,GACpEA,cAAc;EAClB,CAAC,EAAE,CAACL,IAAI,EAAEI,YAAY,EAAEC,cAAc,CAAC,CAAC;EAExC,IAAAmC,gBAAS,EAAC,MAAM;IACd,MAAMC,EAAE,GAAGxB,QAAQ,CAACyB,OAAO;IAC3B,IAAI,CAACD,EAAE,EAAE;MACP;IACF;IACAA,EAAE,CAACnC,MAAM,GAAG6B,oBAAoB;EAClC,CAAC,EAAE,CAACA,oBAAoB,CAAC,CAAC;EAE1B,IAAAK,gBAAS,EAAC,MAAM;IACd,MAAMC,EAAE,GAAGxB,QAAQ,CAACyB,OAAO;IAC3B,IAAI,CAACD,EAAE,EAAE;MACP;IACF;IACAA,EAAE,CAACxC,KAAK,GAAGgC,mBAAmB;EAChC,CAAC,EAAE,CAACA,mBAAmB,CAAC,CAAC;EAEzB,IAAAO,gBAAS,EAAC,MAAM;IACd,MAAMC,EAAE,GAAGxB,QAAQ,CAACyB,OAAO;IAC3B,IAAI,CAACD,EAAE,EAAE;MACP;IACF;IAEA,MAAME,gBAAgB,GAAGA,CAAA,KAAM;MAC7Bd,cAAc,CAACY,EAAE,CAACb,WAAW,CAAC;MAC9BlB,gBAAgB,CAAC+B,EAAE,CAACb,WAAW,CAAC;IAClC,CAAC;IAED,MAAMgB,kBAAkB,GAAGA,CAAA,KAAM;MAC/B,MAAMC,SAAS,GAAGJ,EAAE,CAACxC,KAAK;MAC1B,MAAM6C,UAAU,GAAGD,SAAS,GAAG,CAAC,GAAGJ,EAAE,CAACnC,MAAM;MAE5CiB,aAAa,CAACsB,SAAS,CAAC;MACxBzB,cAAc,CAACqB,EAAE,CAACnC,MAAM,CAAC;MAEzB,IAAI0B,oBAAoB,CAACU,OAAO,KAAKI,UAAU,EAAE;QAC/Cd,oBAAoB,CAACU,OAAO,GAAGI,UAAU;QACzC/B,cAAc,CAAC+B,UAAU,CAAC;MAC5B;IACF,CAAC;IAEDL,EAAE,CAACM,gBAAgB,CAAC,YAAY,EAAEJ,gBAAgB,CAAC;IACnDF,EAAE,CAACM,gBAAgB,CAAC,cAAc,EAAEH,kBAAkB,CAAC;IACvDb,WAAW,CAACU,EAAE,CAACX,QAAQ,CAAC;IACxBD,cAAc,CAACY,EAAE,CAACb,WAAW,CAAC;IAC9BI,oBAAoB,CAACU,OAAO,GAAGD,EAAE,CAACxC,KAAK,GAAG,CAAC,GAAGwC,EAAE,CAACnC,MAAM;IAEvD,OAAO,MAAM;MACXmC,EAAE,CAACO,mBAAmB,CAAC,YAAY,EAAEL,gBAAgB,CAAC;MACtDF,EAAE,CAACO,mBAAmB,CAAC,cAAc,EAAEJ,kBAAkB,CAAC;IAC5D,CAAC;EACH,CAAC,EAAE,CAAClC,gBAAgB,EAAEK,cAAc,EAAES,KAAK,CAAC,CAAC;EAE7C,MAAMyB,IAAI,GAAG,IAAAC,kBAAW,EAAC,MAAM;IAC7BjC,QAAQ,CAACyB,OAAO,EAAEO,IAAI,CAAC,CAAC;IACxBtB,gBAAgB,CAAC,SAAS,CAAC;IAC3Bd,MAAM,CAAC,CAAC;EACV,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,MAAMsC,KAAK,GAAG,IAAAD,kBAAW,EAAC,MAAM;IAC9BjC,QAAQ,CAACyB,OAAO,EAAES,KAAK,CAAC,CAAC;IACzBxB,gBAAgB,CAAC,QAAQ,CAAC;IAC1Bb,OAAO,CAAC,CAAC;EACX,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,MAAMsC,UAAU,GAAG,IAAAF,kBAAW,EAC3BG,OAAe,IAAK;IACnB,MAAMZ,EAAE,GAAGxB,QAAQ,CAACyB,OAAO;IAC3B,IAAI,CAACD,EAAE,EAAE;MACP;IACF;IACA,MAAMa,QAAQ,GACZxB,QAAQ,GAAG,CAAC,GACRyB,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAACJ,OAAO,EAAEvB,QAAQ,CAAC,CAAC,GACxCyB,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEH,OAAO,CAAC;IAC1BZ,EAAE,CAACb,WAAW,GAAG0B,QAAQ;IACzBzB,cAAc,CAACyB,QAAQ,CAAC;EAC1B,CAAC,EACD,CAACxB,QAAQ,CACX,CAAC;EAED,MAAM4B,SAAS,GAAG,IAAAR,kBAAW,EAAES,IAAY,IAAK;IAC9CvC,cAAc,CAACuC,IAAI,CAAC;EACtB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,QAAQ,GAAG,IAAAV,kBAAW,EAAES,IAAa,IAAK;IAC9CpC,aAAa,CAACoC,IAAI,CAAC;EACrB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAME,eAAe,GAAG,IAAAX,kBAAW,EAAEY,gBAAwB,IAAK;IAChE,MAAMrB,EAAE,GAAGxB,QAAQ,CAACyB,OAAO;IAC3B,IAAI,CAACD,EAAE,EAAE;MACP;IACF;IACAA,EAAE,CAACrC,YAAY,GAAG0D,gBAAgB;EACpC,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAC,0BAAmB,EACjBnE,GAAG,EACH,OAAO;IACLqD,IAAI;IACJE,KAAK;IACLC,UAAU;IACVM,SAAS;IACTE,QAAQ;IACRC;EACF,CAAC,CAAC,EACF,CAACV,KAAK,EAAEF,IAAI,EAAEG,UAAU,EAAEQ,QAAQ,EAAEF,SAAS,EAAEG,eAAe,CAChE,CAAC;EAED,MAAMG,QAAQ,GAAG,IAAA9B,cAAO,EACtB,OAAO;IACLe,IAAI;IACJE,KAAK;IACLC,UAAU;IACVM,SAAS;IACTlC,KAAK;IACLlB,MAAM,EAAE8B,mBAAmB;IAC3BwB,QAAQ;IACR3D,KAAK,EAAEgC,mBAAmB;IAC1BP,aAAa;IACbE,WAAW;IACXE,QAAQ;IACRhC,QAAQ;IACRC,QAAQ;IACRC,IAAI;IACJE,OAAO;IACPE,YAAY;IACZC,cAAc;IACd4D,YAAY,EAAE;EAChB,CAAC,CAAC,EACF,CACEhB,IAAI,EACJE,KAAK,EACLC,UAAU,EACVM,SAAS,EACTlC,KAAK,EACLY,mBAAmB,EACnBwB,QAAQ,EACR3B,mBAAmB,EACnBP,aAAa,EACbE,WAAW,EACXE,QAAQ,EACRhC,QAAQ,EACRC,QAAQ,EACRC,IAAI,EACJE,OAAO,EACPE,YAAY,EACZC,cAAc,CAElB,CAAC;EAED,oBACE,IAAAlC,WAAA,CAAA+F,GAAA,EAACjG,gBAAA,CAAAkG,qBAAqB,CAACC,QAAQ;IAACC,KAAK,EAAEL,QAAS;IAAAnE,QAAA,eAC9C,IAAA1B,WAAA,CAAAmG,IAAA,EAACtG,YAAA,CAAAuG,IAAI;MAACC,KAAK,EAAE;QAAEC,SAAS,EAAE,SAAS;QAAEC,KAAK,EAAE;MAAO,CAAE;MAAA7E,QAAA,gBACnD,IAAA1B,WAAA,CAAA+F,GAAA;QACEpE,QAAQ,EAAEA,QAAS;QACnBC,QAAQ,EAAEA,QAAS;QACnBC,IAAI,EAAEA,IAAK;QACXC,KAAK,EAAEgC,mBAAoB;QAC3B/B,OAAO,EAAEA,OAAQ;QACjByE,GAAG,EAAEtC,IAAK;QACVzC,GAAG,EAAEqB,QAAS;QACdV,WAAW,EAAEA,CAAA,KAAM;UACjBkB,QAAQ,CAAC,KAAK,CAAC;UACflB,WAAW,CAAC,CAAC;QACf,CAAE;QACFqE,YAAY,EAAEA,CAAA,KAAM;UAClBnD,QAAQ,CAAC,IAAI,CAAC;UACdjB,MAAM,CAAC,CAAC;QACV,CAAE;QACFK,MAAM,EAAEA,CAAA,KAAM;UACZc,gBAAgB,CAAC,SAAS,CAAC;UAC3Bd,MAAM,CAAC,CAAC;QACV,CAAE;QACFC,OAAO,EAAEA,CAAA,KAAM;UACba,gBAAgB,CAAEkD,KAAK,IACrBA,KAAK,KAAK,SAAS,GAAG,QAAQ,GAAGA,KACnC,CAAC;UACD/D,OAAO,CAAC,CAAC;QACX,CAAE;QACFH,OAAO,EAAEA,CAAA,KAAM;UACbgB,gBAAgB,CAAC,MAAM,CAAC;UACxBE,cAAc,CAACC,QAAQ,CAAC;UACxBlB,eAAe,CAAC,CAAC;QACnB,CAAE;QACFH,OAAO,EAAEA,CAAA,KAAM;UACbgB,QAAQ,CAAC,KAAK,CAAC;UACfhB,OAAO,CAAC,IAAI6B,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC3D;MAAE,CACH,CAAC,EACDzC,QAAQ;IAAA,CACL;EAAC,CACuB,CAAC;AAErC,CAAC,CACH,CAAC;AAAC,IAAAiF,QAAA,GAAAC,OAAA,CAAAjG,OAAA,GAEaS,KAAK","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_AudioTagContext","_utils","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Audio","React","memo","forwardRef","props","ref","children","autoPlay","controls","loop","muted","preload","source","playbackRate","preservesPitch","volume","onLoadStart","onLoad","onError","onPositionChange","onEnded","onEndedCallback","onPlay","onPause","onVolumeChange","onWaiting","onPlaying","useStableAudioProps","audioRef","useRef","volumeState","setVolumeState","useState","mutedState","setMutedState","ready","setReady","playbackState","setPlaybackState","isBuffering","setIsBuffering","currentTime","setCurrentTime","duration","setDuration","publicPlaybackState","useMemo","lastElementVolumeRef","effectiveMutedState","effectiveVolumeState","reportedVolumeState","path","Error","uri","useEffect","el","current","handleTimeUpdate","handleVolumeChange","nextMuted","nextVolume","addEventListener","removeEventListener","play","useCallback","pause","seekToTime","seconds","nextTime","Math","max","min","setVolume","next","setMuted","setPlaybackRate","nextPlaybackRate","useImperativeHandle","ctxValue","audioContext","jsx","AudioComponentContext","Provider","value","jsxs","View","style","alignSelf","width","src","onLoadedData","state","_default","exports"],"sourceRoot":"../../../src","sources":["Audio/Audio.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -24,6 +24,10 @@ class AudioFileSourceNode extends _AudioScheduledSourceNode.default {
24
24
  this.resetNodeAndSubscriptions();
25
25
  }
26
26
  play() {
27
+ if (!this.node.routedThroughMediaElement) {
28
+ this.connect(this.context.destination);
29
+ }
30
+ // copied from audioscheduledsourcenode, so it can bypass requirement of being started only once
27
31
  this.node.start(this.context.currentTime);
28
32
  }
29
33
  pause() {
@@ -71,9 +75,25 @@ class AudioFileSourceNode extends _AudioScheduledSourceNode.default {
71
75
  this.node.onPositionChanged = '0';
72
76
  }
73
77
  }
78
+ startBufferingTracking(onBufferingChange) {
79
+ if (!this.node) {
80
+ return;
81
+ }
82
+ this.stopBufferingTracking();
83
+ const sub = this.emitter.addAudioEventListener('bufferingStateChanged', event => {
84
+ onBufferingChange(event.value);
85
+ });
86
+ this.node.onBufferingStateChanged = sub.subscriptionId;
87
+ }
88
+ stopBufferingTracking() {
89
+ if (this.node) {
90
+ this.node.onBufferingStateChanged = '0';
91
+ }
92
+ }
74
93
  resetNodeAndSubscriptions() {
75
94
  if (this.node) {
76
95
  this.node.onPositionChanged = '0';
96
+ this.node.onBufferingStateChanged = '0';
77
97
  this.node.onEnded = '0';
78
98
  this.node.disconnect(undefined);
79
99
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_events","require","_AudioScheduledSourceNode","_interopRequireDefault","e","__esModule","default","MAX_PLAYBACK_RATE","AudioFileSourceNode","AudioScheduledSourceNode","emitter","AudioEventEmitter","globalThis","attach","options","resetNodeAndSubscriptions","sub","addAudioEventListener","_event","onEnded","node","subscriptionId","duration","dispose","play","start","context","currentTime","pause","seekToTime","seconds","setVolume","value","volume","setLoop","loop","setPlaybackRate","Number","isFinite","Error","playbackRate","setPreservesPitch","preservesPitch","getFileSourceNode","getDuration","getCurrentTime","startPositionTracking","onTime","stopPositionTracking","event","onPositionChanged","disconnect","undefined","exports"],"sourceRoot":"../../../src","sources":["Audio/AudioFileSourceNode.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_events","require","_AudioScheduledSourceNode","_interopRequireDefault","e","__esModule","default","MAX_PLAYBACK_RATE","AudioFileSourceNode","AudioScheduledSourceNode","emitter","AudioEventEmitter","globalThis","attach","options","resetNodeAndSubscriptions","sub","addAudioEventListener","_event","onEnded","node","subscriptionId","duration","dispose","play","routedThroughMediaElement","connect","context","destination","start","currentTime","pause","seekToTime","seconds","setVolume","value","volume","setLoop","loop","setPlaybackRate","Number","isFinite","Error","playbackRate","setPreservesPitch","preservesPitch","getFileSourceNode","getDuration","getCurrentTime","startPositionTracking","onTime","stopPositionTracking","event","onPositionChanged","startBufferingTracking","onBufferingChange","stopBufferingTracking","onBufferingStateChanged","disconnect","undefined","exports"],"sourceRoot":"../../../src","sources":["Audio/AudioFileSourceNode.ts"],"mappings":"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","ignoreList":[]}