react-native-audio-api 0.6.2-rc.2 → 0.6.2-rc.4

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.
@@ -67,6 +67,7 @@ class AudioAPIModule(
67
67
  category: String?,
68
68
  mode: String?,
69
69
  options: ReadableArray?,
70
+ allowHaptics: Boolean,
70
71
  ) {
71
72
  // noting to do here
72
73
  }
@@ -48,7 +48,7 @@
48
48
 
49
49
  @ReactMethod
50
50
  @DoNotStrip
51
- public abstract void setAudioSessionOptions(String category, String mode, ReadableArray options);
51
+ public abstract void setAudioSessionOptions(String category, String mode, ReadableArray options, boolean allowHaptics);
52
52
 
53
53
  @ReactMethod
54
54
  @DoNotStrip
@@ -71,13 +71,14 @@ class AudioBufferQueueSourceNodeHostObject
71
71
  auto audioBufferQueueSourceNode =
72
72
  std::static_pointer_cast<AudioBufferQueueSourceNode>(node_);
73
73
 
74
- if (args[1].isUndefined()) {
75
- audioBufferQueueSourceNode->start(when);
76
- } else {
77
- auto offset = args[1].asNumber();
78
- audioBufferQueueSourceNode->start(when, offset);
74
+ double offset = -1.0;
75
+
76
+ if (args[1].isNumber()) {
77
+ offset = args[1].asNumber();
79
78
  }
80
79
 
80
+ audioBufferQueueSourceNode->start(when, offset);
81
+
81
82
  return jsi::Value::undefined();
82
83
  }
83
84
 
@@ -47,15 +47,17 @@ std::shared_ptr<AudioParam> AudioBufferQueueSourceNode::getPlaybackRateParam()
47
47
  return playbackRateParam_;
48
48
  }
49
49
 
