// title: arbitrary nonlinear filter // author: mesmeon // description: // run first code block, then second, then third. re-run third block to randomly generate a new array of filter parameters. processes standard audio in and plays through standard audio out // code: //larger sparse arrays; some may lead to silence //feedback warning! ( a=[10]++(Array.fill(10,{var bsize, asize; bsize= rrand(1,2); asize=rrand(0,1); [0.7.rand2,bsize]++(Array.fill(bsize,{[rrand(0,999), exprand(0.1,6)]}).flatten) ++ [asize] ++ (Array.fill(asize,{[rrand(0,999), exprand(0.1,6)]}).flatten); }).flatten); //feedback coefficients c=Buffer.sendCollection(s, a, 1); ) {(NL2.ar(SoundIn.ar([0,1]),c,1000,1000).clip2(1.0))}.play //with ( var e; var num; num=rrand(2,10); e=[num]++(Array.fill(num,{var bsize, asize; bsize= rrand(1,2); asize=rrand(0,1); [0.7.rand2,bsize]++(Array.fill(bsize,{[rrand(0,999), exprand(0.1,6)]}).flatten) ++ [asize] ++ (Array.fill(asize,{[rrand(0,999), exprand(0.1,6)]}).flatten); }).flatten); if(e.size<=a.size,{ c.sendCollection(e); }); )