carta1 1.0.21 → 1.0.22

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.
@@ -117,43 +117,6 @@ export const QMF_ODD = (() => {
117
117
  return odd
118
118
  })()
119
119
 
120
- // Bit allocation
121
- export const INTERPOLATION_COMPENSATION_FACTOR = 0.25
122
-
123
- // Quantization
124
- export const MAX_WORD_LENGTH_INDEX = 15
125
- export const WORD_LENGTH_BITS = new Int32Array([
126
- 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
127
- ])
128
- export const QUANT_DISTORTION_TABLE = (() => {
129
- const table = new Float32Array(MAX_WORD_LENGTH_INDEX + 1)
130
- table[0] = 1.0
131
- for (let wl = 1; wl <= MAX_WORD_LENGTH_INDEX; wl++) {
132
- const bitsPerSample = WORD_LENGTH_BITS[wl]
133
- const quantRange = (1 << (bitsPerSample - 1)) - 1
134
- table[wl] = 1.0 / (12.0 * quantRange * quantRange)
135
- }
136
- return table
137
- })()
138
- export const DISTORTION_DELTA_DB = (() => {
139
- const table = new Float32Array(MAX_WORD_LENGTH_INDEX)
140
- for (let i = 0; i < MAX_WORD_LENGTH_INDEX; i++) {
141
- table[i] =
142
- 10 *
143
- Math.log10(
144
- QUANT_DISTORTION_TABLE[i + 1] / (QUANT_DISTORTION_TABLE[i] || 1.0)
145
- )
146
- }
147
- return table
148
- })()
149
- export const SCALE_FACTORS = (() => {
150
- const table = new Float32Array(64)
151
- for (let i = 0; i < 64; i++) {
152
- table[i] = Math.pow(2.0, i / 3.0 - 21)
153
- }
154
- return table
155
- })()
156
-
157
120
  // Psychoacoustic model
