NodeProxy ( ProxySynthDef ) looks for inner envelopes in your definition function to find out whether a fade envelope is needed or not. In case there is no other inner possibility of freeing the synth, either
- a) a fade envelope is created (audio / control rate output)
- b) the synth is freed directly with no fading (scalar output or doneAction 1)
- c) if you provide a gate arg and a doneAction 2 to your ugenGraph function, this is supposed to be a fade envelope for the synth
- d) if a synthdef name is used, case c) is supposed
... so in most cases, there is not much to worry about, just these two points ar important, if one wants to use a self releasing synth or a different out ugen:
- e) own responsibility: if the function creates a ugengraph that can be freed by trigger or other things, it waits for this action instead of the node proxy freeing the synth.
- f) own out channel with 'out' arg: the control ugen with the name 'out' is set to the output channel number of the proxy.
NOTE: the number of channels is your own responsibility when using symbols, as a symbol carries no channel information! (in all other cases the number of channels is wrapped or expanded to fit the proxy)