My favorite fx combo in Sonic Pi - krush and ixi_techno



# 230515 0207 YT My favorite FX combo krush ixi_techno and saw bass (Hydra)
# Saved 230515 0207
# YT https://youtu.be/uDWNNJ4cQPw
# Created by linktr.ee/relaxnow


set_volume! 4
use_bpm 80

with_fx :krush, mix: 0 do |krush|
  with_fx :ixi_techno, mix: 0 do |ixi|
    
    live_loop :What_Can_I_Do_With_Slide do
      tick
      use_synth :saw # :saw :dsaw :prophet :tb303
      #use_synth [:saw,:dsaw,:prophet,:tb303].look
      use_synth_defaults   note_slide: 0.1, release: [[0.4,0.6].choose,0.15].look,
        cutoff: [70,80,90].look+knit(0,8,[0,10,20,30,40].choose,8).look
      
      root = :b2
      
      / bass /
      bass_case = knit(1,16, 2,16).look
      #bass_case = 0
      case bass_case
      when 0
      when 1
        s1 = play note: root+knit(0,12, 1,4).look-12+[0,0,12,24].choose, pan: rdist(0.75) if bools(1,0,1,0,1,0,1,1,0,1,1,1,1,0,1,0).look
      when 2
        s1 = play note: root+knit(0,12, -2,4).look-12 if bools(1,0,1,0,1,0,1,1,0,1,1,1,1,0,1,0).look
      end
      
      / top mel /
      ##play note: knit(:b5,3,:c6,1,:a5,1).choose-12, release: 0.3, amp: 0.3 if bools([0,0,1].choose,0,1).look
      play note: knit(root+12*3,3,root+12*3+1,1,root+12*3-2,1).choose-12, release: 0.3, amp: 0.3 if bools([0,0,1].choose,0,1).look
      
      /drums/
      drumrep   = 32
      #drums = 4 # 0 1 2
      drums = knit(0,drumrep, 1,drumrep,2,drumrep,3,drumrep, 0,drumrep, 4,drumrep*3).look
      case drums
      when 0
      when 1
        sample :bd_haus, cutoff: 80, amp: 1.5+[-0.5,0,0.5].choose if bools(1,0,0,0, 0,0,0,0, 1,0,0,0, 0,0,1,1).look
      when 2
        sample :bd_haus, cutoff: 80, amp: 1.5+[-0.5,0,0.5].choose if bools(1,0,0,0, 0,0,0,0, 1,0,0,0, 0,0,1,1).look
        sample :sn_generic, finish: 0.02, cutoff: 95, amp: 1.5+[-0.5,0,0.5].choose if bools(0,0,0,0, 1,0,0,0, 0,0,0,0, 1,0,0,0).look
      when 3
        sample :bd_haus, cutoff: 80, amp: 1.5+[-0.5,0,0.5].choose if bools(1,0,0,0, 0,0,0,0, 1,0,0,0, 0,0,1,1).look
        sample :sn_generic, finish: 0.02, cutoff: 95, amp: 1.5+[-0.5,0,0.5].choose if bools(0,0,0,0, 1,0,0,0, 0,0,0,0, 1,0,0,0).look
        sample :sn_generic, finish: [0.02,0.04,0.06,0.1].choose, cutoff: 95, amp: 1.5+[-0.5,0,0.5].choose if bools(1,0,0,0, 0,0,0,0, 0,1,1,0, 0,1,0,1).look and one_in(2)
      when 4
        sample :bd_haus, cutoff: 80, amp: 1.5+[-0.5,0,0.5].choose if bools(1,0,0,0, 1,0,0,0, 1,0,0,0, 1,0,1,1).look
        sample :sn_generic, finish: 0.05, rpitch: 12, cutoff: [80,80,80,90].choose+10, amp: 1.5+[-0.5,0,0.5].choose if spread(3,5).look
        sample :sn_generic, finish: 0.02, cutoff: 95, amp: 1.5+[-0.5,0,0.5].choose if bools(0,0,0,0, 1,0,0,0, 0,0,0,0, 1,0,0,0).look
      end
      
      
      / fx /
      puts "krush     ", m= knit(0,32, [0,0.2,0.4,0.6,0.8].choose, 32).look
      control krush, mix: m
      puts "ixi_techno", i= knit(0,64, 0.8, 64).look
      control ixi, mix: i
      
      sleep 0.25
    end
  end #end_ixi_techno
