react-native-audio-api 0.12.0-nightly-3254662-20260127 → 0.12.0-nightly-1a3c43b-20260128

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 (131) hide show
  1. package/android/src/main/cpp/audioapi/CMakeLists.txt +0 -6
  2. package/android/src/main/cpp/audioapi/android/AudioAPIModule.cpp +3 -2
  3. package/android/src/main/cpp/audioapi/android/AudioAPIModule.h +1 -1
  4. package/android/src/main/cpp/audioapi/android/core/AndroidAudioRecorder.cpp +1 -1
  5. package/android/src/main/java/com/swmansion/audioapi/AudioAPIModule.kt +5 -1
  6. package/android/src/main/java/com/swmansion/audioapi/system/AudioEvent.kt +28 -0
  7. package/android/src/main/java/com/swmansion/audioapi/system/AudioFocusListener.kt +4 -4
  8. package/android/src/main/java/com/swmansion/audioapi/system/VolumeChangeListener.kt +1 -1
  9. package/android/src/main/java/com/swmansion/audioapi/system/notification/PlaybackNotification.kt +27 -18
  10. package/android/src/main/java/com/swmansion/audioapi/system/notification/PlaybackNotificationReceiver.kt +13 -8
  11. package/android/src/main/java/com/swmansion/audioapi/system/notification/RecordingNotificationReceiver.kt +3 -2
  12. package/android/src/oldarch/NativeAudioAPIModuleSpec.java +2 -2
  13. package/common/cpp/audioapi/AudioAPIModuleInstaller.h +9 -12
  14. package/common/cpp/audioapi/HostObjects/AudioContextHostObject.cpp +4 -2
  15. package/common/cpp/audioapi/HostObjects/AudioContextHostObject.h +5 -1
  16. package/common/cpp/audioapi/HostObjects/BaseAudioContextHostObject.cpp +38 -38
  17. package/common/cpp/audioapi/HostObjects/BaseAudioContextHostObject.h +4 -2
  18. package/common/cpp/audioapi/HostObjects/OfflineAudioContextHostObject.cpp +8 -4
  19. package/common/cpp/audioapi/HostObjects/OfflineAudioContextHostObject.h +7 -1
  20. package/common/cpp/audioapi/HostObjects/analysis/AnalyserNodeHostObject.cpp +6 -4
  21. package/common/cpp/audioapi/HostObjects/analysis/AnalyserNodeHostObject.h +6 -2
  22. package/common/cpp/audioapi/HostObjects/effects/BiquadFilterNodeHostObject.cpp +8 -5
  23. package/common/cpp/audioapi/HostObjects/effects/BiquadFilterNodeHostObject.h +5 -3
  24. package/common/cpp/audioapi/HostObjects/effects/ConvolverNodeHostObject.cpp +5 -3
  25. package/common/cpp/audioapi/HostObjects/effects/ConvolverNodeHostObject.h +5 -2
  26. package/common/cpp/audioapi/HostObjects/effects/DelayNodeHostObject.cpp +4 -3
  27. package/common/cpp/audioapi/HostObjects/effects/DelayNodeHostObject.h +5 -2
  28. package/common/cpp/audioapi/HostObjects/effects/GainNodeHostObject.cpp +6 -2
  29. package/common/cpp/audioapi/HostObjects/effects/GainNodeHostObject.h +5 -2
  30. package/common/cpp/audioapi/HostObjects/effects/IIRFilterNodeHostObject.cpp +6 -2
  31. package/common/cpp/audioapi/HostObjects/effects/IIRFilterNodeHostObject.h +5 -2
  32. package/common/cpp/audioapi/HostObjects/effects/StereoPannerNodeHostObject.cpp +5 -2
  33. package/common/cpp/audioapi/HostObjects/effects/StereoPannerNodeHostObject.h +5 -2
  34. package/common/cpp/audioapi/HostObjects/effects/WaveShaperNodeHostObject.cpp +9 -4
  35. package/common/cpp/audioapi/HostObjects/effects/WaveShaperNodeHostObject.h +5 -2
  36. package/common/cpp/audioapi/HostObjects/events/AudioEventHandlerRegistryHostObject.cpp +3 -2
  37. package/common/cpp/audioapi/HostObjects/sources/AudioBufferQueueSourceNodeHostObject.cpp +9 -6
  38. package/common/cpp/audioapi/HostObjects/sources/AudioBufferQueueSourceNodeHostObject.h +4 -2
  39. package/common/cpp/audioapi/HostObjects/sources/AudioBufferSourceNodeHostObject.cpp +5 -2
  40. package/common/cpp/audioapi/HostObjects/sources/AudioBufferSourceNodeHostObject.h +5 -2
  41. package/common/cpp/audioapi/HostObjects/sources/ConstantSourceNodeHostObject.cpp +5 -2
  42. package/common/cpp/audioapi/HostObjects/sources/ConstantSourceNodeHostObject.h +5 -2
  43. package/common/cpp/audioapi/HostObjects/sources/OscillatorNodeHostObject.cpp +7 -3
  44. package/common/cpp/audioapi/HostObjects/sources/OscillatorNodeHostObject.h +5 -2
  45. package/common/cpp/audioapi/HostObjects/sources/StreamerNodeHostObject.cpp +6 -2
  46. package/common/cpp/audioapi/HostObjects/sources/StreamerNodeHostObject.h +5 -2
  47. package/common/cpp/audioapi/HostObjects/utils/JsEnumParser.cpp +63 -0
  48. package/common/cpp/audioapi/HostObjects/utils/JsEnumParser.h +5 -0
  49. package/common/cpp/audioapi/core/AudioContext.cpp +2 -4
  50. package/common/cpp/audioapi/core/AudioNode.cpp +2 -2
  51. package/common/cpp/audioapi/core/AudioNode.h +6 -6
  52. package/common/cpp/audioapi/core/BaseAudioContext.cpp +7 -22
  53. package/common/cpp/audioapi/core/BaseAudioContext.h +20 -22
  54. package/common/cpp/audioapi/core/OfflineAudioContext.cpp +3 -6
  55. package/common/cpp/audioapi/core/analysis/AnalyserNode.cpp +5 -2
  56. package/common/cpp/audioapi/core/analysis/AnalyserNode.h +4 -2
  57. package/common/cpp/audioapi/core/destinations/AudioDestinationNode.cpp +1 -1
  58. package/common/cpp/audioapi/core/destinations/AudioDestinationNode.h +1 -1
  59. package/common/cpp/audioapi/core/effects/BiquadFilterNode.cpp +6 -6
  60. package/common/cpp/audioapi/core/effects/BiquadFilterNode.h +2 -2
  61. package/common/cpp/audioapi/core/effects/ConvolverNode.cpp +1 -1
  62. package/common/cpp/audioapi/core/effects/ConvolverNode.h +2 -2
  63. package/common/cpp/audioapi/core/effects/DelayNode.cpp +1 -1
  64. package/common/cpp/audioapi/core/effects/DelayNode.h +2 -2
  65. package/common/cpp/audioapi/core/effects/GainNode.cpp +1 -1
  66. package/common/cpp/audioapi/core/effects/GainNode.h +2 -2
  67. package/common/cpp/audioapi/core/effects/IIRFilterNode.cpp +5 -3
  68. package/common/cpp/audioapi/core/effects/IIRFilterNode.h +2 -2
  69. package/common/cpp/audioapi/core/effects/StereoPannerNode.cpp +5 -2
  70. package/common/cpp/audioapi/core/effects/StereoPannerNode.h +2 -2
  71. package/common/cpp/audioapi/core/effects/WaveShaperNode.cpp +4 -2
  72. package/common/cpp/audioapi/core/effects/WaveShaperNode.h +2 -2
  73. package/common/cpp/audioapi/core/sources/AudioBuffer.h +1 -1
  74. package/common/cpp/audioapi/core/sources/AudioBufferBaseSourceNode.cpp +10 -4
  75. package/common/cpp/audioapi/core/sources/AudioBufferBaseSourceNode.h +2 -2
  76. package/common/cpp/audioapi/core/sources/AudioBufferQueueSourceNode.cpp +13 -13
  77. package/common/cpp/audioapi/core/sources/AudioBufferQueueSourceNode.h +2 -2
  78. package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.cpp +6 -5
  79. package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.h +2 -2
  80. package/common/cpp/audioapi/core/sources/AudioScheduledSourceNode.cpp +2 -2
  81. package/common/cpp/audioapi/core/sources/ConstantSourceNode.cpp +10 -2
  82. package/common/cpp/audioapi/core/sources/ConstantSourceNode.h +2 -2
  83. package/common/cpp/audioapi/core/sources/OscillatorNode.cpp +11 -6
  84. package/common/cpp/audioapi/core/sources/OscillatorNode.h +2 -2
  85. package/common/cpp/audioapi/core/sources/StreamerNode.cpp +17 -4
  86. package/common/cpp/audioapi/core/sources/StreamerNode.h +4 -2
  87. package/common/cpp/audioapi/core/utils/AudioFileWriter.cpp +1 -1
  88. package/common/cpp/audioapi/core/utils/AudioRecorderCallback.cpp +2 -2
  89. package/common/cpp/audioapi/events/AudioEvent.h +30 -0
  90. package/common/cpp/audioapi/events/AudioEventHandlerRegistry.cpp +9 -20
  91. package/common/cpp/audioapi/events/AudioEventHandlerRegistry.h +7 -34
  92. package/common/cpp/audioapi/events/IAudioEventHandlerRegistry.h +5 -4
  93. package/common/cpp/test/src/MockAudioEventHandlerRegistry.h +5 -10
  94. package/ios/audioapi/ios/AudioAPIModule.h +3 -1
  95. package/ios/audioapi/ios/AudioAPIModule.mm +7 -6
  96. package/ios/audioapi/ios/system/AudioSessionManager.h +3 -1
  97. package/ios/audioapi/ios/system/AudioSessionManager.mm +8 -1
  98. package/ios/audioapi/ios/system/SystemNotificationManager.mm +17 -8
  99. package/ios/audioapi/ios/system/notification/PlaybackNotification.mm +36 -33
  100. package/lib/commonjs/core/AudioDecoder.js +2 -2
  101. package/lib/commonjs/core/AudioDecoder.js.map +1 -1
  102. package/lib/commonjs/specs/NativeAudioAPIModule.js.map +1 -1
  103. package/lib/commonjs/specs/NativeAudioAPIModule.web.js.map +1 -1
  104. package/lib/commonjs/system/AudioManager.js +1 -1
  105. package/lib/commonjs/system/AudioManager.js.map +1 -1
  106. package/lib/module/core/AudioDecoder.js +2 -2
  107. package/lib/module/core/AudioDecoder.js.map +1 -1
  108. package/lib/module/specs/NativeAudioAPIModule.js.map +1 -1
  109. package/lib/module/specs/NativeAudioAPIModule.web.js.map +1 -1
  110. package/lib/module/system/AudioManager.js +1 -1
  111. package/lib/module/system/AudioManager.js.map +1 -1
  112. package/lib/typescript/core/AudioDecoder.d.ts.map +1 -1
  113. package/lib/typescript/events/types.d.ts +1 -17
  114. package/lib/typescript/events/types.d.ts.map +1 -1
  115. package/lib/typescript/specs/NativeAudioAPIModule.d.ts +1 -1
  116. package/lib/typescript/specs/NativeAudioAPIModule.d.ts.map +1 -1
  117. package/lib/typescript/specs/NativeAudioAPIModule.web.d.ts +1 -1
  118. package/lib/typescript/specs/NativeAudioAPIModule.web.d.ts.map +1 -1
  119. package/lib/typescript/system/AudioManager.d.ts.map +1 -1
  120. package/lib/typescript/system/notification/types.d.ts +4 -3
  121. package/lib/typescript/system/notification/types.d.ts.map +1 -1
  122. package/lib/typescript/system/types.d.ts +8 -0
  123. package/lib/typescript/system/types.d.ts.map +1 -1
  124. package/package.json +1 -1
  125. package/src/core/AudioDecoder.ts +2 -2
  126. package/src/events/types.ts +1 -18
  127. package/src/specs/NativeAudioAPIModule.ts +3 -2
  128. package/src/specs/NativeAudioAPIModule.web.ts +2 -1
  129. package/src/system/AudioManager.ts +2 -1
  130. package/src/system/notification/types.ts +6 -4
  131. package/src/system/types.ts +8 -0
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/system/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE5E,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,SAAS,GACT,UAAU,GACV,YAAY,GACZ,aAAa,GACb,eAAe,CAAC;AAEpB,MAAM,MAAM,OAAO,GACf,SAAS,GACT,UAAU,GACV,WAAW,GACX,WAAW,GACX,aAAa,GACb,aAAa,GACb,aAAa,GACb,eAAe,GACf,gBAAgB,CAAC;AAErB,MAAM,MAAM,SAAS,GACjB,YAAY,GACZ,cAAc,GACd,eAAe,GACf,gBAAgB,GAChB,kBAAkB,GAClB,oBAAoB,GACpB,qCAAqC,GACrC,sCAAsC,CAAC;AAE3C,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,eAAe,GACf,wBAAwB,GACxB,sBAAsB,CAAC;AAE3B,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,eAAe,GAAG,eAAe,EAAE,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,eAAe,CAAC;IACjC,gBAAgB,EAAE,eAAe,CAAC;IAClC,aAAa,EAAE,eAAe,CAAC;IAC/B,cAAc,EAAE,eAAe,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,4BAA4B,IAAI,MAAM,CAAC;IACvC,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5D,sBAAsB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IACtD,wBAAwB,IAAI,IAAI,CAAC;IACjC,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAClD,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C,yBAAyB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;IACxE,sBAAsB,CAAC,IAAI,SAAS,eAAe,EACjD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAClC,sBAAsB,GAAG,SAAS,CAAC;IACtC,2BAA2B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACzD,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACvD,8BAA8B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5D,4BAA4B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC1D,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC7C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/system/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE5E,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,SAAS,GACT,UAAU,GACV,YAAY,GACZ,aAAa,GACb,eAAe,CAAC;AAEpB,MAAM,MAAM,OAAO,GACf,SAAS,GACT,UAAU,GACV,WAAW,GACX,WAAW,GACX,aAAa,GACb,aAAa,GACb,aAAa,GACb,eAAe,GACf,gBAAgB,CAAC;AAErB,MAAM,MAAM,SAAS,GACjB,YAAY,GACZ,cAAc,GACd,eAAe,GACf,gBAAgB,GAChB,kBAAkB,GAClB,oBAAoB,GACpB,qCAAqC,GACrC,sCAAsC,CAAC;AAE3C,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,eAAe,GACf,wBAAwB,GACxB,sBAAsB,CAAC;AAE3B,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;OAMG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;CACzC;AAED,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,eAAe,GAAG,eAAe,EAAE,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,eAAe,CAAC;IACjC,gBAAgB,EAAE,eAAe,CAAC;IAClC,aAAa,EAAE,eAAe,CAAC;IAC/B,cAAc,EAAE,eAAe,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,4BAA4B,IAAI,MAAM,CAAC;IACvC,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5D,sBAAsB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IACtD,wBAAwB,IAAI,IAAI,CAAC;IACjC,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAClD,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C,yBAAyB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;IACxE,sBAAsB,CAAC,IAAI,SAAS,eAAe,EACjD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAClC,sBAAsB,GAAG,SAAS,CAAC;IACtC,2BAA2B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACzD,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACvD,8BAA8B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5D,4BAA4B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC1D,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC7C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-audio-api",
3
- "version": "0.12.0-nightly-3254662-20260127",
3
+ "version": "0.12.0-nightly-1a3c43b-20260128",
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"
@@ -1,5 +1,6 @@
1
1
  import { Image } from 'react-native';
