250508 A quick jam YT

# 250608 2246 A quick jam YT
# Saved 250608 2246 
# https://youtu.be/0eouWtZw3hc
# https://in-thread.sonic-pi.net/t/250508-a-quick-jam-yt/9679


set_volume! 3

with_fx :reverb, room: 0.7 do
  live_loop :a1 do
    tick
    sample :bd_fat, finish: 0.4, amp: 1.5 if spread(1,4).look
    sample :sn_generic, finish: 0.1, rpitch: 12+12+24 if (bools(0,0,1,0,0,0,1)+spread(6,10)*2).look
    
    sample :elec_beep, finish: [0.01,0.03,0.05].look, pan: rdist(0.5) if (spread(4,5)+bools(1,0,0,1,0,0,1,1,1,1)*4).look
    sample :tabla_tun1, finish: [0.01,0.03,0.005].look, rpitch: [0,0,0,0,12,0,0,0,0,24,12].look, pan: rdist(0.75) if spread(5,7).look
    
    
    
    use_synth :saw
    use_synth_defaults cutoff: [50,70,90,110,130].choose, release: [0.1,0.2,0.3].look-0.025
    
    mixer = knit(0,64, 1,64+32,0,64, 3,64).look
    #mixer = 3
    case mixer
    when 0
    when 1
      play :c2+knit(0,8, -2,4, 1,4).look, amp: 1
    when 2
      play :c2+knit(0,8, -2,4, 1,4).look, amp: line(0.1,2,steps: 64).look #if spread(4,5).look
    when 3
      play :c2+knit(0,8, -2,4, 1,4).look, amp: 1 if spread(3,5).look
    end
    
    sleep 0.125
  end
  
  with_fx :ping_pong, feedback: 0.5 do
    live_loop :a2 do
      tick
      
      mixer = knit(0,64, 1,64).look
      case mixer
      when 0
      when 1
        play :c5, release: 0.2,amp: 0.5 if spread(1,32).look
        play :c5+7, release: 0.2,amp: 0.5 if spread(1,32).rotate(4).look
        play :c5+7-3, release: 0.2,amp: 0.5 if spread(1,32).rotate(5).look
      end
      
      sleep 0.125
    end
  end
end


6 Likes

I love it! You got da funk!
I especially love the way you use the lists of booleans to sprinke in syncopation in a not-entirely-predictable way.

1 Like

Yes… nice. Creative coding for sure and great composition/arrangement. Not sure how your ideation is derived but it’s excellent. Thanks for sharing.

1 Like

this will go to my study sessions!!!

1 Like