react-native-audio-api 0.6.0-rc.0 → 0.6.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/android/CMakeLists.txt +6 -3
  2. package/android/build.gradle +1 -0
  3. package/android/src/main/java/com/swmansion/audioapi/AudioManagerModule.kt +15 -12
  4. package/android/src/main/java/com/swmansion/audioapi/system/AudioFocusListener.kt +60 -0
  5. package/android/src/main/java/com/swmansion/audioapi/system/LockScreenManager.kt +294 -0
  6. package/android/src/main/java/com/swmansion/audioapi/system/MediaNotificationManager.kt +279 -0
  7. package/android/src/main/java/com/swmansion/audioapi/system/MediaReceiver.kt +46 -0
  8. package/android/src/main/java/com/swmansion/audioapi/system/MediaSessionCallback.kt +39 -0
  9. package/android/src/main/java/com/swmansion/audioapi/system/MediaSessionEventEmitter.kt +84 -0
  10. package/android/src/main/java/com/swmansion/audioapi/system/MediaSessionManager.kt +144 -0
  11. package/android/src/main/res/drawable/next.xml +9 -0
  12. package/android/src/main/res/drawable/pause.xml +9 -0
  13. package/android/src/main/res/drawable/play.xml +9 -0
  14. package/android/src/main/res/drawable/previous.xml +9 -0
  15. package/android/src/main/res/drawable/skip_backward_5.xml +9 -0
  16. package/android/src/main/res/drawable/skip_forward_5.xml +9 -0
  17. package/android/src/main/res/drawable/stop.xml +9 -0
  18. package/app.plugin.js +1 -0
  19. package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.cpp +1 -6
  20. package/common/cpp/audioapi/core/sources/AudioScheduledSourceNode.cpp +8 -4
  21. package/common/cpp/audioapi/core/sources/AudioScheduledSourceNode.h +1 -0
  22. package/common/cpp/audioapi/core/utils/AudioNodeDestructor.cpp +3 -3
  23. package/ios/audioapi/ios/AudioManagerModule.mm +9 -7
  24. package/ios/audioapi/ios/system/LockScreenManager.mm +4 -8
  25. package/ios/audioapi/ios/system/NotificationManager.h +7 -1
  26. package/ios/audioapi/ios/system/NotificationManager.mm +66 -44
  27. package/lib/commonjs/api.js +197 -0
  28. package/lib/commonjs/api.js.map +1 -0
  29. package/lib/commonjs/api.web.js +219 -0
  30. package/lib/commonjs/api.web.js.map +1 -0
  31. package/lib/commonjs/core/AnalyserNode.js +71 -0
  32. package/lib/commonjs/core/AnalyserNode.js.map +1 -0
  33. package/lib/commonjs/core/AudioBuffer.js +44 -0
  34. package/lib/commonjs/core/AudioBuffer.js.map +1 -0
  35. package/lib/commonjs/core/AudioBufferSourceNode.js +68 -0
  36. package/lib/commonjs/core/AudioBufferSourceNode.js.map +1 -0
  37. package/lib/commonjs/core/AudioContext.js +29 -0
  38. package/lib/commonjs/core/AudioContext.js.map +1 -0
  39. package/lib/commonjs/core/AudioDestinationNode.js +11 -0
  40. package/lib/commonjs/core/AudioDestinationNode.js.map +1 -0
  41. package/lib/commonjs/core/AudioNode.js +30 -0
  42. package/lib/commonjs/core/AudioNode.js.map +1 -0
  43. package/lib/commonjs/core/AudioParam.js +82 -0
  44. package/lib/commonjs/core/AudioParam.js.map +1 -0
  45. package/lib/commonjs/core/AudioScheduledSourceNode.js +38 -0
  46. package/lib/commonjs/core/AudioScheduledSourceNode.js.map +1 -0
  47. package/lib/commonjs/core/BaseAudioContext.js +80 -0
  48. package/lib/commonjs/core/BaseAudioContext.js.map +1 -0
  49. package/lib/commonjs/core/BiquadFilterNode.js +33 -0
  50. package/lib/commonjs/core/BiquadFilterNode.js.map +1 -0
  51. package/lib/commonjs/core/GainNode.js +17 -0
  52. package/lib/commonjs/core/GainNode.js.map +1 -0
  53. package/lib/commonjs/core/OfflineAudioContext.js +63 -0
  54. package/lib/commonjs/core/OfflineAudioContext.js.map +1 -0
  55. package/lib/commonjs/core/OscillatorNode.js +32 -0
  56. package/lib/commonjs/core/OscillatorNode.js.map +1 -0
  57. package/lib/commonjs/core/PeriodicWave.js +15 -0
  58. package/lib/commonjs/core/PeriodicWave.js.map +1 -0
  59. package/lib/commonjs/core/StereoPannerNode.js +17 -0
  60. package/lib/commonjs/core/StereoPannerNode.js.map +1 -0
  61. package/lib/commonjs/errors/IndexSizeError.js +14 -0
  62. package/lib/commonjs/errors/IndexSizeError.js.map +1 -0
  63. package/lib/commonjs/errors/InvalidAccessError.js +14 -0
  64. package/lib/commonjs/errors/InvalidAccessError.js.map +1 -0
  65. package/lib/commonjs/errors/InvalidStateError.js +14 -0
  66. package/lib/commonjs/errors/InvalidStateError.js.map +1 -0
  67. package/lib/commonjs/errors/NotSupportedError.js +14 -0
  68. package/lib/commonjs/errors/NotSupportedError.js.map +1 -0
  69. package/lib/commonjs/errors/RangeError.js +14 -0
  70. package/lib/commonjs/errors/RangeError.js.map +1 -0
  71. package/lib/commonjs/errors/index.js +42 -0
  72. package/lib/commonjs/errors/index.js.map +1 -0
  73. package/lib/commonjs/index.js +17 -0
  74. package/lib/commonjs/index.js.map +1 -0
  75. package/lib/commonjs/interfaces.js +6 -0
  76. package/lib/commonjs/interfaces.js.map +1 -0
  77. package/lib/commonjs/package.json +1 -0
  78. package/lib/commonjs/plugin/withAudioAPI.js +62 -0
  79. package/lib/commonjs/plugin/withAudioAPI.js.map +1 -0
  80. package/lib/commonjs/specs/NativeAudioAPIModule.js +9 -0
  81. package/lib/commonjs/specs/NativeAudioAPIModule.js.map +1 -0
  82. package/lib/commonjs/specs/NativeAudioManagerModule.js +33 -0
  83. package/lib/commonjs/specs/NativeAudioManagerModule.js.map +1 -0
  84. package/lib/commonjs/specs/index.js +27 -0
  85. package/lib/commonjs/specs/index.js.map +1 -0
  86. package/lib/commonjs/system/AudioManager.js +79 -0
  87. package/lib/commonjs/system/AudioManager.js.map +1 -0
  88. package/lib/commonjs/system/index.js +14 -0
  89. package/lib/commonjs/system/index.js.map +1 -0
  90. package/lib/commonjs/system/types.js +2 -0
  91. package/lib/commonjs/system/types.js.map +1 -0
  92. package/lib/commonjs/types.js +2 -0
  93. package/lib/commonjs/types.js.map +1 -0
  94. package/lib/commonjs/utils/index.js +10 -0
  95. package/lib/commonjs/utils/index.js.map +1 -0
  96. package/lib/commonjs/web-core/AnalyserNode.js +38 -0
  97. package/lib/commonjs/web-core/AnalyserNode.js.map +1 -0
  98. package/lib/commonjs/web-core/AudioBuffer.js +44 -0
  99. package/lib/commonjs/web-core/AudioBuffer.js.map +1 -0
  100. package/lib/commonjs/web-core/AudioBufferSourceNode.js +214 -0
  101. package/lib/commonjs/web-core/AudioBufferSourceNode.js.map +1 -0
  102. package/lib/commonjs/web-core/AudioContext.js +93 -0
  103. package/lib/commonjs/web-core/AudioContext.js.map +1 -0
  104. package/lib/commonjs/web-core/AudioDestinationNode.js +11 -0
  105. package/lib/commonjs/web-core/AudioDestinationNode.js.map +1 -0
  106. package/lib/commonjs/web-core/AudioNode.js +33 -0
  107. package/lib/commonjs/web-core/AudioNode.js.map +1 -0
  108. package/lib/commonjs/web-core/AudioParam.js +81 -0
  109. package/lib/commonjs/web-core/AudioParam.js.map +1 -0
  110. package/lib/commonjs/web-core/AudioScheduledSourceNode.js +41 -0
  111. package/lib/commonjs/web-core/AudioScheduledSourceNode.js.map +1 -0
  112. package/lib/commonjs/web-core/BaseAudioContext.js +2 -0
  113. package/lib/commonjs/web-core/BaseAudioContext.js.map +1 -0
  114. package/lib/commonjs/web-core/BiquadFilterNode.js +33 -0
  115. package/lib/commonjs/web-core/BiquadFilterNode.js.map +1 -0
  116. package/lib/commonjs/web-core/GainNode.js +17 -0
  117. package/lib/commonjs/web-core/GainNode.js.map +1 -0
  118. package/lib/commonjs/web-core/OfflineAudioContext.js +96 -0
  119. package/lib/commonjs/web-core/OfflineAudioContext.js.map +1 -0
  120. package/lib/commonjs/web-core/OscillatorNode.js +31 -0
  121. package/lib/commonjs/web-core/OscillatorNode.js.map +1 -0
  122. package/lib/commonjs/web-core/PeriodicWave.js +15 -0
  123. package/lib/commonjs/web-core/PeriodicWave.js.map +1 -0
  124. package/lib/commonjs/web-core/StereoPannerNode.js +17 -0
  125. package/lib/commonjs/web-core/StereoPannerNode.js.map +1 -0
  126. package/lib/commonjs/web-core/custom/LoadCustomWasm.js +37 -0
  127. package/lib/commonjs/web-core/custom/LoadCustomWasm.js.map +1 -0
  128. package/lib/commonjs/web-core/custom/index.js +14 -0
  129. package/lib/commonjs/web-core/custom/index.js.map +1 -0
  130. package/lib/commonjs/web-core/custom/signalsmithStretch/LICENSE.txt +21 -0
  131. package/lib/commonjs/web-core/custom/signalsmithStretch/README.md +46 -0
  132. package/lib/commonjs/web-core/custom/signalsmithStretch/SignalsmithStretch.mjs +826 -0
  133. package/lib/commonjs/web-core/custom/signalsmithStretch/SignalsmithStretch.mjs.map +1 -0
  134. package/lib/module/plugin/withAudioAPI.js +58 -0
  135. package/lib/module/plugin/withAudioAPI.js.map +1 -0
  136. package/lib/module/specs/NativeAudioManagerModule.js +5 -6
  137. package/lib/module/specs/NativeAudioManagerModule.js.map +1 -1
  138. package/lib/module/system/AudioManager.js +9 -0
  139. package/lib/module/system/AudioManager.js.map +1 -1
  140. package/lib/typescript/plugin/withAudioAPI.d.ts +9 -0
  141. package/lib/typescript/plugin/withAudioAPI.d.ts.map +1 -0
  142. package/lib/typescript/specs/NativeAudioManagerModule.d.ts +2 -1
  143. package/lib/typescript/specs/NativeAudioManagerModule.d.ts.map +1 -1
  144. package/lib/typescript/system/AudioManager.d.ts +4 -2
  145. package/lib/typescript/system/AudioManager.d.ts.map +1 -1
  146. package/lib/typescript/system/types.d.ts +16 -4
  147. package/lib/typescript/system/types.d.ts.map +1 -1
  148. package/package.json +6 -3
  149. package/src/plugin/withAudioAPI.ts +90 -0
  150. package/src/specs/NativeAudioManagerModule.ts +8 -11
  151. package/src/system/AudioManager.ts +42 -15
  152. package/src/system/types.ts +20 -4
