SuperCollider CLASSES (extension)

PanX
ExtensionExtension

Equal power pan across an array of speakers
 

Description

Multichannel equal power panner.

Class Methods

*kr (numChans, in, pos: 0, level: 1, width: 2)

Arguments:

numChans

Number of output channels.

in

Input signal.

pos

A value between 0 and 1. 0 is first speaker, 1 is the last. Values < 0 fade out sound from the first speakers, and values > 1 fade out sound from the last speakers. Sound does NOT wrap.

level

A control rate level input.

width

The width of the panning envelope. Nominally this is 2.0 which pans between pairs of adjacent speakers. Width values greater than two will spread the pan over greater numbers of speakers. Width values less than one will leave silent gaps between speakers.

*ar (numChans, in, pos: 0, level: 1, width: 2)

Arguments:

numChans

Number of output channels.

in

Input signal.

pos

A value between 0 and 1. 0 is first speaker, 1 is the last. Values < 0 fade out sound from the first speakers, and values > 1 fade out sound from the last speakers. Sound does NOT wrap.

level

A control rate level input.

width

The width of the panning envelope. Nominally this is 2.0 which pans between pairs of adjacent speakers. Width values greater than two will spread the pan over greater numbers of speakers. Width values less than one will leave silent gaps between speakers.

Inherited class methods

Instance Methods

-init (numChans ... theInputs)

Inherited instance methods

Examples

// five channel panning across an array
s.boot;
(
a = {
    PanX.ar(
        5,                 // numChans
        ClipNoise.ar,     // in
        MouseX.kr(-0.5, 1.5), // pos
        0.5,            // level
        MouseY.kr(1, 3)            // width
    );
}.play(s);
s.scope(5);
)

a.free;