I’m not exactly sure what you’re trying to do, but in the simplest sense I assume that you have a sound being played while simultaneously going to an audio delay network. Let’s say the delay is set to 5000ms (5 seconds), and your original sound is being played out of a [groove~] object. All you’d have to do is add a [*~] object after the [groove~] object, connecting the output of the [groove~] object to the left input of the [*~] object. Then, just send a 0 into the other inlet of the [*~] object when you want it to mute (i.e. 5000 ms after you start it). You can use a [delay] or [pipe] object to delay a bang that mutes the original sound.
If you’re not using a groove~ object or otherwise not "starting" the sound with a bang or in some easily triggerable way (i.e. if you’re just talking into a microphone or something), then you’ll have to generate a bang by detecting the "start" of your sound (i.e. set up a [average~ rms] –> [>~] –> [change~]) and then delay that bang by the amount of delay that you are using. Thus, once the delay kicks in, your original sound will be muted.
Rhys Perkins schrieb:
> If I have a sound that is both played and sent to a delay at the same
> time how do I tell max to silence the original sound, once the
> delayed sound is being played?
> ..And how would I tell the next sound played to silence the previous
> sound (and so on)?
This is sometimes called ducking, if one signal exceeds a certain level
another signal is suppressed and vice versa (Skype wouldn’t work without
You need a sort of envelope follower, to monitor the level of one
signal, to gate the other signal according to its level. Beware of
clicks, use an envelope to apply smooth changes…