Krush groove with Sonic pi #sonicpi


# 230630 2315 krush groove YT
# 230630 2315 saved
# Created by linktr.ee/relaxnow
# https://youtu.be/772aTAEpsVM
# https://in-thread.sonic-pi.net/t/krush-groove-with-sonic-pi-sonicpi/8994




set_volume! 2

with_fx :ixi_techno, mix: 0 do |ixi|
  
  
  with_fx :krush do |krush|
    live_loop :a1 do
      tick
      
      / FX krush /
      krushmix = 0
      krushmix = knit(0,64,1,64,2,64, 3,64).look
      #krushmix = 3
      case     krushmix
      when 0
        text = "Without krush"
        r = 0
        m = 0
      when 1
        text = "res=0.8 + mix = 0.2"
        r = 0.8
        m = 0.2
      when 2
        text = "random res + mix=random "
        r = [0,0.2,0.4,0.8].choose
        m = [0,0.2,0.4,0.7].choose
        #m = 0.4
      when 3
        text = "res=0.9 + mix=random "
        r = 0.9
        m = 0.5
        m = [0,0.2,0.4,0.7].choose
      end
      #puts r
      #puts m
      puts text if spread(1,64).look
      control krush, res: r, mix: m
      
      / FX ixi /
      iximix = knit(0,64*4,1,64*4).look
      #iximix = 1
      case iximix
      when 0
        control ixi, phase: 2, mix: 0
      when 1
        puts "-- ixi on ---" if spread(1,64).look
        control ixi, phase: 2, mix: 0.8
      end
      
      
      / bass /
      use_synth :fm
      use_synth_defaults cutoff: [60,70,90,110].choose, release: [0.1,0.2,0.6].choose
      play :c3+knit(0,32,1,32).look if spread(3,5).look
      
      / top short notes /
      use_synth :beep
      use_synth_defaults cutoff: [60,70,90,110].choose, release: [0.1,0.2,0.3].choose-0.05
      play :c5+knit(0,32,1,32,7,16,5,16).look, amp: 0.7 if spread(3,5).look
      
      sleep [0.125,0.125,0.125,0.125,0.25,0.25].look
    end
    
    with_fx :reverb, room: 0.3 do
      
      
      / kick /
      live_loop :a2 do
        tick
        
        drums = knit(0,64,3,64*2,2,64*2).ramp.look
        #    drums = 0
        #drums = 2
        case drums
        when 0
        when 1
          sample :bd_fat, amp: 4 if (spread(1,5)*7+bools(1,0,0,0, 1,1,1)).look
        when 2
          sample :bd_fat, amp: 4 if (spread(1,5)*7+bools(1,0,0,0, 1,1,1)).look
          sample :elec_tick, rpitch: 12, amp: 1, pan: rdist(0.5) if spread(5,7).look and one_in(2)
        when 3
          sample :bd_fat, amp: 4 if (spread(1,10)*7+bools(1,0,0,0, 1,1,1)).look
        end
        sleep 0.125
      end
    end
    
    / melody long notes /
    with_fx :reverb, room: 0.9 do
      with_fx :reverb, room: 0.9 do
        live_loop :a3 do
          tick
          use_synth :tri
          play :c6+knit(0,32,1,32).look, amp: 0.15 if spread(1,32).look and (spread(0,64)+spread(2,64)).look
          sleep [0.125,0.125,0.125,0.125,0.25,0.25].look
        end
      end
    end
  end
  
end
1 Like

Groovin’ dude! I really dig the crunchy sound.