feedback synths

clean-up: #47

today i found some old code in my supercollider folder that i thought i'd clean up and publish.
experiments in audio feedback.

s.boot

(
SynthDef(\feedback1, {|freq= 400, amp= 0.1|
        var env= EnvGen.kr(Env.perc(1, 4), doneAction:2);
        var lin= LocalIn.ar(1);
        var src= SinOsc.ar(freq, lin*2pi, amp*env);
        LocalOut.ar(src);
        Out.ar(0, Pan2.ar(src));
}).add;
)
Synth(\feedback1)
Synth(\feedback1, [\freq, 300])
Synth(\feedback1, [\freq, 300, \amp, 0.255])

(
SynthDef(\feedback2, {|freq= 400, amp= 0.1, fb= 2, del= 0.1|
        var env= EnvGen.kr(Env.perc(1, 4), doneAction:2);
        var lin= DelayN.ar(LocalIn.ar(1), 1, del);
        var src= SinOsc.ar(freq, lin*2pi*fb, amp)*env;
        LocalOut.ar(src);
        Out.ar(0, Pan2.ar(src));
}).add;
)
Synth(\feedback2)
Synth(\feedback2, [\del, 0.5])
Synth(\feedback2, [\del, 0.01])
Synth(\feedback2, [\del, 0.01, \fb, 3])
Synth(\feedback2, [\freq, 300, \del, 0.1, \fb, 2.5])

(
SynthDef(\feedback3, {|freq= 400, amp= 0.1, fb= 2, del= 0.1, lfo= 1, rate= 2|
        var env= EnvGen.kr(Env.perc(1, 4), doneAction:2);
        var lin= DelayN.ar(LocalIn.ar(1), 1, del);
        var src= SinOsc.ar(freq+SinOsc.ar(rate, 0, lfo), lin*2pi*fb, amp)*env;
        LocalOut.ar(src);
        Out.ar(0, Pan2.ar(src));
}).add;
)
Synth(\feedback3)
Synth(\feedback3, [\del, 0.5])
Synth(\feedback3, [\del, 0.01])
Synth(\feedback3, [\del, 0.01, \fb, 3])
Synth(\feedback3, [\del, 0.01, \fb, 2, \lfo, 15])
Synth(\feedback3, [\del, 0.01, \fb, 3, \lfo, 100, \freq, 100])
Synth(\feedback3, [\del, 0.02, \fb, 3, \lfo, 100, \freq, 100])
Synth(\feedback3, [\del, 0.5, \fb, 201, \lfo, 200, \freq, 200, \rate, 202])
Synth(\feedback3, [\del, 0.5, \fb, 1, \lfo, 200, \freq, 300, \rate, 0.01])

(
SynthDef(\feedback4, {|freq= 400, amp= 0.1, fb= 2, del= 0.1, lfo= 1, rate= 2, cutoff= 500|
        var env= EnvGen.kr(Env.perc(1, 4), doneAction:2);
        var lin= DelayN.ar(HPF.ar(LocalIn.ar(1), cutoff), 1, del);
        var src= SinOsc.ar(freq+SinOsc.ar(rate, 0, lfo), lin*2pi*fb, amp)*env;
        LocalOut.ar(src);
        Out.ar(0, Pan2.ar(src));
}).add;
)
Synth(\feedback4)
Synth(\feedback4, [\del, 0.5])
Synth(\feedback4, [\del, 0.01, \cutoff, 100])
Synth(\feedback4, [\del, 0.01, \fb, 3, \cutoff, 100])
Synth(\feedback4, [\del, 0.01, \fb, 2, \lfo, 15, \cutoff, 100])
Synth(\feedback4, [\del, 0.01, \fb, 3, \lfo, 100, \freq, 100, \cutoff, 100])
Synth(\feedback4, [\del, 0.02, \fb, 3, \lfo, 100, \freq, 100, \cutoff, 100])
Synth(\feedback4, [\del, 0.5, \fb, 201, \lfo, 200, \freq, 200, \rate, 202, \cutoff, 100])
Synth(\feedback4, [\del, 0.5, \fb, 1, \lfo, 200, \freq, 300, \rate, 0.01, \cutoff, 100])