RedImpulse resettable impulse train
Non-bandlimited single sample impulse train with a reset feature.
see also: Impulse
*ar(freq, reset, mul, add)
*kr(freq, reset, mul, add)
freq - frequency in Hertz
reset - a trigger to reset the phase
//--
s.boot
a= {|freq= 2, t_reset= 0| RedImpulse.ar(freq, t_reset)}.play(fadeTime:0)
a.set(\freq, 1) //change frequency
a.set(\freq, 1, \t_reset, 1) //change frequency and reset phase
a.set(\t_reset, 1) //reset phase only
a.set(\freq, 2)
a.free
a= {|freq= 2, t_reset= 0| SinOsc.ar(400, 0, Decay.kr(RedImpulse.kr(freq, t_reset)))}.play(fadeTime:0)
a.set(\freq, 1) //change frequency
a.set(\freq, 1, \t_reset, 1) //change frequency and reset phase
a.set(\t_reset, 1) //reset phase only
a.set(\freq, 2)
a.free