1const e={id:"weighting-test",title:"Weighting Curves",description:"A/ITU-R 468/C weighting curve comparison.",category:"Quality Tests",defaultSettings:{testSignal:"pink",weighting:"none",playing:!1},weightings:{none:"None (Flat)",a:"A-weighting",itu468:"ITU-R 468",c:"C-weighting"},createNodes(e,t){const n=e.createAnalyser() 2return n.fftSize=4096,n.connect(t),{analyser:n,source:null}},start(e,t,n){const i=this.createPinkNoise(n),a=n.createBufferSource() 3a.buffer=i,a.loop=!0,a.connect(e.analyser),a.start(),e.source=a},createPinkNoise(e){const t=2*e.sampleRate,n=e.createBuffer(1,t,e.sampleRate),data=n.getChannelData(0) 4let i=0,a=0,s=0,o=0,r=0,g=0,c=0 5for(let e=0;e<t;e++){const t=2*Math.random()-1 6i=.99886*i+.0555179*t,a=.99332*a+.0750759*t,s=.969*s+.153852*t,o=.8665*o+.3104856*t,r=.55*r+.5329522*t,g=-.7616*g-.016898*t,data[e]=.11*(i+a+s+o+r+g+c+.5362*t),c=.115926*t}return n},stop(e){e.source&&(e.source.stop(),e.source=null)},updateSettings(e,t,n){},keyboard:{handlers:{" ":e=>({playing:!e.playing})}},visualization:{type:"weighting-display"},controls:{showPlayButton:!0,infoText:"Compare weighting curves. A-weighting approximates human hearing."}} 7export{e as default}
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.