Having a live coding dance party a home YT Hydra webcam

# 221214 0132 Having a live coding party at home lol YT Hydra webcam
# Saved 221214 0132
# Created by https://linktr.ee/relaxnow
# YT performance https://youtu.be/eaDjyVAhoMA
# https://in-thread.sonic-pi.net/t/having-a-live-coding-dance-party-a-home-lol-yt-hydra-webcam/7342

set_volume! 4
use_bpm 180
live_loop :time, delay: 0.01 do
  sleep 1
end


with_fx :reverb, room: 0.4 do
  
  
  / bass /
  live_loop :bass, sync: :time do
    
    #a = 4
    puts     bass = knit(1,6, 2,2).tick(:b)
    #bass = 1
    case bass
    when 0
      sleep 0.5
    when 1
      16.times do
        use_synth :saw
        tick
        use_synth_defaults release: [0.3,0.4,0.8].choose, amp: [2,1,1,1,1].look, cutoff: [80,60,70,50,100].choose
        play knit(:cs2, 6, :gs1, 2).look, pan: rdist(0.25)
        play knit(:cs2, 6, :gs1, 2).look+12+12, pan: rdist(0.5)
        sleep 0.5
      end
      
      16.times do
        tick
        use_synth_defaults release: [0.3,0.4,0.8].choose, amp: [2,1,1,1,1].look, cutoff: [120,60,70,80,90].choose
        
        use_synth :saw
        play knit(:a1, 8, :gs1, 8).look
        use_synth :prophet
        play knit(:a1, 8, :gs1, 8).look+12+12, pan: rdist(0.5)
        sleep 0.5
      end
      
    when 2   #needs work on part B meledy
      16.times do
        use_synth :saw
        tick
        use_synth_defaults release: [0.3,0.4,0.8].choose, amp: [2,1,1,1,1].look, cutoff: [80,60,70,50,100].choose
        play knit(:fs1, 6, :gs1, 2).look, pan: rdist(0.25)
        play knit(:fs2, 6, :gs1, 2).look+12+12, pan: rdist(0.5)
        sleep 0.5
      end
      16.times do
        tick
        use_synth_defaults release: [0.3,0.4,0.8].choose, amp: [2,1,1,1,1].look, cutoff: [120,60,70,80,90].choose
        
        use_synth :saw
        play knit(:a1, 8, :cs2, 8).look
        use_synth :prophet
        play knit(:a1, 8, :cs2, 8).look+12+12, pan: rdist(0.5)
        sleep 0.5
      end
      
    end
    
    
  end
  
  
  / melody /
  live_loop :melody do
    
    tick
    use_synth [:tri, :dsaw, :square].choose #:pluck #dtri #tri #:square #dsaw
    #use_synth  :dsaw
    use_synth_defaults release: 0.2, amp: 2
    
    b = 16*2 #rep of melody sections
    mel = knit(0,b, 1,b*3, 2,b, 1,b*2).look
    #mel = 3
    
    a = 16  # note rep below
    case mel
    when 0
    when 1
      play knit(:gs4,a, :a4,a/2, :fs4,a/2).look if bools(0,0,1).look
    when 2
      play knit(:gs4,a, :a4,a/2, :fs4,a/2).look if bools(0,1,0, 0,1,0, 0,1,0, 0,1,1).look
      play knit(:gs4,a, :a4,a/2, :fs4,a/2).look if bools(0,0,1).look
    when 3
      play knit(:gs4,a, :a4,a/2, :fs4,a/2).look+12+[0,12].choose if bools(0,1,0, 0,1,0, 0,1,0, 0,1,0).look
      play knit(:gs4,a, :a4,a/2, :fs4,a/2).look+12 if bools(0,0,1, 0,0,1, 0,0,1, 0,1,0).look
    end
    
    sleep 0.5
  end
  
  
  / kick /
  live_loop :kick, sync: :time do
    #stop
    tick
    a = 16
    #    kick = knit(1,a,2,a,3,a*2,0,a).look
    kick = knit(1,a,3,a*2,0,a).look
    #kick = 0
    case kick
    when 0
    when 1
      #sample :bd_haus, cutoff: 90, amp: 2 if spread(1,8).look
    when 2
      sample :bd_haus, cutoff: 85, amp: 2 if bools(1,0,1,0,1,0).look
      #      sample :bd_haus, cutoff: 130, amp: 2, rate: 4 if bools(0,0,0,0,0,0,1,0).look
    when 3
      sample :bd_haus, cutoff: 85, amp: 2 if bools(1,0,0,1,0,0,1,0).look
      sample :bd_haus, cutoff: 130, amp: 2, rate: 4 if bools(0,0,0,0,0,0,1,0).look
    when 4
    end
    
    sleep 0.5
  end
  
  
  / hihat /
  live_loop :hat, sync: :time do
    tick
    use_synth :noise
    use_synth_defaults release: [0.1,0.5].look, amp: [1,0.5,0.5,0.5,0.5,0.5].look
    
    a = 16*2
    dencase = knit(0,a,0,a, 0,a,1,a).look # density on every second hat pattern
    dencase = 0 # no density
    case dencase
    when 0
      den = [1]
    when 1
      den = [1,1,1,3,2,1]
    end
    
    density den.look do
      a = 16*2
      hat = knit(0,a,1,a).look
      #hat = 1
      case hat
      when 0
      when 1
        play :c2, pan: rdist([0,0.25,0.5,1].look) if bools(1,0).look
      when 2
      end
      sleep 0.25
    end
  end
  
