Table of contents
MusingTheSounds
The prompt for Genuary 2024 Day31 is Music and the composition of MusingTheSounds is coded in #LiveCodeLab & #SonicPi
Poem
The flow
The tunes
The rhythm
As it reaches the rooms
Hidden
To find its glow
Audio
IllestPreacha · MusingTheSound
Code
LiveCodeLab
if time % 45 > 30
bpm Math.cbrt(time % 17 + 2) * 23 //12
play 'tranceKick' ,'-x-x --xxxx -x x-x- x-xx'
play "alienBeep" + int(random 16) ,'x-x'
play "glass" + int(random 9) ,'x-ox------x-xxx'
else if time % 45 < 30 && time % 30 > 15
bpm 45
play "growl" + int(random 6) ,'x--x----xx-x'
play "highHatClosed" ,'--x- ---x- --x- ---x-'
play "highHatOpen" ,'--x- --x-- --x- ----xx'
play "pianoLDChord" + int(random 4) ,'x---x--xx--x'
play "pianoLHChord" + int(random 4) ,'x--x---xx'
else
bpm 82 //int(random 47,49)
play 'tranceKick' ,'-x-x ---x x-x- x-xx'
play "alienBeep" + int(random 16) ,'x-x'
play "glass" + int(random 9) ,'x-ox--x'
play "cosmos" ,'--x- -x-x --x- -x-xx'
play "hiss" + int(random 3) ,'x'
play "hoover" + int(random 4) ,'x-ox'
SonicPi
live_loop :layer1 do
use_random_seed Time.now.to_i
with_fx [:ixi_techno,:whammy].choose, mix: 0.75 do
sample "E:/Genuary/genuary2024/Day 31 - Generative Music/First Audio Pass/SoundSnippet.WAV", rate: Math.cbrt(rrand(-1.5, 1.5)) * 2, sustain: dice(5)
sleep rrand(0.1, 8)
end
end
live_loop :layer2 do
use_random_seed Time.now.to_i / 3
with_fx :whammy, mix: rrand(0.4,0.7) do
with_fx [:wobble,:ping_pong].choose, mix: rrand(0.2,0.6) do
with_fx [:ping_pong,:vowel].choose, mix: rrand(0.25,0.75) do
sample "E:/Genuary/genuary2024/Day 31 - Generative Music/First Audio Pass/SoundSnippet.WAV", pitch: dice(5) / rrand(0.5,3), rate: Math.cbrt(rrand(-1.5, 1.5)) * 2, sustain: dice(12) + 0.5
sleep [rrand(0.1, 4),10,30].choose
end
end
end
end
live_loop :layer3 do
use_random_seed Time.now.to_i / 5
with_fx [:ping_pong,:flanger,:krush].choose, mix: rrand(0.1,0.9) do
with_fx [:flanger,:distort].choose, mix: rrand(0.35,0.65) do
sample "E:/Genuary/genuary2024/Day 31 - Generative Music/First Audio Pass/SoundSnippet.WAV", pitch: dice(5) / rrand(0.5,3), sustain: dice(12) + 2, rate: Math.cbrt(rrand(-1.5, 1.5)) * 2, sustain: dice(5)
sleep [rrand(0.1, 4),rrand(12,20),rrand(10,40)].choose
end
end
end