2
2
 
3
+ import { AudioApiError } from '../errors';
3
4
  import { IAudioDecoder } from '../interfaces';
4
5
  import { DecodeDataInput } from '../types';
5
6
  import {
@@ -8,7 +9,6 @@ import {
8
9
  isRemoteSource,
9
10
  } from '../utils/paths';
10
11
  import AudioBuffer from './AudioBuffer';
11
- import { AudioApiError } from '../errors';
12
12
 
13
13
  class AudioDecoder {
14
14
  private static instance: AudioDecoder | null = null;
@@ -62,7 +62,7 @@ class AudioDecoder {
62
62
  return new AudioBuffer(buffer);
63
63
  }
64
64
 
65
- if (!(typeof input === 'string')) {
65
+ if (!(typeof stringSource === 'string')) {
66
66
  throw new TypeError('Input must be a module, uri or ArrayBuffer');
67
67
  }
68
68
 
@@ -28,22 +28,7 @@ export interface OnRecorderErrorEventType {
28
28
  message: string;
29
29
  }
30
30
 
31
- interface RemoteCommandEvents {
32
- remotePlay: EventEmptyType;
33
- remotePause: EventEmptyType;
34
- remoteStop: EventEmptyType;
35
- remoteTogglePlayPause: EventEmptyType;
36
- remoteChangePlaybackRate: EventTypeWithValue;
37
- remoteNextTrack: EventEmptyType;
38
- remotePreviousTrack: EventEmptyType;
39
- remoteSkipForward: EventTypeWithValue;
40
- remoteSkipBackward: EventTypeWithValue;
41
- remoteSeekForward: EventEmptyType;
42
- remoteSeekBackward: EventEmptyType;
43
- remoteChangePlaybackPosition: EventTypeWithValue;
44
- }
45
-
46
- type SystemEvents = RemoteCommandEvents & {
31
+ type SystemEvents = {
47
32
  volumeChange: EventTypeWithValue;
48
33
  interruption: OnInterruptionEventType;
49
34
  duck: EventEmptyType;
@@ -85,8 +70,6 @@ interface AudioAPIEvents {
85
70
  audioReady: OnAudioReadyEventType;
86
71
  positionChanged: EventTypeWithValue;
87
72
  bufferEnded: OnBufferEndEventType;
88
- audioError: EventEmptyType; // to change
89
- systemStateChanged: EventEmptyType; // to change
90
73
  recorderError: OnRecorderErrorEventType;
91
74
  }
92
75
 
@@ -22,11 +22,12 @@ interface Spec extends TurboModule {
22
22
  category: string,
23
23
  mode: string,
24
24
  options: Array<string>,
25
- allowHaptics: boolean
25
+ allowHaptics: boolean,
26
+ notifyOthersOnDeactivation: boolean
26
27
  ): void;
27
28
  disableSessionManagement(): void;
28
29
 
29
- // Remote commands, system events and interruptions
30
+ // system events and interruptions
30
31
  observeAudioInterruptions(focusType: AudioFocusType, enabled: boolean): void;
31
32
  activelyReclaimSession(enabled: boolean): void;
32
33
  observeVolumeChanges(enabled: boolean): void;
@@ -22,7 +22,8 @@ interface Spec extends TurboModule {
22
22
  category: string,
23
23
  mode: string,
24
24
  options: Array<string>,
25
- allowHaptics: boolean
25
+ allowHaptics: boolean,
26
+ notifyOthersOnDeactivation: boolean
26
27
  ): void;
27
28
  disableSessionManagement(): void;
28
29
 
@@ -36,7 +36,8 @@ class AudioManager implements IAudioManager {
36
36
  options.iosCategory ?? '',
37
37
  options.iosMode ?? '',
38
38
  options.iosOptions ?? [],
39
- options.iosAllowHaptics ?? false
39
+ options.iosAllowHaptics ?? false,
40
+ options.iosNotifyOthersOnDeactivation ?? true
40
41
  );
41
42
  }
42
43
 
@@ -41,8 +41,9 @@ export interface PlaybackNotificationInfo {
41
41
  export type PlaybackControlName =
42
42
  | 'play'
43
43
  | 'pause'
44
- | 'next'
45
- | 'previous'
44
+ | 'stop'
45
+ | 'nextTrack'
46
+ | 'previousTrack'
46
47
  | 'skipForward'
47
48
  | 'skipBackward'
48
49
  | 'seekTo';
@@ -51,8 +52,9 @@ export type PlaybackControlName =
51
52
  interface PlaybackNotificationEvent {
52
53
  playbackNotificationPlay: EventEmptyType;
53
54
  playbackNotificationPause: EventEmptyType;
54
- playbackNotificationNext: EventEmptyType;
55
- playbackNotificationPrevious: EventEmptyType;
55
+ playbackNotificationStop: EventEmptyType;
56
+ playbackNotificationNextTrack: EventEmptyType;
57
+ playbackNotificationPreviousTrack: EventEmptyType;
56
58
  playbackNotificationSkipForward: EventTypeWithValue;
57
59
  playbackNotificationSkipBackward: EventTypeWithValue;
58
60
  playbackNotificationSeekTo: EventTypeWithValue;
@@ -41,6 +41,14 @@ export interface SessionOptions {
41
41
  iosOptions?: IOSOption[];
42
42
  iosCategory?: IOSCategory;
43
43
  iosAllowHaptics?: boolean;
44
+ /**
45
+ * Setting this to `true` will allow other audio apps to resume playing when
46
+ * the session is deactivated.
47
+ *
48
+ * Has no effect when using PlaybackNotificationManager as it takes over the
49
+ * "Now playing" controls.
50
+ */
51
+ iosNotifyOthersOnDeactivation?: boolean;
44
52
  }
45
53
 
46
54
  export type PermissionStatus = 'Undetermined' | 'Denied' | 'Granted';