end


# Hydra code
# https://hydra.ojack.xyz/?code=czAuaW5pdENhbSgwKSUwQSUyMCUyMHNyYyhzMCklMEElMjAlMjAlMjAlMjAucGl4ZWxhdGUoMTUwJTJDNTApJTBBLnRocmVzaCglNUIwLjYlMkMwLjUlMkMwLjQlNUQuZmFzdCgpKSUwQS5pbnZlcnQoKSUwQSUyMCUyMCUyMCUyMC5vdXQobzIpJTBBJTBBJTJGJTJGJTIwbGljZW5zZWQlMjB3aXRoJTIwQ0MlMjBCWS1OQy1TQSUyMDQuMCUyMGh0dHBzJTNBJTJGJTJGY3JlYXRpdmVjb21tb25zLm9yZyUyRmxpY2Vuc2VzJTJGYnktbmMtc2ElMkY0LjAlMkYlMEElMkYlMkYlMjBieSUyMFJvZHJpZ28lMjBWZWxhc2NvJTBBJTJGJTJGJTIwaHR0cHMlM0ElMkYlMkZ5ZWN0by5naXRodWIuaW8lMkYlMEElMEFvc2MoMTglMkMlMjAwLjElMkMlMjAwKS5jb2xvcigyJTJDJTIwMC4xJTJDJTIwMiklMEEubXVsdChvc2MoMjAlMkMlMjAwLjAxJTJDJTIwMCkpLnJlcGVhdCgyJTJDJTIwMjApLnJvdGF0ZSgwLjUpLm1vZHVsYXRlKG8xKSUwQS5zY2FsZSgxJTJDJTIwKCklMjAlM0QlM0UlMjAlMjAoYS5mZnQlNUIwJTVEKjAuOSUyMCUyQiUyMDIpKS5kaWZmKG8xKS5vdXQobzApJTBBb3NjKDIwJTJDJTIwMC4yJTJDJTIwMCkuY29sb3IoMiUyQyUyMDAuNyUyQyUyMDAuMSkubXVsdChvc2MoNDApKS5tb2R1bGF0ZVJvdGF0ZShvMCUyQyUyMDAuMiklMEEucm90YXRlKDAuMikub3V0KG8xKSUwQSUwQSUwQSUyRiUyRiUyMG5pY2UlMEFzcmMobzIpLm11bHQoc3JjKG8wKS5pbnZlcnQoKSUyQyUyMCU1QjAlMkMwLjQlMkMwLjglMkMxJTVELmZhc3QoMC41KSkub3V0KG8zKSUyMCUwQSUwQSUwQXJlbmRlcihvMyk%3D

Hydra webcam code Hydra

4 Likes

Fun! I salute your hip mobility