gate - zero or no data?
How can i stop closed gate outputs in gen~ from sending a constant zero and instead send no data/value at all?
Thank you for any insights!
hay großer,
i think it does not differ from msp; you cant send nothing (read:disconnect) with sample accuracy.
Hey Roman, i thought so/ich dachte mir das schon.
So instead of distributing values through a gate that offers different kinds of sub-processing on it's outlets i had put the sub-processing first and then just used a selector to pick the one desired.
However, that kind of method seems a total waste of cpu resources.
As i am programming for a Cortex M4 those worries are real. Hmm.
not sure what you are doing, but in case you dont want to use a sinal of zeros for "nothing" because you need the "0"for something else already (for example for "false"), try using an offset for -1 or +1 for this kind of operation. for signals this is often your only chance.
p.s. after i broke my arm 2 weeks ago this is the first sentence i am able to type with two hands again :)
ach so: subcircuit. afaik that is not possible at all in gen.
check if you have the option to use separate gen patchers. eventually can also combine some parts of these different sub-processings.
i think if you want to "stop" an audio signal process to save cpu you need to put different sub-processes of your patch into different poly~ objects and send a mute message to the poly~ that houses the process you want to halt
Thanx, yes, i know that, but the Cortex processor (in Hoxton Owl) takes only the code inside one single gen~ object to work with.
Hi,
The only way to suppress audio processing entirely within a single gen~ patcher is to use codebox if() statements.
But if your branches are simple, it might be better for the CPU to compute both paths and use selector. (Sometimes the unpredictability of the if() condition is more expensive than the computation within the branches. Modern CPUs don't like unpredictability...)
Graham
Thank you again, Graham, i ended up doing exactly that (branch out before, then use selector).
I think, that aCortex M4 is reasonably modern, however 168MHz aren't exactly fast and onboard extra RAM is only 1MB, so i am still wondering, if functions could only be called, when they are needed.