RedMixerChannel channel strip
req: Conductor quark
see also: RedMixer, RedMixerGUI, RedEffectModule
class methods:
*new(outputChannels, group, lag)
outputChannels - array. default [0, 1]
group - if nil then Server.default.defaultGroup will be used
lag - for eq settings, balance and volume. in seconds. default= 0.05.
instance methods:
mute(boolean)
true sets the volume to zero. false recalls the volume.
insertClass(redEfxClass, addAction)
creates a new RedEffectModule before the equaliser.
redEfxClass - a class or an array of classes.
addAction - local to the inserts. default is \addToHead which will put it first in the chain of inserts.
insert(redEfx, addAction)
adds a RedEffectModule before the equaliser.
note: you can not do .insert(RedEfxRing.new) without a fork.
redEfx - an instance or an array of instances.
addAction - local to the inserts. default is \addToHead which will put it first in the chain of inserts.
removeClass(redEfxClass)
redEfxClass - free and remove all instances of this RedEffectModule class. can also be an array.
remove(redEfx)
redEfx - free and remove this RedEffectModule. can also be an array.
removeAll
free and remove all effects in one go.
defaults
revert all cvs to their defaults.
out
returns current bus.
out_(index)
set current bus.
gui(parent, position)
create a RedMixerChannelGUI.
free
free synth, equaliser, inserts and remove oscreponder.
resetPeaked
set cvs.peaked0 and cvs.peaked1 to 0.
def(channels)
returns the mixer channel synthdef.
defEq(channels)
returns the equaliser synthdef.
instance variables:
<group
the group in use.
<cvs
dictionary of CVs:
out -
lag -
eqHi -
eqMi -
eqLo -
hiFreq -
hiBand -
hiGain -
miFreq -
miBand -
miGain -
loFreq -
loBand -
loGain -
bal -
vol -
peak0 -
peak1 -
peaked0 -
peaked1 -
<inserts
array of current inserts.
<args
array of arguments sent to the mixer channel synth.
//--
a= RedMixerChannel(#[0, 1]);
b= Pbind(\pan, Pseq([-1, 1], inf), \amp, 0.5).play
a.cvs.vol.value= -9
a.out= 1
a.out= 0
a.cvs.vol.value= 0
a.cvs.lag.value= 1
a.cvs.bal.value= -0.9
a.cvs.bal.value= 0.9
a.cvs.peak0.value
a.cvs.peak1.value
a.cvs.vol.value= 18
a.cvs.peaked0.value
a.cvs.peaked1.value
a.cvs.vol.value= -9
a.resetPeaked
a.cvs.peaked0.value
a.cvs.peaked1.value
a.free
b.stop
//--
a= RedMixerChannel(#[0, 1]);
b= {Pan2.ar(WhiteNoise.ar(LFNoise2.kr(4).abs), LFNoise2.kr(2))}.play
a.cvs.vol.value= -12
a.cvs.eqHi.value= 1
a.cvs.hiFreq.value= 9000
a.cvs.hiBand.input= 0.3
a.cvs.hiGain.input= 0.7
a.cvs.eqHi.value= 0
a.cvs.eqMi.value= 1
a.cvs.miFreq.value= 1500
a.cvs.miBand.input= 0.2
a.cvs.miGain.input= 0.9
a.cvs.eqMi.value= 0
a.cvs.eqLo.value= 1
a.cvs.loFreq.value= 500
a.cvs.loBand.input= 0.3
a.cvs.loGain.input= 0.7
a.cvs.eqLo.value= 0
a.free
b.free
//--
a= RedMixerChannel(#[0, 1]);
b= {Pan2.ar(WhiteNoise.ar(LFNoise2.kr(4).abs), LFNoise2.kr(2))}.play
c= RedEfxVerb.new
a.insert(c)
a.inserts[0].cvs.verbMix.input= 0.5
a.insertClass([RedEfxBitc, RedEfxDist])
a.inserts
a.remove(c)
a.inserts
a.insertClass(RedEfxRing, \addToTail)
a.inserts.last.cvs.ringMix.input= 0.5
a.inserts
a.removeClass(RedEfxRing)
a.inserts
a.removeAll
a.inserts
a.mute(true)
a.mute(false)
a.free
b.free