@kingmetal so the issue is that if you don’t turn off the monitor you will hear your signal “double”. i think the problem is something else though…it seems the delay is really high, even when set low. so its catching the transient but now i’ve realized that its too far delayed.
@zebra, do you know if the DelayC has an absolute minimum delay time? i’m trying to set delay times of <10ms, but i consistently get delay times of ~200 ms.
here’s the supercollider code:
Engine_SimpleDelay : CroneEngine {
var synth;
*new { arg context, doneCallback;
^super.new(context, doneCallback);
}
alloc {
synth = { arg delay=0.001, volume=0.0;
var input = SoundIn.ar([0, 1]);
DelayC.ar(input, maxDelayTime:0.002, delayTime:0.002, mul:volume)
}.play(context.server);
this.addCommand("delay", "f", { arg msg; synth.set(\delay, msg[1]); });
this.addCommand("volume", "f", { arg msg; synth.set(\volume, msg[1]); });
}
}
here’s a profile of the audio without and with engine activated, using delay time of 2ms, over 4 quarternotes. the first four quartnernotes, without engine, are spaced 0.5 s apart, at 120bpm. the second four quarternotes have a delayed note between them that is 200 ms away from the previous…even though the delay is not set to 200ms, but set to 2ms.
if 200 ms is the minimum delay, is there a better sc class to use to get smaller delays? i probably don’t need to use 2ms, but probably just in the range 10-200ms