158
121
  export const BARK_SCALE = (() => {
159
122
  const table = new Float32Array(NUM_BFUS)
@@ -191,6 +154,8 @@ export const SPREADING_MATRIX = (() => {
191
154
  // ISO/IEC 11172-3:1993 Psychoacoustic Model Constants
192
155
  export const PSYMODEL_MIN_POWER_DB = -200
193
156
  export const PSYMODEL_FFT_SIZE = 2048
157
+ export const PSYMODEL_HALF_FFT_SIZE = PSYMODEL_FFT_SIZE >>> 1
158
+ export const PSYMODEL_NUM_BINS = PSYMODEL_HALF_FFT_SIZE + 1
194
159
 
195
160
  // Pre-computes lookup tables for resampling the MDCT power spectrum into a PSD.
196
161
  // For each PSD bin, these tables provide the two source MDCT indices and the
@@ -340,3 +305,94 @@ export const PSYMODEL_FREQ_TO_CB_MAP = new Uint8Array([
340
305
  105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105,
341
306
  105,
342
307
  ])
308
+
309
+ // Tonal detection neighbor offset patterns for different frequency ranges
310
+ // These avoid per-iteration array allocations during tonal masker detection
311
+ export const PSYMODEL_TONAL_OFFSETS_LOW_FREQ = Int8Array.of(-2, 2)
312
+ export const PSYMODEL_TONAL_OFFSETS_MID_FREQ = Int8Array.of(-3, -2, 2, 3)
313
+ export const PSYMODEL_TONAL_OFFSETS_HIGH_FREQ = Int8Array.of(-6, -5, -4, -3, -2 , 2, 3, 4, 5, 6) // prettier-ignore
314
+
315
+ // Bit allocation
316
+ export const INTERPOLATION_COMPENSATION_FACTOR = 0.25
317
+
318
+ /**
319
+ * Precomputed interpolation data for psychoacoustic mask interpolation
320
+ * Creates lookup table for interpolating psychoacoustic mask values across BFUs
321
+ */
322
+ export const BFU_MASK_INTERPOLATION_TABLE = (() => {
323
+ const interpolationEntries = new Array(NUM_BFUS)
324
+ const frequencyPerBin = SAMPLE_RATE / PSYMODEL_FFT_SIZE
325
+ const criticalBandIndices = PSYMODEL_CB_FREQ_INDICES
326
+
327
+ for (let bfuIndex = 0; bfuIndex < NUM_BFUS; bfuIndex++) {
328
+ const fftBinIndex = Math.round(BFU_FREQUENCIES[bfuIndex] / frequencyPerBin)
329
+
330
+ // Find critical band index using binary search
331
+ let lowIndex = 0
332
+ let highIndex = criticalBandIndices.length - 1
333
+
334
+ while (lowIndex < highIndex) {
335
+ const midIndex = (lowIndex + highIndex + 1) >> 1
336
+ if (criticalBandIndices[midIndex] <= fftBinIndex) {
337
+ lowIndex = midIndex
338
+ } else {
339
+ highIndex = midIndex - 1
340
+ }
341
+ }
342
+
343
+ const currentBandIndex = lowIndex
344
+ const nextBandIndex = Math.min(
345
+ currentBandIndex + 1,
346
+ criticalBandIndices.length - 1
347
+ )
348
+ const currentBandFreq = criticalBandIndices[currentBandIndex]
349
+ const nextBandFreq = criticalBandIndices[nextBandIndex]
350
+ const bandWidth = nextBandFreq - currentBandFreq || 1
351
+ const inverseBandWidth = 1 / bandWidth
352
+
353
+ interpolationEntries[bfuIndex] = {
354
+ band: currentBandIndex,
355
+ next: nextBandIndex,
356
+ x0: currentBandFreq,
357
+ y0: currentBandIndex,
358
+ y1: nextBandIndex,
359
+ tInv: inverseBandWidth,
360
+ }
361
+ }
362
+
363
+ return interpolationEntries
364
+ })()
365
+
366
+ // Quantization
367
+ export const MAX_WORD_LENGTH_INDEX = 15
368
+ export const WORD_LENGTH_BITS = new Int32Array([
369
+ 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
370
+ ])
371
+ export const QUANT_DISTORTION_TABLE = (() => {
372
+ const table = new Float32Array(MAX_WORD_LENGTH_INDEX + 1)
373
+ table[0] = 1.0
374
+ for (let wl = 1; wl <= MAX_WORD_LENGTH_INDEX; wl++) {
375
+ const bitsPerSample = WORD_LENGTH_BITS[wl]
376
+ const quantRange = (1 << (bitsPerSample - 1)) - 1
377
+ table[wl] = 1.0 / (12.0 * quantRange * quantRange)
378
+ }
379
+ return table
380
+ })()
381
+ export const DISTORTION_DELTA_DB = (() => {
382
+ const table = new Float32Array(MAX_WORD_LENGTH_INDEX)
383
+ for (let i = 0; i < MAX_WORD_LENGTH_INDEX; i++) {
384
+ table[i] =
385
+ 10 *
386
+ Math.log10(
387
+ QUANT_DISTORTION_TABLE[i + 1] / (QUANT_DISTORTION_TABLE[i] || 1.0)
388
+ )
389
+ }
390
+ return table
391
+ })()
392
+ export const SCALE_FACTORS = (() => {
393
+ const table = new Float32Array(64)
394
+ for (let i = 0; i < 64; i++) {
395
+ table[i] = Math.pow(2.0, i / 3.0 - 21)
396
+ }
397
+ return table
398
+ })()
@@ -373,7 +373,11 @@ export function quantizationStage(context) {
373
373
  bufferPool.bfuData
374
374
  )
375
375
 
376
- const psychoResults = psychoAnalysis(coefficients, options.normalizationDb)
376
+ const psychoResults = psychoAnalysis(
377
+ coefficients,
378
+ options.normalizationDb,
379
+ bufferPool.psychoBuffers
380
+ )
377
381
  const { bfuCount: selectedBfuCount, allocation } = allocateBits(
378
382
  psychoResults,
379
383
  bfuData,
@@ -1,2 +1,2 @@
1
- var r={};function e(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}var n,t,o=44100,a=512,i=new Uint8Array([0,8,0,0]),u=2048,f=212,l=52,c=new Int32Array([8,8,8,8,4,4,4,4,8,8,8,8,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,9,9,9,9,10,10,10,10,12,12,12,12,12,12,12,12,20,20,20,20,20,20,20,20]),s=new Int32Array([20,28,32,36,40,44,48,52]),v=new Int32Array([20,36,52]),h=new Float32Array([172.3,516.8,861.3,1205.9,1464.3,1636.5,1808.8,1981.1,2239.5,2584,2928.5,3273,3574.5,3832.9,4091.3,4349.7,4608.1,4866.5,5124.9,5383.3,5641.7,5900.1,6158.5,6416.9,6696.8,6998.3,7299.8,7601.2,7945.8,8333.3,8720.9,9108.5,9517.7,9948.3,10379,10809.7,11283.4,11800.2,12317,12833.8,13350.6,13867.4,14384.2,14901,15590,16451.4,17312.7,18174,19035.4,19896.7,20758,21619.3]),y=new Int32Array([0,8,16,24,32,36,40,44,48,56,64,72,80,86,92,98,104,110,116,122,128,134,140,146,152,159,166,173,180,189,198,207,216,226,236,246,256,268,280,292,304,316,328,340,352,372,392,412,432,452,472,492]),b=new Int32Array([0,32,64,96,8,40,72,104,12,44,76,108,20,52,84,116,26,58,90,122,128,160,192,224,134,166,198,230,141,173,205,237,150,182,214,246,256,288,320,352,384,416,448,480,268,300,332,364,396,428,460,492]),p=256,d=512,m=function(){for(var r=new Float32Array(32),e=0;e<32;e++)r[e]=Math.sin((e+.5)*Math.PI/64);return r}(),w=46,g=new Float32Array([-1461907e-11,-9205479e-11,-56157569e-12,.00030117269,.0002422519,-.00085293897,-.0005205574,.0020340169,.00078333891,-.0042153862,-.00075614988,.0078402944,-61169922e-12,-.01344162,.0024626821,.021736089,-.007801671,-.034090221,.01880949,.054326009,-.043596379,-.099384367,.13207909,.46424159]),k=function(){for(var r=new Float32Array(48),e=0;e<24;e++)r[e]=2*g[e],r[47-e]=2*g[e];return r}(),S=function(){for(var r=new Float32Array(24),e=0;e<24;e++)r[e]=k[2*e];return r}(),A=function(){for(var r=new Float32Array(24),e=0;e<24;e++)r[e]=k[2*e+1];return r}(),M=15,j=new Int32Array([0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),O=function(){var r=new Float32Array(16);r[0]=1;for(var e=1;e<=15;e++){var n=(1<<j[e]-1)-1;r[e]=1/(12*n*n)}return r}(),T=function(){for(var r=new Float32Array(15),e=0;e<15;e++)r[e]=10*Math.log10(O[e+1]/(O[e]||1));return r}(),F=function(){for(var r=new Float32Array(64),e=0;e<64;e++)r[e]=Math.pow(2,e/3-21);return r}(),P=function(){for(var r=new Float32Array(l),e=0;e<l;e++){var n=h[e];r[e]=13*Math.atan(76e-5*n)+3.5*Math.atan(Math.pow(n/7500,2))}return r}(),B=(function(){for(var r=new Float32Array(2704),e=0;e<l;e++)for(var n=0;n<l;n++){var t=P[e]-P[n],o=-100;t>=-3&&t<-1?o=17*(t+3)-70:t>=-1&&t<0?o=36*t:t>=0&&t<1?o=-27*t:t>=1&&t<8&&(o=4*-(t-1)-27),r[e*l+n]=o}}(),-200),x=2048,I=function(){for(var r=1024,e=2047,n=512,t=new Uint16Array(1025),o=new Uint16Array(1025),a=new Float32Array(1025),i=0;i<=r;i++){var u=1.9990234375*i,f=0|u,l=f;t[i]=l<r?l<n?l:1023-(l-n):e-(l-r);var c=f+1;o[i]=c>=x?t[i]:c<r?c<n?c:1023-(c-n):e-(c-r),a[i]=u-f}return[t,o,a]}(),z=(t=3,function(r){if(Array.isArray(r))return r}(n=I)||function(r,e){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=n){var t,o,a,i,u=[],f=!0,l=!1;try{if(a=(n=n.call(r)).next,0===e){if(Object(n)!==n)return;f=!1}else for(;!(f=(t=a.call(n)).done)&&(u.push(t.value),u.length!==e);f=!0);}catch(r){l=!0,o=r}finally{try{if(!f&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return u}}(n,t)||function(r,n){if(r){if("string"==typeof r)return e(r,n);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?e(r,n):void 0}}(n,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),C=z[0],E=z[1],_=z[2],D=[{size:128,windowStart:48},{size:128,windowStart:48},{size:256,windowStart:112}],q=32,U=32,L=16,H=32767,W=32768,G=10/Math.LN10,N=Math.LN10/10,V=new Uint8Array([0,1,2,4,5,7,8,10,12,14,16,19,22,26,31,36,44,49,54,60,67,74,80,92,105]),R=[[1,.85,13.87],[2,1.694,2.85],[3,2.525,-1.28],[4,3.337,-3.5],[5,4.124,-4.9],[6,4.882,-5.89],[7,5.608,-6.63],[8,6.301,-7.21],[9,6.959,-7.68],[10,7.581,-8.08],[11,8.169,-8.43],[12,8.723,-8.75],[13,9.244,-9.05],[14,9.734,-9.33],[15,10.195,-9.61],[16,10.629,-9.89],[17,11.037,-10.17],[18,11.421,-10.47],[19,11.783,-10.77],[20,12.125,-11.1],[21,12.448,-11.44],[22,12.753,-11.79],[23,13.042,-12.17],[24,13.317,-12.56],[25,13.577,-12.96],[26,13.825,-13.38],[27,14.062,-13.79],[28,14.288,-14.21],[29,14.504,-14.63],[30,14.711,-15.03],[31,14.909,-15.41],[32,15.1,-15.77],[33,15.283,-16.09],[34,15.46,-16.37],[35,15.631,-16.6],[36,15.795,-16.78],[37,15.955,-16.91],[38,16.11,-16.97],[39,16.26,-16.98],[40,16.405,-16.92],[41,16.547,-16.81],[42,16.685,-16.65],[43,16.82,-16.43],[44,16.951,-16.17],[45,17.079,-15.87],[46,17.204,-15.54],[47,17.327,-15.19],[48,17.447,-14.82],[50,17.68,-14.06],[52,17.904,-13.32],[54,18.121,-12.64],[56,18.331,-12.04],[58,18.534,-11.53],[60,18.73,-11.11],[62,18.922,-10.77],[64,19.108,-10.49],[66,19.288,-10.26],[68,19.464,-10.07],[70,19.635,-9.89],[72,19.801,-9.72],[74,19.963,-9.54],[76,20.12,-9.37],[78,20.273,-9.18],[80,20.421,-8.97],[82,20.565,-8.75],[84,20.705,-8.51],[86,20.84,-8.26],[88,20.971,-7.98],[90,21.099,-7.68],[92,21.222,-7.36],[94,21.341,-7.02],[96,21.457,-6.65],[100,21.676,-5.85],[104,21.882,-4.93],[108,22.074,-3.9],[112,22.253,-2.75],[116,22.42,-1.46],[120,22.575,-.03],[124,22.721,1.56],[128,22.857,3.31],[132,22.984,5.23],[136,23.102,7.34],[140,23.213,9.64],[144,23.317,12.15],[148,23.414,14.88],[152,23.506,17.84],[156,23.592,21.05],[160,23.673,24.52],[164,23.749,28.25],[168,23.821,32.27],[172,23.888,36.59],[176,23.952,41.22],[180,24.013,46.18],[184,24.07,51.49],[188,24.124,56],[192,24.176,56],[196,24.225,56],[200,24.271,56],[204,24.316,56],[208,24.358,56],[212,24.398,56],[216,24.436,56],[220,24.473,56],[224,24.508,56],[228,24.541,56],[232,24.573,56]],$=V.map(function(r){return R[r][0]-1}),J=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,47,48,48,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,58,58,59,59,60,60,61,61,62,62,63,63,64,64,65,65,66,66,67,67,68,68,69,69,70,70,71,71,71,71,72,72,72,72,73,73,73,73,74,74,74,74,75,75,75,75,76,76,76,76,77,77,77,77,78,78,78,78,79,79,79,79,80,80,80,80,81,81,81,81,82,82,82,82,83,83,83,83,84,84,84,84,85,85,85,85,86,86,86,86,87,87,87,87,88,88,88,88,89,89,89,89,90,90,90,90,91,91,91,91,92,92,92,92,93,93,93,93,94,94,94,94,95,95,95,95,96,96,96,96,97,97,97,97,98,98,98,98,99,99,99,99,100,100,100,100,101,101,101,101,102,102,102,102,103,103,103,103,104,104,104,104,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105]);function K(r,e,n,t){if(0!==t){var o=Math.floor(e/8),a=e%8;n&=(1<<t)-1;for(var i=0;i<t&&o<r.length;){var u=8-a,f=Math.min(t-i,u),l=n>>t-i-f&(1<<f)-1,c=(1<<f)-1<<u-f;r[o]=r[o]&~c|l<<u-f,i+=f,o++,a=0}}}function Q(r,e,n){if(0===n)return 0;for(var t=Math.floor(e/8),o=e%8,a=0,i=0;i<n&&t<r.length;){var u=8-o,f=Math.min(n-i,u),l=(1<<f)-1;a=a<<f|r[t]>>u-f&l,i+=f,t++,o=0}return a}function X(r,e,n){var t=Q(r,e,n);return t>=1<<n-1?t-(1<<n):t}function Y(r){return Y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Y(r)}function Z(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,rr(t.key),t)}}function rr(r){var e=function(r,e){if("object"!=Y(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=Y(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==Y(e)?e:e+""}function er(r,e){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=function(r,e){if(r){if("string"==typeof r)return nr(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?nr(r,e):void 0}}(r))||e&&r&&"number"==typeof r.length){n&&(r=n);var t=0,o=function(){};return{s:o,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(r){throw r},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return i=r.done,r},e:function(r){u=!0,a=r},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function nr(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function tr(r){var e=new Uint8Array(f),n=new DataView(e.buffer),t=s.indexOf(r.nBfu),o=2-r.blockModes[0]<<14|2-r.blockModes[1]<<12|3-r.blockModes[2]<<10|t<<5;n.setUint16(0,o,!1);for(var a=16,i=0;i<r.nBfu;i++)K(e,a,r.wordLengthIndices[i],4),a+=4;for(var u=0;u<r.nBfu;u++)K(e,a,r.scaleFactorIndices[u],6),a+=6;for(var l=0;l<r.nBfu;l++){var c=j[r.wordLengthIndices[l]];if(c>0){var v,h=er(r.quantizedCoefficients[l]);try{for(h.s();!(v=h.n()).done;){var y=v.value;K(e,a,y<0?y+(1<<c):y,c),a+=c}}catch(r){h.e(r)}finally{h.f()}}}return e[209]=0,e[210]=0,e[211]=0,e}function or(r){if(r.length!==f)throw new Error("Frame must be ".concat(f," bytes"));for(var e=new DataView(r.buffer,r.byteOffset,r.byteLength).getUint16(0,!1),n=[2-(e>>14&3),2-(e>>12&3),3-(e>>10&3)],t=s[e>>5&7],o=16,a=new Int32Array(t),i=0;i<t;i++)a[i]=Q(r,o,4),o+=4;for(var u=new Int32Array(t),l=0;l<t;l++)u[l]=Q(r,o,6),o+=6;for(var v=[],h=0;h<t;h++){var y=j[a[h]],b=c[h],p=new Int32Array(b);if(y>0)for(var d=0;d<b;d++)p[d]=X(r,o,y),o+=y;v.push(p)}return{nBfu:t,scaleFactorIndices:u,wordLengthIndices:a,quantizedCoefficients:v,blockModes:n}}var ar=function(){return function(r,e,n){return e&&Z(r.prototype,e),n&&Z(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}(function r(){!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r)},null,[{key:"createHeader",value:function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,t=new Uint8Array(u),o=new DataView(t.buffer);t.set(i,0);var a=(new TextEncoder).encode(r);return t.set(a.subarray(0,Math.min(a.length,255)),4),o.setUint32(260,e,!0),t[264]=n,t}},{key:"parseHeader",value:function(r){if(r.length!==u)throw new Error("Header must be ".concat(u," bytes"));for(var e=0;e<i.length;e++)if(r[e]!==i[e])throw new Error("Invalid AEA file");var n=new DataView(r.buffer,r.byteOffset,r.byteLength),t=r.indexOf(0,4),o=-1===t?256:t-4;return{title:(new TextDecoder).decode(r.subarray(4,4+o)),frameCount:n.getUint32(260,!0),channelCount:r[264]}}}])}();function ir(r){return ir="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},ir(r)}function ur(r,e){var n=Object.keys(r);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(r);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})),n.push.apply(n,t)}return n}function fr(r){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?ur(Object(n),!0).forEach(function(e){lr(r,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):ur(Object(n)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(n,e))})}return r}function lr(r,e,n){return(e=hr(e))in r?Object.defineProperty(r,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):r[e]=n,r}function cr(r,e){return function(r){if(Array.isArray(r))return r}(r)||function(r,e){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=n){var t,o,a,i,u=[],f=!0,l=!1;try{if(a=(n=n.call(r)).next,0===e){if(Object(n)!==n)return;f=!1}else for(;!(f=(t=a.call(n)).done)&&(u.push(t.value),u.length!==e);f=!0);}catch(r){l=!0,o=r}finally{try{if(!f&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return u}}(r,e)||function(r,e){if(r){if("string"==typeof r)return sr(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?sr(r,e):void 0}}(r,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function sr(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function vr(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,hr(t.key),t)}}function hr(r){var e=function(r,e){if("object"!=ir(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=ir(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==ir(e)?e:e+""}var yr=function(){return function(r,e,n){return e&&vr(r.prototype,e),n&&vr(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}(function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),this.values={transientThresholdLow:1,transientThresholdMid:1.5,transientThresholdHigh:2,normalizationDb:68},this.metadata={transientThresholdLow:{default:this.values.transientThresholdLow,name:"Low Band Transient Threshold",description:"Controls the transient detection threshold for the low frequency band (0-5.5kHz). Lower values make detection more sensitive, triggering short blocks more easily. Higher values require stronger transients.",range:[.01,2],step:.01},transientThresholdMid:{default:this.values.transientThresholdMid,name:"Mid Band Transient Threshold",description:"Controls the transient detection threshold for the mid frequency band (5.5-11kHz). Lower values make detection more sensitive, triggering short blocks more easily. Higher values require stronger transients.",range:[.01,3],step:.01},transientThresholdHigh:{default:this.values.transientThresholdHigh,name:"High Band Transient Threshold",description:"Controls the transient detection threshold for the high frequency band (11-22kHz). Lower values make detection more sensitive, triggering short blocks more easily. Higher values require stronger transients.",range:[.01,4],step:.01},normalizationDb:{default:this.values.normalizationDb,name:"Normalization Target (dB)",description:"Sets the target maximum level in decibels for psychoacoustic model normalization. This affects the dynamic range allocation and quantization precision. Higher values may increase bitrate but preserve more detail.",range:[60,80],step:1}},e&&this.setOptions(e)},[{key:"setOptions",value:function(r){for(var e=0,n=Object.entries(r);e<n.length;e++){var t=cr(n[e],2),o=t[0],a=t[1];o in this.values&&this.setValue(o,a)}}},{key:"setValue",value:function(r,e){if(!(r in this.metadata))throw new Error("Unknown option: ".concat(r));var n=cr(this.metadata[r].range,2),t=n[0],o=n[1];if(e<t||e>o)throw new Error("Value for ".concat(r," must be between ").concat(t," and ").concat(o,", got ").concat(e));this.values[r]=e}},{key:"getValue",value:function(r){if(!(r in this.values))throw new Error("Unknown option: ".concat(r));return this.values[r]}},{key:"transientThresholdLow",get:function(){return this.values.transientThresholdLow}},{key:"transientThresholdMid",get:function(){return this.values.transientThresholdMid}},{key:"transientThresholdHigh",get:function(){return this.values.transientThresholdHigh}},{key:"normalizationDb",get:function(){return this.values.normalizationDb}},{key:"getMetadata",value:function(r){return this.metadata[r]}},{key:"getAllMetadata",value:function(){return fr({},this.metadata)}},{key:"reset",value:function(){for(var r=0,e=Object.entries(this.metadata);r<e.length;r++){var n=cr(e[r],2),t=n[0],o=n[1];this.values[t]=o.default}}},{key:"toObject",value:function(){return{values:fr({},this.values),metadata:fr({},this.metadata)}}}])}();function br(r,e){return function(r){if(Array.isArray(r))return r}(r)||function(r,e){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=n){var t,o,a,i,u=[],f=!0,l=!1;try{if(a=(n=n.call(r)).next,0===e){if(Object(n)!==n)return;f=!1}else for(;!(f=(t=a.call(n)).done)&&(u.push(t.value),u.length!==e);f=!0);}catch(r){l=!0,o=r}finally{try{if(!f&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return u}}(r,e)||function(r,e){if(r){if("string"==typeof r)return pr(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?pr(r,e):void 0}}(r,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function pr(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function dr(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var r,e,n="function"==typeof Symbol?Symbol:{},t=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function a(n,t,o,a){var f=t&&t.prototype instanceof u?t:u,l=Object.create(f.prototype);return mr(l,"_invoke",function(n,t,o){var a,u,f,l=0,c=o||[],s=!1,v={p:0,n:0,v:r,a:h,f:h.bind(r,4),d:function(e,n){return a=e,u=0,f=r,v.n=n,i}};function h(n,t){for(u=n,f=t,e=0;!s&&l&&!o&&e<c.length;e++){var o,a=c[e],h=v.p,y=a[2];n>3?(o=y===t)&&(f=a[(u=a[4])?5:(u=3,3)],a[4]=a[5]=r):a[0]<=h&&((o=n<2&&h<a[1])?(u=0,v.v=t,v.n=a[1]):h<y&&(o=n<3||a[0]>t||t>y)&&(a[4]=n,a[5]=t,v.n=y,u=0))}if(o||n>1)return i;throw s=!0,t}return function(o,c,y){if(l>1)throw TypeError("Generator is already running");for(s&&1===c&&h(c,y),u=c,f=y;(e=u<2?r:f)||!s;){a||(u?u<3?(u>1&&(v.n=-1),h(u,f)):v.n=f:v.v=f);try{if(l=2,a){if(u||(o="next"),e=a[o]){if(!(e=e.call(a,f)))throw TypeError("iterator result is not an object");if(!e.done)return e;f=e.value,u<2&&(u=0)}else 1===u&&(e=a.return)&&e.call(a),u<2&&(f=TypeError("The iterator does not provide a '"+o+"' method"),u=1);a=r}else if((e=(s=v.n<0)?f:n.call(t,v))!==i)break}catch(e){a=r,u=1,f=e}finally{l=1}}return{value:e,done:s}}}(n,o,a),!0),l}var i={};function u(){}function f(){}function l(){}e=Object.getPrototypeOf;var c=[][t]?e(e([][t]())):(mr(e={},t,function(){return this}),e),s=l.prototype=u.prototype=Object.create(c);function v(r){return Object.setPrototypeOf?Object.setPrototypeOf(r,l):(r.__proto__=l,mr(r,o,"GeneratorFunction")),r.prototype=Object.create(s),r}return f.prototype=l,mr(s,"constructor",l),mr(l,"constructor",f),f.displayName="GeneratorFunction",mr(l,o,"GeneratorFunction"),mr(s),mr(s,o,"Generator"),mr(s,t,function(){return this}),mr(s,"toString",function(){return"[object Generator]"}),(dr=function(){return{w:a,m:v}})()}function mr(r,e,n,t){var o=Object.defineProperty;try{o({},"",{})}catch(r){o=0}mr=function(r,e,n,t){if(e)o?o(r,e,{value:n,enumerable:!t,configurable:!t,writable:!t}):r[e]=n;else{var a=function(e,n){mr(r,e,function(r){return this._invoke(e,n,r)})};a("next",0),a("throw",1),a("return",2)}},mr(r,e,n,t)}function wr(r){return new Sr(r,0)}function gr(r){return function(){return new kr(r.apply(this,arguments))}}function kr(r){var e,n;function t(e,n){try{var a=r[e](n),i=a.value,u=i instanceof Sr;Promise.resolve(u?i.v:i).then(function(n){if(u){var f="return"===e?"return":"next";if(!i.k||n.done)return t(f,n);n=r[f](n).value}o(a.done?"return":"normal",n)},function(r){t("throw",r)})}catch(r){o("throw",r)}}function o(r,o){switch(r){case"return":e.resolve({value:o,done:!0});break;case"throw":e.reject(o);break;default:e.resolve({value:o,done:!1})}(e=e.next)?t(e.key,e.arg):n=null}this._invoke=function(r,o){return new Promise(function(a,i){var u={key:r,arg:o,resolve:a,reject:i,next:null};n?n=n.next=u:(e=n=u,t(r,o))})},"function"!=typeof r.return&&(this.return=void 0)}function Sr(r,e){this.v=r,this.k=e}function Ar(r){var e,n,t,o=2;for("undefined"!=typeof Symbol&&(n=Symbol.asyncIterator,t=Symbol.iterator);o--;){if(n&&null!=(e=r[n]))return e.call(r);if(t&&null!=(e=r[t]))return new Mr(e.call(r));n="@@asyncIterator",t="@@iterator"}throw new TypeError("Object is not async iterable")}function Mr(r){function e(r){if(Object(r)!==r)return Promise.reject(new TypeError(r+" is not an object."));var e=r.done;return Promise.resolve(r.value).then(function(r){return{value:r,done:e}})}return Mr=function(r){this.s=r,this.n=r.next},Mr.prototype={s:null,n:null,next:function(){return e(this.n.apply(this.s,arguments))},return:function(r){var n=this.s.return;return void 0===n?Promise.resolve({value:r,done:!0}):e(n.apply(this.s,arguments))},throw:function(r){var n=this.s.return;return void 0===n?Promise.reject(r):e(n.apply(this.s,arguments))}},new Mr(r)}function jr(r){throw new Error(r)}function Or(r){for(var e=arguments.length,n=new Array(e>1?e-1:0),t=1;t<e;t++)n[t-1]=arguments[t];var o=n.map(function(e){return e(r)});return function(r){return o.reduce(function(r,e){return e(r)},r)}}function Tr(r){return Fr.apply(this,arguments)}function Fr(){return Fr=gr(function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:266;return dr().m(function n(){var t,o,i,u,f,l,c,s,v;return dr().w(function(n){for(;;)switch(n.n){case 0:t=a,o=!1,i=!1,n.p=1,f=Ar(r);case 2:return n.n=3,wr(f.next());case 3:if(!(o=!(l=n.v).done)){n.n=7;break}if(c=l.value,(t=c.length)!==a){n.n=5;break}return n.n=4,c;case 4:n.n=6;break;case 5:return(s=new Float32Array(a)).set(c),n.n=6,s;case 6:o=!1,n.n=2;break;case 7:n.n=9;break;case 8:n.p=8,v=n.v,i=!0,u=v;case 9:if(n.p=9,n.p=10,!o||null==f.return){n.n=11;break}return n.n=11,wr(f.return());case 11:if(n.p=11,!i){n.n=12;break}throw u;case 12:return n.f(11);case 13:return n.f(9);case 14:if(!(a-t<e)){n.n=15;break}return n.n=15,new Float32Array(a);case 15:return n.a(2)}},n,null,[[10,,11,13],[1,8,9,14]])})()}),Fr.apply(this,arguments)}function Pr(r){return Br.apply(this,arguments)}function Br(){return Br=gr(function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:266;return dr().m(function n(){var t,o,i,u,f,l,c,s,v,h,y;return dr().w(function(n){for(;;)switch(n.n){case 0:t=new Float32Array(0),o=!1,i=!1,u=!1,n.p=1,l=Ar(r);case 2:return n.n=3,wr(l.next());case 3:if(!(i=!(c=n.v).done)){n.n=10;break}if(s=c.value,o){n.n=5;break}if(o=!0,!(e>=s.length)){n.n=4;break}return e-=s.length,n.a(3,9);case 4:return t=s.slice(e),e=0,n.a(3,9);case 5:(v=new Float32Array(t.length+s.length)).set(t),v.set(s,t.length),h=0;case 6:if(!(h+a<=v.length)){n.n=8;break}return n.n=7,v.slice(h,h+a);case 7:h+=a,n.n=6;break;case 8:t=v.slice(h);case 9:i=!1,n.n=2;break;case 10:n.n=12;break;case 11:n.p=11,y=n.v,u=!0,f=y;case 12:if(n.p=12,n.p=13,!i||null==l.return){n.n=14;break}return n.n=14,wr(l.return());case 14:if(n.p=14,!u){n.n=15;break}throw f;case 15:return n.f(14);case 16:return n.f(12);case 17:if(!(t.length>0)){n.n=18;break}return n.n=18,t;case 18:return n.a(2)}},n,null,[[13,,14,16],[1,11,12,17]])})()}),Br.apply(this,arguments)}function xr(r){for(var e=arguments.length,n=new Array(e>1?e-1:0),t=1;t<e;t++)n[t-1]=arguments[t];return function(){var e=gr(dr().m(function e(t){var o,a,i,u,f,l,c,s,v,h,y,b,p,d,m,w,g,k,S,A,M,j,O,T;return dr().w(function(e){for(;;)switch(e.n){case 0:o=[],a=[],i=!1,u=!1,e.p=1,l=Ar(t);case 2:return e.n=3,wr(l.next());case 3:if(!(i=!(c=e.v).done)){e.n=5;break}s=br(c.value,2),v=s[0],h=s[1],o.push(v),a.push(h);case 4:i=!1,e.n=2;break;case 5:e.n=7;break;case 6:e.p=6,O=e.v,u=!0,f=O;case 7:if(e.p=7,e.p=8,!i||null==l.return){e.n=9;break}return e.n=9,wr(l.return());case 9:if(e.p=9,!u){e.n=10;break}throw f;case 10:return e.f(9);case 11:return e.f(7);case 12:y=gr(dr().m(function r(){var e,n,t;return dr().w(function(r){for(;;)switch(r.n){case 0:e=0,n=o;case 1:if(!(e<n.length)){r.n=3;break}return t=n[e],r.n=2,t;case 2:e++,r.n=1;break;case 3:return r.a(2)}},r)}))(),b=gr(dr().m(function r(){var e,n,t;return dr().w(function(r){for(;;)switch(r.n){case 0:e=0,n=a;case 1:if(!(e<n.length)){r.n=3;break}return t=n[e],r.n=2,t;case 2:e++,r.n=1;break;case 3:return r.a(2)}},r)}))(),p=r.apply(void 0,[y].concat(n)),d=r.apply(void 0,[b].concat(n)),m=!1,w=!1,e.p=13,k=Ar(p);case 14:return e.n=15,wr(k.next());case 15:if(!(m=!(S=e.v).done)){e.n=18;break}return A=S.value,e.n=16,wr(d.next());case 16:if(M=e.v,void 0===(j=M.value)){e.n=17;break}return e.n=17,[A,j];case 17:m=!1,e.n=14;break;case 18:e.n=20;break;case 19:e.p=19,T=e.v,w=!0,g=T;case 20:if(e.p=20,e.p=21,!m||null==k.return){e.n=22;break}return e.n=22,wr(k.return());case 22:if(e.p=22,!w){e.n=23;break}throw g;case 23:return e.f(22);case 24:return e.f(20);case 25:return e.a(2)}},e,null,[[21,,22,24],[13,19,20,25],[8,,9,11],[1,6,7,12]])}));return function(r){return e.apply(this,arguments)}}()}function Ir(r,e){for(var n=e[r.length],t=0;t<r.length;t++)n[t]=r[r.length-1-t];return n}kr.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},kr.prototype.next=function(r){return this._invoke("next",r)},kr.prototype.throw=function(r){return this._invoke("throw",r)},kr.prototype.return=function(r){return this._invoke("return",r)};var zr=xr(Tr),Cr=xr(Pr);function Er(r,e){var n,t,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=r.length,i=a>>1,u=null!==(n=null==o||null===(t=o.delay)||void 0===t?void 0:t[a])&&void 0!==n?n:jr("qmfAnalysis: qmfWorkBuffers.delay[".concat(a,"] is required"));u.set(e),u.set(r,e.length);for(var f=new Float32Array(i),l=new Float32Array(i),c=0;c<i;c++){for(var s=0,v=0,h=2*c,y=0;y<24;y++)s+=u[h+47-2*y]*S[y],v+=u[h+46-2*y]*A[y];f[c]=s+v,l[c]=s-v}return{lowBand:f,highBand:l,newDelay:u.slice(-46)}}function _r(r,e,n){var t,o,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=r.length,u=2*i,f=null!==(t=null==a||null===(o=a.delay)||void 0===o?void 0:o[u])&&void 0!==t?t:jr("qmfSynthesis: qmfWorkBuffers.delay[".concat(u,"] is required"));f.set(n);for(var l=0;l<i;l++){var c=r[l],s=e[l],v=w+2*l;f[v]=.5*(c+s),f[v+1]=.5*(c-s)}for(var h=new Float32Array(u),y=0;y<i;y++){for(var b=2*y,p=0,d=0,m=0;m<24;m++){var g=b+2*m;p+=f[g]*S[m],d+=f[g+1]*A[m]}h[2*y]=d,h[2*y+1]=p}return{output:h,newDelay:f.slice(-46)}}function Dr(r){return Dr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Dr(r)}function qr(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,Ur(t.key),t)}}function Ur(r){var e=function(r,e){if("object"!=Dr(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=Dr(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==Dr(e)?e:e+""}var Lr=function(){function r(){!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r)}return function(r,e,n){return e&&qr(r.prototype,e),n&&qr(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}(r,null,[{key:"fft",value:function(e,n){var t=e.length;if(t!==n.length)throw new Error("Mismatched array lengths.");if(t&t-1)throw new Error("Length must be power of 2.");if(!(t<=1)){var o=r._cache.get(t);o||(o=r._buildCache(t),r._cache.set(t,o));for(var a=o.bitRev,i=o.cos,u=o.sin,f=0;f<t;f++){var l=a[f];if(l>f){var c=e[f],s=n[f];e[f]=e[l],n[f]=n[l],e[l]=c,n[l]=s}}for(var v=0;v<t;v+=2){var h=e[v],y=n[v],b=e[v+1],p=n[v+1];e[v]=h+b,n[v]=y+p,e[v+1]=h-b,n[v+1]=y-p}if(t>=4)for(var d=0;d<t;d+=4){var m=e[d],w=n[d],g=e[d+2],k=n[d+2];e[d]=m+g,n[d]=w+k,e[d+2]=m-g,n[d+2]=w-k,m=e[d+1],w=n[d+1],g=e[d+3];var S=k=n[d+3],A=-g;e[d+1]=m+S,n[d+1]=w+A,e[d+3]=m-S,n[d+3]=w-A}for(var M=8;M<=t;M<<=1)for(var j=M>>>1,O=t/M,T=0;T<t;T+=M){var F=e[T],P=n[T],B=e[T+j],x=n[T+j];e[T]=F+B,n[T]=P+x,e[T+j]=F-B,n[T+j]=P-x;for(var I=O,z=1;z<j;z++){var C=i[I],E=u[I];B=e[T+z],x=n[T+z];var _=e[T+z+j],D=n[T+z+j],q=_*C-D*E,U=_*E+D*C;e[T+z]=B+q,n[T+z]=x+U,e[T+z+j]=B-q,n[T+z+j]=x-U,I+=O}}}}},{key:"_buildCache",value:function(r){for(var e=new Uint32Array(r),n=0|Math.log2(r),t=1;t<r;t++)e[t]=e[t>>>1]>>>1|(1&t)<<n-1;for(var o=r>>>1,a=new Float32Array(o),i=new Float32Array(o),u=-2*Math.PI/r,f=0;f<o;f++){var l=u*f;a[f]=Math.cos(l),i[f]=Math.sin(l)}return{bitRev:e,cos:a,sin:i}}}])}();function Hr(r){return Hr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Hr(r)}function Wr(r,e,n){return e=Nr(e),function(r,e){if(e&&("object"==Hr(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(r){if(void 0===r)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return r}(r)}(r,Gr()?Reflect.construct(e,n||[],Nr(r).constructor):e.apply(r,n))}function Gr(){try{var r=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(r){}return(Gr=function(){return!!r})()}function Nr(r){return Nr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},Nr(r)}function Vr(r,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),Object.defineProperty(r,"prototype",{writable:!1}),e&&Rr(r,e)}function Rr(r,e){return Rr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,e){return r.__proto__=e,r},Rr(r,e)}function $r(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,Kr(t.key),t)}}function Jr(r,e,n){return e&&$r(r.prototype,e),n&&$r(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}function Kr(r){var e=function(r,e){if("object"!=Hr(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=Hr(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==Hr(e)?e:e+""}function Qr(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}!function(r,e,n){(e=Ur(e))in r?Object.defineProperty(r,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):r[e]=n}(Lr,"_cache",new Map);var Xr=Jr(function r(e,n){Qr(this,r),this.size=e,this.halfSize=e>>1,this.quarterSize=e>>2,this.fftSize=this.halfSize>>1;var t=2*Math.PI/(8*e),o=2*Math.PI/e,a=Math.sqrt(n/e);this.sinCosTable=new Float32Array(this.halfSize);for(var i=0;i<this.quarterSize;i++){var u=o*i+t;this.sinCosTable[2*i]=a*Math.cos(u),this.sinCosTable[2*i+1]=a*Math.sin(u)}}),Yr=function(){function r(e,n){return Qr(this,r),Wr(this,r,[e,n])}return Vr(r,Xr),Jr(r,[{key:"transform",value:function(r){var e,n,t,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=null!==(e=null==o?void 0:o[this.fftSize])&&void 0!==e?e:jr("MDCT.transform: mdctBuffers[".concat(this.fftSize,"] is required")),i=null!==(n=null==a?void 0:a.real)&&void 0!==n?n:jr("MDCT.transform: mdctBuffers[".concat(this.fftSize,"].real is required")),u=null!==(t=null==a?void 0:a.imag)&&void 0!==t?t:jr("MDCT.transform: mdctBuffers[".concat(this.fftSize,"].imag is required")),f=this.quarterSize,l=3*f;i.fill(0),u.fill(0);for(var c=0;c<f;c+=2){var s=l+c,v=f+c,h=f-1-c,y=r[l-1-c]+r[s],b=r[v]-r[h],p=this.sinCosTable[c],d=this.sinCosTable[c+1];i[c>>1]=y*p+b*d,u[c>>1]=b*p-y*d}for(var m=f;m<this.halfSize;m+=2){var w=m>>1,g=m-f,k=f+m,S=5*f-1-m,A=r[l-1-m]-r[g],M=r[k]+r[S],j=this.sinCosTable[m],O=this.sinCosTable[m+1];i[w]=A*j+M*O,u[w]=M*j-A*O}Lr.fft(i,u);for(var T=new Float32Array(this.halfSize),F=0;F<this.fftSize;F++){var P=this.sinCosTable[2*F],B=this.sinCosTable[2*F+1],x=i[F],I=u[F];T[2*F]=-x*P-I*B,T[this.halfSize-1-2*F]=-x*B+I*P}return T}}])}(),Zr=function(){function r(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return Qr(this,r),Wr(this,r,[e,n||e])}return Vr(r,Xr),Jr(r,[{key:"transform",value:function(r){var e,n,t,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=null!==(e=null==o?void 0:o[this.fftSize])&&void 0!==e?e:jr("IMDCT.transform: mdctBuffers[".concat(this.fftSize,"] is required")),i=null!==(n=null==a?void 0:a.real)&&void 0!==n?n:jr("IMDCT.transform: mdctBuffers[".concat(this.fftSize,"].real is required")),u=null!==(t=null==a?void 0:a.imag)&&void 0!==t?t:jr("IMDCT.transform: mdctBuffers[".concat(this.fftSize,"].imag is required")),f=this.quarterSize,l=3*f;i.fill(0),u.fill(0);for(var c=0;c<this.fftSize;c++){var s=2*c,v=r[s],h=r[this.halfSize-1-s],y=this.sinCosTable[s],b=this.sinCosTable[s+1];i[c]=-2*(h*b+v*y),u[c]=-2*(h*y-v*b)}Lr.fft(i,u);for(var p=new Float32Array(this.size),d=0;d<this.fftSize/2;d++){var m=2*d,w=this.sinCosTable[m],g=this.sinCosTable[m+1],k=i[d],S=u[d],A=k*w+S*g,M=k*g-S*w;p[l-1-m]=A,p[l+m]=A,p[f+m]=M,p[f-1-m]=-M}for(var j=this.fftSize/2;j<this.fftSize;j++){var O=2*(j-this.fftSize/2)+f,T=2*j,F=this.sinCosTable[T],P=this.sinCosTable[T+1],B=i[j],x=u[j],I=B*F+x*P,z=B*P-x*F;p[l-1-O]=I,p[O-f]=-I,p[f+O]=z,p[5*f-1-O]=z}return p}}])}(),re=new Yr(64,.5),ee=new Yr(p,.5),ne=new Yr(d,1),te=new Zr(64,256),oe=new Zr(p,1024),ae=new Zr(d,1024);function ie(r,e,n){for(var t=r.length,o=new Float32Array(2*t),a=0;a<t;a++){var i=n[a],u=n[2*t-1-a],f=r[a],l=e[t-1-a];o[a]=f*u-l*i,o[2*t-1-a]=f*i+l*u}return o}function ue(r){for(var e=0,n=0;n<r.length;n++)e=Math.max(e,Math.abs(r[n]));if(0===e)return 0;for(var t=0,o=F.length-1;t<o;){var a=t+o>>1;e<=F[a]?o=a:t=a+1}return t}function fe(r,e,n){if(0===n||0===e)return new Int32Array(r.length);for(var t=(1<<n-1)-1,o=t/F[e],a=new Int32Array(r.length),i=0;i<r.length;i++){var u=r[i]*o;a[i]=Math.max(-t-1,Math.min(t,Math.round(u)))}return a}function le(r,e,n){if(0===n||0===e)return new Float32Array(r.length);for(var t=F[e]/((1<<n-1)-1),o=new Float32Array(r.length),a=0;a<r.length;a++)o[a]=r[a]*t;return o}function ce(r){return function(r){if(Array.isArray(r))return he(r)}(r)||function(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}(r)||ve(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function se(r,e){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=ve(r))||e&&r&&"number"==typeof r.length){n&&(r=n);var t=0,o=function(){};return{s:o,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(r){throw r},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return i=r.done,r},e:function(r){u=!0,a=r},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function ve(r,e){if(r){if("string"==typeof r)return he(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?he(r,e):void 0}}function he(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function ye(r,e,n,t){var o=function(r,e,n){for(var t=new Float32Array(n),o=0;o<n;o++){var a=r[o],i=e[o];if(0!==i){for(var u=0,f=0;f<i;f++)u+=a[f]*a[f];t[o]=u>0?10*Math.log10(u/i):B}else t[o]=B}return t}(e,n,t),a=function(r,e,n){for(var t=new Float32Array(n),o=0;o<n;o++)t[o]=r[o]<=B?-1/0:r[o]-e[o];return t}(o,function(r){for(var e=new Float32Array(l),n=21.533203125,t=0;t<l;t++){for(var o=h[t],a=Math.round(o/n),i=0;i<$.length-1&&$[i+1]<a;)i++;if(a<=$[0])e[t]=r[0];else if(a>=$[$.length-1])e[t]=r[r.length-1];else{var u=$[i],f=$[i+1],c=r[i],s=r[i+1],v=f-u;if(v>0){var y=c+(s-c)*((a-u)/v),b=.25*Math.abs(s-c);e[t]=y+b}else e[t]=c}}return e}(r.criticalBandThresholds),t),i=function(r,e,n){var t=r.some(function(r){return r>0});if(t){for(var o=[],a=0;a<n;a++)r[a]>0&&o.push({index:a,smr:r[a]});if(o.sort(function(r,e){return e.smr-r.smr}),0===o.length)return s[s.length-1];for(var i=[],u=0,f=0;f<o.length;f++)u+=o[f].smr,i.push(u);var l,c=se(s);try{for(c.s();!(l=c.n()).done;){var v=l.value;if(!(v>n)){var h=o.slice(0,Math.min(o.length,v)).map(function(r){return r.index});if(Math.max.apply(Math,ce(h).concat([0]))<v){var y=Math.min(v-1,o.length-1);if(y>=o.length-1)return v;var b=o.length-y-1;if(b>0)if((i[i.length-1]-i[y])/b<.1*(i[y]/(y+1)))return v}}}}catch(r){c.e(r)}finally{c.f()}}else{for(var p=-1,d=n-1;d>=0;d--)if(e[d]>B&&r[d]>-1/0){p=d;break}var m,w=se(s);try{for(w.s();!(m=w.n()).done;){var g=m.value;if(g>p)return g}}catch(r){w.e(r)}finally{w.f()}}return s[7]}(a,o,t),u=function(r,e,n,t){for(var o=new Int32Array(r),a=[],i=0;i<r;i++)e[i]>-1/0&&a.push({bfu:i,priority:e[i]});for(var u=Math.floor(a.length/2)-1;u>=0;u--)pe(a,u);for(;a.length>0&&t>0;){var f=a[0],l=o[f.bfu];if(l>=M)a[0]=a[a.length-1],a.pop(),a.length>0&&pe(a,0);else{var c=be(f.bfu,l,n);c<=t?(t-=c,o[f.bfu]++,f.priority+=T[l],pe(a,0)):(a[0]=a[a.length-1],a.pop(),a.length>0&&pe(a,0))}}return o}(i,a,n,1656-10*i);return{bfuCount:i,allocation:u}}function be(r,e,n){var t=j[e]*n[r];return j[e+1]*n[r]-t}function pe(r,e){for(var n=r.length,t=r[e];;){var o=2*e+1,a=2*e+2,i=e,u=t.priority;if(o<n&&r[o].priority>u&&(i=o,u=r[o].priority),a<n&&r[a].priority>u&&(i=a),i===e)break;r[e]=r[i],e=i}r[e]=t}function de(r){return de="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},de(r)}function me(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,ge(t.key),t)}}function we(r,e,n){return e&&me(r.prototype,e),n&&me(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}function ge(r){var e=function(r,e){if("object"!=de(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=de(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==de(e)?e:e+""}var ke=we(function r(){!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),this.transformBuffers={64:new Float32Array(64),128:new Float32Array(128),256:new Float32Array(256),512:new Float32Array(512)},this.qmfWorkBuffers={delay:{128:new Float32Array(174),256:new Float32Array(302),512:new Float32Array(558)},highBandDelay:{128:new Float32Array(167),256:new Float32Array(295)}},this.qmfDelays={lowBand:new Float32Array(w),midBand:new Float32Array(w),highBand:new Float32Array(39)},this.transientDetection=[new Float32Array(64),new Float32Array(64),new Float32Array(128)],this.mdctBuffers={16:{real:new Float32Array(16),imag:new Float32Array(16)},64:{real:new Float32Array(64),imag:new Float32Array(64)},128:{real:new Float32Array(128),imag:new Float32Array(128)}},this.mdctOverlap=[new Float32Array(32),new Float32Array(32),new Float32Array(32)],this.imdctOverlap=[new Float32Array(256),new Float32Array(256),new Float32Array(512)],this.reversalBuffers={32:new Float32Array(32),128:new Float32Array(128),256:new Float32Array(256)},this.bfuData=new Array(l);for(var e=0;e<l;e++)this.bfuData[e]=new Float32Array(20)});function Se(r,e,n){if(!e)return!1;var t=function(r,e){var n=function(r,e){for(var n=0,t=0,o=0;o<r.length;o++){var a=Math.abs(r[o]),i=a-Math.abs(e[o]);i>0&&(n+=i),t+=a*a}var u=Math.sqrt(t)||1e-6;return n/u}(r,e),t=Ae(r),o=Ae(e),a=Math.abs(t-o),i=Me(r),u=Me(e),f=Math.abs(i-u),l=function(r,e){for(var n=0,t=0,o=0;o<r.length;o++)n+=r[o]*r[o],t+=e[o]*e[o];n=Math.max(n,1e-10),t=Math.max(t,1e-10);var a=10*Math.log10(n/t);return Math.max(0,a)}(r,e);return{spectralFlux:n,flatnessChange:a,hfChange:f,energyChange:l}}(r,e),o=function(r){var e=r.spectralFlux,n=r.flatnessChange,t=r.hfChange,o=r.energyChange,a=e,i=Math.sqrt(n),u=Math.log1p(10*t)/Math.log1p(10),f=Math.min(o/30,1);return(a+i+u+f)/4}(t);return o>n}function Ae(r){for(var e=0,n=0,t=0,o=0;o<r.length;o++){var a=Math.abs(r[o]);a>1e-10&&(e+=Math.log(a),n+=a,t++)}if(0===t)return 0;var i=Math.exp(e/t),u=n/t;return u>1e-10?i/u:0}function Me(r){for(var e=Math.floor(r.length/2),n=0,t=0,o=0;o<e;o++)n+=r[o]*r[o];for(var a=e;a<r.length;a++)t+=r[a]*r[a];var i=n+t;return i>0?t/i:0}function je(r){return function(r){if(Array.isArray(r))return Fe(r)}(r)||function(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}(r)||Te(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Oe(r,e){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=Te(r))||e&&r&&"number"==typeof r.length){n&&(r=n);var t=0,o=function(){};return{s:o,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(r){throw r},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return i=r.done,r},e:function(r){u=!0,a=r},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function Te(r,e){if(r){if("string"==typeof r)return Fe(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fe(r,e):void 0}}function Fe(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function Pe(r){return r>0?G*Math.log(r):B}function Be(r){return Math.exp(r*N)}function xe(r,e){var n=function(r,e){for(var n=1024,t=new Float32Array(n+1),o=new Float32Array(n+1),a=0,i=0;i<=n;i++){var u=r[C[i]],f=r[E[i]],l=u*u*(1-_[i])+f*f*_[i];o[i]=l,l>a&&(a=l)}for(var c=e-G*Math.log(a||1),s=0;s<=n;s++){var v=o[s];t[s]=v>0?G*Math.log(v)+c:B}return t}(r,e),t=function(r,e){var n=new Uint8Array(1024);n.fill(0);var t=function(r,e,n){for(var t=[],o=Math.floor(249*n),a=Math.floor(63*n),i=Math.floor(127*n),u=Math.floor(150*n),f=1;f<r.length-1&&f<=o;f++)if(!(r[f]<=r[f-1]||r[f]<r[f+1])){var l=void 0;if(f>2&&f<a)l=[-2,2];else if(f>=a&&f<i)l=[-3,-2,2,3];else{if(!(f>=i&&f<u))continue;l=[-6,-5,-4,-3,-2,2,3,4,5,6]}if(Ie(r,f,l)){var c=Pe(Be(r[f-1])+Be(r[f])+Be(r[f+1]));t.push({index:f,spl:c}),ze(e,f,l)}}return t}(r,n,e),o=function(r,e){for(var n=[],t=0;t<V.length-1;t++){var o=R[V[t]][0]-1,a=Ce(e,r,o,R[V[t+1]][0]-1,V[t]);if(a.powerDb>B){var i=Math.round(o+a.centroidOffset);1===r[i=Math.max(0,Math.min(i,r.length-1))]&&(i=Math.min(i+1,r.length-1)),n.push({index:i,spl:a.powerDb}),r[i]=2}}return n}(n,r),a=function(r,e,n){var t,o=function(r){var e=r.index;return e<J.length&&r.spl>=R[J[e]][2]},a=function(e){e.index<r.length&&(r[e.index]=3)},i=[],u=Oe(e);try{for(u.s();!(t=u.n()).done;){var f=t.value;o(f)?i.push(f):a(f)}}catch(r){u.e(r)}finally{u.f()}var l,c=[],s=Oe(n);try{for(s.s();!(l=s.n()).done;){var v=l.value;o(v)?c.push(v):a(v)}}catch(r){s.e(r)}finally{s.f()}return{tonalList:i,nonTonalList:c}}(n,t,o);return{flags:n,tonalMaskers:a.tonalList,nonTonalMaskers:a.nonTonalList}}(n,4),o=t.flags,a=t.tonalMaskers,i=t.nonTonalMaskers,u=function(r,e,n){var t,o=new Float32Array(V.length),a=[],i=Oe(e);try{for(i.s();!(t=i.n()).done;){var u=t.value,f=u.index;f<J.length&&a.push({spl:u.spl,psd:r[f],bark:R[J[f]][1],isTonal:!0})}}catch(r){i.e(r)}finally{i.f()}var l,c=Oe(n);try{for(c.s();!(l=c.n()).done;){var s=l.value,v=s.index;v<J.length&&a.push({spl:s.spl,psd:r[v],bark:R[J[v]][1],isTonal:!1})}}catch(r){c.e(r)}finally{c.f()}for(var h=0;h<V.length;h++){var y,b=R[V[h]],p=b[1],d=Be(b[2]),m=Oe(a);try{for(m.s();!(y=m.n()).done;){var w=y.value,g=p-w.bark;if(g>=-3&&g<8)d+=Be(Ee(w.spl,w.psd,w.bark,g,w.isTonal))}}catch(r){m.e(r)}finally{m.f()}o[h]=Pe(d)}return o}(n,a,i);return{psd:n,tonalMaskers:a,tonalMaskersCount:a.length,nonTonalMaskers:i,nonTonalMaskersCount:i.length,criticalBandThresholds:u,flags:o}}function Ie(r,e,n){var t,o=Oe(n);try{for(o.s();!(t=o.n()).done;){var a=e+t.value;if(a>=0&&a<r.length&&r[e]-r[a]<7)return!1}}catch(r){o.e(r)}finally{o.f()}return!0}function ze(r,e,n){r[e]=1;for(var t=0,o=[].concat(je(n),[-1,1]);t<o.length;t++){var a=e+o[t];a>=0&&a<r.length&&a!==e&&(r[a]=3)}}function Ce(r,e,n,t,o){for(var a=0,i=0,u=R[o][1],f=n;f<t&&f<e.length;f++)if(0===e[f]){var l=Be(r[f]);if(a+=l,f<J.length)i+=l*(R[J[f]][1]-u);e[f]=3}return{powerDb:Pe(a),centroidOffset:a>0?i/a*(t-n):0}}function Ee(r,e,n,t,o){var a=.4*e+6;return r+(o?-1.525-.275*n-4.5:-1.525-.175*n-.5)+(t<-1?17*(t+1)-a:t<0?a*t:t<1?-17*t:-(t-1)*(17-.15*e)-17)}function _e(r){var e,n=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:jr("qmfAnalysisStage: bufferPool is required"),t=n.qmfDelays;return function(r){var e=Er(r,t.lowBand,n.qmfWorkBuffers);t.lowBand=e.newDelay;var o=Er(e.lowBand,t.midBand,n.qmfWorkBuffers);t.midBand=o.newDelay;var a=n.qmfWorkBuffers.highBandDelay[e.highBand.length];a.set(t.highBand),a.set(e.highBand,t.highBand.length);var i=a.slice(0,e.highBand.length);return t.highBand=a.slice(e.highBand.length),{bands:[o.lowBand,o.highBand,i]}}}function De(r){var e,n,t=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:jr("blockSelectorStage: bufferPool is required"),o=null!==(n=null==r?void 0:r.options)&&void 0!==n?n:jr("blockSelectorStage: options is required");return function(r){var e=r.bands,n=[128,128,256],a=e.map(function(r,e){var a=function(r,e){var n=new Float32Array(e),t=new Float32Array(e),o=Math.min(r.length,e);n.set(r.subarray(0,o)),Lr.fft(n,t);for(var a=new Float32Array(e/2),i=0;i<e/2;i++)a[i]=Math.sqrt(n[i]*n[i]+t[i]*t[i]);return a}(r,n[e]),i=Se(a,t.transientDetection[e],o.transientThresholdLow);return t.transientDetection[e]=a,i*Math.max(e+1,2)});return{bands:e,blockModes:a}}}function qe(r){var e,n=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:jr("mdctStage: bufferPool is required"),t=n.mdctOverlap,o=[ee,ee,ne];function a(r,e,n,t,a){var u=D[e];return 0===n?function(r,e,n,t,o,a){var u=2===e?d:p,f=a.transformBuffers[u];f.fill(0),f.set(o,n.windowStart),i(r,o,n.size),f.set(r,n.windowStart+32);var l=t.transform(f,a.mdctBuffers);e>0&&(l=Ir(l,a.reversalBuffers));return l}(r,e,u,o[e],t,a):function(r,e,n,t,o){for(var a=1<<(256===n.size?3:2),u=new Float32Array(n.size),f=0;f<a;f++){var l=f*q,c=r.subarray(l,l+q),s=o.transformBuffers[64];s.fill(0),s.set(t,0),i(c,t,q),s.set(c,U);var v=re.transform(s,o.mdctBuffers);e>0&&(v=Ir(v,o.reversalBuffers)),u.set(v,l)}return u}(r,e,u,t,a)}function i(r,e,n){for(var t=n-U,o=0;o<U;o++){var a=r[t+o];e[o]=m[o]*a,r[t+o]=a*m[31-o]}}return function(r){var e=r.bands,o=r.blockModes,i=r.originalFrame,u=new Float32Array(512);return e.forEach(function(r,e){var i=a(r,e,o[e],t[e],n),f=function(r){return 0===r?0:1===r?128:256}(e);u.set(i,f)}),{bands:e,coefficients:u,blockModes:o,originalFrame:i}}}function Ue(r){var e,n,t=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:jr("quantizationStage: bufferPool is required"),o=null!==(n=null==r?void 0:r.options)&&void 0!==n?n:jr("quantizationStage: options is required");return function(r){for(var e=r.coefficients,n=r.blockModes,a=function(r,e){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,t=null!=n?n:[],o=[],a=0,i=0,u=0;u<3;u++){for(var f=a,l=2===u?256:128,s=u<2?v[u]:c.length,h=0===e[u]?y:b;i<s;){var p=c[i],d=h[i]-f,m=n?n[i]:new Float32Array(p);if(m.fill(0),d>=0&&d<l)for(var w=Math.min(d+p,l)-d,g=0;g<w;g++)m[g]=r[f+d+g];n||t.push(m),o.push(p),i++}a+=l}return{bfuData:t,bfuSizes:o,bfuCount:i}}(e,n,t.bfuData),i=a.bfuData,u=a.bfuSizes,f=a.bfuCount,l=ye(xe(e,o.normalizationDb),i,u,f),s=l.bfuCount,h=l.allocation,p=new Int32Array(s),d=[],m=0;m<s;m++){var w=i[m].subarray(0,u[m]),g=h[m],k=j[g];p[m]=ue(w);var S=fe(w,p[m],k);d.push(S)}return{nBfu:s,scaleFactorIndices:p,wordLengthIndices:h.slice(0,s),quantizedCoefficients:d,blockModes:n}}}function Le(){return Or({options:arguments.length>0&&void 0!==arguments[0]?arguments[0]:new yr,bufferPool:arguments.length>1&&void 0!==arguments[1]?arguments[1]:new ke},_e,De,qe,Ue)}function He(){return function(r){for(var e=new Float32Array(512),n=r.nBfu,t=r.scaleFactorIndices,o=r.wordLengthIndices,a=r.quantizedCoefficients,i=r.blockModes,u=0;u<n;u++){var f=j[o[u]],l=0;u>=v[0]&&(l=1),u>=v[1]&&(l=2);var c=0===i[l]?y[u]:b[u];if(f>0){var s=le(a[u],t[u],f);e.set(s,c)}}return{coefficients:e,blockModes:i}}}function We(r){var e,n=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:jr("imdctStage: bufferPool is required"),t=n.imdctOverlap,o=[oe,oe,ae];function a(r,e,n,t,a,i){return 0===n?function(r,e,n,t,o,a){var i=r;e>0&&(i=Ir(r,t.reversalBuffers));var u=a.transform(i,t.mdctBuffers),f=u.length/4,l=t.transformBuffers[512];l.fill(0);for(var c=0;c<o.size;c++)l[c]=u[f+c];var s=n.slice(2*o.size-L,2*o.size),v=ie(s.slice(0,L),l.slice(0,L),m);n.set(v,0);for(var h=0;h<L;h++)s[h]=l[L+h];for(var y=2===e?240:112,b=0;b<y;b++)n[32+b]=l[L+b];for(var p=0;p<L;p++)n[2*o.size-L+p]=l[o.size-L+p];return n.slice(0,o.size)}(r,e,t,a,i,o[e]):function(r,e,n,t,o){var a=1<<(256===o.size?3:2),i=t.transformBuffers[512];i.fill(0);for(var u=n.slice(2*o.size-L,2*o.size),f=0,l=0,c=0;c<a;c++){var s=r.slice(l,l+q);e>0&&(s=Ir(s,t.reversalBuffers));for(var v=te.transform(s,t.mdctBuffers),h=v.length/4,y=0;y<q;y++)i[f+y]=v[h+y];var b=ie(u.slice(0,L),i.slice(f,f+L),m);n.set(b,f);for(var p=0;p<L;p++)u[p]=i[f+L+p];f+=q,l+=q}for(var d=0;d<L;d++)n[2*o.size-L+d]=i[o.size-L+d];return n.slice(0,o.size)}(r,e,t,a,i)}return function(r){var e=r.coefficients,o=r.blockModes;return D.map(function(r,i){var u=function(r,e){var n=[0,128,256,512];return r.subarray(n[e],n[e+1])}(e,i);return a(u,i,o[i],t[i],n,r)})}}function Ge(r){var e,n=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:jr("qmfSynthesisStage: bufferPool is required"),t=n.qmfDelays;return function(r){var e=n.qmfWorkBuffers.highBandDelay[r[2].length];e.set(t.highBand),e.set(r[2]);var o=e.slice(0,2*r[0].length);t.highBand=e.slice(2*r[0].length);var a=_r(r[0],r[1],t.midBand,n.qmfWorkBuffers);t.midBand=a.newDelay;var i=_r(a.output,o,t.lowBand,n.qmfWorkBuffers);return t.lowBand=i.newDelay,i.output}}function Ne(){return Or({bufferPool:arguments.length>0&&void 0!==arguments[0]?arguments[0]:new ke},He,We,Ge)}function Ve(r){return Ve="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Ve(r)}function Re(r,e){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=Qe(r))||e&&r&&"number"==typeof r.length){n&&(r=n);var t=0,o=function(){};return{s:o,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(r){throw r},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return i=r.done,r},e:function(r){u=!0,a=r},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function $e(r,e,n,t,o,a,i){try{var u=r[a](i),f=u.value}catch(r){return void n(r)}u.done?e(f):Promise.resolve(f).then(t,o)}function Je(r){return function(){var e=this,n=arguments;return new Promise(function(t,o){var a=r.apply(e,n);function i(r){$e(a,t,o,i,u,"next",r)}function u(r){$e(a,t,o,i,u,"throw",r)}i(void 0)})}}function Ke(r,e){return function(r){if(Array.isArray(r))return r}(r)||function(r,e){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=n){var t,o,a,i,u=[],f=!0,l=!1;try{if(a=(n=n.call(r)).next,0===e){if(Object(n)!==n)return;f=!1}else for(;!(f=(t=a.call(n)).done)&&(u.push(t.value),u.length!==e);f=!0);}catch(r){l=!0,o=r}finally{try{if(!f&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return u}}(r,e)||Qe(r,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Qe(r,e){if(r){if("string"==typeof r)return Xe(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Xe(r,e):void 0}}function Xe(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function Ye(r){if(null!=r){var e=r["function"==typeof Symbol&&Symbol.iterator||"@@iterator"],n=0;if(e)return e.call(r);if("function"==typeof r.next)return r;if(!isNaN(r.length))return{next:function(){return r&&n>=r.length&&(r=void 0),{value:r&&r[n++],done:!r}}}}throw new TypeError(Ve(r)+" is not iterable")}function Ze(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var r,e,n="function"==typeof Symbol?Symbol:{},t=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function a(n,t,o,a){var f=t&&t.prototype instanceof u?t:u,l=Object.create(f.prototype);return rn(l,"_invoke",function(n,t,o){var a,u,f,l=0,c=o||[],s=!1,v={p:0,n:0,v:r,a:h,f:h.bind(r,4),d:function(e,n){return a=e,u=0,f=r,v.n=n,i}};function h(n,t){for(u=n,f=t,e=0;!s&&l&&!o&&e<c.length;e++){var o,a=c[e],h=v.p,y=a[2];n>3?(o=y===t)&&(f=a[(u=a[4])?5:(u=3,3)],a[4]=a[5]=r):a[0]<=h&&((o=n<2&&h<a[1])?(u=0,v.v=t,v.n=a[1]):h<y&&(o=n<3||a[0]>t||t>y)&&(a[4]=n,a[5]=t,v.n=y,u=0))}if(o||n>1)return i;throw s=!0,t}return function(o,c,y){if(l>1)throw TypeError("Generator is already running");for(s&&1===c&&h(c,y),u=c,f=y;(e=u<2?r:f)||!s;){a||(u?u<3?(u>1&&(v.n=-1),h(u,f)):v.n=f:v.v=f);try{if(l=2,a){if(u||(o="next"),e=a[o]){if(!(e=e.call(a,f)))throw TypeError("iterator result is not an object");if(!e.done)return e;f=e.value,u<2&&(u=0)}else 1===u&&(e=a.return)&&e.call(a),u<2&&(f=TypeError("The iterator does not provide a '"+o+"' method"),u=1);a=r}else if((e=(s=v.n<0)?f:n.call(t,v))!==i)break}catch(e){a=r,u=1,f=e}finally{l=1}}return{value:e,done:s}}}(n,o,a),!0),l}var i={};function u(){}function f(){}function l(){}e=Object.getPrototypeOf;var c=[][t]?e(e([][t]())):(rn(e={},t,function(){return this}),e),s=l.prototype=u.prototype=Object.create(c);function v(r){return Object.setPrototypeOf?Object.setPrototypeOf(r,l):(r.__proto__=l,rn(r,o,"GeneratorFunction")),r.prototype=Object.create(s),r}return f.prototype=l,rn(s,"constructor",l),rn(l,"constructor",f),f.displayName="GeneratorFunction",rn(l,o,"GeneratorFunction"),rn(s),rn(s,o,"Generator"),rn(s,t,function(){return this}),rn(s,"toString",function(){return"[object Generator]"}),(Ze=function(){return{w:a,m:v}})()}function rn(r,e,n,t){var o=Object.defineProperty;try{o({},"",{})}catch(r){o=0}rn=function(r,e,n,t){if(e)o?o(r,e,{value:n,enumerable:!t,configurable:!t,writable:!t}):r[e]=n;else{var a=function(e,n){rn(r,e,function(r){return this._invoke(e,n,r)})};a("next",0),a("throw",1),a("return",2)}},rn(r,e,n,t)}function en(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,nn(t.key),t)}}function nn(r){var e=function(r,e){if("object"!=Ve(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=Ve(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==Ve(e)?e:e+""}function tn(r){return function(){return new on(r.apply(this,arguments))}}function on(r){var e,n;function t(e,n){try{var a=r[e](n),i=a.value,u=i instanceof fn;Promise.resolve(u?i.v:i).then(function(n){if(u){var f="return"===e?"return":"next";if(!i.k||n.done)return t(f,n);n=r[f](n).value}o(a.done?"return":"normal",n)},function(r){t("throw",r)})}catch(r){o("throw",r)}}function o(r,o){switch(r){case"return":e.resolve({value:o,done:!0});break;case"throw":e.reject(o);break;default:e.resolve({value:o,done:!1})}(e=e.next)?t(e.key,e.arg):n=null}this._invoke=function(r,o){return new Promise(function(a,i){var u={key:r,arg:o,resolve:a,reject:i,next:null};n?n=n.next=u:(e=n=u,t(r,o))})},"function"!=typeof r.return&&(this.return=void 0)}function an(r){return new fn(r,0)}function un(r){var e={},n=!1;function t(e,t){return n=!0,t=new Promise(function(n){n(r[e](t))}),{done:!1,value:new fn(t,1)}}return e["undefined"!=typeof Symbol&&Symbol.iterator||"@@iterator"]=function(){return this},e.next=function(r){return n?(n=!1,r):t("next",r)},"function"==typeof r.throw&&(e.throw=function(r){if(n)throw n=!1,r;return t("throw",r)}),"function"==typeof r.return&&(e.return=function(r){return n?(n=!1,r):t("return",r)}),e}function fn(r,e){this.v=r,this.k=e}function ln(r){var e,n,t,o=2;for("undefined"!=typeof Symbol&&(n=Symbol.asyncIterator,t=Symbol.iterator);o--;){if(n&&null!=(e=r[n]))return e.call(r);if(t&&null!=(e=r[t]))return new cn(e.call(r));n="@@asyncIterator",t="@@iterator"}throw new TypeError("Object is not async iterable")}function cn(r){function e(r){if(Object(r)!==r)return Promise.reject(new TypeError(r+" is not an object."));var e=r.done;return Promise.resolve(r.value).then(function(r){return{value:r,done:e}})}return cn=function(r){this.s=r,this.n=r.next},cn.prototype={s:null,n:null,next:function(){return e(this.n.apply(this.s,arguments))},return:function(r){var n=this.s.return;return void 0===n?Promise.resolve({value:r,done:!0}):e(n.apply(this.s,arguments))},throw:function(r){var n=this.s.return;return void 0===n?Promise.reject(r):e(n.apply(this.s,arguments))}},new cn(r)}on.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},on.prototype.next=function(r){return this._invoke("next",r)},on.prototype.throw=function(r){return this._invoke("throw",r)},on.prototype.return=function(r){return this._invoke("return",r)};var sn=function(){function r(){!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r)}return function(r,e,n){return e&&en(r.prototype,e),n&&en(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}(r,null,[{key:"encodeStream",value:function(e){return tn(function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Ze().m(function t(){var o,a,i,u;return Ze().w(function(t){for(;;)switch(t.n){case 0:if(o=n.channelCount,a=void 0===o?1:o,i=n.onProgress,u=n.encoderOptions,1!==a){t.n=2;break}return t.d(Ye(un(ln(r._encodeMonoStream(e,i,u)))),1);case 1:case 3:t.n=5;break;case 2:if(2!==a){t.n=4;break}return t.d(Ye(un(ln(r._encodeStereoStream(e,i,u)))),3);case 4:throw new Error("Unsupported channel count: ".concat(a));case 5:return t.a(2)}},t)})()}).apply(this,arguments)}},{key:"_encodeMonoStream",value:function(r,e,n){return tn(Ze().m(function t(){var o,a,i,u,f,l,c,s,v,h,y;return Ze().w(function(t){for(;;)switch(t.n){case 0:o=n||new yr,a=Le(o),i=0,u=!1,f=!1,t.p=1,c=ln(Tr(r));case 2:return t.n=3,an(c.next());case 3:if(!(u=!(s=t.v).done)){t.n=6;break}return v=s.value,h=a(v),t.n=4,h;case 4:e&&e(i++);case 5:u=!1,t.n=2;break;case 6:t.n=8;break;case 7:t.p=7,y=t.v,f=!0,l=y;case 8:if(t.p=8,t.p=9,!u||null==c.return){t.n=10;break}return t.n=10,an(c.return());case 10:if(t.p=10,!f){t.n=11;break}throw l;case 11:return t.f(10);case 12:return t.f(8);case 13:return t.a(2)}},t,null,[[9,,10,12],[1,7,8,13]])}))()}},{key:"_encodeStereoStream",value:function(r,e,n){return tn(Ze().m(function t(){var o,a,i,u,f,l,c,s,v,h,y,b,p,d,m;return Ze().w(function(t){for(;;)switch(t.n){case 0:o=n||new yr,a=Le(o),i=Le(o),u=0,f=!1,l=!1,t.p=1,s=ln(zr(r));case 2:return t.n=3,an(s.next());case 3:if(!(f=!(v=t.v).done)){t.n=7;break}return h=Ke(v.value,2),y=h[0],b=h[1],p=a(y),d=i(b),t.n=4,p;case 4:return t.n=5,d;case 5:e&&e(u++);case 6:f=!1,t.n=2;break;case 7:t.n=9;break;case 8:t.p=8,m=t.v,l=!0,c=m;case 9:if(t.p=9,t.p=10,!f||null==s.return){t.n=11;break}return t.n=11,an(s.return());case 11:if(t.p=11,!l){t.n=12;break}throw c;case 12:return t.f(11);case 13:return t.f(9);case 14:return t.a(2)}},t,null,[[10,,11,13],[1,8,9,14]])}))()}},{key:"decodeStream",value:function(e){return tn(function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Ze().m(function t(){var o,a,i;return Ze().w(function(t){for(;;)switch(t.n){case 0:if(o=n.channelCount,a=void 0===o?1:o,i=n.onProgress,1!==a){t.n=2;break}return t.d(Ye(un(ln(r._decodeMonoStream(e,i)))),1);case 1:case 3:t.n=5;break;case 2:if(2!==a){t.n=4;break}return t.d(Ye(un(ln(r._decodeStereoStream(e,i)))),3);case 4:throw new Error("Unsupported channel count: ".concat(a));case 5:return t.a(2)}},t)})()}).apply(this,arguments)}},{key:"_decodeMonoStream",value:function(r,e){return tn(Ze().m(function n(){var t,o,a;return Ze().w(function(n){for(;;)switch(n.n){case 0:return t=Ne(),o=0,a=function(){var n=tn(Ze().m(function n(){var a,i,u,f,l,c,s,v;return Ze().w(function(n){for(;;)switch(n.n){case 0:a=!1,i=!1,n.p=1,f=ln(r);case 2:return n.n=3,an(f.next());case 3:if(!(a=!(l=n.v).done)){n.n=6;break}return c=l.value,s=t(c),n.n=4,s;case 4:e&&e(o++);case 5:a=!1,n.n=2;break;case 6:n.n=8;break;case 7:n.p=7,v=n.v,i=!0,u=v;case 8:if(n.p=8,n.p=9,!a||null==f.return){n.n=10;break}return n.n=10,an(f.return());case 10:if(n.p=10,!i){n.n=11;break}throw u;case 11:return n.f(10);case 12:return n.f(8);case 13:return n.a(2)}},n,null,[[9,,10,12],[1,7,8,13]])}));return function(){return n.apply(this,arguments)}}(),n.d(Ye(un(ln(Pr(a())))),1);case 1:return n.a(2)}},n)}))()}},{key:"_decodeStereoStream",value:function(e,n){return tn(Ze().m(function t(){var o,a,i,u;return Ze().w(function(t){for(;;)switch(t.n){case 0:return o=Ne(),a=Ne(),i=0,u=function(){var t=tn(Ze().m(function t(){var u,f,l,c,s,v,h,y,b,p,d,m,w,g,k;return Ze().w(function(t){for(;;)switch(t.n){case 0:u=null,f=!0,l=!1,c=!1,t.p=1,v=ln(e);case 2:return t.n=3,an(v.next());case 3:if(!(l=!(h=t.v).done)){t.n=8;break}if(y=h.value,!f){t.n=4;break}u=y,t.n=6;break;case 4:return b=y,p=o(u),d=a(b),t.n=5,[p,d];case 5:n&&n(i++);case 6:f=!f;case 7:l=!1,t.n=2;break;case 8:t.n=10;break;case 9:t.p=9,k=t.v,c=!0,s=k;case 10:if(t.p=10,t.p=11,!l||null==v.return){t.n=12;break}return t.n=12,an(v.return());case 12:if(t.p=12,!c){t.n=13;break}throw s;case 13:return t.f(12);case 14:return t.f(10);case 15:if(f||!u){t.n=17;break}return m=r._createDummyFrame(),w=o(u),g=a(m),t.n=16,[w,g];case 16:n&&n(i++);case 17:return t.a(2)}},t,null,[[11,,12,14],[1,9,10,15]])}));return function(){return t.apply(this,arguments)}}(),t.d(Ye(un(ln(Cr(u())))),1);case 1:return t.a(2)}},t)}))()}},{key:"frameBufferToFrames",value:function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a;return Ze().m(function n(){var t,o,a,i,u,f,l,c,s,v,h,y,b,p,d,m;return Ze().w(function(n){for(;;)switch(n.n){case 0:if(1!==(t=r.length)){n.n=4;break}o=Ke(r,1),a=o[0],i=0;case 1:if(!(i<a.length)){n.n=3;break}for(u=new Float32Array(e),f=Math.min(i+e,a.length),l=0;l<f-i;l++)u[l]=a[i+l];return n.n=2,u;case 2:i+=e,n.n=1;break;case 3:n.n=9;break;case 4:if(2!==t){n.n=8;break}c=Ke(r,2),s=c[0],v=c[1],h=Math.max(s.length,v.length),y=0;case 5:if(!(y<h)){n.n=7;break}for(b=new Float32Array(e),p=new Float32Array(e),d=Math.min(y+e,h),m=0;m<d-y;m++)b[m]=y+m<s.length?s[y+m]:0,p[m]=y+m<v.length?v[y+m]:0;return n.n=6,[b,p];case 6:y+=e,n.n=5;break;case 7:n.n=9;break;case 8:throw new Error("Unsupported channel count: ".concat(t));case 9:return n.a(2)}},n)})()}},{key:"collectFrames",value:(t=Je(Ze().m(function r(e){var n,t,o,a,i,u,f,l;return Ze().w(function(r){for(;;)switch(r.n){case 0:n=[],t=!1,o=!1,r.p=1,i=ln(e);case 2:return r.n=3,i.next();case 3:if(!(t=!(u=r.v).done)){r.n=5;break}f=u.value,n.push(f);case 4:t=!1,r.n=2;break;case 5:r.n=7;break;case 6:r.p=6,l=r.v,o=!0,a=l;case 7:if(r.p=7,r.p=8,!t||null==i.return){r.n=9;break}return r.n=9,i.return();case 9:if(r.p=9,!o){r.n=10;break}throw a;case 10:return r.f(9);case 11:return r.f(7);case 12:return r.a(2,n)}},r,null,[[8,,9,11],[1,6,7,12]])})),function(r){return t.apply(this,arguments)})},{key:"_createDummyFrame",value:function(){return{nBfu:0,blockModes:[0,0,0],scaleFactorIndices:new Int32Array(0),wordLengthIndices:new Int32Array(0),quantizedCoefficients:[]}}},{key:"createAeaBlob",value:(n=Je(Ze().m(function r(e){var n,t,o,a,i,u,f,l,c,s,v,h,y,b,p,d,m,w,g,k,S=arguments;return Ze().w(function(r){for(;;)switch(r.n){case 0:t=(n=S.length>1&&void 0!==S[1]?S[1]:{}).title,o=void 0===t?"encoded by atrac1.js":t,a=n.channelCount,i=void 0===a?1:a,u=[],f=!1,l=!1,r.p=1,s=ln(e);case 2:return r.n=3,s.next();case 3:if(!(f=!(v=r.v).done)){r.n=5;break}h=v.value,u.push(tr(h));case 4:f=!1,r.n=2;break;case 5:r.n=7;break;case 6:r.p=6,k=r.v,l=!0,c=k;case 7:if(r.p=7,r.p=8,!f||null==s.return){r.n=9;break}return r.n=9,s.return();case 9:if(r.p=9,!l){r.n=10;break}throw c;case 10:return r.f(9);case 11:return r.f(7);case 12:for(y=ar.createHeader(o,u.length,i),b=y.length+u.reduce(function(r,e){return r+e.length},0),(p=new Uint8Array(b)).set(y,0),d=y.length,m=0,w=u;m<w.length;m++)g=w[m],p.set(g,d),d+=g.length;return r.a(2,new Blob([p],{type:"application/octet-stream"}))}},r,null,[[8,,9,11],[1,6,7,12]])})),function(r){return n.apply(this,arguments)})},{key:"createWavBlob",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:o,a=Array.isArray(e)?e:[e];if(1===n)return r._createMonoWavBlob(a,t);if(2===n)return r._createStereoWavBlob(a,t);throw new Error("Unsupported channel count: ".concat(n))}},{key:"_createMonoWavBlob",value:function(e,n){var t=e.reduce(function(r,e){return r+e.length},0),o=new ArrayBuffer(44+2*t),a=new DataView(o);r._writeWavHeader(a,t,1,n);var i,u=44,f=Re(e);try{for(f.s();!(i=f.n()).done;)for(var l=i.value,c=0;c<l.length;c++){var s=Math.max(-1,Math.min(1,l[c]));a.setInt16(u,s<0?s*W:s*H,!0),u+=2}}catch(r){f.e(r)}finally{f.f()}return new Blob([o],{type:"audio/wav"})}},{key:"_createStereoWavBlob",value:function(e,n){var t=e.reduce(function(r,e){var n=Ke(e,2),t=n[0],o=n[1];return r+Math.max(t.length,o.length)},0),o=new ArrayBuffer(44+2*t*2),a=new DataView(o);r._writeWavHeader(a,t,2,n);var i,u=44,f=Re(e);try{for(f.s();!(i=f.n()).done;)for(var l=Ke(i.value,2),c=l[0],s=l[1],v=Math.max(c.length,s.length),h=0;h<v;h++){var y=h<c.length?c[h]:0,b=h<s.length?s[h]:0,p=Math.max(-1,Math.min(1,y)),d=Math.max(-1,Math.min(1,b));a.setInt16(u,p<0?p*W:p*H,!0),u+=2,a.setInt16(u,d<0?d*W:d*H,!0),u+=2}}catch(r){f.e(r)}finally{f.f()}return new Blob([o],{type:"audio/wav"})}},{key:"_writeWavHeader",value:function(r,e,n,t){var o=t*n*2,a=2*n,i=e*a,u=36+i,f=0,l=function(e,n){for(var t=0;t<n.length;t++)r.setUint8(e+t,n.charCodeAt(t))};l(f,"RIFF"),f+=4,r.setUint32(f,u,!0),l(f+=4,"WAVE"),l(f+=4,"fmt "),f+=4,r.setUint32(f,16,!0),f+=4,r.setUint16(f,1,!0),f+=2,r.setUint16(f,n,!0),f+=2,r.setUint32(f,t,!0),f+=4,r.setUint32(f,o,!0),f+=4,r.setUint16(f,a,!0),f+=2,r.setUint16(f,16,!0),l(f+=2,"data"),f+=4,r.setUint32(f,i,!0)}},{key:"parseAeaBlob",value:(e=Je(Ze().m(function r(e){var n,t,o,a,i,l;return Ze().w(function(r){for(;;)switch(r.n){case 0:return r.n=1,e.arrayBuffer();case 1:for(n=r.v,t=new Uint8Array(n.slice(0,u)),o=ar.parseHeader(t),a=[],i=u;i<n.byteLength;i+=f)(l=new Uint8Array(n.slice(i,i+f))).length===f&&a.push(l);return r.a(2,{info:o,frameData:a})}},r)})),function(r){return e.apply(this,arguments)})},{key:"deserializedFrameStream",value:Ze().m(function r(e){var n,t,o,a;return Ze().w(function(r){for(;;)switch(r.n){case 0:n=Re(e),r.p=1,n.s();case 2:if((t=n.n()).done){r.n=4;break}return o=t.value,r.n=3,or(o);case 3:r.n=2;break;case 4:r.n=6;break;case 5:r.p=5,a=r.v,n.e(a);case 6:return r.p=6,n.f(),r.f(6);case 7:return r.a(2)}},r,null,[[1,5,6,7]])})},{key:"assemblePcmFrames",value:function(r,e){if(1===e){var n,t=r.reduce(function(r,e){return r+e.length},0),o=new Float32Array(t),a=0,i=Re(r);try{for(i.s();!(n=i.n()).done;){var u=n.value;o.set(u,a),a+=u.length}}catch(r){i.e(r)}finally{i.f()}return o}if(2===e){var f,l=r.reduce(function(r,e){var n=Ke(e,2),t=n[0],o=n[1];return r+Math.max(t.length,o.length)},0),c=new Float32Array(2*l),s=0,v=Re(r);try{for(v.s();!(f=v.n()).done;)for(var h=Ke(f.value,2),y=h[0],b=h[1],p=Math.max(y.length,b.length),d=0;d<p;d++)c[2*s]=d<y.length?y[d]:0,c[2*s+1]=d<b.length?b[d]:0,s++}catch(r){v.e(r)}finally{v.f()}return c}throw new Error("Unsupported channel count: ".concat(e))}}]);var e,n,t}();function vn(r){return vn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},vn(r)}function hn(r,e){var n=Object.keys(r);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(r);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})),n.push.apply(n,t)}return n}function yn(r){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?hn(Object(n),!0).forEach(function(e){bn(r,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):hn(Object(n)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(n,e))})}return r}function bn(r,e,n){return(e=function(r){var e=function(r,e){if("object"!=vn(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=vn(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==vn(e)?e:e+""}(e))in r?Object.defineProperty(r,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):r[e]=n,r}function pn(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var r,e,n="function"==typeof Symbol?Symbol:{},t=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function a(n,t,o,a){var f=t&&t.prototype instanceof u?t:u,l=Object.create(f.prototype);return dn(l,"_invoke",function(n,t,o){var a,u,f,l=0,c=o||[],s=!1,v={p:0,n:0,v:r,a:h,f:h.bind(r,4),d:function(e,n){return a=e,u=0,f=r,v.n=n,i}};function h(n,t){for(u=n,f=t,e=0;!s&&l&&!o&&e<c.length;e++){var o,a=c[e],h=v.p,y=a[2];n>3?(o=y===t)&&(f=a[(u=a[4])?5:(u=3,3)],a[4]=a[5]=r):a[0]<=h&&((o=n<2&&h<a[1])?(u=0,v.v=t,v.n=a[1]):h<y&&(o=n<3||a[0]>t||t>y)&&(a[4]=n,a[5]=t,v.n=y,u=0))}if(o||n>1)return i;throw s=!0,t}return function(o,c,y){if(l>1)throw TypeError("Generator is already running");for(s&&1===c&&h(c,y),u=c,f=y;(e=u<2?r:f)||!s;){a||(u?u<3?(u>1&&(v.n=-1),h(u,f)):v.n=f:v.v=f);try{if(l=2,a){if(u||(o="next"),e=a[o]){if(!(e=e.call(a,f)))throw TypeError("iterator result is not an object");if(!e.done)return e;f=e.value,u<2&&(u=0)}else 1===u&&(e=a.return)&&e.call(a),u<2&&(f=TypeError("The iterator does not provide a '"+o+"' method"),u=1);a=r}else if((e=(s=v.n<0)?f:n.call(t,v))!==i)break}catch(e){a=r,u=1,f=e}finally{l=1}}return{value:e,done:s}}}(n,o,a),!0),l}var i={};function u(){}function f(){}function l(){}e=Object.getPrototypeOf;var c=[][t]?e(e([][t]())):(dn(e={},t,function(){return this}),e),s=l.prototype=u.prototype=Object.create(c);function v(r){return Object.setPrototypeOf?Object.setPrototypeOf(r,l):(r.__proto__=l,dn(r,o,"GeneratorFunction")),r.prototype=Object.create(s),r}return f.prototype=l,dn(s,"constructor",l),dn(l,"constructor",f),f.displayName="GeneratorFunction",dn(l,o,"GeneratorFunction"),dn(s),dn(s,o,"Generator"),dn(s,t,function(){return this}),dn(s,"toString",function(){return"[object Generator]"}),(pn=function(){return{w:a,m:v}})()}function dn(r,e,n,t){var o=Object.defineProperty;try{o({},"",{})}catch(r){o=0}dn=function(r,e,n,t){if(e)o?o(r,e,{value:n,enumerable:!t,configurable:!t,writable:!t}):r[e]=n;else{var a=function(e,n){dn(r,e,function(r){return this._invoke(e,n,r)})};a("next",0),a("throw",1),a("return",2)}},dn(r,e,n,t)}function mn(r,e,n,t,o,a,i){try{var u=r[a](i),f=u.value}catch(r){return void n(r)}u.done?e(f):Promise.resolve(f).then(t,o)}function wn(r){return function(){var e=this,n=arguments;return new Promise(function(t,o){var a=r.apply(e,n);function i(r){mn(a,t,o,i,u,"next",r)}function u(r){mn(a,t,o,i,u,"throw",r)}i(void 0)})}}function gn(r,e,n){return kn.apply(this,arguments)}function kn(){return(kn=wn(pn().m(function r(e,n,t){var o,a,i,u,f,l,c;return pn().w(function(r){for(;;)switch(r.n){case 0:return t=null!=t?t:"encoded by carta1",r.p=1,o=sn.frameBufferToFrames(e),a=e.length,i=new yr(n),u=sn.encodeStream(o,{channelCount:a,encoderOptions:i}),r.n=2,sn.collectFrames(u);case 2:return f=r.v,r.n=3,sn.createAeaBlob(f,{title:t,channelCount:a});case 3:return l=r.v,r.a(2,{aeaBlob:l});case 4:throw r.p=4,c=r.v,console.error("Worker encode error:",c),c;case 5:return r.a(2)}},r,null,[[1,4]])}))).apply(this,arguments)}function Sn(){return(new yr).toObject()}function An(r){return Mn.apply(this,arguments)}function Mn(){return(Mn=wn(pn().m(function r(e){var n,t,a,i,u,f,l,c,s;return pn().w(function(r){for(;;)switch(r.n){case 0:return n=e.header,t=e.aeaData,(a=e.info)?i=yn({sampleRate:o},a):n?(u=ar.parseHeader(n),i=yn({sampleRate:o},u)):i={channelCount:2,sampleRate:o},f=sn.deserializedFrameStream(t),l=sn.decodeStream(f,{channelCount:i.channelCount}),r.n=1,sn.collectFrames(l);case 1:return c=r.v,s=sn.createWavBlob(c,i.channelCount,i.sampleRate),r.a(2,{wavBlob:s,info:i})}},r)}))).apply(this,arguments)}self.onmessage=function(){var r=wn(pn().m(function r(e){var n,t,o,a,i,u,f,l,c,s,v;return pn().w(function(r){for(;;)switch(r.n){case 0:n=e.data,t=n.jobId,o=n.type,a=n.pcmData,i=n.aea,u=n.options,f=n.title,l=n.blob,r.p=1,s=o,r.n="encode"===s?2:"decode"===s?4:"parseAea"===s?6:"getEncoderOptions"===s?8:9;break;case 2:return r.n=3,gn(a,u,f);case 3:return c=r.v,r.a(3,10);case 4:return r.n=5,An(i);case 5:return c=r.v,r.a(3,10);case 6:return r.n=7,sn.parseAeaBlob(l);case 7:return c=r.v,r.a(3,10);case 8:return c=Sn(),r.a(3,10);case 9:throw new Error("Unknown worker message type: ".concat(o));case 10:self.postMessage({jobId:t,result:c}),r.n=12;break;case 11:r.p=11,v=r.v,console.error("Worker error:",v),self.postMessage({jobId:t,error:v.message});case 12:return r.a(2)}},r,null,[[1,11]])}));return function(e){return r.apply(this,arguments)}}();var jn=self;for(var On in r)jn[On]=r[On];r.__esModule&&Object.defineProperty(jn,"__esModule",{value:!0});
1
+ var r={};function e(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}var n,t,o=44100,a=512,i=new Uint8Array([0,8,0,0]),u=2048,f=212,l=52,c=new Int32Array([8,8,8,8,4,4,4,4,8,8,8,8,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,9,9,9,9,10,10,10,10,12,12,12,12,12,12,12,12,20,20,20,20,20,20,20,20]),s=new Int32Array([20,28,32,36,40,44,48,52]),v=new Int32Array([20,36,52]),h=new Float32Array([172.3,516.8,861.3,1205.9,1464.3,1636.5,1808.8,1981.1,2239.5,2584,2928.5,3273,3574.5,3832.9,4091.3,4349.7,4608.1,4866.5,5124.9,5383.3,5641.7,5900.1,6158.5,6416.9,6696.8,6998.3,7299.8,7601.2,7945.8,8333.3,8720.9,9108.5,9517.7,9948.3,10379,10809.7,11283.4,11800.2,12317,12833.8,13350.6,13867.4,14384.2,14901,15590,16451.4,17312.7,18174,19035.4,19896.7,20758,21619.3]),y=new Int32Array([0,8,16,24,32,36,40,44,48,56,64,72,80,86,92,98,104,110,116,122,128,134,140,146,152,159,166,173,180,189,198,207,216,226,236,246,256,268,280,292,304,316,328,340,352,372,392,412,432,452,472,492]),b=new Int32Array([0,32,64,96,8,40,72,104,12,44,76,108,20,52,84,116,26,58,90,122,128,160,192,224,134,166,198,230,141,173,205,237,150,182,214,246,256,288,320,352,384,416,448,480,268,300,332,364,396,428,460,492]),d=256,p=512,m=function(){for(var r=new Float32Array(32),e=0;e<32;e++)r[e]=Math.sin((e+.5)*Math.PI/64);return r}(),w=46,g=new Float32Array([-1461907e-11,-9205479e-11,-56157569e-12,.00030117269,.0002422519,-.00085293897,-.0005205574,.0020340169,.00078333891,-.0042153862,-.00075614988,.0078402944,-61169922e-12,-.01344162,.0024626821,.021736089,-.007801671,-.034090221,.01880949,.054326009,-.043596379,-.099384367,.13207909,.46424159]),k=function(){for(var r=new Float32Array(48),e=0;e<24;e++)r[e]=2*g[e],r[47-e]=2*g[e];return r}(),S=function(){for(var r=new Float32Array(24),e=0;e<24;e++)r[e]=k[2*e];return r}(),A=function(){for(var r=new Float32Array(24),e=0;e<24;e++)r[e]=k[2*e+1];return r}(),j=function(){for(var r=new Float32Array(l),e=0;e<l;e++){var n=h[e];r[e]=13*Math.atan(76e-5*n)+3.5*Math.atan(Math.pow(n/7500,2))}return r}(),O=(function(){for(var r=new Float32Array(2704),e=0;e<l;e++)for(var n=0;n<l;n++){var t=j[e]-j[n],o=-100;t>=-3&&t<-1?o=17*(t+3)-70:t>=-1&&t<0?o=36*t:t>=0&&t<1?o=-27*t:t>=1&&t<8&&(o=4*-(t-1)-27),r[e*l+n]=o}}(),-200),M=2048,P=1024,F=1025,T=function(){for(var r=1024,e=2047,n=512,t=new Uint16Array(1025),o=new Uint16Array(1025),a=new Float32Array(1025),i=0;i<=r;i++){var u=1.9990234375*i,f=0|u,l=f;t[i]=l<r?l<n?l:1023-(l-n):e-(l-r);var c=f+1;o[i]=c>=M?t[i]:c<r?c<n?c:1023-(c-n):e-(c-r),a[i]=u-f}return[t,o,a]}(),B=(t=3,function(r){if(Array.isArray(r))return r}(n=T)||function(r,e){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=n){var t,o,a,i,u=[],f=!0,l=!1;try{if(a=(n=n.call(r)).next,0===e){if(Object(n)!==n)return;f=!1}else for(;!(f=(t=a.call(n)).done)&&(u.push(t.value),u.length!==e);f=!0);}catch(r){l=!0,o=r}finally{try{if(!f&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return u}}(n,t)||function(r,n){if(r){if("string"==typeof r)return e(r,n);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?e(r,n):void 0}}(n,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),x=B[0],I=B[1],C=B[2],z=[{size:128,windowStart:48},{size:128,windowStart:48},{size:256,windowStart:112}],E=32,D=32,_=16,q=32767,U=32768,L=10/Math.LN10,H=Math.LN10/10,W=new Uint8Array([0,1,2,4,5,7,8,10,12,14,16,19,22,26,31,36,44,49,54,60,67,74,80,92,105]),G=[[1,.85,13.87],[2,1.694,2.85],[3,2.525,-1.28],[4,3.337,-3.5],[5,4.124,-4.9],[6,4.882,-5.89],[7,5.608,-6.63],[8,6.301,-7.21],[9,6.959,-7.68],[10,7.581,-8.08],[11,8.169,-8.43],[12,8.723,-8.75],[13,9.244,-9.05],[14,9.734,-9.33],[15,10.195,-9.61],[16,10.629,-9.89],[17,11.037,-10.17],[18,11.421,-10.47],[19,11.783,-10.77],[20,12.125,-11.1],[21,12.448,-11.44],[22,12.753,-11.79],[23,13.042,-12.17],[24,13.317,-12.56],[25,13.577,-12.96],[26,13.825,-13.38],[27,14.062,-13.79],[28,14.288,-14.21],[29,14.504,-14.63],[30,14.711,-15.03],[31,14.909,-15.41],[32,15.1,-15.77],[33,15.283,-16.09],[34,15.46,-16.37],[35,15.631,-16.6],[36,15.795,-16.78],[37,15.955,-16.91],[38,16.11,-16.97],[39,16.26,-16.98],[40,16.405,-16.92],[41,16.547,-16.81],[42,16.685,-16.65],[43,16.82,-16.43],[44,16.951,-16.17],[45,17.079,-15.87],[46,17.204,-15.54],[47,17.327,-15.19],[48,17.447,-14.82],[50,17.68,-14.06],[52,17.904,-13.32],[54,18.121,-12.64],[56,18.331,-12.04],[58,18.534,-11.53],[60,18.73,-11.11],[62,18.922,-10.77],[64,19.108,-10.49],[66,19.288,-10.26],[68,19.464,-10.07],[70,19.635,-9.89],[72,19.801,-9.72],[74,19.963,-9.54],[76,20.12,-9.37],[78,20.273,-9.18],[80,20.421,-8.97],[82,20.565,-8.75],[84,20.705,-8.51],[86,20.84,-8.26],[88,20.971,-7.98],[90,21.099,-7.68],[92,21.222,-7.36],[94,21.341,-7.02],[96,21.457,-6.65],[100,21.676,-5.85],[104,21.882,-4.93],[108,22.074,-3.9],[112,22.253,-2.75],[116,22.42,-1.46],[120,22.575,-.03],[124,22.721,1.56],[128,22.857,3.31],[132,22.984,5.23],[136,23.102,7.34],[140,23.213,9.64],[144,23.317,12.15],[148,23.414,14.88],[152,23.506,17.84],[156,23.592,21.05],[160,23.673,24.52],[164,23.749,28.25],[168,23.821,32.27],[172,23.888,36.59],[176,23.952,41.22],[180,24.013,46.18],[184,24.07,51.49],[188,24.124,56],[192,24.176,56],[196,24.225,56],[200,24.271,56],[204,24.316,56],[208,24.358,56],[212,24.398,56],[216,24.436,56],[220,24.473,56],[224,24.508,56],[228,24.541,56],[232,24.573,56]],V=W.map(function(r){return G[r][0]-1}),N=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,47,48,48,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,58,58,59,59,60,60,61,61,62,62,63,63,64,64,65,65,66,66,67,67,68,68,69,69,70,70,71,71,71,71,72,72,72,72,73,73,73,73,74,74,74,74,75,75,75,75,76,76,76,76,77,77,77,77,78,78,78,78,79,79,79,79,80,80,80,80,81,81,81,81,82,82,82,82,83,83,83,83,84,84,84,84,85,85,85,85,86,86,86,86,87,87,87,87,88,88,88,88,89,89,89,89,90,90,90,90,91,91,91,91,92,92,92,92,93,93,93,93,94,94,94,94,95,95,95,95,96,96,96,96,97,97,97,97,98,98,98,98,99,99,99,99,100,100,100,100,101,101,101,101,102,102,102,102,103,103,103,103,104,104,104,104,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105]),R=Int8Array.of(-2,2),$=Int8Array.of(-3,-2,2,3),J=Int8Array.of(-6,-5,-4,-3,-2,2,3,4,5,6),K=function(){for(var r=new Array(l),e=V,n=0;n<l;n++){for(var t=Math.round(h[n]/21.533203125),o=0,a=e.length-1;o<a;){var i=o+a+1>>1;e[i]<=t?o=i:a=i-1}var u=o,f=Math.min(u+1,e.length-1),c=e[u],s=1/(e[f]-c||1);r[n]={band:u,next:f,x0:c,y0:u,y1:f,tInv:s}}return r}(),Q=15,X=new Int32Array([0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),Y=function(){var r=new Float32Array(16);r[0]=1;for(var e=1;e<=15;e++){var n=(1<<X[e]-1)-1;r[e]=1/(12*n*n)}return r}(),Z=function(){for(var r=new Float32Array(15),e=0;e<15;e++)r[e]=10*Math.log10(Y[e+1]/(Y[e]||1));return r}(),rr=function(){for(var r=new Float32Array(64),e=0;e<64;e++)r[e]=Math.pow(2,e/3-21);return r}();function er(r,e,n,t){if(0!==t){var o=Math.floor(e/8),a=e%8;n&=(1<<t)-1;for(var i=0;i<t&&o<r.length;){var u=8-a,f=Math.min(t-i,u),l=n>>t-i-f&(1<<f)-1,c=(1<<f)-1<<u-f;r[o]=r[o]&~c|l<<u-f,i+=f,o++,a=0}}}function nr(r,e,n){if(0===n)return 0;for(var t=Math.floor(e/8),o=e%8,a=0,i=0;i<n&&t<r.length;){var u=8-o,f=Math.min(n-i,u),l=(1<<f)-1;a=a<<f|r[t]>>u-f&l,i+=f,t++,o=0}return a}function tr(r,e,n){var t=nr(r,e,n);return t>=1<<n-1?t-(1<<n):t}function or(r){return or="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},or(r)}function ar(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,ir(t.key),t)}}function ir(r){var e=function(r,e){if("object"!=or(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=or(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==or(e)?e:e+""}function ur(r,e){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=function(r,e){if(r){if("string"==typeof r)return fr(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?fr(r,e):void 0}}(r))||e&&r&&"number"==typeof r.length){n&&(r=n);var t=0,o=function(){};return{s:o,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(r){throw r},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return i=r.done,r},e:function(r){u=!0,a=r},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function fr(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function lr(r){var e=new Uint8Array(f),n=new DataView(e.buffer),t=s.indexOf(r.nBfu),o=2-r.blockModes[0]<<14|2-r.blockModes[1]<<12|3-r.blockModes[2]<<10|t<<5;n.setUint16(0,o,!1);for(var a=16,i=0;i<r.nBfu;i++)er(e,a,r.wordLengthIndices[i],4),a+=4;for(var u=0;u<r.nBfu;u++)er(e,a,r.scaleFactorIndices[u],6),a+=6;for(var l=0;l<r.nBfu;l++){var c=X[r.wordLengthIndices[l]];if(c>0){var v,h=ur(r.quantizedCoefficients[l]);try{for(h.s();!(v=h.n()).done;){var y=v.value;er(e,a,y<0?y+(1<<c):y,c),a+=c}}catch(r){h.e(r)}finally{h.f()}}}return e[209]=0,e[210]=0,e[211]=0,e}function cr(r){if(r.length!==f)throw new Error("Frame must be ".concat(f," bytes"));for(var e=new DataView(r.buffer,r.byteOffset,r.byteLength).getUint16(0,!1),n=[2-(e>>14&3),2-(e>>12&3),3-(e>>10&3)],t=s[e>>5&7],o=16,a=new Int32Array(t),i=0;i<t;i++)a[i]=nr(r,o,4),o+=4;for(var u=new Int32Array(t),l=0;l<t;l++)u[l]=nr(r,o,6),o+=6;for(var v=[],h=0;h<t;h++){var y=X[a[h]],b=c[h],d=new Int32Array(b);if(y>0)for(var p=0;p<b;p++)d[p]=tr(r,o,y),o+=y;v.push(d)}return{nBfu:t,scaleFactorIndices:u,wordLengthIndices:a,quantizedCoefficients:v,blockModes:n}}var sr=function(){return function(r,e,n){return e&&ar(r.prototype,e),n&&ar(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}(function r(){!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r)},null,[{key:"createHeader",value:function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,t=new Uint8Array(u),o=new DataView(t.buffer);t.set(i,0);var a=(new TextEncoder).encode(r);return t.set(a.subarray(0,Math.min(a.length,255)),4),o.setUint32(260,e,!0),t[264]=n,t}},{key:"parseHeader",value:function(r){if(r.length!==u)throw new Error("Header must be ".concat(u," bytes"));for(var e=0;e<i.length;e++)if(r[e]!==i[e])throw new Error("Invalid AEA file");var n=new DataView(r.buffer,r.byteOffset,r.byteLength),t=r.indexOf(0,4),o=-1===t?256:t-4;return{title:(new TextDecoder).decode(r.subarray(4,4+o)),frameCount:n.getUint32(260,!0),channelCount:r[264]}}}])}();function vr(r){return vr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},vr(r)}function hr(r,e){var n=Object.keys(r);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(r);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})),n.push.apply(n,t)}return n}function yr(r){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?hr(Object(n),!0).forEach(function(e){br(r,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):hr(Object(n)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(n,e))})}return r}function br(r,e,n){return(e=wr(e))in r?Object.defineProperty(r,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):r[e]=n,r}function dr(r,e){return function(r){if(Array.isArray(r))return r}(r)||function(r,e){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=n){var t,o,a,i,u=[],f=!0,l=!1;try{if(a=(n=n.call(r)).next,0===e){if(Object(n)!==n)return;f=!1}else for(;!(f=(t=a.call(n)).done)&&(u.push(t.value),u.length!==e);f=!0);}catch(r){l=!0,o=r}finally{try{if(!f&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return u}}(r,e)||function(r,e){if(r){if("string"==typeof r)return pr(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?pr(r,e):void 0}}(r,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function pr(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function mr(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,wr(t.key),t)}}function wr(r){var e=function(r,e){if("object"!=vr(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=vr(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==vr(e)?e:e+""}var gr=function(){return function(r,e,n){return e&&mr(r.prototype,e),n&&mr(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}(function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),this.values={transientThresholdLow:1,transientThresholdMid:1.5,transientThresholdHigh:2,normalizationDb:68},this.metadata={transientThresholdLow:{default:this.values.transientThresholdLow,name:"Low Band Transient Threshold",description:"Controls the transient detection threshold for the low frequency band (0-5.5kHz). Lower values make detection more sensitive, triggering short blocks more easily. Higher values require stronger transients.",range:[.01,2],step:.01},transientThresholdMid:{default:this.values.transientThresholdMid,name:"Mid Band Transient Threshold",description:"Controls the transient detection threshold for the mid frequency band (5.5-11kHz). Lower values make detection more sensitive, triggering short blocks more easily. Higher values require stronger transients.",range:[.01,3],step:.01},transientThresholdHigh:{default:this.values.transientThresholdHigh,name:"High Band Transient Threshold",description:"Controls the transient detection threshold for the high frequency band (11-22kHz). Lower values make detection more sensitive, triggering short blocks more easily. Higher values require stronger transients.",range:[.01,4],step:.01},normalizationDb:{default:this.values.normalizationDb,name:"Normalization Target (dB)",description:"Sets the target maximum level in decibels for psychoacoustic model normalization. This affects the dynamic range allocation and quantization precision. Higher values may increase bitrate but preserve more detail.",range:[60,80],step:1}},e&&this.setOptions(e)},[{key:"setOptions",value:function(r){for(var e=0,n=Object.entries(r);e<n.length;e++){var t=dr(n[e],2),o=t[0],a=t[1];o in this.values&&this.setValue(o,a)}}},{key:"setValue",value:function(r,e){if(!(r in this.metadata))throw new Error("Unknown option: ".concat(r));var n=dr(this.metadata[r].range,2),t=n[0],o=n[1];if(e<t||e>o)throw new Error("Value for ".concat(r," must be between ").concat(t," and ").concat(o,", got ").concat(e));this.values[r]=e}},{key:"getValue",value:function(r){if(!(r in this.values))throw new Error("Unknown option: ".concat(r));return this.values[r]}},{key:"transientThresholdLow",get:function(){return this.values.transientThresholdLow}},{key:"transientThresholdMid",get:function(){return this.values.transientThresholdMid}},{key:"transientThresholdHigh",get:function(){return this.values.transientThresholdHigh}},{key:"normalizationDb",get:function(){return this.values.normalizationDb}},{key:"getMetadata",value:function(r){return this.metadata[r]}},{key:"getAllMetadata",value:function(){return yr({},this.metadata)}},{key:"reset",value:function(){for(var r=0,e=Object.entries(this.metadata);r<e.length;r++){var n=dr(e[r],2),t=n[0],o=n[1];this.values[t]=o.default}}},{key:"toObject",value:function(){return{values:yr({},this.values),metadata:yr({},this.metadata)}}}])}();function kr(r,e){return function(r){if(Array.isArray(r))return r}(r)||function(r,e){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=n){var t,o,a,i,u=[],f=!0,l=!1;try{if(a=(n=n.call(r)).next,0===e){if(Object(n)!==n)return;f=!1}else for(;!(f=(t=a.call(n)).done)&&(u.push(t.value),u.length!==e);f=!0);}catch(r){l=!0,o=r}finally{try{if(!f&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return u}}(r,e)||function(r,e){if(r){if("string"==typeof r)return Sr(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Sr(r,e):void 0}}(r,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Sr(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function Ar(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var r,e,n="function"==typeof Symbol?Symbol:{},t=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function a(n,t,o,a){var f=t&&t.prototype instanceof u?t:u,l=Object.create(f.prototype);return jr(l,"_invoke",function(n,t,o){var a,u,f,l=0,c=o||[],s=!1,v={p:0,n:0,v:r,a:h,f:h.bind(r,4),d:function(e,n){return a=e,u=0,f=r,v.n=n,i}};function h(n,t){for(u=n,f=t,e=0;!s&&l&&!o&&e<c.length;e++){var o,a=c[e],h=v.p,y=a[2];n>3?(o=y===t)&&(f=a[(u=a[4])?5:(u=3,3)],a[4]=a[5]=r):a[0]<=h&&((o=n<2&&h<a[1])?(u=0,v.v=t,v.n=a[1]):h<y&&(o=n<3||a[0]>t||t>y)&&(a[4]=n,a[5]=t,v.n=y,u=0))}if(o||n>1)return i;throw s=!0,t}return function(o,c,y){if(l>1)throw TypeError("Generator is already running");for(s&&1===c&&h(c,y),u=c,f=y;(e=u<2?r:f)||!s;){a||(u?u<3?(u>1&&(v.n=-1),h(u,f)):v.n=f:v.v=f);try{if(l=2,a){if(u||(o="next"),e=a[o]){if(!(e=e.call(a,f)))throw TypeError("iterator result is not an object");if(!e.done)return e;f=e.value,u<2&&(u=0)}else 1===u&&(e=a.return)&&e.call(a),u<2&&(f=TypeError("The iterator does not provide a '"+o+"' method"),u=1);a=r}else if((e=(s=v.n<0)?f:n.call(t,v))!==i)break}catch(e){a=r,u=1,f=e}finally{l=1}}return{value:e,done:s}}}(n,o,a),!0),l}var i={};function u(){}function f(){}function l(){}e=Object.getPrototypeOf;var c=[][t]?e(e([][t]())):(jr(e={},t,function(){return this}),e),s=l.prototype=u.prototype=Object.create(c);function v(r){return Object.setPrototypeOf?Object.setPrototypeOf(r,l):(r.__proto__=l,jr(r,o,"GeneratorFunction")),r.prototype=Object.create(s),r}return f.prototype=l,jr(s,"constructor",l),jr(l,"constructor",f),f.displayName="GeneratorFunction",jr(l,o,"GeneratorFunction"),jr(s),jr(s,o,"Generator"),jr(s,t,function(){return this}),jr(s,"toString",function(){return"[object Generator]"}),(Ar=function(){return{w:a,m:v}})()}function jr(r,e,n,t){var o=Object.defineProperty;try{o({},"",{})}catch(r){o=0}jr=function(r,e,n,t){if(e)o?o(r,e,{value:n,enumerable:!t,configurable:!t,writable:!t}):r[e]=n;else{var a=function(e,n){jr(r,e,function(r){return this._invoke(e,n,r)})};a("next",0),a("throw",1),a("return",2)}},jr(r,e,n,t)}function Or(r){return new Fr(r,0)}function Mr(r){return function(){return new Pr(r.apply(this,arguments))}}function Pr(r){var e,n;function t(e,n){try{var a=r[e](n),i=a.value,u=i instanceof Fr;Promise.resolve(u?i.v:i).then(function(n){if(u){var f="return"===e?"return":"next";if(!i.k||n.done)return t(f,n);n=r[f](n).value}o(a.done?"return":"normal",n)},function(r){t("throw",r)})}catch(r){o("throw",r)}}function o(r,o){switch(r){case"return":e.resolve({value:o,done:!0});break;case"throw":e.reject(o);break;default:e.resolve({value:o,done:!1})}(e=e.next)?t(e.key,e.arg):n=null}this._invoke=function(r,o){return new Promise(function(a,i){var u={key:r,arg:o,resolve:a,reject:i,next:null};n?n=n.next=u:(e=n=u,t(r,o))})},"function"!=typeof r.return&&(this.return=void 0)}function Fr(r,e){this.v=r,this.k=e}function Tr(r){var e,n,t,o=2;for("undefined"!=typeof Symbol&&(n=Symbol.asyncIterator,t=Symbol.iterator);o--;){if(n&&null!=(e=r[n]))return e.call(r);if(t&&null!=(e=r[t]))return new Br(e.call(r));n="@@asyncIterator",t="@@iterator"}throw new TypeError("Object is not async iterable")}function Br(r){function e(r){if(Object(r)!==r)return Promise.reject(new TypeError(r+" is not an object."));var e=r.done;return Promise.resolve(r.value).then(function(r){return{value:r,done:e}})}return Br=function(r){this.s=r,this.n=r.next},Br.prototype={s:null,n:null,next:function(){return e(this.n.apply(this.s,arguments))},return:function(r){var n=this.s.return;return void 0===n?Promise.resolve({value:r,done:!0}):e(n.apply(this.s,arguments))},throw:function(r){var n=this.s.return;return void 0===n?Promise.reject(r):e(n.apply(this.s,arguments))}},new Br(r)}function xr(r){throw new Error(r)}function Ir(r){for(var e=arguments.length,n=new Array(e>1?e-1:0),t=1;t<e;t++)n[t-1]=arguments[t];var o=n.map(function(e){return e(r)});return function(r){return o.reduce(function(r,e){return e(r)},r)}}function Cr(r){return zr.apply(this,arguments)}function zr(){return zr=Mr(function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:266;return Ar().m(function n(){var t,o,i,u,f,l,c,s,v;return Ar().w(function(n){for(;;)switch(n.n){case 0:t=a,o=!1,i=!1,n.p=1,f=Tr(r);case 2:return n.n=3,Or(f.next());case 3:if(!(o=!(l=n.v).done)){n.n=7;break}if(c=l.value,(t=c.length)!==a){n.n=5;break}return n.n=4,c;case 4:n.n=6;break;case 5:return(s=new Float32Array(a)).set(c),n.n=6,s;case 6:o=!1,n.n=2;break;case 7:n.n=9;break;case 8:n.p=8,v=n.v,i=!0,u=v;case 9:if(n.p=9,n.p=10,!o||null==f.return){n.n=11;break}return n.n=11,Or(f.return());case 11:if(n.p=11,!i){n.n=12;break}throw u;case 12:return n.f(11);case 13:return n.f(9);case 14:if(!(a-t<e)){n.n=15;break}return n.n=15,new Float32Array(a);case 15:return n.a(2)}},n,null,[[10,,11,13],[1,8,9,14]])})()}),zr.apply(this,arguments)}function Er(r){return Dr.apply(this,arguments)}function Dr(){return Dr=Mr(function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:266;return Ar().m(function n(){var t,o,i,u,f,l,c,s,v,h,y;return Ar().w(function(n){for(;;)switch(n.n){case 0:t=new Float32Array(0),o=!1,i=!1,u=!1,n.p=1,l=Tr(r);case 2:return n.n=3,Or(l.next());case 3:if(!(i=!(c=n.v).done)){n.n=10;break}if(s=c.value,o){n.n=5;break}if(o=!0,!(e>=s.length)){n.n=4;break}return e-=s.length,n.a(3,9);case 4:return t=s.slice(e),e=0,n.a(3,9);case 5:(v=new Float32Array(t.length+s.length)).set(t),v.set(s,t.length),h=0;case 6:if(!(h+a<=v.length)){n.n=8;break}return n.n=7,v.slice(h,h+a);case 7:h+=a,n.n=6;break;case 8:t=v.slice(h);case 9:i=!1,n.n=2;break;case 10:n.n=12;break;case 11:n.p=11,y=n.v,u=!0,f=y;case 12:if(n.p=12,n.p=13,!i||null==l.return){n.n=14;break}return n.n=14,Or(l.return());case 14:if(n.p=14,!u){n.n=15;break}throw f;case 15:return n.f(14);case 16:return n.f(12);case 17:if(!(t.length>0)){n.n=18;break}return n.n=18,t;case 18:return n.a(2)}},n,null,[[13,,14,16],[1,11,12,17]])})()}),Dr.apply(this,arguments)}function _r(r){for(var e=arguments.length,n=new Array(e>1?e-1:0),t=1;t<e;t++)n[t-1]=arguments[t];return function(){var e=Mr(Ar().m(function e(t){var o,a,i,u,f,l,c,s,v,h,y,b,d,p,m,w,g,k,S,A,j,O,M,P;return Ar().w(function(e){for(;;)switch(e.n){case 0:o=[],a=[],i=!1,u=!1,e.p=1,l=Tr(t);case 2:return e.n=3,Or(l.next());case 3:if(!(i=!(c=e.v).done)){e.n=5;break}s=kr(c.value,2),v=s[0],h=s[1],o.push(v),a.push(h);case 4:i=!1,e.n=2;break;case 5:e.n=7;break;case 6:e.p=6,M=e.v,u=!0,f=M;case 7:if(e.p=7,e.p=8,!i||null==l.return){e.n=9;break}return e.n=9,Or(l.return());case 9:if(e.p=9,!u){e.n=10;break}throw f;case 10:return e.f(9);case 11:return e.f(7);case 12:y=Mr(Ar().m(function r(){var e,n,t;return Ar().w(function(r){for(;;)switch(r.n){case 0:e=0,n=o;case 1:if(!(e<n.length)){r.n=3;break}return t=n[e],r.n=2,t;case 2:e++,r.n=1;break;case 3:return r.a(2)}},r)}))(),b=Mr(Ar().m(function r(){var e,n,t;return Ar().w(function(r){for(;;)switch(r.n){case 0:e=0,n=a;case 1:if(!(e<n.length)){r.n=3;break}return t=n[e],r.n=2,t;case 2:e++,r.n=1;break;case 3:return r.a(2)}},r)}))(),d=r.apply(void 0,[y].concat(n)),p=r.apply(void 0,[b].concat(n)),m=!1,w=!1,e.p=13,k=Tr(d);case 14:return e.n=15,Or(k.next());case 15:if(!(m=!(S=e.v).done)){e.n=18;break}return A=S.value,e.n=16,Or(p.next());case 16:if(j=e.v,void 0===(O=j.value)){e.n=17;break}return e.n=17,[A,O];case 17:m=!1,e.n=14;break;case 18:e.n=20;break;case 19:e.p=19,P=e.v,w=!0,g=P;case 20:if(e.p=20,e.p=21,!m||null==k.return){e.n=22;break}return e.n=22,Or(k.return());case 22:if(e.p=22,!w){e.n=23;break}throw g;case 23:return e.f(22);case 24:return e.f(20);case 25:return e.a(2)}},e,null,[[21,,22,24],[13,19,20,25],[8,,9,11],[1,6,7,12]])}));return function(r){return e.apply(this,arguments)}}()}function qr(r,e){for(var n=e[r.length],t=0;t<r.length;t++)n[t]=r[r.length-1-t];return n}Pr.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},Pr.prototype.next=function(r){return this._invoke("next",r)},Pr.prototype.throw=function(r){return this._invoke("throw",r)},Pr.prototype.return=function(r){return this._invoke("return",r)};var Ur=_r(Cr),Lr=_r(Er);function Hr(r,e){var n,t,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=r.length,i=a>>1,u=null!==(n=null==o||null===(t=o.delay)||void 0===t?void 0:t[a])&&void 0!==n?n:xr("qmfAnalysis: qmfWorkBuffers.delay[".concat(a,"] is required"));u.set(e),u.set(r,e.length);for(var f=new Float32Array(i),l=new Float32Array(i),c=0;c<i;c++){for(var s=0,v=0,h=2*c,y=0;y<24;y++)s+=u[h+47-2*y]*S[y],v+=u[h+46-2*y]*A[y];f[c]=s+v,l[c]=s-v}return{lowBand:f,highBand:l,newDelay:u.slice(-46)}}function Wr(r,e,n){var t,o,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=r.length,u=2*i,f=null!==(t=null==a||null===(o=a.delay)||void 0===o?void 0:o[u])&&void 0!==t?t:xr("qmfSynthesis: qmfWorkBuffers.delay[".concat(u,"] is required"));f.set(n);for(var l=0;l<i;l++){var c=r[l],s=e[l],v=w+2*l;f[v]=.5*(c+s),f[v+1]=.5*(c-s)}for(var h=new Float32Array(u),y=0;y<i;y++){for(var b=2*y,d=0,p=0,m=0;m<24;m++){var g=b+2*m;d+=f[g]*S[m],p+=f[g+1]*A[m]}h[2*y]=p,h[2*y+1]=d}return{output:h,newDelay:f.slice(-46)}}function Gr(r){return Gr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Gr(r)}function Vr(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,Nr(t.key),t)}}function Nr(r){var e=function(r,e){if("object"!=Gr(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=Gr(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==Gr(e)?e:e+""}var Rr=function(){function r(){!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r)}return function(r,e,n){return e&&Vr(r.prototype,e),n&&Vr(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}(r,null,[{key:"fft",value:function(e,n){var t=e.length;if(t!==n.length)throw new Error("Mismatched array lengths.");if(t&t-1)throw new Error("Length must be power of 2.");if(!(t<=1)){var o=r._cache.get(t);o||(o=r._buildCache(t),r._cache.set(t,o));for(var a=o.bitRev,i=o.cos,u=o.sin,f=0;f<t;f++){var l=a[f];if(l>f){var c=e[f],s=n[f];e[f]=e[l],n[f]=n[l],e[l]=c,n[l]=s}}for(var v=0;v<t;v+=2){var h=e[v],y=n[v],b=e[v+1],d=n[v+1];e[v]=h+b,n[v]=y+d,e[v+1]=h-b,n[v+1]=y-d}if(t>=4)for(var p=0;p<t;p+=4){var m=e[p],w=n[p],g=e[p+2],k=n[p+2];e[p]=m+g,n[p]=w+k,e[p+2]=m-g,n[p+2]=w-k,m=e[p+1],w=n[p+1],g=e[p+3];var S=k=n[p+3],A=-g;e[p+1]=m+S,n[p+1]=w+A,e[p+3]=m-S,n[p+3]=w-A}for(var j=8;j<=t;j<<=1)for(var O=j>>>1,M=t/j,P=0;P<t;P+=j){var F=e[P],T=n[P],B=e[P+O],x=n[P+O];e[P]=F+B,n[P]=T+x,e[P+O]=F-B,n[P+O]=T-x;for(var I=M,C=1;C<O;C++){var z=i[I],E=u[I];B=e[P+C],x=n[P+C];var D=e[P+C+O],_=n[P+C+O],q=D*z-_*E,U=D*E+_*z;e[P+C]=B+q,n[P+C]=x+U,e[P+C+O]=B-q,n[P+C+O]=x-U,I+=M}}}}},{key:"_buildCache",value:function(r){for(var e=new Uint32Array(r),n=0|Math.log2(r),t=1;t<r;t++)e[t]=e[t>>>1]>>>1|(1&t)<<n-1;for(var o=r>>>1,a=new Float32Array(o),i=new Float32Array(o),u=-2*Math.PI/r,f=0;f<o;f++){var l=u*f;a[f]=Math.cos(l),i[f]=Math.sin(l)}return{bitRev:e,cos:a,sin:i}}}])}();function $r(r){return $r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},$r(r)}function Jr(r,e,n){return e=Qr(e),function(r,e){if(e&&("object"==$r(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(r){if(void 0===r)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return r}(r)}(r,Kr()?Reflect.construct(e,n||[],Qr(r).constructor):e.apply(r,n))}function Kr(){try{var r=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(r){}return(Kr=function(){return!!r})()}function Qr(r){return Qr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},Qr(r)}function Xr(r,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),Object.defineProperty(r,"prototype",{writable:!1}),e&&Yr(r,e)}function Yr(r,e){return Yr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,e){return r.__proto__=e,r},Yr(r,e)}function Zr(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,ee(t.key),t)}}function re(r,e,n){return e&&Zr(r.prototype,e),n&&Zr(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}function ee(r){var e=function(r,e){if("object"!=$r(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=$r(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==$r(e)?e:e+""}function ne(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}!function(r,e,n){(e=Nr(e))in r?Object.defineProperty(r,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):r[e]=n}(Rr,"_cache",new Map);var te=re(function r(e,n){ne(this,r),this.size=e,this.halfSize=e>>1,this.quarterSize=e>>2,this.fftSize=this.halfSize>>1;var t=2*Math.PI/(8*e),o=2*Math.PI/e,a=Math.sqrt(n/e);this.sinCosTable=new Float32Array(this.halfSize);for(var i=0;i<this.quarterSize;i++){var u=o*i+t;this.sinCosTable[2*i]=a*Math.cos(u),this.sinCosTable[2*i+1]=a*Math.sin(u)}}),oe=function(){function r(e,n){return ne(this,r),Jr(this,r,[e,n])}return Xr(r,te),re(r,[{key:"transform",value:function(r){var e,n,t,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=null!==(e=null==o?void 0:o[this.fftSize])&&void 0!==e?e:xr("MDCT.transform: mdctBuffers[".concat(this.fftSize,"] is required")),i=null!==(n=null==a?void 0:a.real)&&void 0!==n?n:xr("MDCT.transform: mdctBuffers[".concat(this.fftSize,"].real is required")),u=null!==(t=null==a?void 0:a.imag)&&void 0!==t?t:xr("MDCT.transform: mdctBuffers[".concat(this.fftSize,"].imag is required")),f=this.quarterSize,l=3*f;i.fill(0),u.fill(0);for(var c=0;c<f;c+=2){var s=l+c,v=f+c,h=f-1-c,y=r[l-1-c]+r[s],b=r[v]-r[h],d=this.sinCosTable[c],p=this.sinCosTable[c+1];i[c>>1]=y*d+b*p,u[c>>1]=b*d-y*p}for(var m=f;m<this.halfSize;m+=2){var w=m>>1,g=m-f,k=f+m,S=5*f-1-m,A=r[l-1-m]-r[g],j=r[k]+r[S],O=this.sinCosTable[m],M=this.sinCosTable[m+1];i[w]=A*O+j*M,u[w]=j*O-A*M}Rr.fft(i,u);for(var P=new Float32Array(this.halfSize),F=0;F<this.fftSize;F++){var T=this.sinCosTable[2*F],B=this.sinCosTable[2*F+1],x=i[F],I=u[F];P[2*F]=-x*T-I*B,P[this.halfSize-1-2*F]=-x*B+I*T}return P}}])}(),ae=function(){function r(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return ne(this,r),Jr(this,r,[e,n||e])}return Xr(r,te),re(r,[{key:"transform",value:function(r){var e,n,t,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=null!==(e=null==o?void 0:o[this.fftSize])&&void 0!==e?e:xr("IMDCT.transform: mdctBuffers[".concat(this.fftSize,"] is required")),i=null!==(n=null==a?void 0:a.real)&&void 0!==n?n:xr("IMDCT.transform: mdctBuffers[".concat(this.fftSize,"].real is required")),u=null!==(t=null==a?void 0:a.imag)&&void 0!==t?t:xr("IMDCT.transform: mdctBuffers[".concat(this.fftSize,"].imag is required")),f=this.quarterSize,l=3*f;i.fill(0),u.fill(0);for(var c=0;c<this.fftSize;c++){var s=2*c,v=r[s],h=r[this.halfSize-1-s],y=this.sinCosTable[s],b=this.sinCosTable[s+1];i[c]=-2*(h*b+v*y),u[c]=-2*(h*y-v*b)}Rr.fft(i,u);for(var d=new Float32Array(this.size),p=0;p<this.fftSize/2;p++){var m=2*p,w=this.sinCosTable[m],g=this.sinCosTable[m+1],k=i[p],S=u[p],A=k*w+S*g,j=k*g-S*w;d[l-1-m]=A,d[l+m]=A,d[f+m]=j,d[f-1-m]=-j}for(var O=this.fftSize/2;O<this.fftSize;O++){var M=2*(O-this.fftSize/2)+f,P=2*O,F=this.sinCosTable[P],T=this.sinCosTable[P+1],B=i[O],x=u[O],I=B*F+x*T,C=B*T-x*F;d[l-1-M]=I,d[M-f]=-I,d[f+M]=C,d[5*f-1-M]=C}return d}}])}(),ie=new oe(64,.5),ue=new oe(d,.5),fe=new oe(p,1),le=new ae(64,256),ce=new ae(d,1024),se=new ae(p,1024);function ve(r,e,n){for(var t=r.length,o=new Float32Array(2*t),a=0;a<t;a++){var i=n[a],u=n[2*t-1-a],f=r[a],l=e[t-1-a];o[a]=f*u-l*i,o[2*t-1-a]=f*i+l*u}return o}function he(r){for(var e=0,n=0;n<r.length;n++)e=Math.max(e,Math.abs(r[n]));if(0===e)return 0;for(var t=0,o=rr.length-1;t<o;){var a=t+o>>1;e<=rr[a]?o=a:t=a+1}return t}function ye(r,e,n){if(0===n||0===e)return new Int32Array(r.length);for(var t=(1<<n-1)-1,o=t/rr[e],a=new Int32Array(r.length),i=0;i<r.length;i++){var u=r[i]*o;a[i]=Math.max(-t-1,Math.min(t,Math.round(u)))}return a}function be(r,e,n){if(0===n||0===e)return new Float32Array(r.length);for(var t=rr[e]/((1<<n-1)-1),o=new Float32Array(r.length),a=0;a<r.length;a++)o[a]=r[a]*t;return o}function de(r,e){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=function(r,e){if(r){if("string"==typeof r)return pe(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?pe(r,e):void 0}}(r))||e&&r&&"number"==typeof r.length){n&&(r=n);var t=0,o=function(){};return{s:o,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(r){throw r},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return i=r.done,r},e:function(r){u=!0,a=r},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function pe(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function me(r,e,n,t){var o=function(r,e,n){for(var t=new Float32Array(n),o=O,a=0;a<n;a++){var i=e[a];if(i){for(var u=0,f=r[a],l=0;l<i;l++)u+=f[l]*f[l];t[a]=u>0?10*Math.log10(u/i):o}else t[a]=o}return t}(e,n,t),a=function(r,e,n){for(var t=new Float32Array(n),o=0;o<n;o++){var a=r[o];t[o]=a<=O?-1/0:a-e[o]}return t}(o,function(r){for(var e=new Float32Array(l),n=0;n<l;n++){var t=K[n],o=r[t.band],a=r[t.next],i=o+(a-o)*((Math.round(h[n]/21.533203125)-t.x0)*t.tInv);e[n]=i+.25*Math.abs(a-o)}return e}(r.criticalBandThresholds),t),i=function(r,e,n){for(var t=[],o=0;o<n;o++)r[o]>0&&t.push({index:o,smrValue:r[o]});if(!t.length){for(var a,i=function(r){if(e[r]>O)return{v:s.find(function(e){return e>r})||s[s.length-1]}},u=n-1;u>=0;u--)if(a=i(u))return a.v;return s[0]}t.sort(function(r,e){return e.smrValue-r.smrValue});var f=new Float32Array(t.length);f[0]=t[0].smrValue;for(var l=1;l<t.length;l++)f[l]=f[l-1]+t[l].smrValue;var c,v=de(s);try{for(v.s();!(c=v.n()).done;){var h=c.value;if(!(h>n)){if(t.length<=h)return h;var y=h-1,b=f[y]/(y+1);if((f[t.length-1]-f[y])/(t.length-y-1)<.1*b)return h}}}catch(r){v.e(r)}finally{v.f()}return s[s.length-1]}(a,o,t),u=function(r,e,n,t){for(var o=new Int32Array(r),a=[],i=[],u=0;u<r;u++)e[u]>-1/0&&(a.push(u),i.push(e[u]));for(var f=(a.length>>1)-1;f>=0;f--)ge(a,i,f);for(;a.length&&t>0;){var l=a[0],c=o[l];if(c>=Q)we(a,i);else{var s=n[l],v=X[c+1]*s-X[c]*s;v>t?we(a,i):(t-=v,o[l]=c+1,i[0]+=Z[c],ge(a,i,0))}}return o}(i,a,n,1656-10*i);return{bfuCount:i,allocation:u}}function we(r,e){var n=r.length-1;r[0]=r[n],e[0]=e[n],r.pop(),e.pop(),r.length&&ge(r,e,0)}function ge(r,e,n){for(var t=r.length,o=n,a=r[o],i=e[o];;){var u=1+(o<<1),f=u+1,l=o,c=i;if(u<t&&e[u]>c&&(l=u,c=e[u]),f<t&&e[f]>c&&(l=f),l===o)break;r[o]=r[l],e[o]=e[l],o=l}r[o]=a,e[o]=i}function ke(r){return ke="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},ke(r)}function Se(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,je(t.key),t)}}function Ae(r,e,n){return e&&Se(r.prototype,e),n&&Se(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}function je(r){var e=function(r,e){if("object"!=ke(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=ke(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==ke(e)?e:e+""}var Oe=Ae(function r(){!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),this.transformBuffers={64:new Float32Array(64),128:new Float32Array(128),256:new Float32Array(256),512:new Float32Array(512)},this.qmfWorkBuffers={delay:{128:new Float32Array(174),256:new Float32Array(302),512:new Float32Array(558)},highBandDelay:{128:new Float32Array(167),256:new Float32Array(295)}},this.qmfDelays={lowBand:new Float32Array(w),midBand:new Float32Array(w),highBand:new Float32Array(39)},this.transientDetection=[new Float32Array(64),new Float32Array(64),new Float32Array(128)],this.mdctBuffers={16:{real:new Float32Array(16),imag:new Float32Array(16)},64:{real:new Float32Array(64),imag:new Float32Array(64)},128:{real:new Float32Array(128),imag:new Float32Array(128)}},this.mdctOverlap=[new Float32Array(32),new Float32Array(32),new Float32Array(32)],this.imdctOverlap=[new Float32Array(256),new Float32Array(256),new Float32Array(512)],this.reversalBuffers={32:new Float32Array(32),128:new Float32Array(128),256:new Float32Array(256)},this.bfuData=new Array(l);for(var e=0;e<l;e++)this.bfuData[e]=new Float32Array(20);this.psychoBuffers={psdDb:new Float32Array(F),linPower:new Float32Array(F),tonalSPL:new Float32Array(P),nonTonalSPL:new Float32Array(W.length),maskSpl:new Float32Array(P),maskPsd:new Float32Array(P),maskBark:new Float32Array(P),maskTonalOffset:new Float32Array(P),maskPsdF1:new Float32Array(P),maskPsdF2:new Float32Array(P),criticalBandThresholds:new Float32Array(W.length)}});function Me(r,e,n){if(!e)return!1;var t=function(r,e){var n=function(r,e){for(var n=0,t=0,o=0;o<r.length;o++){var a=Math.abs(r[o]),i=a-Math.abs(e[o]);i>0&&(n+=i),t+=a*a}var u=Math.sqrt(t)||1e-6;return n/u}(r,e),t=Pe(r),o=Pe(e),a=Math.abs(t-o),i=Fe(r),u=Fe(e),f=Math.abs(i-u),l=function(r,e){for(var n=0,t=0,o=0;o<r.length;o++)n+=r[o]*r[o],t+=e[o]*e[o];n=Math.max(n,1e-10),t=Math.max(t,1e-10);var a=10*Math.log10(n/t);return Math.max(0,a)}(r,e);return{spectralFlux:n,flatnessChange:a,hfChange:f,energyChange:l}}(r,e),o=function(r){var e=r.spectralFlux,n=r.flatnessChange,t=r.hfChange,o=r.energyChange,a=e,i=Math.sqrt(n),u=Math.log1p(10*t)/Math.log1p(10),f=Math.min(o/30,1);return(a+i+u+f)/4}(t);return o>n}function Pe(r){for(var e=0,n=0,t=0,o=0;o<r.length;o++){var a=Math.abs(r[o]);a>1e-10&&(e+=Math.log(a),n+=a,t++)}if(0===t)return 0;var i=Math.exp(e/t),u=n/t;return u>1e-10?i/u:0}function Fe(r){for(var e=Math.floor(r.length/2),n=0,t=0,o=0;o<e;o++)n+=r[o]*r[o];for(var a=e;a<r.length;a++)t+=r[a]*r[a];var i=n+t;return i>0?t/i:0}function Te(r){return r>0?L*Math.log(r):O}function Be(r){return Math.exp(r*H)}function xe(r,e,n){var t=new Int8Array(1025),o=new Int32Array(P),a=new Int32Array(W.length),i=new Int8Array(P),u=function(r,e,n){for(var t=n.linPower,o=0,a=0;a<=P;a++){var i=r[x[a]],u=r[I[a]],f=C[a],l=i*i*(1-f)+u*u*f;t[a]=l,l>o&&(o=l)}var c=e-(o>0?L*Math.log(o):0),s=Math.exp(c*H),v=n.psdDb;if(o>0)for(var h=0;h<=P;h++){var y=t[h];v[h]=y>0?L*Math.log(y)+c:O}else v.fill(O,0,F);return{offsetDb:c,linScale:s}}(r,e,n),f=function(r,e,n,t,o,a){e.fill(0);var i=function(r,e,n,t,o){for(var a=r.psdDb,i=r.linPower,u=0,f=Math.floor(249*o),l=Math.floor(63*o),c=Math.floor(127*o),s=Math.floor(150*o),v=1,h=a.length-1;v<h&&v<=f;v++){var y=a[v];if(!(y<=a[v-1]||y<a[v+1])){var b=null;if(v>2&&v<l)b=R;else if(v>=l&&v<c)b=$;else{if(!(v>=c&&v<s))continue;b=J}if(Ie(a,v,b)){var d=i[v-1]+i[v]+i[v+1],p=d>0?t+L*Math.log(d):O;n[u]=v,r.tonalSPL[u]=p,u++,e[v]=1;for(var m=0;m<b.length;m++){var w=v+b[m];w>=0&&w<e.length&&w!==v&&(e[w]=3)}v-1>=0&&(e[v-1]=3),v+1<e.length&&(e[v+1]=3)}}}return u}(r,e,n,o,a),u=function(r,e,n,t){for(var o=r.linPower,a=0,i=W,u=N.length,f=e.length,l=0;l<i.length-1;l++){for(var c=i[l],s=G[c][0]-1,v=G[i[l+1]][0]-1,h=0,y=0,b=G[c][1],d=Math.min(v,f),p=s;p<d;p++)if(0===e[p]){var m=o[p];if(h+=m,p<u)y+=m*(G[N[p]][1]-b);e[p]=3}if(h>0){var w=y/h*(v-s),g=t+L*Math.log(h),k=Math.round(s+w);1===e[k=k<0?0:k>=f?f-1:k]&&k+1<f&&k++,n[a]=k,r.nonTonalSPL[a]=g,e[k]=2,a++}}return a}(r,e,t,o),f=function(r,e,n,t,o,a){for(var i=function(r,e){if(r>=N.length)return!1;var n=N[r];return e>=G[n][2]},u=0,f=0;f<o;f++){var l=n[f],c=r.tonalSPL[f];i(l,c)?(u!==f&&(n[u]=l,r.tonalSPL[u]=c),u++):l<e.length&&(e[l]=3)}for(var s=0,v=0;v<a;v++){var h=t[v],y=r.nonTonalSPL[v];i(h,y)?(s!==v&&(t[s]=h,r.nonTonalSPL[s]=y),s++):h<e.length&&(e[h]=3)}return{tonal:u,nonTonal:s}}(r,e,n,t,i,u),l=f.tonal,c=f.nonTonal;return{tonalCount:l,nonTonalCount:c}}(n,t,o,a,u.offsetDb,4),l=f.tonalCount,c=f.nonTonalCount;!function(r,e,n,t,o,a){for(var i=W,u=r.criticalBandThresholds,f=function(r,e,n,t,o,a){for(var i=r.psdDb,u=r.maskSpl,f=r.maskPsd,l=r.maskBark,c=r.maskTonalOffset,s=r.maskPsdF1,v=r.maskPsdF2,h=0,y=0;y<o;y++){var b=e[y];if(b<N.length){var d=G[N[b]][1],p=r.tonalSPL[y],m=i[b];u[h]=p,f[h]=m,l[h]=d,t[h]=1,c[h]=-1.525-.275*d-4.5,s[h]=.4*m+6,v[h]=.15*m,h++}}for(var w=0;w<a;w++){var g=n[w];if(g<N.length){var k=G[N[g]][1],S=r.nonTonalSPL[w],A=i[g];u[h]=S,f[h]=A,l[h]=k,t[h]=0,c[h]=-1.525-.175*k-.5,s[h]=.4*A+6,v[h]=.15*A,h++}}return h}(r,e,n,t,o,a),l=r.maskSpl,c=r.maskBark,s=r.maskTonalOffset,v=r.maskPsdF1,h=r.maskPsdF2,y=0;y<i.length;y++){for(var b=G[i[y]],d=b[1],p=Be(b[2]),m=0;m<f;m++){var w=d-c[m];if(w>=-3&&w<8){var g=v[m],k=h[m],S=void 0;S=w<-1?17*(w+1)-g:w<0?g*w:w<1?-17*w:-(w-1)*(17-k)-17,p+=Be(l[m]+s[m]+S)}}u[y]=Te(p)}}(n,o,a,i,l,c);for(var s=new Array(l),v=0;v<l;v++)s[v]={index:o[v],spl:n.tonalSPL[v]};for(var h=new Array(c),y=0;y<c;y++)h[y]={index:a[y],spl:n.nonTonalSPL[y]};return{psd:n.psdDb,tonalMaskers:s,tonalMaskersCount:l,nonTonalMaskers:h,nonTonalMaskersCount:c,criticalBandThresholds:n.criticalBandThresholds,flags:t}}function Ie(r,e,n){for(var t=r[e],o=r.length,a=0;a<n.length;a++){var i=e+n[a];if(i>=0&&i<o&&t-r[i]<7)return!1}return!0}function Ce(r){var e,n=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:xr("qmfAnalysisStage: bufferPool is required"),t=n.qmfDelays;return function(r){var e=Hr(r,t.lowBand,n.qmfWorkBuffers);t.lowBand=e.newDelay;var o=Hr(e.lowBand,t.midBand,n.qmfWorkBuffers);t.midBand=o.newDelay;var a=n.qmfWorkBuffers.highBandDelay[e.highBand.length];a.set(t.highBand),a.set(e.highBand,t.highBand.length);var i=a.slice(0,e.highBand.length);return t.highBand=a.slice(e.highBand.length),{bands:[o.lowBand,o.highBand,i]}}}function ze(r){var e,n,t=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:xr("blockSelectorStage: bufferPool is required"),o=null!==(n=null==r?void 0:r.options)&&void 0!==n?n:xr("blockSelectorStage: options is required");return function(r){var e=r.bands,n=[128,128,256],a=e.map(function(r,e){var a=function(r,e){var n=new Float32Array(e),t=new Float32Array(e),o=Math.min(r.length,e);n.set(r.subarray(0,o)),Rr.fft(n,t);for(var a=new Float32Array(e/2),i=0;i<e/2;i++)a[i]=Math.sqrt(n[i]*n[i]+t[i]*t[i]);return a}(r,n[e]),i=Me(a,t.transientDetection[e],o.transientThresholdLow);return t.transientDetection[e]=a,i*Math.max(e+1,2)});return{bands:e,blockModes:a}}}function Ee(r){var e,n=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:xr("mdctStage: bufferPool is required"),t=n.mdctOverlap,o=[ue,ue,fe];function a(r,e,n,t,a){var u=z[e];return 0===n?function(r,e,n,t,o,a){var u=2===e?p:d,f=a.transformBuffers[u];f.fill(0),f.set(o,n.windowStart),i(r,o,n.size),f.set(r,n.windowStart+32);var l=t.transform(f,a.mdctBuffers);e>0&&(l=qr(l,a.reversalBuffers));return l}(r,e,u,o[e],t,a):function(r,e,n,t,o){for(var a=1<<(256===n.size?3:2),u=new Float32Array(n.size),f=0;f<a;f++){var l=f*E,c=r.subarray(l,l+E),s=o.transformBuffers[64];s.fill(0),s.set(t,0),i(c,t,E),s.set(c,D);var v=ie.transform(s,o.mdctBuffers);e>0&&(v=qr(v,o.reversalBuffers)),u.set(v,l)}return u}(r,e,u,t,a)}function i(r,e,n){for(var t=n-D,o=0;o<D;o++){var a=r[t+o];e[o]=m[o]*a,r[t+o]=a*m[31-o]}}return function(r){var e=r.bands,o=r.blockModes,i=r.originalFrame,u=new Float32Array(512);return e.forEach(function(r,e){var i=a(r,e,o[e],t[e],n),f=function(r){return 0===r?0:1===r?128:256}(e);u.set(i,f)}),{bands:e,coefficients:u,blockModes:o,originalFrame:i}}}function De(r){var e,n,t=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:xr("quantizationStage: bufferPool is required"),o=null!==(n=null==r?void 0:r.options)&&void 0!==n?n:xr("quantizationStage: options is required");return function(r){for(var e=r.coefficients,n=r.blockModes,a=function(r,e){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,t=null!=n?n:[],o=[],a=0,i=0,u=0;u<3;u++){for(var f=a,l=2===u?256:128,s=u<2?v[u]:c.length,h=0===e[u]?y:b;i<s;){var d=c[i],p=h[i]-f,m=n?n[i]:new Float32Array(d);if(m.fill(0),p>=0&&p<l)for(var w=Math.min(p+d,l)-p,g=0;g<w;g++)m[g]=r[f+p+g];n||t.push(m),o.push(d),i++}a+=l}return{bfuData:t,bfuSizes:o,bfuCount:i}}(e,n,t.bfuData),i=a.bfuData,u=a.bfuSizes,f=a.bfuCount,l=me(xe(e,o.normalizationDb,t.psychoBuffers),i,u,f),s=l.bfuCount,h=l.allocation,d=new Int32Array(s),p=[],m=0;m<s;m++){var w=i[m].subarray(0,u[m]),g=h[m],k=X[g];d[m]=he(w);var S=ye(w,d[m],k);p.push(S)}return{nBfu:s,scaleFactorIndices:d,wordLengthIndices:h.slice(0,s),quantizedCoefficients:p,blockModes:n}}}function _e(){return Ir({options:arguments.length>0&&void 0!==arguments[0]?arguments[0]:new gr,bufferPool:arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Oe},Ce,ze,Ee,De)}function qe(){return function(r){for(var e=new Float32Array(512),n=r.nBfu,t=r.scaleFactorIndices,o=r.wordLengthIndices,a=r.quantizedCoefficients,i=r.blockModes,u=0;u<n;u++){var f=X[o[u]],l=0;u>=v[0]&&(l=1),u>=v[1]&&(l=2);var c=0===i[l]?y[u]:b[u];if(f>0){var s=be(a[u],t[u],f);e.set(s,c)}}return{coefficients:e,blockModes:i}}}function Ue(r){var e,n=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:xr("imdctStage: bufferPool is required"),t=n.imdctOverlap,o=[ce,ce,se];function a(r,e,n,t,a,i){return 0===n?function(r,e,n,t,o,a){var i=r;e>0&&(i=qr(r,t.reversalBuffers));var u=a.transform(i,t.mdctBuffers),f=u.length/4,l=t.transformBuffers[512];l.fill(0);for(var c=0;c<o.size;c++)l[c]=u[f+c];var s=n.slice(2*o.size-_,2*o.size),v=ve(s.slice(0,_),l.slice(0,_),m);n.set(v,0);for(var h=0;h<_;h++)s[h]=l[_+h];for(var y=2===e?240:112,b=0;b<y;b++)n[32+b]=l[_+b];for(var d=0;d<_;d++)n[2*o.size-_+d]=l[o.size-_+d];return n.slice(0,o.size)}(r,e,t,a,i,o[e]):function(r,e,n,t,o){var a=1<<(256===o.size?3:2),i=t.transformBuffers[512];i.fill(0);for(var u=n.slice(2*o.size-_,2*o.size),f=0,l=0,c=0;c<a;c++){var s=r.slice(l,l+E);e>0&&(s=qr(s,t.reversalBuffers));for(var v=le.transform(s,t.mdctBuffers),h=v.length/4,y=0;y<E;y++)i[f+y]=v[h+y];var b=ve(u.slice(0,_),i.slice(f,f+_),m);n.set(b,f);for(var d=0;d<_;d++)u[d]=i[f+_+d];f+=E,l+=E}for(var p=0;p<_;p++)n[2*o.size-_+p]=i[o.size-_+p];return n.slice(0,o.size)}(r,e,t,a,i)}return function(r){var e=r.coefficients,o=r.blockModes;return z.map(function(r,i){var u=function(r,e){var n=[0,128,256,512];return r.subarray(n[e],n[e+1])}(e,i);return a(u,i,o[i],t[i],n,r)})}}function Le(r){var e,n=null!==(e=null==r?void 0:r.bufferPool)&&void 0!==e?e:xr("qmfSynthesisStage: bufferPool is required"),t=n.qmfDelays;return function(r){var e=n.qmfWorkBuffers.highBandDelay[r[2].length];e.set(t.highBand),e.set(r[2]);var o=e.slice(0,2*r[0].length);t.highBand=e.slice(2*r[0].length);var a=Wr(r[0],r[1],t.midBand,n.qmfWorkBuffers);t.midBand=a.newDelay;var i=Wr(a.output,o,t.lowBand,n.qmfWorkBuffers);return t.lowBand=i.newDelay,i.output}}function He(){return Ir({bufferPool:arguments.length>0&&void 0!==arguments[0]?arguments[0]:new Oe},qe,Ue,Le)}function We(r){return We="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},We(r)}function Ge(r,e){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=$e(r))||e&&r&&"number"==typeof r.length){n&&(r=n);var t=0,o=function(){};return{s:o,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(r){throw r},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return i=r.done,r},e:function(r){u=!0,a=r},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function Ve(r,e,n,t,o,a,i){try{var u=r[a](i),f=u.value}catch(r){return void n(r)}u.done?e(f):Promise.resolve(f).then(t,o)}function Ne(r){return function(){var e=this,n=arguments;return new Promise(function(t,o){var a=r.apply(e,n);function i(r){Ve(a,t,o,i,u,"next",r)}function u(r){Ve(a,t,o,i,u,"throw",r)}i(void 0)})}}function Re(r,e){return function(r){if(Array.isArray(r))return r}(r)||function(r,e){var n=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=n){var t,o,a,i,u=[],f=!0,l=!1;try{if(a=(n=n.call(r)).next,0===e){if(Object(n)!==n)return;f=!1}else for(;!(f=(t=a.call(n)).done)&&(u.push(t.value),u.length!==e);f=!0);}catch(r){l=!0,o=r}finally{try{if(!f&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return u}}(r,e)||$e(r,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $e(r,e){if(r){if("string"==typeof r)return Je(r,e);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Je(r,e):void 0}}function Je(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}function Ke(r){if(null!=r){var e=r["function"==typeof Symbol&&Symbol.iterator||"@@iterator"],n=0;if(e)return e.call(r);if("function"==typeof r.next)return r;if(!isNaN(r.length))return{next:function(){return r&&n>=r.length&&(r=void 0),{value:r&&r[n++],done:!r}}}}throw new TypeError(We(r)+" is not iterable")}function Qe(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var r,e,n="function"==typeof Symbol?Symbol:{},t=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function a(n,t,o,a){var f=t&&t.prototype instanceof u?t:u,l=Object.create(f.prototype);return Xe(l,"_invoke",function(n,t,o){var a,u,f,l=0,c=o||[],s=!1,v={p:0,n:0,v:r,a:h,f:h.bind(r,4),d:function(e,n){return a=e,u=0,f=r,v.n=n,i}};function h(n,t){for(u=n,f=t,e=0;!s&&l&&!o&&e<c.length;e++){var o,a=c[e],h=v.p,y=a[2];n>3?(o=y===t)&&(f=a[(u=a[4])?5:(u=3,3)],a[4]=a[5]=r):a[0]<=h&&((o=n<2&&h<a[1])?(u=0,v.v=t,v.n=a[1]):h<y&&(o=n<3||a[0]>t||t>y)&&(a[4]=n,a[5]=t,v.n=y,u=0))}if(o||n>1)return i;throw s=!0,t}return function(o,c,y){if(l>1)throw TypeError("Generator is already running");for(s&&1===c&&h(c,y),u=c,f=y;(e=u<2?r:f)||!s;){a||(u?u<3?(u>1&&(v.n=-1),h(u,f)):v.n=f:v.v=f);try{if(l=2,a){if(u||(o="next"),e=a[o]){if(!(e=e.call(a,f)))throw TypeError("iterator result is not an object");if(!e.done)return e;f=e.value,u<2&&(u=0)}else 1===u&&(e=a.return)&&e.call(a),u<2&&(f=TypeError("The iterator does not provide a '"+o+"' method"),u=1);a=r}else if((e=(s=v.n<0)?f:n.call(t,v))!==i)break}catch(e){a=r,u=1,f=e}finally{l=1}}return{value:e,done:s}}}(n,o,a),!0),l}var i={};function u(){}function f(){}function l(){}e=Object.getPrototypeOf;var c=[][t]?e(e([][t]())):(Xe(e={},t,function(){return this}),e),s=l.prototype=u.prototype=Object.create(c);function v(r){return Object.setPrototypeOf?Object.setPrototypeOf(r,l):(r.__proto__=l,Xe(r,o,"GeneratorFunction")),r.prototype=Object.create(s),r}return f.prototype=l,Xe(s,"constructor",l),Xe(l,"constructor",f),f.displayName="GeneratorFunction",Xe(l,o,"GeneratorFunction"),Xe(s),Xe(s,o,"Generator"),Xe(s,t,function(){return this}),Xe(s,"toString",function(){return"[object Generator]"}),(Qe=function(){return{w:a,m:v}})()}function Xe(r,e,n,t){var o=Object.defineProperty;try{o({},"",{})}catch(r){o=0}Xe=function(r,e,n,t){if(e)o?o(r,e,{value:n,enumerable:!t,configurable:!t,writable:!t}):r[e]=n;else{var a=function(e,n){Xe(r,e,function(r){return this._invoke(e,n,r)})};a("next",0),a("throw",1),a("return",2)}},Xe(r,e,n,t)}function Ye(r,e){for(var n=0;n<e.length;n++){var t=e[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,Ze(t.key),t)}}function Ze(r){var e=function(r,e){if("object"!=We(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=We(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==We(e)?e:e+""}function rn(r){return function(){return new en(r.apply(this,arguments))}}function en(r){var e,n;function t(e,n){try{var a=r[e](n),i=a.value,u=i instanceof on;Promise.resolve(u?i.v:i).then(function(n){if(u){var f="return"===e?"return":"next";if(!i.k||n.done)return t(f,n);n=r[f](n).value}o(a.done?"return":"normal",n)},function(r){t("throw",r)})}catch(r){o("throw",r)}}function o(r,o){switch(r){case"return":e.resolve({value:o,done:!0});break;case"throw":e.reject(o);break;default:e.resolve({value:o,done:!1})}(e=e.next)?t(e.key,e.arg):n=null}this._invoke=function(r,o){return new Promise(function(a,i){var u={key:r,arg:o,resolve:a,reject:i,next:null};n?n=n.next=u:(e=n=u,t(r,o))})},"function"!=typeof r.return&&(this.return=void 0)}function nn(r){return new on(r,0)}function tn(r){var e={},n=!1;function t(e,t){return n=!0,t=new Promise(function(n){n(r[e](t))}),{done:!1,value:new on(t,1)}}return e["undefined"!=typeof Symbol&&Symbol.iterator||"@@iterator"]=function(){return this},e.next=function(r){return n?(n=!1,r):t("next",r)},"function"==typeof r.throw&&(e.throw=function(r){if(n)throw n=!1,r;return t("throw",r)}),"function"==typeof r.return&&(e.return=function(r){return n?(n=!1,r):t("return",r)}),e}function on(r,e){this.v=r,this.k=e}function an(r){var e,n,t,o=2;for("undefined"!=typeof Symbol&&(n=Symbol.asyncIterator,t=Symbol.iterator);o--;){if(n&&null!=(e=r[n]))return e.call(r);if(t&&null!=(e=r[t]))return new un(e.call(r));n="@@asyncIterator",t="@@iterator"}throw new TypeError("Object is not async iterable")}function un(r){function e(r){if(Object(r)!==r)return Promise.reject(new TypeError(r+" is not an object."));var e=r.done;return Promise.resolve(r.value).then(function(r){return{value:r,done:e}})}return un=function(r){this.s=r,this.n=r.next},un.prototype={s:null,n:null,next:function(){return e(this.n.apply(this.s,arguments))},return:function(r){var n=this.s.return;return void 0===n?Promise.resolve({value:r,done:!0}):e(n.apply(this.s,arguments))},throw:function(r){var n=this.s.return;return void 0===n?Promise.reject(r):e(n.apply(this.s,arguments))}},new un(r)}en.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},en.prototype.next=function(r){return this._invoke("next",r)},en.prototype.throw=function(r){return this._invoke("throw",r)},en.prototype.return=function(r){return this._invoke("return",r)};var fn=function(){function r(){!function(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r)}return function(r,e,n){return e&&Ye(r.prototype,e),n&&Ye(r,n),Object.defineProperty(r,"prototype",{writable:!1}),r}(r,null,[{key:"encodeStream",value:function(e){return rn(function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Qe().m(function t(){var o,a,i,u;return Qe().w(function(t){for(;;)switch(t.n){case 0:if(o=n.channelCount,a=void 0===o?1:o,i=n.onProgress,u=n.encoderOptions,1!==a){t.n=2;break}return t.d(Ke(tn(an(r._encodeMonoStream(e,i,u)))),1);case 1:case 3:t.n=5;break;case 2:if(2!==a){t.n=4;break}return t.d(Ke(tn(an(r._encodeStereoStream(e,i,u)))),3);case 4:throw new Error("Unsupported channel count: ".concat(a));case 5:return t.a(2)}},t)})()}).apply(this,arguments)}},{key:"_encodeMonoStream",value:function(r,e,n){return rn(Qe().m(function t(){var o,a,i,u,f,l,c,s,v,h,y;return Qe().w(function(t){for(;;)switch(t.n){case 0:o=n||new gr,a=_e(o),i=0,u=!1,f=!1,t.p=1,c=an(Cr(r));case 2:return t.n=3,nn(c.next());case 3:if(!(u=!(s=t.v).done)){t.n=6;break}return v=s.value,h=a(v),t.n=4,h;case 4:e&&e(i++);case 5:u=!1,t.n=2;break;case 6:t.n=8;break;case 7:t.p=7,y=t.v,f=!0,l=y;case 8:if(t.p=8,t.p=9,!u||null==c.return){t.n=10;break}return t.n=10,nn(c.return());case 10:if(t.p=10,!f){t.n=11;break}throw l;case 11:return t.f(10);case 12:return t.f(8);case 13:return t.a(2)}},t,null,[[9,,10,12],[1,7,8,13]])}))()}},{key:"_encodeStereoStream",value:function(r,e,n){return rn(Qe().m(function t(){var o,a,i,u,f,l,c,s,v,h,y,b,d,p,m;return Qe().w(function(t){for(;;)switch(t.n){case 0:o=n||new gr,a=_e(o),i=_e(o),u=0,f=!1,l=!1,t.p=1,s=an(Ur(r));case 2:return t.n=3,nn(s.next());case 3:if(!(f=!(v=t.v).done)){t.n=7;break}return h=Re(v.value,2),y=h[0],b=h[1],d=a(y),p=i(b),t.n=4,d;case 4:return t.n=5,p;case 5:e&&e(u++);case 6:f=!1,t.n=2;break;case 7:t.n=9;break;case 8:t.p=8,m=t.v,l=!0,c=m;case 9:if(t.p=9,t.p=10,!f||null==s.return){t.n=11;break}return t.n=11,nn(s.return());case 11:if(t.p=11,!l){t.n=12;break}throw c;case 12:return t.f(11);case 13:return t.f(9);case 14:return t.a(2)}},t,null,[[10,,11,13],[1,8,9,14]])}))()}},{key:"decodeStream",value:function(e){return rn(function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Qe().m(function t(){var o,a,i;return Qe().w(function(t){for(;;)switch(t.n){case 0:if(o=n.channelCount,a=void 0===o?1:o,i=n.onProgress,1!==a){t.n=2;break}return t.d(Ke(tn(an(r._decodeMonoStream(e,i)))),1);case 1:case 3:t.n=5;break;case 2:if(2!==a){t.n=4;break}return t.d(Ke(tn(an(r._decodeStereoStream(e,i)))),3);case 4:throw new Error("Unsupported channel count: ".concat(a));case 5:return t.a(2)}},t)})()}).apply(this,arguments)}},{key:"_decodeMonoStream",value:function(r,e){return rn(Qe().m(function n(){var t,o,a;return Qe().w(function(n){for(;;)switch(n.n){case 0:return t=He(),o=0,a=function(){var n=rn(Qe().m(function n(){var a,i,u,f,l,c,s,v;return Qe().w(function(n){for(;;)switch(n.n){case 0:a=!1,i=!1,n.p=1,f=an(r);case 2:return n.n=3,nn(f.next());case 3:if(!(a=!(l=n.v).done)){n.n=6;break}return c=l.value,s=t(c),n.n=4,s;case 4:e&&e(o++);case 5:a=!1,n.n=2;break;case 6:n.n=8;break;case 7:n.p=7,v=n.v,i=!0,u=v;case 8:if(n.p=8,n.p=9,!a||null==f.return){n.n=10;break}return n.n=10,nn(f.return());case 10:if(n.p=10,!i){n.n=11;break}throw u;case 11:return n.f(10);case 12:return n.f(8);case 13:return n.a(2)}},n,null,[[9,,10,12],[1,7,8,13]])}));return function(){return n.apply(this,arguments)}}(),n.d(Ke(tn(an(Er(a())))),1);case 1:return n.a(2)}},n)}))()}},{key:"_decodeStereoStream",value:function(e,n){return rn(Qe().m(function t(){var o,a,i,u;return Qe().w(function(t){for(;;)switch(t.n){case 0:return o=He(),a=He(),i=0,u=function(){var t=rn(Qe().m(function t(){var u,f,l,c,s,v,h,y,b,d,p,m,w,g,k;return Qe().w(function(t){for(;;)switch(t.n){case 0:u=null,f=!0,l=!1,c=!1,t.p=1,v=an(e);case 2:return t.n=3,nn(v.next());case 3:if(!(l=!(h=t.v).done)){t.n=8;break}if(y=h.value,!f){t.n=4;break}u=y,t.n=6;break;case 4:return b=y,d=o(u),p=a(b),t.n=5,[d,p];case 5:n&&n(i++);case 6:f=!f;case 7:l=!1,t.n=2;break;case 8:t.n=10;break;case 9:t.p=9,k=t.v,c=!0,s=k;case 10:if(t.p=10,t.p=11,!l||null==v.return){t.n=12;break}return t.n=12,nn(v.return());case 12:if(t.p=12,!c){t.n=13;break}throw s;case 13:return t.f(12);case 14:return t.f(10);case 15:if(f||!u){t.n=17;break}return m=r._createDummyFrame(),w=o(u),g=a(m),t.n=16,[w,g];case 16:n&&n(i++);case 17:return t.a(2)}},t,null,[[11,,12,14],[1,9,10,15]])}));return function(){return t.apply(this,arguments)}}(),t.d(Ke(tn(an(Lr(u())))),1);case 1:return t.a(2)}},t)}))()}},{key:"frameBufferToFrames",value:function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a;return Qe().m(function n(){var t,o,a,i,u,f,l,c,s,v,h,y,b,d,p,m;return Qe().w(function(n){for(;;)switch(n.n){case 0:if(1!==(t=r.length)){n.n=4;break}o=Re(r,1),a=o[0],i=0;case 1:if(!(i<a.length)){n.n=3;break}for(u=new Float32Array(e),f=Math.min(i+e,a.length),l=0;l<f-i;l++)u[l]=a[i+l];return n.n=2,u;case 2:i+=e,n.n=1;break;case 3:n.n=9;break;case 4:if(2!==t){n.n=8;break}c=Re(r,2),s=c[0],v=c[1],h=Math.max(s.length,v.length),y=0;case 5:if(!(y<h)){n.n=7;break}for(b=new Float32Array(e),d=new Float32Array(e),p=Math.min(y+e,h),m=0;m<p-y;m++)b[m]=y+m<s.length?s[y+m]:0,d[m]=y+m<v.length?v[y+m]:0;return n.n=6,[b,d];case 6:y+=e,n.n=5;break;case 7:n.n=9;break;case 8:throw new Error("Unsupported channel count: ".concat(t));case 9:return n.a(2)}},n)})()}},{key:"collectFrames",value:(t=Ne(Qe().m(function r(e){var n,t,o,a,i,u,f,l;return Qe().w(function(r){for(;;)switch(r.n){case 0:n=[],t=!1,o=!1,r.p=1,i=an(e);case 2:return r.n=3,i.next();case 3:if(!(t=!(u=r.v).done)){r.n=5;break}f=u.value,n.push(f);case 4:t=!1,r.n=2;break;case 5:r.n=7;break;case 6:r.p=6,l=r.v,o=!0,a=l;case 7:if(r.p=7,r.p=8,!t||null==i.return){r.n=9;break}return r.n=9,i.return();case 9:if(r.p=9,!o){r.n=10;break}throw a;case 10:return r.f(9);case 11:return r.f(7);case 12:return r.a(2,n)}},r,null,[[8,,9,11],[1,6,7,12]])})),function(r){return t.apply(this,arguments)})},{key:"_createDummyFrame",value:function(){return{nBfu:0,blockModes:[0,0,0],scaleFactorIndices:new Int32Array(0),wordLengthIndices:new Int32Array(0),quantizedCoefficients:[]}}},{key:"createAeaBlob",value:(n=Ne(Qe().m(function r(e){var n,t,o,a,i,u,f,l,c,s,v,h,y,b,d,p,m,w,g,k,S=arguments;return Qe().w(function(r){for(;;)switch(r.n){case 0:t=(n=S.length>1&&void 0!==S[1]?S[1]:{}).title,o=void 0===t?"encoded by atrac1.js":t,a=n.channelCount,i=void 0===a?1:a,u=[],f=!1,l=!1,r.p=1,s=an(e);case 2:return r.n=3,s.next();case 3:if(!(f=!(v=r.v).done)){r.n=5;break}h=v.value,u.push(lr(h));case 4:f=!1,r.n=2;break;case 5:r.n=7;break;case 6:r.p=6,k=r.v,l=!0,c=k;case 7:if(r.p=7,r.p=8,!f||null==s.return){r.n=9;break}return r.n=9,s.return();case 9:if(r.p=9,!l){r.n=10;break}throw c;case 10:return r.f(9);case 11:return r.f(7);case 12:for(y=sr.createHeader(o,u.length,i),b=y.length+u.reduce(function(r,e){return r+e.length},0),(d=new Uint8Array(b)).set(y,0),p=y.length,m=0,w=u;m<w.length;m++)g=w[m],d.set(g,p),p+=g.length;return r.a(2,new Blob([d],{type:"application/octet-stream"}))}},r,null,[[8,,9,11],[1,6,7,12]])})),function(r){return n.apply(this,arguments)})},{key:"createWavBlob",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:o,a=Array.isArray(e)?e:[e];if(1===n)return r._createMonoWavBlob(a,t);if(2===n)return r._createStereoWavBlob(a,t);throw new Error("Unsupported channel count: ".concat(n))}},{key:"_createMonoWavBlob",value:function(e,n){var t=e.reduce(function(r,e){return r+e.length},0),o=new ArrayBuffer(44+2*t),a=new DataView(o);r._writeWavHeader(a,t,1,n);var i,u=44,f=Ge(e);try{for(f.s();!(i=f.n()).done;)for(var l=i.value,c=0;c<l.length;c++){var s=Math.max(-1,Math.min(1,l[c]));a.setInt16(u,s<0?s*U:s*q,!0),u+=2}}catch(r){f.e(r)}finally{f.f()}return new Blob([o],{type:"audio/wav"})}},{key:"_createStereoWavBlob",value:function(e,n){var t=e.reduce(function(r,e){var n=Re(e,2),t=n[0],o=n[1];return r+Math.max(t.length,o.length)},0),o=new ArrayBuffer(44+2*t*2),a=new DataView(o);r._writeWavHeader(a,t,2,n);var i,u=44,f=Ge(e);try{for(f.s();!(i=f.n()).done;)for(var l=Re(i.value,2),c=l[0],s=l[1],v=Math.max(c.length,s.length),h=0;h<v;h++){var y=h<c.length?c[h]:0,b=h<s.length?s[h]:0,d=Math.max(-1,Math.min(1,y)),p=Math.max(-1,Math.min(1,b));a.setInt16(u,d<0?d*U:d*q,!0),u+=2,a.setInt16(u,p<0?p*U:p*q,!0),u+=2}}catch(r){f.e(r)}finally{f.f()}return new Blob([o],{type:"audio/wav"})}},{key:"_writeWavHeader",value:function(r,e,n,t){var o=t*n*2,a=2*n,i=e*a,u=36+i,f=0,l=function(e,n){for(var t=0;t<n.length;t++)r.setUint8(e+t,n.charCodeAt(t))};l(f,"RIFF"),f+=4,r.setUint32(f,u,!0),l(f+=4,"WAVE"),l(f+=4,"fmt "),f+=4,r.setUint32(f,16,!0),f+=4,r.setUint16(f,1,!0),f+=2,r.setUint16(f,n,!0),f+=2,r.setUint32(f,t,!0),f+=4,r.setUint32(f,o,!0),f+=4,r.setUint16(f,a,!0),f+=2,r.setUint16(f,16,!0),l(f+=2,"data"),f+=4,r.setUint32(f,i,!0)}},{key:"parseAeaBlob",value:(e=Ne(Qe().m(function r(e){var n,t,o,a,i,l;return Qe().w(function(r){for(;;)switch(r.n){case 0:return r.n=1,e.arrayBuffer();case 1:for(n=r.v,t=new Uint8Array(n.slice(0,u)),o=sr.parseHeader(t),a=[],i=u;i<n.byteLength;i+=f)(l=new Uint8Array(n.slice(i,i+f))).length===f&&a.push(l);return r.a(2,{info:o,frameData:a})}},r)})),function(r){return e.apply(this,arguments)})},{key:"deserializedFrameStream",value:Qe().m(function r(e){var n,t,o,a;return Qe().w(function(r){for(;;)switch(r.n){case 0:n=Ge(e),r.p=1,n.s();case 2:if((t=n.n()).done){r.n=4;break}return o=t.value,r.n=3,cr(o);case 3:r.n=2;break;case 4:r.n=6;break;case 5:r.p=5,a=r.v,n.e(a);case 6:return r.p=6,n.f(),r.f(6);case 7:return r.a(2)}},r,null,[[1,5,6,7]])})},{key:"assemblePcmFrames",value:function(r,e){if(1===e){var n,t=r.reduce(function(r,e){return r+e.length},0),o=new Float32Array(t),a=0,i=Ge(r);try{for(i.s();!(n=i.n()).done;){var u=n.value;o.set(u,a),a+=u.length}}catch(r){i.e(r)}finally{i.f()}return o}if(2===e){var f,l=r.reduce(function(r,e){var n=Re(e,2),t=n[0],o=n[1];return r+Math.max(t.length,o.length)},0),c=new Float32Array(2*l),s=0,v=Ge(r);try{for(v.s();!(f=v.n()).done;)for(var h=Re(f.value,2),y=h[0],b=h[1],d=Math.max(y.length,b.length),p=0;p<d;p++)c[2*s]=p<y.length?y[p]:0,c[2*s+1]=p<b.length?b[p]:0,s++}catch(r){v.e(r)}finally{v.f()}return c}throw new Error("Unsupported channel count: ".concat(e))}}]);var e,n,t}();function ln(r){return ln="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},ln(r)}function cn(r,e){var n=Object.keys(r);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(r);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})),n.push.apply(n,t)}return n}function sn(r){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?cn(Object(n),!0).forEach(function(e){vn(r,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):cn(Object(n)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(n,e))})}return r}function vn(r,e,n){return(e=function(r){var e=function(r,e){if("object"!=ln(r)||!r)return r;var n=r[Symbol.toPrimitive];if(void 0!==n){var t=n.call(r,e||"default");if("object"!=ln(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(r)}(r,"string");return"symbol"==ln(e)?e:e+""}(e))in r?Object.defineProperty(r,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):r[e]=n,r}function hn(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var r,e,n="function"==typeof Symbol?Symbol:{},t=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function a(n,t,o,a){var f=t&&t.prototype instanceof u?t:u,l=Object.create(f.prototype);return yn(l,"_invoke",function(n,t,o){var a,u,f,l=0,c=o||[],s=!1,v={p:0,n:0,v:r,a:h,f:h.bind(r,4),d:function(e,n){return a=e,u=0,f=r,v.n=n,i}};function h(n,t){for(u=n,f=t,e=0;!s&&l&&!o&&e<c.length;e++){var o,a=c[e],h=v.p,y=a[2];n>3?(o=y===t)&&(f=a[(u=a[4])?5:(u=3,3)],a[4]=a[5]=r):a[0]<=h&&((o=n<2&&h<a[1])?(u=0,v.v=t,v.n=a[1]):h<y&&(o=n<3||a[0]>t||t>y)&&(a[4]=n,a[5]=t,v.n=y,u=0))}if(o||n>1)return i;throw s=!0,t}return function(o,c,y){if(l>1)throw TypeError("Generator is already running");for(s&&1===c&&h(c,y),u=c,f=y;(e=u<2?r:f)||!s;){a||(u?u<3?(u>1&&(v.n=-1),h(u,f)):v.n=f:v.v=f);try{if(l=2,a){if(u||(o="next"),e=a[o]){if(!(e=e.call(a,f)))throw TypeError("iterator result is not an object");if(!e.done)return e;f=e.value,u<2&&(u=0)}else 1===u&&(e=a.return)&&e.call(a),u<2&&(f=TypeError("The iterator does not provide a '"+o+"' method"),u=1);a=r}else if((e=(s=v.n<0)?f:n.call(t,v))!==i)break}catch(e){a=r,u=1,f=e}finally{l=1}}return{value:e,done:s}}}(n,o,a),!0),l}var i={};function u(){}function f(){}function l(){}e=Object.getPrototypeOf;var c=[][t]?e(e([][t]())):(yn(e={},t,function(){return this}),e),s=l.prototype=u.prototype=Object.create(c);function v(r){return Object.setPrototypeOf?Object.setPrototypeOf(r,l):(r.__proto__=l,yn(r,o,"GeneratorFunction")),r.prototype=Object.create(s),r}return f.prototype=l,yn(s,"constructor",l),yn(l,"constructor",f),f.displayName="GeneratorFunction",yn(l,o,"GeneratorFunction"),yn(s),yn(s,o,"Generator"),yn(s,t,function(){return this}),yn(s,"toString",function(){return"[object Generator]"}),(hn=function(){return{w:a,m:v}})()}function yn(r,e,n,t){var o=Object.defineProperty;try{o({},"",{})}catch(r){o=0}yn=function(r,e,n,t){if(e)o?o(r,e,{value:n,enumerable:!t,configurable:!t,writable:!t}):r[e]=n;else{var a=function(e,n){yn(r,e,function(r){return this._invoke(e,n,r)})};a("next",0),a("throw",1),a("return",2)}},yn(r,e,n,t)}function bn(r,e,n,t,o,a,i){try{var u=r[a](i),f=u.value}catch(r){return void n(r)}u.done?e(f):Promise.resolve(f).then(t,o)}function dn(r){return function(){var e=this,n=arguments;return new Promise(function(t,o){var a=r.apply(e,n);function i(r){bn(a,t,o,i,u,"next",r)}function u(r){bn(a,t,o,i,u,"throw",r)}i(void 0)})}}function pn(r,e,n){return mn.apply(this,arguments)}function mn(){return(mn=dn(hn().m(function r(e,n,t){var o,a,i,u,f,l,c;return hn().w(function(r){for(;;)switch(r.n){case 0:return t=null!=t?t:"encoded by carta1",r.p=1,o=fn.frameBufferToFrames(e),a=e.length,i=new gr(n),u=fn.encodeStream(o,{channelCount:a,encoderOptions:i}),r.n=2,fn.collectFrames(u);case 2:return f=r.v,r.n=3,fn.createAeaBlob(f,{title:t,channelCount:a});case 3:return l=r.v,r.a(2,{aeaBlob:l});case 4:throw r.p=4,c=r.v,console.error("Worker encode error:",c),c;case 5:return r.a(2)}},r,null,[[1,4]])}))).apply(this,arguments)}function wn(){return(new gr).toObject()}function gn(r){return kn.apply(this,arguments)}function kn(){return(kn=dn(hn().m(function r(e){var n,t,a,i,u,f,l,c,s;return hn().w(function(r){for(;;)switch(r.n){case 0:return n=e.header,t=e.aeaData,(a=e.info)?i=sn({sampleRate:o},a):n?(u=sr.parseHeader(n),i=sn({sampleRate:o},u)):i={channelCount:2,sampleRate:o},f=fn.deserializedFrameStream(t),l=fn.decodeStream(f,{channelCount:i.channelCount}),r.n=1,fn.collectFrames(l);case 1:return c=r.v,s=fn.createWavBlob(c,i.channelCount,i.sampleRate),r.a(2,{wavBlob:s,info:i})}},r)}))).apply(this,arguments)}self.onmessage=function(){var r=dn(hn().m(function r(e){var n,t,o,a,i,u,f,l,c,s,v;return hn().w(function(r){for(;;)switch(r.n){case 0:n=e.data,t=n.jobId,o=n.type,a=n.pcmData,i=n.aea,u=n.options,f=n.title,l=n.blob,r.p=1,s=o,r.n="encode"===s?2:"decode"===s?4:"parseAea"===s?6:"getEncoderOptions"===s?8:9;break;case 2:return r.n=3,pn(a,u,f);case 3:return c=r.v,r.a(3,10);case 4:return r.n=5,gn(i);case 5:return c=r.v,r.a(3,10);case 6:return r.n=7,fn.parseAeaBlob(l);case 7:return c=r.v,r.a(3,10);case 8:return c=wn(),r.a(3,10);case 9:throw new Error("Unknown worker message type: ".concat(o));case 10:self.postMessage({jobId:t,result:c}),r.n=12;break;case 11:r.p=11,v=r.v,console.error("Worker error:",v),self.postMessage({jobId:t,error:v.message});case 12:return r.a(2)}},r,null,[[1,11]])}));return function(e){return r.apply(this,arguments)}}();var Sn=self;for(var An in r)Sn[An]=r[An];r.__esModule&&Object.defineProperty(Sn,"__esModule",{value:!0});
2
2
  //# sourceMappingURL=carta1-worker.min.js.map