Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //in AbstractPlayControlc Class extensions - file: wrapForNodeProxy.sc. Add this to AbstractPlaycontrol.buildMethods dictionary
- filter: #{ | func, proxy, channelOffset = 0, index |
- var ok, ugen;
- if(proxy.isNeutral) {
- ugen = func.value(Silent.ar);
- ok = proxy.initBus(ugen.rate, ugen.numChannels + channelOffset);
- if(ok.not) { Error("NodeProxy input: wrong rate/numChannels").throw }
- };
- { | out |
- var e = EnvGate.new * Control.names(["wet"++(index ? 0)]).kr(1.0);
- if(proxy.rate === 'audio') {
- var innerArgNames = func.def.argNames.reject({arg it; it == \in});
- var controlSigs;
- innerArgNames = innerArgNames.collect({arg innerArgName;
- innerArgName.asString ++ index ? 0;
- });
- controlSigs = innerArgNames.collect({arg innerArgName;
- Control.names([innerArgName]).kr(1.0);
- });
- "MY ARGS: %".format(innerArgNames).postln;
- "Controlnames: %".format(proxy.controlNames).postln;
- XOut.ar(out, e, SynthDef.wrap(func, nil, [In.ar(out, proxy.numChannels)] ++ controlSigs ))
- } {
- XOut.kr(out, e, SynthDef.wrap(func, nil, [In.kr(out, proxy.numChannels)])) };
- }.buildForProxy( proxy, channelOffset, index )
- },
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement