// title: Feedback Oscillator after a pd patch by claudius maximus // author: LFSaw // description: // code: b = Buffer.alloc(s, 512, 1); b.sine1(1.0, true, false, true); Ndef(\feedbacker, {|resetRate = 100, freq = 100, lowFreq = 100, rq = 0.1| var src = OscN.ar(b, freq); BufWr.ar(src, b, Phasor.ar(Impulse.ar(resetRate), BufRateScale.kr(b) * 1, 0, BufFrames.kr(b))); src }) Ndef(\feedbacker, {|resetRate = 100, freq = 100, lowFreq = 100, rq = 0.1| var src = OscN.ar(b, freq); BufWr.ar(src, b, Phasor.ar(Impulse.ar(resetRate), BufRateScale.kr(b) * 1, 0, BufFrames.kr(b))); src = RLPF.ar(src, lowFreq, rq); src }) Ndef(\feedbacker).pause Ndef(\feedbacker).resume Ndef(\feedbacker, {|resetRate = 100, freq = 100| var src = OscN.ar(b, freq); BufWr.ar(src, b, min(BufFrames.kr(b), Phasor.ar(Impulse.ar(resetRate), BufRateScale.kr(b) * 0.25, 0, 4* BufFrames.kr(b)))); src }).play NdefMixer(s)