Genuary2024_GrowASeed

Genuary2024_GrowASeed

Random Seeds are Growing

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

IllestPreacha · SeedfulGrowth

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