What's a "DSP-loop"?Up to Table of Contents
In an analog electronic system, you can easily connect the output of a mixer back to one of the inputs, turn up the channel and get feedback. This is because everything in an analog system happens pretty much simultaneously.
Computers do not work like this, however, and therefore you cannot ask a Pd patch to compute results based on its own simultaneous output.
Pd works in what are called blocks (i.e. a group of samples, such as the default number of 64 samples), and all the samples in each block must be computed before they are output.
So a DSP loop occurs when a patch needs information which is calculated inside the same block in order to create output.
You can use the "Find last error" function under the "Find" menu to track down which objects are causing the DSP loop.
The easiest way around this problem is to create at least a one block delay between the objects which are connected together. The objects
[receive~] are useful for this, because they have a built-in delay of one block.
To change the number of samples computed in each block, you can use the
this FAQ was originally published under the GPL at Pd's FLOSSmanual