[PD] DSP loop detection and abstractions/subpatches

ClaudiusMaximus gloriousclaudiusmaximus at yahoo.co.uk
Sun Sep 19 08:43:10 CEST 2004


I have the following in a patch to create a gating effect...

                          _______________
                         /               \
synth-patch            /                 \
  |                    |                   |
  |                    |(fx return)        |
  |   [dcm100mixtab/cm_dcm100](mixer)      |
  |         |(fx send)                     |
  |         |                              |
  |        [env~ 64]                       |
  |         |                              |
  |        [expr 100-$f1]                  |
  |         |                              |
  |        [dbtorms]                       |
  |         |                              |
  |        [sig~]                          |
  |         |                              |
  |        [lop~ 10]                       |
  |         |                              |
[*~         ]                             |
  |                                        |
   \                                      /
    \____________________________________/


...and it works fine, there is no DSP loop.  But when I put all the 
objects (apart from the synth-patch and the mixer) into an abstraction 
fxgate.pd, so it looks like this...

                        __   __    synth-patch
                       /  \ /  \   |
[dcm100mixtab/cm_dcm100]  X  [fxgate]
                       \__/ \__/

...Pd throws up an error about a DSP loop.  In fact there is no real 
loop because it works fine with the abstraction replaced by the objects 
it contains.

Is there a chance Pd's loop detection behaviour could be changed so that 
this useful design pattern of mixer effect sends/returns could be used 
within Pd DSP?  I.e., expand loop detection to consider 
abstractions/subpatches as collections of objects rather than as single 
objects.

BTW, I tested also with a [pd ...] subpatch and that threw up the same 
DSP loop error.




More information about the Pd-list mailing list