1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="978be124-2921-49ab-9fdc-f6480a80c52d",e._sentryDebugIdIdentifier="sentry-dbid-978be124-2921-49ab-9fdc-f6480a80c52d")}catch(e){}}(),(()=>{let e=null;async function t(e){if(16e3===e.sampleRate&&1===e.numberOfChannels)return e;let t=new OfflineAudioContext(1,Math.ceil(e.length*(16e3/e.sampleRate)),16e3),n=t.createBufferSource(),a=t.createBuffer(e.numberOfChannels,e.length,e.sampleRate);for(let t=0;t<e.numberOfChannels;t++)a.copyToChannel(e.getChannelData(t),t);n.buffer=a,n.connect(t.destination),n.start(0);let r=await t.startRendering();if(r.numberOfChannels>1){let e=t.createBuffer(1,r.length,16e3),n=e.getChannelData(0),a=r.getChannelData(0),l=r.getChannelData(1),s=r.length;for(let e=0;e<s;e++)n[e]=(a[e]+l[e])*.5;return e}return r}function n(e){let t=e.length,n=e.numberOfChannels,a=e.sampleRate,r=2*n,l=t*r,s=44+l,f=new ArrayBuffer(s),i=new DataView(f);function o(e,t,n){for(let a=0;a<n.length;a++)e.setUint8(t+a,n.charCodeAt(a))}o(i,0,"RIFF"),i.setUint32(4,s-8,!0),o(i,8,"WAVE"),o(i,12,"fmt "),i.setUint32(16,16,!0),i.setUint16(20,1,!0),i.setUint16(22,n,!0),i.setUint32(24,a,!0),i.setUint32(28,a*r,!0),i.setUint16(32,r,!0),i.setUint16(34,16,!0),o(i,36,"data"),i.setUint32(40,l,!0);let u=44,h=[];for(let t=0;t<n;t++)h.push(e.getChannelData(t));for(let e=0;e<t;e++)for(let t=0;t<n;t++){let n=Math.max(-1,Math.min(1,h[t][e]));i.setInt16(u,n<0?32768*n:32767*n,!0),u+=2}return f}async function a(a,r,l,s){let f=await a.arrayBuffer(),i=(e&&"closed"!==e.state||(e=new(self.AudioContext||self.webkitAudioContext)),"suspended"===e.state&&e.resume(),e),o=await i.decodeAudioData(f),u=o.sampleRate,h=o.getChannelData(0),d=h.length,c=Math.max(1,Math.floor(u/500)),g=Math.floor(l*u),b=0,m=d-1,y=0,C=0;for(let e=0;e<d;e+=c)if(Math.abs(h[e])>r){if(C>=g){b=y;break}C=0,y=e+c}else(C+=c)<g&&(y=e);b=Math.max(0,b-Math.floor(s*u));let w=d-1;C=0;for(let e=d-1;e>=0;e-=c)if(Math.abs(h[e])>r){if(C>=g){m=w;break}C=0,w=e-c}else(C+=c)<g&&(w=e);if(b>=(m=Math.min(d-1,m+Math.floor(s*u))))return n(o);let p=m-b,D=i.createBuffer(o.numberOfChannels,p,u);for(let e=0;e<o.numberOfChannels;e++){let t=o.getChannelData(e);D.getChannelData(e).set(t.subarray(b,m))}return n(await t(D))}self.addEventListener("message",async e=>{let{type:t,data:n}=e.data;try{if("trimSilence"===t){let{audioBlob:e,silenceThreshold:t,minSilenceDuration:r,padding:l}=n,s=await a(e,t,r,l);self.postMessage({type:"trimSilenceResult",data:s},{transfer:[s]})}}catch(e){self.postMessage({type:"error",error:e instanceof Error?e.message:"Unknown error"})}}),_N_E={}})();
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.