2 summary:: Make gaps in spectrum.
3 related:: Classes/FFT, Classes/IFFT, Classes/PV_RectComb
8 Alternates blocks of bins between the two inputs.
27 Number of teeth in the comb.
32 Starting phase of comb pulse.
37 Pulse width of the comb.
45 b = Buffer.read(s, Help.dir +/+ "sounds/a11wlk01.wav");
49 Dialog.getPaths({ arg paths; //get a second soundfile;
50 paths.do({ arg p; exBuf = Buffer.read(s, p);
52 SynthDef("help-max", { arg out=0, soundBufnum1=2, soundBufnum2 = 3;
53 var inA, chainA, inB, chainB, chain ;
54 inA = PlayBuf.ar(1, soundBufnum1, BufRateScale.kr(soundBufnum1), loop: 1);
55 inB = PlayBuf.ar(1, soundBufnum2, BufRateScale.kr(soundBufnum2), loop: 1);
56 chainA = FFT(LocalBuf(2048), inA);
57 chainB = FFT(LocalBuf(2048), inB);
58 chain = PV_RectComb2(chainA, chainB, MouseX.kr(0, 32), MouseY.kr, 0.3);
59 Out.ar(out, 0.5 * IFFT(chain).dup);
60 }).play(s, [\soundBufnum1, b, \soundBufnum2, exBuf]);