Hi!
So, I was thinking about Dan's advice to turn the dsp on and off with [switch]. I will definitely need this feature for saving CPU.
Currently I am wondering which is the proper condition on that I decide to [switch] a clone off.
Let me explain with an example:
Say I have 10 button matrices, therefore I have 10 clones of my delay-effect. Each clone the delay-effect for one specific button matrix. When the user is playing a melody on the first button matrix and then switches to the second matrix, I am not allowed to [switch] off the delay effect on the first matrix, because even if the first matrix might not be triggering new midi notes anymore, the delay effect might be set to feedback = 100, an thus is still playing music.
 
So my first idea was to switch off the delay effect, when dryWet and feedback are set to zero. But then I would also have to check wether or not there is music coming in on the inlets off the delay effect...And what if I am not using a delay but a reverb effect. Then I would have to check different sliders...a little bit confusing i would say.
 
So then I had another idea: Couldn't I simply check (periodically) whether or not a delay-effect-clone is still sending audio to its outlets? I think that this would be a good general approach that could be applied to other effects, as well. How would I do this? Is it possible to somehow check the volume that is going out to the outlets of a clone?
 
Best, Jakob
 
 
Gesendet: Mittwoch, 01. Juli 2020 um 12:30 Uhr
Von: "Dan Wilcox" <danomatika@gmail.com>
An: "Jakob Laue" <jakkesprinter@web.de>
Cc: "Pd-List" <pd-list@lists.iem.at>
Betreff: Re: [PD] one abstraction, different delay lines?
(My mail program mangled this message for some reason, so I copy/pasted the quote below. I hope it's the correct one to respond to...)
 
Right now I have the master audio stream (= the audio of all matrices) going into the clone object, so it sounds like i have several delay effects with different settings on the master channel. It sounds nice, but it is not what I want right now:)
 
Jakob, the next step would be to add a [switch~] object to each of the instances inside the clone object, then enable/disable based which one you want to use. That could work as dsp will not be performed on those which are switched off, saving CPU.
 
A simple solution is for each instance to accept an "on" message with a float (1 or 0) to enable/disable. Then to enable as ingle one, send a [all on 0< message followed by the single one to enable, [1 on 1<.
 
On Jul 1, 2020, at 12:00 PM, pd-list-request@lists.iem.at wrote:
 
Message: 1
Date: Tue, 30 Jun 2020 13:31:57 +0200
From: Jakob Laue <jakkesprinter@web.de>
To: Christof Ressi <info@christofressi.com>
Cc: Pd-List <pd-list@lists.iem.at>
Subject: Re: [PD] one abstraction, different delay lines?
Message-ID:
<trinity-6b0b8585-789d-4804-8ea8-2e84792187b9-1593516717310@3c-app-webde-bap20>

Content-Type: text/plain; charset="utf-8"

An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20200630/9648c0c4/attachment-0001.html>
 
--------
Dan Wilcox