Classes | UGens > FFT

PV_RectComb2 : PV_ChainUGen : WidthFirstUGen : UGen : AbstractFunction : Object

Make gaps in spectrum.
Source: FFT.sc

Description

Alternates blocks of bins between the two inputs.

Class Methods

PV_RectComb2.new(bufferA, bufferB, numTeeth: 0, phase: 0, width: 0.5)

Arguments:

bufferA

FFT buffer A.

bufferB

FFT buffer B.

numTeeth

Number of teeth in the comb.

phase

Starting phase of comb pulse.

width

Pulse width of the comb.

Inherited class methods

Instance Methods

Inherited instance methods

Examples

s.boot;
b = Buffer.read(s, Platform.resourceDir +/+ "sounds/a11wlk01.wav");

(
var exBuf;
Dialog.getPaths({ arg paths; //get a second soundfile;
    paths.do({ arg p; exBuf = Buffer.read(s, p);

        SynthDef("help-max", { arg out=0, soundBufnum1=2, soundBufnum2 = 3;
            var inA, chainA, inB, chainB, chain ;
            inA = PlayBuf.ar(1, soundBufnum1, BufRateScale.kr(soundBufnum1), loop: 1);
            inB =  PlayBuf.ar(1, soundBufnum2, BufRateScale.kr(soundBufnum2), loop: 1);
            chainA = FFT(LocalBuf(2048), inA);
            chainB = FFT(LocalBuf(2048), inB);
            chain = PV_RectComb2(chainA, chainB,  MouseX.kr(0, 32), MouseY.kr, 0.3);
            Out.ar(out,  0.5 * IFFT(chain).dup);
        }).play(s, [\soundBufnum1, b, \soundBufnum2, exBuf]);
    })
},{
    "cancelled".postln;
});
)