From 1d6bc949a20165444b69f6bfde3e9c0c95a792ab Mon Sep 17 00:00:00 2001 From: Leonard Francis Coogan Date: Thu, 5 Jun 2025 13:47:30 -0400 Subject: [PATCH] sine feedback --- envelope_extraction.scd | 19 +++++++++++++++++++ sine feedback.scd | 25 +++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 envelope_extraction.scd create mode 100644 sine feedback.scd diff --git a/envelope_extraction.scd b/envelope_extraction.scd new file mode 100644 index 0000000..e6569ec --- /dev/null +++ b/envelope_extraction.scd @@ -0,0 +1,19 @@ +b = Buffer.read(s, "/Users/lcoogan/snd/samples/freesound/vocals/ymaaela/333264__ymaaela__female-vocal-cut-ups-collage.wav"); + +( +{ + var sig = PlayBuf.ar(1, b, BufRateScale.kr(b), loop: 0); + + // Hilbert transform + var imag = HilbertH.ar(sig); + + // Envelope + var envelope = (sig.squared + imag.squared).sqrt; + + // Listen to the extracted envelope (amplified to be audible) + + // envelope = RLPF.ar(envelope, 1200, 0.3); + + envelope * 0.5 +}.play; +) diff --git a/sine feedback.scd b/sine feedback.scd new file mode 100644 index 0000000..c407621 --- /dev/null +++ b/sine feedback.scd @@ -0,0 +1,25 @@ +{SinOscFB.ar(freq:142, feedback:Saw.ar(20) + SinOsc.ar(0.1)).dup}.play; +{SinOscFB.ar(freq:142, feedback:Saw.ar(20 * SinOsc.ar(20)) + SinOsc.ar(0.1)).dup}.play; + +{Out.ar(0,Pan2.ar(0.1*WeaklyNonlinear.ar(SinOsc.ar(MouseX.kr(100,400),0,0.1)),0.0))}.play; +{SinOsc.ar(MouseX.kr(100,400),0,0.1)}.play + +( +{ + var freq = MouseX.kr(100, 400); + var input = SinOsc.ar(freq, 0, 0.1); + var response = WeaklyNonlinear.ar(input); + var filt = RLPF.ar(response, XLine.kr(500, 5000, 10), 0.3); + Out.ar(0, Pan2.ar(0.1 * filt, 0)); +}.play; +) + +( +{ + var freq = MouseX.kr(100, 400); + var input = SinOscFB.ar(freq:142, feedback:Saw.ar(20) + SinOsc.ar(0.1)); + var response = WeaklyNonlinear.ar(input); + var filt = RLPF.ar(response, XLine.kr(500, 5000, 10), 0.3); + Out.ar(0, Pan2.ar(0.1 * filt, 0)); +}.play; +) \ No newline at end of file