@@ -0,0 +1,219 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {
7
+ AudioBuffer: true,
8
+ AudioBufferSourceNode: true,
9
+ AudioContext: true,
10
+ OfflineAudioContext: true,
11
+ AudioDestinationNode: true,
12
+ AudioNode: true,
13
+ AnalyserNode: true,
14
+ AudioParam: true,
15
+ AudioScheduledSourceNode: true,
16
+ BaseAudioContext: true,
17
+ BiquadFilterNode: true,
18
+ GainNode: true,
19
+ OscillatorNode: true,
20
+ StereoPannerNode: true,
21
+ OscillatorType: true,
22
+ BiquadFilterType: true,
23
+ ChannelCountMode: true,
24
+ ChannelInterpretation: true,
25
+ ContextState: true,
26
+ WindowType: true,
27
+ PeriodicWaveConstraints: true,
28
+ IndexSizeError: true,
29
+ InvalidAccessError: true,
30
+ InvalidStateError: true,
31
+ RangeError: true,
32
+ NotSupportedError: true
33
+ };
34
+ Object.defineProperty(exports, "AnalyserNode", {
35
+ enumerable: true,
36
+ get: function () {
37
+ return _AnalyserNode.default;
38
+ }
39
+ });
40
+ Object.defineProperty(exports, "AudioBuffer", {
41
+ enumerable: true,
42
+ get: function () {
43
+ return _AudioBuffer.default;
44
+ }
45
+ });
46
+ Object.defineProperty(exports, "AudioBufferSourceNode", {
47
+ enumerable: true,
48
+ get: function () {
49
+ return _AudioBufferSourceNode.default;
50
+ }
51
+ });
52
+ Object.defineProperty(exports, "AudioContext", {
53
+ enumerable: true,
54
+ get: function () {
55
+ return _AudioContext.default;
56
+ }
57
+ });
58
+ Object.defineProperty(exports, "AudioDestinationNode", {
59
+ enumerable: true,
60
+ get: function () {
61
+ return _AudioDestinationNode.default;
62
+ }
63
+ });
64
+ Object.defineProperty(exports, "AudioNode", {
65
+ enumerable: true,
66
+ get: function () {
67
+ return _AudioNode.default;
68
+ }
69
+ });
70
+ Object.defineProperty(exports, "AudioParam", {
71
+ enumerable: true,
72
+ get: function () {
73
+ return _AudioParam.default;
74
+ }
75
+ });
76
+ Object.defineProperty(exports, "AudioScheduledSourceNode", {
77
+ enumerable: true,
78
+ get: function () {
79
+ return _AudioScheduledSourceNode.default;
80
+ }
81
+ });
82
+ Object.defineProperty(exports, "BaseAudioContext", {
83
+ enumerable: true,
84
+ get: function () {
85
+ return _BaseAudioContext.default;
86
+ }
87
+ });
88
+ Object.defineProperty(exports, "BiquadFilterNode", {
89
+ enumerable: true,
90
+ get: function () {
91
+ return _BiquadFilterNode.default;
92
+ }
93
+ });
94
+ Object.defineProperty(exports, "BiquadFilterType", {
95
+ enumerable: true,
96
+ get: function () {
97
+ return _types.BiquadFilterType;
98
+ }
99
+ });
100
+ Object.defineProperty(exports, "ChannelCountMode", {
101
+ enumerable: true,
102
+ get: function () {
103
+ return _types.ChannelCountMode;
104
+ }
105
+ });
106
+ Object.defineProperty(exports, "ChannelInterpretation", {
107
+ enumerable: true,
108
+ get: function () {
109
+ return _types.ChannelInterpretation;
110
+ }
111
+ });
112
+ Object.defineProperty(exports, "ContextState", {
113
+ enumerable: true,
114
+ get: function () {
115
+ return _types.ContextState;
116
+ }
117
+ });
118
+ Object.defineProperty(exports, "GainNode", {
119
+ enumerable: true,
120
+ get: function () {
121
+ return _GainNode.default;
122
+ }
123
+ });
124
+ Object.defineProperty(exports, "IndexSizeError", {
125
+ enumerable: true,
126
+ get: function () {
127
+ return _errors.IndexSizeError;
128
+ }
129
+ });
130
+ Object.defineProperty(exports, "InvalidAccessError", {
131
+ enumerable: true,
132
+ get: function () {
133
+ return _errors.InvalidAccessError;
134
+ }
135
+ });
136
+ Object.defineProperty(exports, "InvalidStateError", {
137
+ enumerable: true,
138
+ get: function () {
139
+ return _errors.InvalidStateError;
140
+ }
141
+ });
142
+ Object.defineProperty(exports, "NotSupportedError", {
143
+ enumerable: true,
144
+ get: function () {
145
+ return _errors.NotSupportedError;
146
+ }
147
+ });
148
+ Object.defineProperty(exports, "OfflineAudioContext", {
149
+ enumerable: true,
150
+ get: function () {
151
+ return _OfflineAudioContext.default;
152
+ }
153
+ });
154
+ Object.defineProperty(exports, "OscillatorNode", {
155
+ enumerable: true,
156
+ get: function () {
157
+ return _OscillatorNode.default;
158
+ }
159
+ });
160
+ Object.defineProperty(exports, "OscillatorType", {
161
+ enumerable: true,
162
+ get: function () {
163
+ return _types.OscillatorType;
164
+ }
165
+ });
166
+ Object.defineProperty(exports, "PeriodicWaveConstraints", {
167
+ enumerable: true,
168
+ get: function () {
169
+ return _types.PeriodicWaveConstraints;
170
+ }
171
+ });
172
+ Object.defineProperty(exports, "RangeError", {
173
+ enumerable: true,
174
+ get: function () {
175
+ return _errors.RangeError;
176
+ }
177
+ });
178
+ Object.defineProperty(exports, "StereoPannerNode", {
179
+ enumerable: true,
180
+ get: function () {
181
+ return _StereoPannerNode.default;
182
+ }
183
+ });
184
+ Object.defineProperty(exports, "WindowType", {
185
+ enumerable: true,
186
+ get: function () {
187
+ return _types.WindowType;
188
+ }
189
+ });
190
+ var _AudioBuffer = _interopRequireDefault(require("./web-core/AudioBuffer"));
191
+ var _AudioBufferSourceNode = _interopRequireDefault(require("./web-core/AudioBufferSourceNode"));
192
+ var _AudioContext = _interopRequireDefault(require("./web-core/AudioContext"));
193
+ var _OfflineAudioContext = _interopRequireDefault(require("./web-core/OfflineAudioContext"));
194
+ var _AudioDestinationNode = _interopRequireDefault(require("./web-core/AudioDestinationNode"));
195
+ var _AudioNode = _interopRequireDefault(require("./web-core/AudioNode"));
196
+ var _AnalyserNode = _interopRequireDefault(require("./web-core/AnalyserNode"));
197
+ var _AudioParam = _interopRequireDefault(require("./web-core/AudioParam"));
198
+ var _AudioScheduledSourceNode = _interopRequireDefault(require("./web-core/AudioScheduledSourceNode"));
199
+ var _BaseAudioContext = _interopRequireDefault(require("./web-core/BaseAudioContext"));
200
+ var _BiquadFilterNode = _interopRequireDefault(require("./web-core/BiquadFilterNode"));
201
+ var _GainNode = _interopRequireDefault(require("./web-core/GainNode"));
202
+ var _OscillatorNode = _interopRequireDefault(require("./web-core/OscillatorNode"));
203
+ var _StereoPannerNode = _interopRequireDefault(require("./web-core/StereoPannerNode"));
204
+ var _custom = require("./web-core/custom");
205
+ Object.keys(_custom).forEach(function (key) {
206
+ if (key === "default" || key === "__esModule") return;
207
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
208
+ if (key in exports && exports[key] === _custom[key]) return;
209
+ Object.defineProperty(exports, key, {
210
+ enumerable: true,
211
+ get: function () {
212
+ return _custom[key];
213
+ }
214
+ });
215
+ });
216
+ var _types = require("./types");
217
+ var _errors = require("./errors");
218
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
219
+ //# sourceMappingURL=api.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_AudioBuffer","_interopRequireDefault","require","_AudioBufferSourceNode","_AudioContext","_OfflineAudioContext","_AudioDestinationNode","_AudioNode","_AnalyserNode","_AudioParam","_AudioScheduledSourceNode","_BaseAudioContext","_BiquadFilterNode","_GainNode","_OscillatorNode","_StereoPannerNode","_custom","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_types","_errors","e","__esModule","default"],"sourceRoot":"../../src","sources":["api.web.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,aAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,oBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,qBAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,UAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,aAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,WAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,yBAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,iBAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,iBAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,SAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,eAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,iBAAA,GAAAd,sBAAA,CAAAC,OAAA;AAEA,IAAAc,OAAA,GAAAd,OAAA;AAAAe,MAAA,CAAAC,IAAA,CAAAF,OAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,OAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,OAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAEA,IAAAS,MAAA,GAAA3B,OAAA;AAUA,IAAA4B,OAAA,GAAA5B,OAAA;AAMkB,SAAAD,uBAAA8B,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA","ignoreList":[]}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _errors = require("../errors");
8
+ var _AudioNode = _interopRequireDefault(require("./AudioNode"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ class AnalyserNode extends _AudioNode.default {
11
+ static allowedFFTSize = [32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768];
12
+ get fftSize() {
13
+ return this.node.fftSize;
14
+ }
15
+ set fftSize(value) {
16
+ if (!AnalyserNode.allowedFFTSize.includes(value)) {
17
+ throw new _errors.IndexSizeError(`Provided value (${value}) must be a power of 2 between 32 and 32768`);
18
+ }
19
+ this.node.fftSize = value;
20
+ }
21
+ get minDecibels() {
22
+ return this.node.minDecibels;
23
+ }
24
+ set minDecibels(value) {
25
+ if (value >= this.maxDecibels) {
26
+ throw new _errors.IndexSizeError(`The minDecibels value (${value}) must be less than maxDecibels`);
27
+ }
28
+ this.node.minDecibels = value;
29
+ }
30
+ get maxDecibels() {
31
+ return this.node.maxDecibels;
32
+ }
33
+ set maxDecibels(value) {
34
+ if (value <= this.minDecibels) {
35
+ throw new _errors.IndexSizeError(`The maxDecibels value (${value}) must be greater than minDecibels`);
36
+ }
37
+ this.node.maxDecibels = value;
38
+ }
39
+ get smoothingTimeConstant() {
40
+ return this.node.smoothingTimeConstant;
41
+ }
42
+ set smoothingTimeConstant(value) {
43
+ if (value < 0 || value > 1) {
44
+ throw new _errors.IndexSizeError(`The smoothingTimeConstant value (${value}) must be between 0 and 1`);
45
+ }
46
+ this.node.smoothingTimeConstant = value;
47
+ }
48
+ get window() {
49
+ return this.node.window;
50
+ }
51
+ set window(value) {
52
+ this.node.window = value;
53
+ }
54
+ get frequencyBinCount() {
55
+ return this.node.frequencyBinCount;
56
+ }
57
+ getFloatFrequencyData(array) {
58
+ this.node.getFloatFrequencyData(array);
59
+ }
60
+ getByteFrequencyData(array) {
61
+ this.node.getByteFrequencyData(array);
62
+ }
63
+ getFloatTimeDomainData(array) {
64
+ this.node.getFloatTimeDomainData(array);
65
+ }
66
+ getByteTimeDomainData(array) {
67
+ this.node.getByteTimeDomainData(array);
68
+ }
69
+ }
70
+ exports.default = AnalyserNode;
71
+ //# sourceMappingURL=AnalyserNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_errors","require","_AudioNode","_interopRequireDefault","e","__esModule","default","AnalyserNode","AudioNode","allowedFFTSize","fftSize","node","value","includes","IndexSizeError","minDecibels","maxDecibels","smoothingTimeConstant","window","frequencyBinCount","getFloatFrequencyData","array","getByteFrequencyData","getFloatTimeDomainData","getByteTimeDomainData","exports"],"sourceRoot":"../../../src","sources":["core/AnalyserNode.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _errors = require("../errors");
8
+ class AudioBuffer {
9
+ /** @internal */
10
+
11
+ constructor(buffer) {
12
+ this.buffer = buffer;
13
+ this.length = buffer.length;
14
+ this.duration = buffer.duration;
15
+ this.sampleRate = buffer.sampleRate;
16
+ this.numberOfChannels = buffer.numberOfChannels;
17
+ }
18
+ getChannelData(channel) {
19
+ if (channel < 0 || channel >= this.numberOfChannels) {
20
+ throw new _errors.IndexSizeError(`The channel number provided (${channel}) is outside the range [0, ${this.numberOfChannels - 1}]`);
21
+ }
22
+ return this.buffer.getChannelData(channel);
23
+ }
24
+ copyFromChannel(destination, channelNumber, startInChannel = 0) {
25
+ if (channelNumber < 0 || channelNumber >= this.numberOfChannels) {
26
+ throw new _errors.IndexSizeError(`The channel number provided (${channelNumber}) is outside the range [0, ${this.numberOfChannels - 1}]`);
27
+ }
28
+ if (startInChannel < 0 || startInChannel >= this.length) {
29
+ throw new _errors.IndexSizeError(`The startInChannel number provided (${startInChannel}) is outside the range [0, ${this.length - 1}]`);
30
+ }
31
+ this.buffer.copyFromChannel(destination, channelNumber, startInChannel);
32
+ }
33
+ copyToChannel(source, channelNumber, startInChannel = 0) {
34
+ if (channelNumber < 0 || channelNumber >= this.numberOfChannels) {
35
+ throw new _errors.IndexSizeError(`The channel number provided (${channelNumber}) is outside the range [0, ${this.numberOfChannels - 1}]`);
36
+ }
37
+ if (startInChannel < 0 || startInChannel >= this.length) {
38
+ throw new _errors.IndexSizeError(`The startInChannel number provided (${startInChannel}) is outside the range [0, ${this.length - 1}]`);
39
+ }
40
+ this.buffer.copyToChannel(source, channelNumber, startInChannel);
41
+ }
42
+ }
43
+ exports.default = AudioBuffer;
44
+ //# sourceMappingURL=AudioBuffer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_errors","require","AudioBuffer","constructor","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","IndexSizeError","copyFromChannel","destination","channelNumber","startInChannel","copyToChannel","source","exports","default"],"sourceRoot":"../../../src","sources":["core/AudioBuffer.ts"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AAEe,MAAMC,WAAW,CAAC;EAK/B;;EAGAC,WAAWA,CAACC,MAAoB,EAAE;IAChC,IAAI,CAACA,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGD,MAAM,CAACC,MAAM;IAC3B,IAAI,CAACC,QAAQ,GAAGF,MAAM,CAACE,QAAQ;IAC/B,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAI,CAACC,gBAAgB,GAAGJ,MAAM,CAACI,gBAAgB;EACjD;EAEOC,cAAcA,CAACC,OAAe,EAAgB;IACnD,IAAIA,OAAO,GAAG,CAAC,IAAIA,OAAO,IAAI,IAAI,CAACF,gBAAgB,EAAE;MACnD,MAAM,IAAIG,sBAAc,CACtB,gCAAgCD,OAAO,8BAA8B,IAAI,CAACF,gBAAgB,GAAG,CAAC,GAChG,CAAC;IACH;IACA,OAAO,IAAI,CAACJ,MAAM,CAACK,cAAc,CAACC,OAAO,CAAC;EAC5C;EAEOE,eAAeA,CACpBC,WAAyB,EACzBC,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACN,gBAAgB,EAAE;MAC/D,MAAM,IAAIG,sBAAc,CACtB,gCAAgCG,aAAa,8BAA8B,IAAI,CAACN,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIO,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACV,MAAM,EAAE;MACvD,MAAM,IAAIM,sBAAc,CACtB,uCAAuCI,cAAc,8BAA8B,IAAI,CAACV,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACQ,eAAe,CAACC,WAAW,EAAEC,aAAa,EAAEC,cAAc,CAAC;EACzE;EAEOC,aAAaA,CAClBC,MAAoB,EACpBH,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACN,gBAAgB,EAAE;MAC/D,MAAM,IAAIG,sBAAc,CACtB,gCAAgCG,aAAa,8BAA8B,IAAI,CAACN,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIO,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACV,MAAM,EAAE;MACvD,MAAM,IAAIM,sBAAc,CACtB,uCAAuCI,cAAc,8BAA8B,IAAI,CAACV,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACY,aAAa,CAACC,MAAM,EAAEH,aAAa,EAAEC,cAAc,CAAC;EAClE;AACF;AAACG,OAAA,CAAAC,OAAA,GAAAjB,WAAA","ignoreList":[]}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _AudioScheduledSourceNode = _interopRequireDefault(require("./AudioScheduledSourceNode"));
8
+ var _AudioBuffer = _interopRequireDefault(require("./AudioBuffer"));
9
+ var _AudioParam = _interopRequireDefault(require("./AudioParam"));
10
+ var _errors = require("../errors");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ class AudioBufferSourceNode extends _AudioScheduledSourceNode.default {
13
+ constructor(context, node) {
14
+ super(context, node);
15
+ this.detune = new _AudioParam.default(node.detune);
16
+ this.playbackRate = new _AudioParam.default(node.playbackRate);
17
+ }
18
+ get buffer() {
19
+ const buffer = this.node.buffer;
20
+ if (!buffer) {
21
+ return null;
22
+ }
23
+ return new _AudioBuffer.default(buffer);
24
+ }
25
+ set buffer(buffer) {
26
+ if (!buffer) {
27
+ this.node.buffer = null;
28
+ return;
29
+ }
30
+ this.node.buffer = buffer.buffer;
31
+ }
32
+ get loop() {
33
+ return this.node.loop;
34
+ }
35
+ set loop(value) {
36
+ this.node.loop = value;
37
+ }
38
+ get loopStart() {
39
+ return this.node.loopStart;
40
+ }
41
+ set loopStart(value) {
42
+ this.node.loopStart = value;
43
+ }
44
+ get loopEnd() {
45
+ return this.node.loopEnd;
46
+ }
47
+ set loopEnd(value) {
48
+ this.node.loopEnd = value;
49
+ }
50
+ start(when = 0, offset = 0, duration) {
51
+ if (when < 0) {
52
+ throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
53
+ }
54
+ if (offset < 0) {
55
+ throw new _errors.RangeError(`offset must be a finite non-negative number: ${offset}`);
56
+ }
57
+ if (duration && duration < 0) {
58
+ throw new _errors.RangeError(`duration must be a finite non-negative number: ${duration}`);
59
+ }
60
+ if (this.hasBeenStarted) {
61
+ throw new _errors.InvalidStateError('Cannot call start more than once');
62
+ }
63
+ this.hasBeenStarted = true;
64
+ this.node.start(when, offset, duration);
65
+ }
66
+ }
67
+ exports.default = AudioBufferSourceNode;
68
+ //# sourceMappingURL=AudioBufferSourceNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","_AudioBuffer","_AudioParam","_errors","e","__esModule","default","AudioBufferSourceNode","AudioScheduledSourceNode","constructor","context","node","detune","AudioParam","playbackRate","buffer","AudioBuffer","loop","value","loopStart","loopEnd","start","when","offset","duration","RangeError","hasBeenStarted","InvalidStateError","exports"],"sourceRoot":"../../../src","sources":["core/AudioBufferSourceNode.ts"],"mappings":";;;;;;AACA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAA0D,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE3C,MAAMG,qBAAqB,SAASC,iCAAwB,CAAC;EAI1EC,WAAWA,CAACC,OAAyB,EAAEC,IAA4B,EAAE;IACnE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,MAAM,GAAG,IAAIC,mBAAU,CAACF,IAAI,CAACC,MAAM,CAAC;IACzC,IAAI,CAACE,YAAY,GAAG,IAAID,mBAAU,CAACF,IAAI,CAACG,YAAY,CAAC;EACvD;EAEA,IAAWC,MAAMA,CAAA,EAAuB;IACtC,MAAMA,MAAM,GAAI,IAAI,CAACJ,IAAI,CAA4BI,MAAM;IAC3D,IAAI,CAACA,MAAM,EAAE;MACX,OAAO,IAAI;IACb;IACA,OAAO,IAAIC,oBAAW,CAACD,MAAM,CAAC;EAChC;EAEA,IAAWA,MAAMA,CAACA,MAA0B,EAAE;IAC5C,IAAI,CAACA,MAAM,EAAE;MACV,IAAI,CAACJ,IAAI,CAA4BI,MAAM,GAAG,IAAI;MACnD;IACF;IAEC,IAAI,CAACJ,IAAI,CAA4BI,MAAM,GAAGA,MAAM,CAACA,MAAM;EAC9D;EAEA,IAAWE,IAAIA,CAAA,EAAY;IACzB,OAAQ,IAAI,CAACN,IAAI,CAA4BM,IAAI;EACnD;EAEA,IAAWA,IAAIA,CAACC,KAAc,EAAE;IAC7B,IAAI,CAACP,IAAI,CAA4BM,IAAI,GAAGC,KAAK;EACpD;EAEA,IAAWC,SAASA,CAAA,EAAW;IAC7B,OAAQ,IAAI,CAACR,IAAI,CAA4BQ,SAAS;EACxD;EAEA,IAAWA,SAASA,CAACD,KAAa,EAAE;IACjC,IAAI,CAACP,IAAI,CAA4BQ,SAAS,GAAGD,KAAK;EACzD;EAEA,IAAWE,OAAOA,CAAA,EAAW;IAC3B,OAAQ,IAAI,CAACT,IAAI,CAA4BS,OAAO;EACtD;EAEA,IAAWA,OAAOA,CAACF,KAAa,EAAE;IAC/B,IAAI,CAACP,IAAI,CAA4BS,OAAO,GAAGF,KAAK;EACvD;EAEOG,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAEC,MAAc,GAAG,CAAC,EAAEC,QAAiB,EAAQ;IAC1E,IAAIF,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIG,kBAAU,CAClB,8CAA8CH,IAAI,EACpD,CAAC;IACH;IAEA,IAAIC,MAAM,GAAG,CAAC,EAAE;MACd,MAAM,IAAIE,kBAAU,CAClB,gDAAgDF,MAAM,EACxD,CAAC;IACH;IAEA,IAAIC,QAAQ,IAAIA,QAAQ,GAAG,CAAC,EAAE;MAC5B,MAAM,IAAIC,kBAAU,CAClB,kDAAkDD,QAAQ,EAC5D,CAAC;IACH;IAEA,IAAI,IAAI,CAACE,cAAc,EAAE;MACvB,MAAM,IAAIC,yBAAiB,CAAC,kCAAkC,CAAC;IACjE;IAEA,IAAI,CAACD,cAAc,GAAG,IAAI;IACzB,IAAI,CAACf,IAAI,CAA4BU,KAAK,CAACC,IAAI,EAAEC,MAAM,EAAEC,QAAQ,CAAC;EACrE;AACF;AAACI,OAAA,CAAAtB,OAAA,GAAAC,qBAAA","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _BaseAudioContext = _interopRequireDefault(require("./BaseAudioContext"));
8
+ var _system = _interopRequireDefault(require("../system"));
9
+ var _errors = require("../errors");
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ class AudioContext extends _BaseAudioContext.default {
12
+ constructor(options) {
13
+ if (options && (options.sampleRate < 8000 || options.sampleRate > 96000)) {
14
+ throw new _errors.NotSupportedError(`The provided sampleRate is not supported: ${options.sampleRate}`);
15
+ }
16
+ super(global.createAudioContext(options?.sampleRate || _system.default.getDevicePreferredSampleRate()));
17
+ }
18
+ async close() {
19
+ await this.context.close();
20
+ }
21
+ async resume() {
22
+ await this.context.resume();
23
+ }
24
+ async suspend() {
25
+ await this.context.suspend();
26
+ }
27
+ }
28
+ exports.default = AudioContext;
29
+ //# sourceMappingURL=AudioContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_BaseAudioContext","_interopRequireDefault","require","_system","_errors","e","__esModule","default","AudioContext","BaseAudioContext","constructor","options","sampleRate","NotSupportedError","global","createAudioContext","AudioManager","getDevicePreferredSampleRate","close","context","resume","suspend","exports"],"sourceRoot":"../../../src","sources":["core/AudioContext.ts"],"mappings":";;;;;;AACA,IAAAA,iBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAA8C,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE/B,MAAMG,YAAY,SAASC,yBAAgB,CAAC;EACzDC,WAAWA,CAACC,OAA6B,EAAE;IACzC,IAAIA,OAAO,KAAKA,OAAO,CAACC,UAAU,GAAG,IAAI,IAAID,OAAO,CAACC,UAAU,GAAG,KAAK,CAAC,EAAE;MACxE,MAAM,IAAIC,yBAAiB,CACzB,6CAA6CF,OAAO,CAACC,UAAU,EACjE,CAAC;IACH;IAEA,KAAK,CACHE,MAAM,CAACC,kBAAkB,CACvBJ,OAAO,EAAEC,UAAU,IAAII,eAAY,CAACC,4BAA4B,CAAC,CACnE,CACF,CAAC;EACH;EAEA,MAAMC,KAAKA,CAAA,EAAuB;IAChC,MAAO,IAAI,CAACC,OAAO,CAAmBD,KAAK,CAAC,CAAC;EAC/C;EAEA,MAAME,MAAMA,CAAA,EAAuB;IACjC,MAAO,IAAI,CAACD,OAAO,CAAmBC,MAAM,CAAC,CAAC;EAChD;EAEA,MAAMC,OAAOA,CAAA,EAAuB;IAClC,MAAO,IAAI,CAACF,OAAO,CAAmBE,OAAO,CAAC,CAAC;EACjD;AACF;AAACC,OAAA,CAAAf,OAAA,GAAAC,YAAA","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _AudioNode = _interopRequireDefault(require("./AudioNode"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ class AudioDestinationNode extends _AudioNode.default {}
10
+ exports.default = AudioDestinationNode;
11
+ //# sourceMappingURL=AudioDestinationNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_AudioNode","_interopRequireDefault","require","e","__esModule","default","AudioDestinationNode","AudioNode","exports"],"sourceRoot":"../../../src","sources":["core/AudioDestinationNode.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAErB,MAAMG,oBAAoB,SAASC,kBAAS,CAAC;AAAEC,OAAA,CAAAH,OAAA,GAAAC,oBAAA","ignoreList":[]}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _errors = require("../errors");
8
+ class AudioNode {
9
+ constructor(context, node) {
10
+ this.context = context;
11
+ this.node = node;
12
+ this.numberOfInputs = this.node.numberOfInputs;
13
+ this.numberOfOutputs = this.node.numberOfOutputs;
14
+ this.channelCount = this.node.channelCount;
15
+ this.channelCountMode = this.node.channelCountMode;
16
+ this.channelInterpretation = this.node.channelInterpretation;
17
+ }
18
+ connect(destination) {
19
+ if (this.context !== destination.context) {
20
+ throw new _errors.InvalidAccessError('The AudioNodes are from different BaseAudioContexts');
21
+ }
22
+ this.node.connect(destination.node);
23
+ return destination;
24
+ }
25
+ disconnect(destination) {
26
+ this.node.disconnect(destination?.node);
27
+ }
28
+ }
29
+ exports.default = AudioNode;
30
+ //# sourceMappingURL=AudioNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_errors","require","AudioNode","constructor","context","node","numberOfInputs","numberOfOutputs","channelCount","channelCountMode","channelInterpretation","connect","destination","InvalidAccessError","disconnect","exports","default"],"sourceRoot":"../../../src","sources":["core/AudioNode.ts"],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AAEe,MAAMC,SAAS,CAAC;EAS7BC,WAAWA,CAACC,OAAyB,EAAEC,IAAgB,EAAE;IACvD,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACC,cAAc,GAAG,IAAI,CAACD,IAAI,CAACC,cAAc;IAC9C,IAAI,CAACC,eAAe,GAAG,IAAI,CAACF,IAAI,CAACE,eAAe;IAChD,IAAI,CAACC,YAAY,GAAG,IAAI,CAACH,IAAI,CAACG,YAAY;IAC1C,IAAI,CAACC,gBAAgB,GAAG,IAAI,CAACJ,IAAI,CAACI,gBAAgB;IAClD,IAAI,CAACC,qBAAqB,GAAG,IAAI,CAACL,IAAI,CAACK,qBAAqB;EAC9D;EAEOC,OAAOA,CAACC,WAAsB,EAAa;IAChD,IAAI,IAAI,CAACR,OAAO,KAAKQ,WAAW,CAACR,OAAO,EAAE;MACxC,MAAM,IAAIS,0BAAkB,CAC1B,qDACF,CAAC;IACH;IAEA,IAAI,CAACR,IAAI,CAACM,OAAO,CAACC,WAAW,CAACP,IAAI,CAAC;IAEnC,OAAOO,WAAW;EACpB;EAEOE,UAAUA,CAACF,WAAuB,EAAQ;IAC/C,IAAI,CAACP,IAAI,CAACS,UAAU,CAACF,WAAW,EAAEP,IAAI,CAAC;EACzC;AACF;AAACU,OAAA,CAAAC,OAAA,GAAAd,SAAA","ignoreList":[]}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _errors = require("../errors");
8
+ class AudioParam {
9
+ constructor(audioParam) {
10
+ this.audioParam = audioParam;
11
+ this.value = audioParam.value;
12
+ this.defaultValue = audioParam.defaultValue;
13
+ this.minValue = audioParam.minValue;
14
+ this.maxValue = audioParam.maxValue;
15
+ }
16
+ get value() {
17
+ return this.audioParam.value;
18
+ }
19
+ set value(value) {
20
+ this.audioParam.value = value;
21
+ }
22
+ setValueAtTime(value, startTime) {
23
+ if (startTime < 0) {
24
+ throw new _errors.RangeError(`startTime must be a finite non-negative number: ${startTime}`);
25
+ }
26
+ this.audioParam.setValueAtTime(value, startTime);
27
+ return this;
28
+ }
29
+ linearRampToValueAtTime(value, endTime) {
30
+ if (endTime < 0) {
31
+ throw new _errors.RangeError(`endTime must be a finite non-negative number: ${endTime}`);
32
+ }
33
+ this.audioParam.linearRampToValueAtTime(value, endTime);
34
+ return this;
35
+ }
36
+ exponentialRampToValueAtTime(value, endTime) {
37
+ if (endTime < 0) {
38
+ throw new _errors.RangeError(`endTime must be a finite non-negative number: ${endTime}`);
39
+ }
40
+ this.audioParam.exponentialRampToValueAtTime(value, endTime);
41
+ return this;
42
+ }
43
+ setTargetAtTime(target, startTime, timeConstant) {
44
+ if (startTime < 0) {
45
+ throw new _errors.RangeError(`startTime must be a finite non-negative number: ${startTime}`);
46
+ }
47
+ if (timeConstant < 0) {
48
+ throw new _errors.RangeError(`timeConstant must be a finite non-negative number: ${startTime}`);
49
+ }
50
+ this.audioParam.setTargetAtTime(target, startTime, timeConstant);
51
+ return this;
52
+ }
53
+ setValueCurveAtTime(values, startTime, duration) {
54
+ if (startTime < 0) {
55
+ throw new _errors.RangeError(`startTime must be a finite non-negative number: ${startTime}`);
56
+ }
57
+ if (duration < 0) {
58
+ throw new _errors.RangeError(`duration must be a finite non-negative number: ${startTime}`);
59
+ }
60
+ if (values.length < 2) {
61
+ throw new _errors.InvalidStateError(`values must contain at least two values`);
62
+ }
63
+ this.audioParam.setValueCurveAtTime(values, startTime, duration);
64
+ return this;
65
+ }
66
+ cancelScheduledValues(cancelTime) {
67
+ if (cancelTime < 0) {
68
+ throw new _errors.RangeError(`cancelTime must be a finite non-negative number: ${cancelTime}`);
69
+ }
70
+ this.audioParam.cancelScheduledValues(cancelTime);
71
+ return this;
72
+ }
73
+ cancelAndHoldAtTime(cancelTime) {
74
+ if (cancelTime < 0) {
75
+ throw new _errors.RangeError(`cancelTime must be a finite non-negative number: ${cancelTime}`);
76
+ }
77
+ this.audioParam.cancelAndHoldAtTime(cancelTime);
78
+ return this;
79
+ }
80
+ }
81
+ exports.default = AudioParam;
82
+ //# sourceMappingURL=AudioParam.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_errors","require","AudioParam","constructor","audioParam","value","defaultValue","minValue","maxValue","setValueAtTime","startTime","RangeError","linearRampToValueAtTime","endTime","exponentialRampToValueAtTime","setTargetAtTime","target","timeConstant","setValueCurveAtTime","values","duration","length","InvalidStateError","cancelScheduledValues","cancelTime","cancelAndHoldAtTime","exports","default"],"sourceRoot":"../../../src","sources":["core/AudioParam.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _AudioNode = _interopRequireDefault(require("./AudioNode"));
8
+ var _errors = require("../errors");
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ class AudioScheduledSourceNode extends _AudioNode.default {
11
+ hasBeenStarted = false;
12
+ start(when = 0) {
13
+ if (when < 0) {
14
+ throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
15
+ }
16
+ if (this.hasBeenStarted) {
17
+ throw new _errors.InvalidStateError('Cannot call start more than once');
18
+ }
19
+ this.hasBeenStarted = true;
20
+ this.node.start(when);
21
+ }
22
+ stop(when = 0) {
23
+ if (when < 0) {
24
+ throw new _errors.RangeError(`when must be a finite non-negative number: ${when}`);
25
+ }
26
+ if (!this.hasBeenStarted) {
27
+ throw new _errors.InvalidStateError('Cannot call stop without calling start first');
28
+ }
29
+ this.node.stop(when);
30
+ }
31
+
32
+ // eslint-disable-next-line accessor-pairs
33
+ set onended(callback) {
34
+ this.node.onended = callback;
35
+ }
36
+ }
37
+ exports.default = AudioScheduledSourceNode;
38
+ //# sourceMappingURL=AudioScheduledSourceNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_AudioNode","_interopRequireDefault","require","_errors","e","__esModule","default","AudioScheduledSourceNode","AudioNode","hasBeenStarted","start","when","RangeError","InvalidStateError","node","stop","onended","callback","exports"],"sourceRoot":"../../../src","sources":["core/AudioScheduledSourceNode.ts"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAA0D,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE3C,MAAMG,wBAAwB,SAASC,kBAAS,CAAC;EACpDC,cAAc,GAAY,KAAK;EAElCC,KAAKA,CAACC,IAAY,GAAG,CAAC,EAAQ;IACnC,IAAIA,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIC,kBAAU,CAClB,8CAA8CD,IAAI,EACpD,CAAC;IACH;IAEA,IAAI,IAAI,CAACF,cAAc,EAAE;MACvB,MAAM,IAAII,yBAAiB,CAAC,kCAAkC,CAAC;IACjE;IAEA,IAAI,CAACJ,cAAc,GAAG,IAAI;IACzB,IAAI,CAACK,IAAI,CAA+BJ,KAAK,CAACC,IAAI,CAAC;EACtD;EAEOI,IAAIA,CAACJ,IAAY,GAAG,CAAC,EAAQ;IAClC,IAAIA,IAAI,GAAG,CAAC,EAAE;MACZ,MAAM,IAAIC,kBAAU,CAClB,8CAA8CD,IAAI,EACpD,CAAC;IACH;IAEA,IAAI,CAAC,IAAI,CAACF,cAAc,EAAE;MACxB,MAAM,IAAII,yBAAiB,CACzB,8CACF,CAAC;IACH;IAEC,IAAI,CAACC,IAAI,CAA+BC,IAAI,CAACJ,IAAI,CAAC;EACrD;;EAEA;EACA,IAAWK,OAAOA,CAACC,QAAgC,EAAE;IAClD,IAAI,CAACH,IAAI,CAA+BE,OAAO,GAAGC,QAAQ;EAC7D;AACF;AAACC,OAAA,CAAAZ,OAAA,GAAAC,wBAAA","ignoreList":[]}