pd-gui
Joined: Jun 29, 2009 Posts: 1 Location: Brazil
|
Posted: Mon Jun 29, 2009 2:45 pm Post subject:
New in SC Subject description: Multichannel classes |
 |
|
Hi,
i'm a Brazilian composer and new in SC, and also use PD.
I'm very excited with SC, for reasons more cleaner code
My question is:
In the Multichannel session i found classes as Pan2 and Pan4:
Pan2 : Panner {
*ar { arg in, pos = 0.0, level = 1.0;
^this.multiNew('audio', in, pos, level )
}
*kr { arg in, pos = 0.0, level = 1.0;
^this.multiNew('control', in, pos, level )
}
init { arg ... theInputs;
inputs = theInputs;
channels = [
OutputProxy(rate, this, 0),
OutputProxy(rate, this, 1)
];
^channels
}
}
Pan4 : Panner {
*ar { arg in, xpos = 0.0, ypos = 0.0, level = 1.0;
^this.multiNew('audio', in, xpos, ypos, level )
}
*kr { arg in, xpos = 0.0, ypos = 0.0, level = 1.0;
^this.multiNew('control', in, xpos, ypos, level )
}
init { arg ... theInputs;
inputs = theInputs;
channels = [ OutputProxy(rate,this, 0), OutputProxy(rate,this, 1),
OutputProxy(rate,this, 2), OutputProxy(rate,this, 3) ];
^channels
}
}
I would do something like Pan6 or Pan8.
could I insert the new class of in Pan.sc, modifying the "channels" variable depending on what I want, without a problem?
Or have I to follow another procedure?
Thanks
[]s |
|
dewdrop_world

Joined: Aug 28, 2006 Posts: 858 Location: Guangzhou, China
Audio files: 4
|
Posted: Tue Jun 30, 2009 4:35 am Post subject:
|
 |
|
From the help:
Quote: | PanAz azimuth panner
PanAz.ar(numChans, in, pos, level, width, orientation)
Multichannel equal power panner.
numChans - number of output channels
in - input signal
pos - pan position. Channels are evenly spaced over a cyclic period of 2.0 with 0.0 equal to the position directly in front, 2.0/numChans a clockwise shift 1/numChans of the way around the ring, 4.0/numChans equal to a shift of 2/numChans, etc. Thus all channels will be cyclically panned through if a sawtooth wave from -1 to +1 is used to modulate the pos. N.B. Front may or may not correspond to a speaker depending on the setting of the orientation arg, see below.
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.
orientation - Should be zero if the front is a vertex of the polygon. The first speaker will be directly in front. Should be 0.5 if the front bisects a side of the polygon. Then the first speaker will be the one left of center. Default is 0.5. |
You wouldn't be able to add Pan6 or Pan8 just by copying/pasting the class file code. All UGens require plugins for the server, written in c++. _________________ ddw online: http://www.dewdrop-world.net
sc3 online: http://supercollider.sourceforge.net |
|