50
- void AudioBufferQueueSourceNode::start(double when) {
50
+ void AudioBufferQueueSourceNode::start(double when, double offset) {
51
51
  AudioScheduledSourceNode::start(when);
52
- isPaused_ = false;
53
- }
54
52
 
55
- void AudioBufferQueueSourceNode::start(double when, double offset) {
56
- start(when);
53
+ if (offset >= 0.0) {
54
+ vReadIndex_ = static_cast<double>(context_->getSampleRate() * offset);
55
+ }
56
+ }
57
57
 
58
- vReadIndex_ = static_cast<double>(context_->getSampleRate() * offset);
58
+ void AudioBufferQueueSourceNode::stop(double when) {
59
+ AudioScheduledSourceNode::stop(when);
60
+ isPaused_ = false;
59
61
  }
60
62
 
61
63
  void AudioBufferQueueSourceNode::pause() {
@@ -23,8 +23,8 @@ class AudioBufferQueueSourceNode : public AudioScheduledSourceNode {
23
23
  [[nodiscard]] std::shared_ptr<AudioParam> getDetuneParam() const;
24
24
  [[nodiscard]] std::shared_ptr<AudioParam> getPlaybackRateParam() const;
25
25
 
26
- void start(double when) override;
27
26
  void start(double when, double offset);
27
+ void stop(double when) override;
28
28
  void pause();
29
29
 
30
30
  void enqueueBuffer(const std::shared_ptr<AudioBuffer> &buffer, int bufferId, bool isLastBuffer);
@@ -63,7 +63,7 @@ class AudioBufferQueueSourceNode : public AudioScheduledSourceNode {
63
63
  uint64_t onPositionChangedCallbackId_ = 0;
64
64
  int onPositionChangedInterval_;
65
65
  int onPositionChangedTime_ = 0;
66
- size_t position_ = 0;
66
+ double position_ = 0;
67
67
 
68
68
  void processWithPitchCorrection(const std::shared_ptr<AudioBus> &processingBus,
69
69
  int framesToProcess);
@@ -28,8 +28,8 @@ class AudioScheduledSourceNode : public AudioNode {
28
28
  enum class PlaybackState { UNSCHEDULED, SCHEDULED, PLAYING, STOP_SCHEDULED, FINISHED };
29
29
  explicit AudioScheduledSourceNode(BaseAudioContext *context);
30
30
 
31
- virtual void start(double when);
32
- void stop(double when);
31
+ void start(double when);
32
+ virtual void stop(double when);
33
33
 
34
34
  bool isUnscheduled();
35
35
  bool isScheduled();
@@ -28,6 +28,12 @@ class AudioBufferQueueSourceNode extends _AudioScheduledSourceNode.default {
28
28
  }
29
29
  this.node.start(when, offset);
30
30
  }
31
+ stop(when = 0) {
32
+ if (when < 0) {
33
+ throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
34
+ }
35
+ this.node.stop(when);
36
+ }
31
37
  pause() {
32
38
  this.node.pause();
33
39
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","_AudioParam","_errors","e","__esModule","default","AudioBufferQueueSourceNode","AudioScheduledSourceNode","constructor","context","node","detune","AudioParam","playbackRate","enqueueBuffer","buffer","bufferId","isLastBuffer","start","when","offset","RangeError","pause","onPositionChanged","callback","subscription","audioEventEmitter","addAudioEventListener","subscriptionId","onPositionChangedInterval","value","exports"],"sourceRoot":"../../../src","sources":["core/AudioBufferQueueSourceNode.ts"],"mappings":";;;;;;AACA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAAuC,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGxB,MAAMG,0BAA0B,SAASC,iCAAwB,CAAC;EAI/EC,WAAWA,CAACC,OAAyB,EAAEC,IAAiC,EAAE;IACxE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIC,mBAAU,CAACF,IAAI,CAACC,MAAM,EAAEF,OAAO,CAAC;IAClD,IAAI,CAACI,YAAY,GAAG,IAAID,mBAAU,CAACF,IAAI,CAACG,YAAY,EAAEJ,OAAO,CAAC;EAChE;EAEOK,aAAaA,CAClBC,MAAmB,EACnBC,QAAgB,GAAG,CAAC,EACpBC,YAAqB,GAAG,KAAK,EACvB;IACL,IAAI,CAACP,IAAI,CAAiCI,aAAa,CACtDC,MAAM,CAACA,MAAM,EACbC,QAAQ,EACRC,YACF,CAAC;EACH;EAEgBC,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAEC,MAAe,EAAQ;IAC7D,IAAID,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIE,kBAAU,CAClB,8CAA8CF,IAAI,EACpD,CAAC;IACH;IAEA,IAAIC,MAAM,EAAE;MACV,IAAIA,MAAM,GAAG,CAAC,EAAE;QACd,MAAM,IAAIC,kBAAU,CAClB,gDAAgDD,MAAM,EACxD,CAAC;MACH;IACF;IAEC,IAAI,CAACV,IAAI,CAAiCQ,KAAK,CAACC,IAAI,EAAEC,MAAM,CAAC;EAChE;EAEOE,KAAKA,CAAA,EAAS;IAClB,IAAI,CAACZ,IAAI,CAAiCY,KAAK,CAAC,CAAC;EACpD;;EAEA;EACA,IAAWC,iBAAiBA,CAACC,QAA6C,EAAE;IAC1E,MAAMC,YAAY,GAAG,IAAI,CAACC,iBAAiB,CAACC,qBAAqB,CAC/D,iBAAiB,EACjBH,QACF,CAAC;IAEA,IAAI,CAACd,IAAI,CAAiCa,iBAAiB,GAC1DE,YAAY,CAACG,cAAc;EAC/B;;EAEA;EACA,IAAWC,yBAAyBA,CAACC,KAAa,EAAE;IACjD,IAAI,CAACpB,IAAI,CAAiCmB,yBAAyB,GAClEC,KAAK;EACT;AACF;AAACC,OAAA,CAAA1B,OAAA,GAAAC,0BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","_AudioParam","_errors","e","__esModule","default","AudioBufferQueueSourceNode","AudioScheduledSourceNode","constructor","context","node","detune","AudioParam","playbackRate","enqueueBuffer","buffer","bufferId","isLastBuffer","start","when","offset","RangeError","stop","pause","onPositionChanged","callback","subscription","audioEventEmitter","addAudioEventListener","subscriptionId","onPositionChangedInterval","value","exports"],"sourceRoot":"../../../src","sources":["core/AudioBufferQueueSourceNode.ts"],"mappings":";;;;;;AACA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAAuC,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGxB,MAAMG,0BAA0B,SAASC,iCAAwB,CAAC;EAI/EC,WAAWA,CAACC,OAAyB,EAAEC,IAAiC,EAAE;IACxE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIC,mBAAU,CAACF,IAAI,CAACC,MAAM,EAAEF,OAAO,CAAC;IAClD,IAAI,CAACI,YAAY,GAAG,IAAID,mBAAU,CAACF,IAAI,CAACG,YAAY,EAAEJ,OAAO,CAAC;EAChE;EAEOK,aAAaA,CAClBC,MAAmB,EACnBC,QAAgB,GAAG,CAAC,EACpBC,YAAqB,GAAG,KAAK,EACvB;IACL,IAAI,CAACP,IAAI,CAAiCI,aAAa,CACtDC,MAAM,CAACA,MAAM,EACbC,QAAQ,EACRC,YACF,CAAC;EACH;EAEgBC,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAEC,MAAe,EAAQ;IAC7D,IAAID,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIE,kBAAU,CAClB,8CAA8CF,IAAI,EACpD,CAAC;IACH;IAEA,IAAIC,MAAM,EAAE;MACV,IAAIA,MAAM,GAAG,CAAC,EAAE;QACd,MAAM,IAAIC,kBAAU,CAClB,gDAAgDD,MAAM,EACxD,CAAC;MACH;IACF;IAEC,IAAI,CAACV,IAAI,CAAiCQ,KAAK,CAACC,IAAI,EAAEC,MAAM,CAAC;EAChE;EAEgBE,IAAIA,CAACH,IAAY,GAAG,CAAC,EAAQ;IAC3C,IAAIA,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIE,kBAAU,CAClB,8CAA8CF,IAAI,EACpD,CAAC;IACH;IAEC,IAAI,CAACT,IAAI,CAAiCY,IAAI,CAACH,IAAI,CAAC;EACvD;EAEOI,KAAKA,CAAA,EAAS;IAClB,IAAI,CAACb,IAAI,CAAiCa,KAAK,CAAC,CAAC;EACpD;;EAEA;EACA,IAAWC,iBAAiBA,CAACC,QAA6C,EAAE;IAC1E,MAAMC,YAAY,GAAG,IAAI,CAACC,iBAAiB,CAACC,qBAAqB,CAC/D,iBAAiB,EACjBH,QACF,CAAC;IAEA,IAAI,CAACf,IAAI,CAAiCc,iBAAiB,GAC1DE,YAAY,CAACG,cAAc;EAC/B;;EAEA;EACA,IAAWC,yBAAyBA,CAACC,KAAa,EAAE;IACjD,IAAI,CAACrB,IAAI,CAAiCoB,yBAAyB,GAClEC,KAAK;EACT;AACF;AAACC,OAAA,CAAA3B,OAAA,GAAAC,0BAAA","ignoreList":[]}
@@ -23,6 +23,12 @@ export default class AudioBufferQueueSourceNode extends AudioScheduledSourceNode
23
23
  }
24
24
  this.node.start(when, offset);
25
25
  }
26
+ stop(when = 0) {
27
+ if (when < 0) {
28
+ throw new RangeError(`when must be a finite non-negative number: ${when}`);
29
+ }
30
+ this.node.stop(when);
31
+ }
26
32
  pause() {
27
33
  this.node.pause();
28
34
  }
@@ -1 +1 @@
1
- {"version":3,"names":["AudioScheduledSourceNode","AudioParam","RangeError","AudioBufferQueueSourceNode","constructor","context","node","detune","playbackRate","enqueueBuffer","buffer","bufferId","isLastBuffer","start","when","offset","pause","onPositionChanged","callback","subscription","audioEventEmitter","addAudioEventListener","subscriptionId","onPositionChangedInterval","value"],"sourceRoot":"../../../src","sources":["core/AudioBufferQueueSourceNode.ts"],"mappings":";;AACA,OAAOA,wBAAwB,MAAM,+BAA4B;AAGjE,OAAOC,UAAU,MAAM,iBAAc;AACrC,SAASC,UAAU,QAAQ,oBAAW;AAGtC,eAAe,MAAMC,0BAA0B,SAASH,wBAAwB,CAAC;EAI/EI,WAAWA,CAACC,OAAyB,EAAEC,IAAiC,EAAE;IACxE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIN,UAAU,CAACK,IAAI,CAACC,MAAM,EAAEF,OAAO,CAAC;IAClD,IAAI,CAACG,YAAY,GAAG,IAAIP,UAAU,CAACK,IAAI,CAACE,YAAY,EAAEH,OAAO,CAAC;EAChE;EAEOI,aAAaA,CAClBC,MAAmB,EACnBC,QAAgB,GAAG,CAAC,EACpBC,YAAqB,GAAG,KAAK,EACvB;IACL,IAAI,CAACN,IAAI,CAAiCG,aAAa,CACtDC,MAAM,CAACA,MAAM,EACbC,QAAQ,EACRC,YACF,CAAC;EACH;EAEgBC,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAEC,MAAe,EAAQ;IAC7D,IAAID,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIZ,UAAU,CAClB,8CAA8CY,IAAI,EACpD,CAAC;IACH;IAEA,IAAIC,MAAM,EAAE;MACV,IAAIA,MAAM,GAAG,CAAC,EAAE;QACd,MAAM,IAAIb,UAAU,CAClB,gDAAgDa,MAAM,EACxD,CAAC;MACH;IACF;IAEC,IAAI,CAACT,IAAI,CAAiCO,KAAK,CAACC,IAAI,EAAEC,MAAM,CAAC;EAChE;EAEOC,KAAKA,CAAA,EAAS;IAClB,IAAI,CAACV,IAAI,CAAiCU,KAAK,CAAC,CAAC;EACpD;;EAEA;EACA,IAAWC,iBAAiBA,CAACC,QAA6C,EAAE;IAC1E,MAAMC,YAAY,GAAG,IAAI,CAACC,iBAAiB,CAACC,qBAAqB,CAC/D,iBAAiB,EACjBH,QACF,CAAC;IAEA,IAAI,CAACZ,IAAI,CAAiCW,iBAAiB,GAC1DE,YAAY,CAACG,cAAc;EAC/B;;EAEA;EACA,IAAWC,yBAAyBA,CAACC,KAAa,EAAE;IACjD,IAAI,CAAClB,IAAI,CAAiCiB,yBAAyB,GAClEC,KAAK;EACT;AACF","ignoreList":[]}
1
+ {"version":3,"names":["AudioScheduledSourceNode","AudioParam","RangeError","AudioBufferQueueSourceNode","constructor","context","node","detune","playbackRate","enqueueBuffer","buffer","bufferId","isLastBuffer","start","when","offset","stop","pause","onPositionChanged","callback","subscription","audioEventEmitter","addAudioEventListener","subscriptionId","onPositionChangedInterval","value"],"sourceRoot":"../../../src","sources":["core/AudioBufferQueueSourceNode.ts"],"mappings":";;AACA,OAAOA,wBAAwB,MAAM,+BAA4B;AAGjE,OAAOC,UAAU,MAAM,iBAAc;AACrC,SAASC,UAAU,QAAQ,oBAAW;AAGtC,eAAe,MAAMC,0BAA0B,SAASH,wBAAwB,CAAC;EAI/EI,WAAWA,CAACC,OAAyB,EAAEC,IAAiC,EAAE;IACxE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIN,UAAU,CAACK,IAAI,CAACC,MAAM,EAAEF,OAAO,CAAC;IAClD,IAAI,CAACG,YAAY,GAAG,IAAIP,UAAU,CAACK,IAAI,CAACE,YAAY,EAAEH,OAAO,CAAC;EAChE;EAEOI,aAAaA,CAClBC,MAAmB,EACnBC,QAAgB,GAAG,CAAC,EACpBC,YAAqB,GAAG,KAAK,EACvB;IACL,IAAI,CAACN,IAAI,CAAiCG,aAAa,CACtDC,MAAM,CAACA,MAAM,EACbC,QAAQ,EACRC,YACF,CAAC;EACH;EAEgBC,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAEC,MAAe,EAAQ;IAC7D,IAAID,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIZ,UAAU,CAClB,8CAA8CY,IAAI,EACpD,CAAC;IACH;IAEA,IAAIC,MAAM,EAAE;MACV,IAAIA,MAAM,GAAG,CAAC,EAAE;QACd,MAAM,IAAIb,UAAU,CAClB,gDAAgDa,MAAM,EACxD,CAAC;MACH;IACF;IAEC,IAAI,CAACT,IAAI,CAAiCO,KAAK,CAACC,IAAI,EAAEC,MAAM,CAAC;EAChE;EAEgBC,IAAIA,CAACF,IAAY,GAAG,CAAC,EAAQ;IAC3C,IAAIA,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIZ,UAAU,CAClB,8CAA8CY,IAAI,EACpD,CAAC;IACH;IAEC,IAAI,CAACR,IAAI,CAAiCU,IAAI,CAACF,IAAI,CAAC;EACvD;EAEOG,KAAKA,CAAA,EAAS;IAClB,IAAI,CAACX,IAAI,CAAiCW,KAAK,CAAC,CAAC;EACpD;;EAEA;EACA,IAAWC,iBAAiBA,CAACC,QAA6C,EAAE;IAC1E,MAAMC,YAAY,GAAG,IAAI,CAACC,iBAAiB,CAACC,qBAAqB,CAC/D,iBAAiB,EACjBH,QACF,CAAC;IAEA,IAAI,CAACb,IAAI,CAAiCY,iBAAiB,GAC1DE,YAAY,CAACG,cAAc;EAC/B;;EAEA;EACA,IAAWC,yBAAyBA,CAACC,KAAa,EAAE;IACjD,IAAI,CAACnB,IAAI,CAAiCkB,yBAAyB,GAClEC,KAAK;EACT;AACF","ignoreList":[]}
@@ -10,6 +10,7 @@ export default class AudioBufferQueueSourceNode extends AudioScheduledSourceNode
10
10
  constructor(context: BaseAudioContext, node: IAudioBufferQueueSourceNode);
11
11
  enqueueBuffer(buffer: AudioBuffer, bufferId?: number, isLastBuffer?: boolean): void;
12
12
  start(when?: number, offset?: number): void;
13
+ stop(when?: number): void;
13
14
  pause(): void;
14
15
  set onPositionChanged(callback: (event: EventTypeWithValue) => void);
15
16
  set onPositionChangedInterval(value: number);
@@ -1 +1 @@
1
- {"version":3,"file":"AudioBufferQueueSourceNode.d.ts","sourceRoot":"","sources":["../../../src/core/AudioBufferQueueSourceNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,0BAA2B,SAAQ,wBAAwB;IAC9E,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;gBAEhB,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,2BAA2B;IAOjE,aAAa,CAClB,MAAM,EAAE,WAAW,EACnB,QAAQ,GAAE,MAAU,EACpB,YAAY,GAAE,OAAe,GAC5B,IAAI;IAQS,KAAK,CAAC,IAAI,GAAE,MAAU,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAkBvD,KAAK,IAAI,IAAI;IAKpB,IAAW,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,EAQzE;IAGD,IAAW,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAGjD;CACF"}
1
+ {"version":3,"file":"AudioBufferQueueSourceNode.d.ts","sourceRoot":"","sources":["../../../src/core/AudioBufferQueueSourceNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,0BAA2B,SAAQ,wBAAwB;IAC9E,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;gBAEhB,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,2BAA2B;IAOjE,aAAa,CAClB,MAAM,EAAE,WAAW,EACnB,QAAQ,GAAE,MAAU,EACpB,YAAY,GAAE,OAAe,GAC5B,IAAI;IAQS,KAAK,CAAC,IAAI,GAAE,MAAU,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAkB9C,IAAI,CAAC,IAAI,GAAE,MAAU,GAAG,IAAI;IAUrC,KAAK,IAAI,IAAI;IAKpB,IAAW,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,EAQzE;IAGD,IAAW,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAGjD;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-audio-api",
3
- "version": "0.6.2-rc.2",
3
+ "version": "0.6.2-rc.4",
4
4
  "description": "react-native-audio-api provides system for controlling audio in React Native environment compatible with Web Audio API specification",
5
5
  "bin": {
6
6
  "setup-rn-audio-api-web": "./scripts/setup-rn-audio-api-web.js"
@@ -47,6 +47,16 @@ export default class AudioBufferQueueSourceNode extends AudioScheduledSourceNode
47
47
  (this.node as IAudioBufferQueueSourceNode).start(when, offset);
48
48
  }
49
49
 
50
+ public override stop(when: number = 0): void {
51
+ if (when < 0) {
52
+ throw new RangeError(
53
+ `when must be a finite non-negative number: ${when}`
54
+ );
55
+ }
56
+
57
+ (this.node as IAudioBufferQueueSourceNode).stop(when);
58
+ }
59
+
50
60
  public pause(): void {
51
61
  (this.node as IAudioBufferQueueSourceNode).pause();
52
62
  }