我有一个用 do 生成的合成器:
(
SynthDef(\siny, { arg freq, outBus=0; Out.ar( outBus, SinOsc.ar(freq!2,0,0.2) ) } ).send(s);
SynthDef(\filter, { arg cFreq,q=0.8, inBus; Out.ar( 0, BPF.ar(In.ar(inBus), cFreq!2, 1/q ) ) } ).send(s);
)
(
~sourceOut = Bus.audio(s);
~sine_Group = ParGroup.new;
z = [100,500,1000,1500,250];
{
z.do({ arg val; Synth.head(~sine_Group, \siny, [\freq: val, \outBus: ~sourceOut]) });
z.do({ arg val; Synth.after(~sine_Group, \filter, [\inBus: ~sourceOut, \cFreq: 200] ) });
}.play;
)
现在,我的理解是,多个 Synth\siny 实例的输出在总线 ~sourceOut 中混合,并作为输入到 synth\filter
我真正想做的是在 \siny 和 \filter 的多个实例之间建立一对一的连接。我可以使用一组总线来连接它们吗?如果是这样,我该怎么做?