From 4d6ef209d6e6c50eefbee687977ea494ad93bc7f Mon Sep 17 00:00:00 2001 From: Leonard Francis Coogan Date: Fri, 12 Sep 2025 23:49:12 -0400 Subject: [PATCH] soundscape assignment rayburn sound art fall '25 --- cantorial/schwimmer_organ.scd | 42 +++++ .../cooganl-rayburn-soundscape-2025.09.12.scd | 146 ++++++++++++++++++ soundscape/plan.wiki | 14 ++ 3 files changed, 202 insertions(+) create mode 100644 cantorial/schwimmer_organ.scd create mode 100644 soundscape/cooganl-rayburn-soundscape-2025.09.12.scd create mode 100644 soundscape/plan.wiki diff --git a/cantorial/schwimmer_organ.scd b/cantorial/schwimmer_organ.scd new file mode 100644 index 0000000..24a4e0b --- /dev/null +++ b/cantorial/schwimmer_organ.scd @@ -0,0 +1,42 @@ +b = Buffer.readChannel(s, "/home/lcoogan/snd/releases/cantorial-resynthesis/wav/organ/Cantor Moshe Schwimmer - Ahavah Rabbah.3.wav", channels:[0]) +b.play; + +( +{ + var sig; + sig = GrainBuf.ar( + 1, + Impulse.ar(4), + 0.6, + b, + 0.7, + 0.5, + 4, + 0, + -1, + 512 + ); + + sig = Pan2.ar(sig, -1); +}.play; +) + +( +{ + var sig; + sig = GrainBuf.ar( + 1, + Impulse.ar(4), + 0.6, + b, + 0.7, + 1, + 4, + 2, + -1, + 512 + ); + + sig = Pan2.ar(sig, 1); +}.play; +) \ No newline at end of file diff --git a/soundscape/cooganl-rayburn-soundscape-2025.09.12.scd b/soundscape/cooganl-rayburn-soundscape-2025.09.12.scd new file mode 100644 index 0000000..3070e31 --- /dev/null +++ b/soundscape/cooganl-rayburn-soundscape-2025.09.12.scd @@ -0,0 +1,146 @@ +// Author: Leo Coogan +// Title: Rimbaud +// Assignment: 2-3 minute soundscape + +( +SynthDef(\help_Klank, { |out = 0, i_freq| + var klank, n, harm, amp, ring; + + // harmonics + harm = \harm.ir(Array.series(4, 1, 1).postln); + // amplitudes + amp = \amp.ir(Array.fill(4, 0.05)); + // ring times + ring = \ring.ir(Array.fill(4, 0.01)); + + klank = Klank.ar(`[harm, amp, ring], { ClipNoise.ar(0.003) }.dup, i_freq); + + Out.ar(out, klank); +}).add; +) + +( +SynthDef(\help_Klanke, { |out = 0, i_freq| + var klank, n, harm, amp, ring; + + // harmonics + harm = \harm.ir(Array.series(4, 1, 1).postln); + // amplitudes + amp = \amp.ir(Array.fill(4, 0.05)); + // ring times + ring = \ring.ir(Array.fill(4, 0.001)); + + klank = Klank.ar(`[harm, amp, ring], { ClipNoise.ar(0.003) }.dup, i_freq); + + Out.ar(out, klank); +}).add; +) + + + +// nothing special yet, just using the default set of harmonics. +a = Synth(\help_Klank, [\i_freq, 300]); +b = Synth(\help_Klank, [\i_freq, 400]); + +// bugs +c = Synth(\help_Klank, [\i_freq, 533.33, \belWidth, 0.1]); + + +d = Synth(\help_Klank, [\i_freq, 711.11, \belWidth, 0.01]); + + +// above +d = Synth(\help_Klanke, [\i_freq, 711.11, \belWidth, 0.01]); + + +// water scaping +// rocks scraping +// hand grabing +// "the pagan blood comes back!" + + +// first +( +a = Synth(\help_Klank, [ + \i_freq, 110, + \harm, [4, 1, 3, 5, 7], + \ring, Array.fill(4, 0.1), // set shorter ring time + \amp, Array.fill(4, 0.05) // set louder amps +]) +); + + + + +// first +( +a = Synth(\help_Klank, [ + \i_freq, 110, + \harm, [4, 1, 3, 5, 7], + \ring, Array.fill(4, 0.1), // set shorter ring time + \amp, Array.fill(4, 0.05) // set louder amps +]) +); + + + +( +a = Synth(\help_Klank, [ + \i_freq, 110, + \harm, [4, 1, 3, 5, 7] +.f [1, 2, 3], + \ring, Array.fill(4, 0.1), // set shorter ring time + \amp, Array.fill(4, 0.05) // set louder amps +]) +); + +( +a = Synth(\help_Klank, [ + \i_freq, 110, + \harm, [4, 1, 3, 5, 7] +.f [1, 2, 3] +.x [4, 5, 6], + \ring, Array.fill(4, 0.1), // set shorter ring time + \amp, Array.fill(4, 0.05) // set louder amps +]) +); + + + + + +// Church organ +// thunder +// noise +// rocks scraping in water + + + +// Overpass example +( +SynthDef("help-KlankOverlapTexture2", +{|out = 0, freqs = #[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], rings = #[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], atk = 5, sus = 8, rel = 5, pan = 0| + var e = EnvGen.kr(Env.linen(atk, sus, rel, 1, 4), doneAction: Done.freeSelf); + var i = BrownNoise.ar(0.0012); + var z = Klank.ar( + `[freqs, nil, rings], // specs + i // input + ); + Out.ar(out, Pan2.ar(z*e, pan)); +}).add; + +r = Routine{ + var sustain = 6, transition = 4, overlap = 5; + var period = transition*2+sustain/overlap; + 0.5.wait; // wait for the synthdef to be sent to the server + inf.do { + Synth("help-KlankOverlapTexture2", [ + \atk, transition, + \sus, sustain, + \rel, transition, + \pan, 1.0.rand2, + \freqs, {1000.0.linrand+80}.dup(12), + \rings, {0.1.rrand(1)}.dup(12) + ]); + period.wait; + } +}; +r.play; +) diff --git a/soundscape/plan.wiki b/soundscape/plan.wiki new file mode 100644 index 0000000..d3ac102 --- /dev/null +++ b/soundscape/plan.wiki @@ -0,0 +1,14 @@ += Draft = +* Filtered voices +* Formant filtered synth +* Spectral delay water +* Varieties of wind +* Electrial devices +* Foots in spaces +* Industrial noises / heavy machinery +* Reading of Une Saison en Enfer / audiopoetry +* children laughing +* thunder +* rain +* heart beat distortion / the body +* Jewish music blending together in space