SuperCollider CLASSES

PV_Mul

Complex multiply.

Description

Complex Multiplication:

(RealA * RealB) - (ImagA * ImagB),
(ImagA * RealB) + (RealA * ImagB)

Class Methods

*new (bufferA, bufferB)

From superclass: PV_MagMul

Arguments:

bufferA

FFT buffer A.

bufferB

FFT buffer B.

Inherited class methods

Instance Methods

Inherited instance methods

Examples

s.boot;

(
SynthDef("help-mul", { arg out=0;
    var inA, chainA, inB, chainB, chain ;
    inA = SinOsc.ar(500, 0, 0.5);
    inB =  SinOsc.ar(Line.kr(100, 400, 5), 0, 0.5);
    chainA = FFT(LocalBuf(2048), inA);
    chainB = FFT(LocalBuf(2048), inB);
    chain = PV_Mul(chainA, chainB);
    Out.ar(out,  0.1 * IFFT(chain).dup);
}).play(s);
s.scope;
)

(
SynthDef("help-mul2", { arg out=0;
    var inA, chainA, inB, chainB, chain ;
    inA = SinOsc.ar(500, 0, 0.5) * Line.kr;
    inB = LFNoise1.ar(20);
    chainA = FFT(LocalBuf(2048), inA);
    chainB = FFT(LocalBuf(2048), inB);
    chain = PV_Mul(chainA, chainB);
    Out.ar(out,  0.1 * IFFT(chain).dup);
}).play(s);
s.scope;
)