( name: 'resonant_hat', func: { var env = Env([1, 0], [\decay.kr(0.05)], \envCurve.kr(-4)).kr(2); var sig = BrownNoise.ar; var filterFreq = \filtFreq.kr(8000); var bandWidth = \bandwidth.kr(0.05); var theta = (filterFreq * 2 * 3.14159) / SampleRate.ir(); var r = 1 - ((theta * bandWidth) / 2); var a0 = (1 - r.pow(2)) / 2; var ampComp = 1 - ( 1 / a0) * a0.sqrt; sig = Resonz.ar(sig, filterFreq , bandWidth); sig * ampComp; }, specs:( decay: [0.01, 2.0], envCurve: [-4, 4], bandwidth: [0.01, 1.0], noiseGain: [0.0, 1.0], attack: [0.0, 1.0], release: [0.01, 2.0] ) )