<div dir="ltr"><div dir="ltr" class="gmail_attr">On Tue, Feb 25, 2020 at 6:14 AM Christof Ressi <<a href="mailto:info@christofressi.com">info@christofressi.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div>
    <p>@Dan<br>
      </p><blockquote type="cite">As far as I recall, going between
        abstraction to parent patch via inlet~/outlet~ introduces a
        block delay, hence no error</blockquote></div></blockquote><div>Dan, correction-- that is the exact circumstance where I *am* getting the error. <br></div><div>So now I think you are beginning to see why I think it's unexpected,</div><div>especially because of additional potential delay of inlet~/outlet~.</div><br><div>Dan also wrote:</div><div>> As the error says, you shouldn't create a direct feedback loop with signal cords. <br></div><div><br></div><div>Let me try to explain again:</div><div><br></div><div><span style="background-color:rgb(255,255,0)"><b>I have taken a WORKING CIRCUIT--</b></span></div><div><b>
</b><div>(a simple stereo delay circuit, with cris-cross L/R feedback <br></div><div>implemented with [delwrite~] + [vd~]) <br></div><div><b><span style="background-color:rgb(255,255,0)">-- which DOES NOT produce a "DSP Loop Error", </span><br></b></div><div><b>pulled a Null (straight-wire) Filter <br></b></div><div><b>(which had been installed in the feedback path)<br></b></div><div><b>and moved it externally to the abstraction</b></div><div><b>(up to the parent patch), via outlet~/inlet~,</b></div><div><b>which, if anything ADDS additional block delays, <br></b></div><div><b>yet this produces "DSP Loop Error". <br></b></div><div><b><br></b></div><div><b>Clearly (the way I see it) <br></b></div><div><b>the logic behind detecting "DSP Loop Error" condition<br></b></div><div><b>has a bug.</b></div><br><div><b>I believe this is a false error,</b></div><div><b>because as I have stated--</b></div><div><b>the circuit HAD been working!</b></div><div><b><br></b></div><div><b>All I did was add the potential for additional</b></div><div><b>blocks of delay on the feedback path. <br></b></div></div><div><br></div><div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>But you're using [r~] and [s~] which is not the same as direct
      signal connections. The former can act like a short delay line.
      Please read "3.audio.examples/G05.execution.order".</div></blockquote><div><br></div><div>Christof, Yes! Exactly!<br></div><div>Added delay should REDUCE the chance of a "DSP Loop Detected"!</div><div><br></div><div>Also, believe me, r~/s~ has nothing to do with it. <br></div><div>My original patch was extremely ugly, due to criss-crossed feedback.</div><div>I only implemented with r~/s~ to clean up the patch to share. <br></div><div><br></div><div>Thanks everyone!</div><div>BH<br></div><div><br></div><div><br> <br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><p></p>
    <p>Christof<br>
    </p>
    <div>On 25.02.2020 11:42, Dan Wilcox wrote:<br>
    </div>
    <blockquote type="cite">
      
      As far as I recall, going between abstraction to parent patch via
      inlet~/outlet~ introduces a block delay, hence no error
      <div><br>
      </div>
      <div>
        <blockquote type="cite">
          <div dir="auto">
            <div dir="auto">
              <div dir="auto">Third patch is like the second,
                only the effect has been moved out of the abstraction,
                and into the parent patch. ONLY HERE do I get the DSP
                loop error. </div>
            </div>
          </div>
        </blockquote>
        <div><br>
        </div>
        Signal loop in a single patch without abstractions = error. Pd
        has no way to read and write to the same signal buffer in the
        patch at the same time *without* some tiny delay.</div>
      <div><br>
      </div>
      <div>
        <blockquote type="cite">
          <div dir="auto">
            <div dir="auto">
              <div dir="auto"><b style="font-family:sans-serif">The point is the last two patches have
                  (or should have) an identical graph! </b></div>
            </div>
          </div>
        </blockquote>
        <br>
      </div>
      <div>At the lower level, they don't. What happens if you
        put part of the path inside a subpath which uses inlet~/outlet~?</div>
      <div><br>
      </div>
      <div>
        <div>
          <blockquote type="cite">
            <div>On Feb 25, 2020, at 11:36 AM, William Huston
              <<a href="mailto:williamahuston@gmail.com" target="_blank">williamahuston@gmail.com</a>>
              wrote:</div>
            <br>
            <div>
              <div dir="auto">
                <div dir="auto">
                  <div dir="auto">First abstraction, simple
                    stereo delay:  2 delay lines, variable feedback
                    L->R, R->L.</div>
                  <div dir="auto"> This <b>works</b>,
                    no DSP loop error. <br>
                  </div>
                  <div dir="auto"><br>
                  </div>
                  <div dir="auto">Second abstraction contains
                    an effect in the feedback path. (in my simple
                    example, it's just a null wire: In-L passes to
                    Out-L, etc). Again this <b>works</b>, no
                    DSP error. </div>
                  <div dir="auto"><br>
                  </div>
                  <div dir="auto">Third patch is like the
                    second, only the effect has been moved out of the
                    abstraction, and into the parent patch. ONLY HERE do
                    I get the DSP loop error. </div>
                  <div dir="auto"><br>
                  </div>
                  <div dir="auto"><b style="font-family:sans-serif">The point
                      is the last two patches have (or should have) an
                      identical graph! </b><br>
                  </div>
                  <div dir="auto"><b style="font-family:sans-serif"><br>
                    </b></div>
                  <div dir="auto"><font face="sans-serif">It really seems like a bug to
                      me. </font></div>
                  <div dir="auto"><span style="font-family:sans-serif"><br>
                    </span></div>
                  <div dir="auto"><span style="font-family:sans-serif">I'll
                      upload a test patch a little later. </span></div>
                  <div dir="auto"><span style="font-family:sans-serif"><br>
                    </span></div>
                  <div dir="auto"><font face="sans-serif">Thanks, </font></div>
                  <div dir="auto"><font face="sans-serif">BH</font></div>
                </div>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
        <div>
          <div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">--------</div>
          <div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">Dan Wilcox</div>
          <div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><a href="http://twitter.com/danomatika" target="_blank">@danomatika</a></div>
          <div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><a href="http://danomatika.com" target="_blank">danomatika.com</a></div>
          <div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><a href="http://robotcowboy.com" target="_blank">robotcowboy.com</a></div>
          <div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br>
          </div>
          <br>
        </div>
        <br>
      </div>
      <br>
      <fieldset></fieldset>
      <pre>_______________________________________________
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list
UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" target="_blank">https://lists.puredata.info/listinfo/pd-list</a>
</pre>
    </blockquote>
  </div>

_______________________________________________<br>
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
</blockquote></div></div>