Table of contents
SeedfulGrowth
The prompt for Genuary 2024 Day 26 is Grow a seed and in the SonicPi composition, this is coded by growing the random seed number within each loop.
Poem
Growing the Seeds
As the Sounds
Grow as They Feed
Feed on the Lines
That are Contained Inside
As the Seeds
Grow Round & Round
Audio
SonicPi Code
#remixed another beat , adding more elements through the rotations arrays and adding more synths and sounds
use_bpm 20
n = ring(:b3,:c4,:c5,:c6,:a7,:b4,:a5)
#my arrays of effects, synths, samples
Effects_Swap1 = [:ixitechno, :reverb, :panslicer]
FlavourRotation = [:Pretty_bell,:prophet,:piano,:dpulse]
PercRotation = [:bd_pure, :perc_snap, :bd_haus]
bdRotation = [:bd_haus, :bd_fat, :bd_gas, :bd_808]
DrumHardRotation = [:drum_heavy_kick,:drum_snare_hard,:drum_tom_hi_hard]
#counters
w = 0
x = 0
#liveloop commences
live_loop :bassflow do
use_random_seed Time.now.to_i + 9
with_fx :flanger, mix: rrand_i(0.1,0.9) do
with_fx :gverb, mix: [0.1,0.2,0.3,0.2,0.1].tick do
use_random_seed (Time.now.to_i) / 3
use_bpm 120 / (dice(4)+1)
if one_in(2)
sample :drum_bass_hard
sleep 0.5
else
sample :drum_bass_soft
sleep [0.25,0.75,1].choose
end
end
end
end
live_loop :IslandFlavour do
use_random_seed Time.now.to_i + 5
with_fx Effects_Swap1[rand(3)] do
use_bpm 120 / (dice(4)+1)
use_synth FlavourRotation[rand(4)]
x += 1
if (w % 4 == 0)
play n.tick, on: spread(5,12).look, release: rrand(0.5,3), pan: rrand(-0.8,0.8)
sleep [(1.0/24),0.5,0.75].choose
else
play n.tick, on: spread(11,24).look, release: dice(4), pan: rrand(-0.8,0.8)
sleep [(1.0/24),0.75].choose
end
# end
end
end
live_loop :PercFlavour do
use_random_seed Time.now.to_i + 3
x += 1
if (x % 4 == 0)
use_synth :piano
play [n.tick,n.choose].tick, on: spread(11,24).tick, release: dice(3), pan: rrand(-0.8,0.8)
sample PercRotation[rand(3)] if spread(5,12).tick
sleep [(1.0/24),0.35].choose
else
sample PercRotation[rand(3)] if spread(5,8).tick
sleep [(1.0/24),0.75,0.35].choose
end
end
live_loop :flow do
use_random_seed Time.now.to_i * Time.now.to_i
with_fx :ping_pong do
sample bdRotation[rand(4)]if spread(7,24).tick
sleep [(1.0/24),0.5,1].choose
end
end
live_loop :startingline do
Spread5 = (spread 11,14).tick
use_random_seed Time.now.to_i + Time.now.to_i
sample bdRotation[rand(2)], rate: 1
sleep 0.5
with_fx :ping_pong, amp: [1,2,3,2,1].tick, mix: [0.5,0.3,0.1,0.25].choose do
with_fx :ixi_techno,phase: [0.7,0.37,0.5,0.25,0.15].choose, mix: [0.1,0.3,0.5,0.4,0.25].choose do
4.times do
sample DrumHardRotation[rand(4)]
sample [:drum_bass_hard,:elec_blip,:glitch_robot2,:guit_em9].choose, rate: dice(6) * -1
sample [:drum_bass_soft,:elec_chime,:glitch_robot,:perc_snap2,:perc_till].choose, rate: dice(6) * -1
sleep [(1.0/24),0.75,1.25].choose
end
end
end
end