end #end_reverb


# Hydra code
# 1 Black and white squares https://hydra.ojack.xyz/?code=czAuaW5pdEltYWdlKCUyMmh0dHBzJTNBJTJGJTJGdXBsb2FkLndpa2ltZWRpYS5vcmclMkZ3aWtpcGVkaWElMkZjb21tb25zJTJGMyUyRjNkJTJGRmVzb2pfLV9QYXBpbGlvX21hY2hhb25fJTI1MjhieSUyNTI5LmpwZyUyMiklMEFzcmMobzApLm1vZHVsYXRlKG5vaXNlKDMpJTJDMC4wMDUpLmJsZW5kKHNyYyhzMCklMkMoKSUzRCUzRU1hdGgucmFuZG9tKCkqMC4xNSkubW9kdWxhdGVQaXhlbGF0ZShub2lzZSgxJTJDMC41KSUyQzEwMDApJTBBLnRocmVzaCgwLjMpJTBBLmx1bWEoMC4xKSUwQS5waXhlbGF0ZSgzMDAlMkMxMDApJTBBJTBBJTIwJTIwLm91dChvMCklMEE%3D

# 2 Luma https://hydra.ojack.xyz/?code=czAuaW5pdEltYWdlKCUyMmh0dHBzJTNBJTJGJTJGdXBsb2FkLndpa2ltZWRpYS5vcmclMkZ3aWtpcGVkaWElMkZjb21tb25zJTJGMyUyRjNkJTJGRmVzb2pfLV9QYXBpbGlvX21hY2hhb25fJTI1MjhieSUyNTI5LmpwZyUyMiklMEFzcmMobzApLm1vZHVsYXRlKG5vaXNlKDMpJTJDMC4wMDUpLmJsZW5kKHNyYyhzMCklMkMoKSUzRCUzRU1hdGgucmFuZG9tKCkqMC4xNSkubW9kdWxhdGVQaXhlbGF0ZShub2lzZSgxJTJDMC41KSUyQzEwMDApJTBBJTJGJTJGLnRocmVzaCgwLjMpJTBBLmx1bWEoMC4xKSUwQSUyMCUyMC5vdXQobzApJTBB

# 3 Noise https://hydra.ojack.xyz/?code=czAuaW5pdEltYWdlKCUyMmh0dHBzJTNBJTJGJTJGdXBsb2FkLndpa2ltZWRpYS5vcmclMkZ3aWtpcGVkaWElMkZjb21tb25zJTJGMyUyRjNkJTJGRmVzb2pfLV9QYXBpbGlvX21hY2hhb25fJTI1MjhieSUyNTI5LmpwZyUyMiklMEFzcmMobzApLm1vZHVsYXRlKG5vaXNlKDMpJTJDMC4wMDUpLmJsZW5kKHNyYyhzMCklMkMoKSUzRCUzRU1hdGgucmFuZG9tKCkqMC4xNSkubW9kdWxhdGVQaXhlbGF0ZShub2lzZSgxJTJDMC41KSUyQzEwMDApJTBBJTJGJTJGLnRocmVzaCgwLjMpJTBBJTJGJTJGLmx1bWEoMC4xKSUwQSUyMCUyMC5vdXQobzApJTBB


1 Like

Cool. I think you’ve posted the sdame hydra sketch three times instead of three separate ones.

Yes. It’s the same hydra code with small changes. I open three tabs in Chrome and switch between tab 1,2 and 3 with CTRL+1, 2, 3 during recording.

Ah ok. I must expt also to see if it’s possible to load local jpg into the built in hydra in SP. It can’t access the internet directly to load a jpg.

Wondering: Does/will Hydras initScreen() work inside Sonic Pi?

Just tried it. I don’t think so.

1 Like