NodeProxy (Ndef, ProxySpace) audio routing

This seems like it should be very simple. But reading through at least tens of ways to do this I can’t seem to find a solution.

I have a series of functions in ProxySpace as instruments (some using Pbinds), some just Synths.

I have created a new Proxy to act as a simple delay for a test.

I can route one instrument at a time numerous ways, either using the default ‘in’ or by mapping with <>>.

What I’m struggling with (at least in ProxySpace) is routing several Synths to one (or more) FX bus(es) - much like one would do in a DAW if you wanted several instrument tracks to run through an FX bus.

I’m aware of the ‘slot’ chain to add an effect to one instrument (Proxy).

All examples seem to show this type of FX chain. What I’m looking to figure out is how to get a MANY TO ONE relationship, if that makes sense. Otherwise I need to create separate Delay FX on each Proxy.

Seems like I’m totally missing something here.

A simple example would be:

p = ProxySpace.push(s.boot);
p.fadeTime = 3;

// Sample player SynthDef
(
SynthDef(\bplay,
	{arg out = 0, buf = 0, rate = 1, amp = 0.5, pan = 0, pos = 0, rel=15;
		var sig,env=1 ;
		sig = Mix.ar(PlayBuf.ar(2,buf,BufRateScale.ir(buf) * rate,1,BufDur.kr(buf)*pos*44100,doneAction:2));
		env = EnvGen.ar(Env.linen(0.0,rel,0),doneAction:0);
		sig = sig * env;
		sig = sig * amp;
		Out.ar(out,Pan2.ar(sig.dup,pan));
}).add;
)

// Proxy Synth
~a.play;
(
~a = { | freq=100, time=5, dur=1 |
	var sig, env = 1;
	sig = SinOsc.ar(freq * LFNoise0.kr(time));
	sig = sig.dup * env * 0.3;
};
)

// Beats using SynthDef
(
~h = Pbind(
	\instrument, \bplay,
	\buf, d["Hats"][2],
	\dur, 0.25);
)
~h.play;

// FX
~fx1.play;
~fx1 = { |DelayC.ar(\in.ar) };

I’ve even tried making an new Bus:

~fxb = Bus.audio(s, 2);

And using that for the \out of my Pbind, setting with xset etc. Nothing seems to properly route.

I’m sure I’m missing something. I’ve many docs and tutorials but everyone seems to be showing ONE to ONE relationships, or only Control Rate changes.

Thanks in advance for any advice!
Isaac

JITLibExtensions quark, ProxySubmix.

hjh

1 Like

Thanks @jamshark70 - I had the Quark installed but didn’t even look. Seems like this should work. I appreciate your response!