SuperCollider CLASSES (extension)
Libraries>BBCut

# CutMixer

BBCut2 volume and panning control
Source: /Users/zzk/Library/Application Support/SuperCollider/downloaded-quarks/BBCut/classes/cutsynths/CutMixer.sc
Inherits from: CutSynth : Object
See also: BBCut

## 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;
    )

helpfile source: /Users/zzk/Library/Application Support/SuperCollider/downloaded-quarks/BBCut/HelpSource/Classes/CutMixer.schelp
link::Classes/CutMixer::
sc version: 3.8.0