1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[81],{10081:function(t,e,n){async function a(t){let e=new(window.AudioContext||window.webkitAudioContext);try{let n=await t.arrayBuffer(),a=await e.decodeAudioData(n),o=a.sampleRate,i=a.duration,r=a.numberOfChannels,s=[],f=0,u=0;for(;f<i;){let t=Math.max(0,f-(u>0?2:0)),n=Math.min(i,f+30),h=Math.floor(t*o),w=Math.floor(n*o)-h,d=Math.floor(16e3*w/o),c=e.createBuffer(1,d,16e3),C=c.getChannelData(0);for(let t=0;t<d;t++){let e=Math.floor(t*o/16e3),n=0;for(let t=0;t<r;t++){let l=a.getChannelData(t);n+=l[h+e]||0}C[t]=n/r}let U=await l(c);s.push({blob:U,index:u,start:t,end:n}),f+=30,u++}return s}finally{await e.close()}}async function l(t){let e=t.numberOfChannels,n=t.sampleRate,a=t.length*e*2,l=new ArrayBuffer(44+a),o=new DataView(l),i=(t,e)=>{for(let n=0;n<e.length;n++)o.setUint8(t+n,e.charCodeAt(n))};i(0,"RIFF"),o.setUint32(4,36+a,!0),i(8,"WAVE"),i(12,"fmt "),o.setUint32(16,16,!0),o.setUint16(20,1,!0),o.setUint16(22,e,!0),o.setUint32(24,n,!0),o.setUint32(28,n*e*2,!0),o.setUint16(32,2*e,!0),o.setUint16(34,16,!0),i(36,"data"),o.setUint32(40,a,!0);let r=[];for(let n=0;n<e;n++)r.push(t.getChannelData(n));let s=44;for(let n=0;n<t.length;n++)for(let t=0;t<e;t++){let e=Math.max(-1,Math.min(1,r[t][n])),a=e<0?32768*e:32767*e;o.setInt16(s,a,!0),s+=2}return new Blob([l],{type:"audio/wav"})}n.d(e,{splitAudioIntoChunks:function(){return a}})}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.