SuperCollider CLASSES (extension)

CutMixer

BBCut2 volume and panning control
Inherits from: CutSynth : Object

Description

The CutMixer organises the final output from a given rendering CutGroup. It defaults to outputting a stereo centred signal at full volume on busses 0 and 1. Whilst the main rendering in bbcut2 is mono, the final output is thus rendered to stereo. A stereo buffer cutup would use a simpler CutMixer where no panning occurs.

Class Methods

*new (outbus: 0, volume: 1, ampfunc: 1, panfunc: 0)

Arguments:

outbus

Bus number for final output. The stereo output will be placed on this bus plus the one above. The default is thus 0 and 1.

volume

output volume multiplier. Defaults to 1.0.

ampfunc

Something that responds to .value and returns a cut's amplitude. This is called for every repeat in a BBCutBlock. The first argument is the repeat number in the block, and the second argument is the block itself. If ampfunc responds to .updateblock, that will also be called every block with the current block passed as an argument.

panfunc

Something that responds to .value and returns a cut's pan position. This is called for every repeat in a BBCutBlock. The first argument is the repeat number in the block, and the second argument is the block itself. If panfunc responds to .updateblock, that will also be called every block with the current block passed as an argument.

Inherited class methods

Instance Methods

Inherited instance methods

Undocumented instance methods

-ampfunc

-ampfunc = value

-free

-initCutMixer (ob: 0, vol: 1, af: 1, pf: 0)

-outbus

-panfunc

-panfunc = value

-renderBlock (block, clock)

-setup

-volume

-volume = value

Examples

TempoClock.default.tempo_(2);

(   
BBCut2(CutGroup([CutStream1.new,CutMixer(0,1.0,{1.0.rand},{1.0.rand2})]), ChooseCutProc(0.25,4)).play
)


(   
BBCut2(CutGroup([CutStream1.new,CutMixer(0,1.0,RollAmplitude.new,CutPan1.new)]), WarpCutProc1(0.25,4)).play;
)