Inspiration from Ryoji Ikeda ARS musica 2. draft with knit in Sonic pi and hydra visuals

# 230615 0039 Inspiration from Ryoji Ikeda ARS musica second draft with knit structur YT
# Saved 230615 0039
# Created by Created by https://linktr.ee/relaxnow
# https://youtu.be/M-1qwGlstnA
# 


# Inspiration: "Ryoji Ikeda ARS musica"
#   https://youtu.be/LeIZvgkRFSQ?t=1002


set_volume! 4

with_fx :reverb, mix: 0 do |rev|
  with_fx :krush, mix: 0 do |krush|
    with_fx :bitcrusher, mix: 0 do |bit|
      
      live_loop :controlfx do
        m = [0,0.2,0.4].choose
        bits = [0.2,0.7,1.1].choose
        control bit, mix: m, bits: bits
        
        mk = [0,0.2,0.4].choose
        k = [0.2,0.7,1.1].choose
        control krush, mix: mk
        
        mr = [0,0.2,0.4].choose
        r = [0,0.2,0.4].choose
        control rev, mix: mr, room: r
        
        sleep 0.25
      end
      
      live_loop :a1 do
        tick
        /change here/
        
        notes = knit(1,64,2,64).look
        #notes = 1
        case notes
        when 1
          n = :gs2 # simple
        when 2
          n = :gs2+[0,0,12].choose # complex
        end
        
        
        density rrand_i(1,2) do
          
          /change here/
          synth = knit(1,128,2,128,3,128,4,128).look
          #synth = 3  # 3 and 4 NICE
          case synth
          when 0
          when 1
            use_synth :fm
            use_synth_defaults attack: 0, sustain: [0.1,0.2,0.3].choose, release: [0.1,0.2,0.3].choose
            play [n,n,n,n,n+12].look
          when 2
            use_synth :fm
            use_synth_defaults attack: 0, sustain: [0.1,0.2,0.3].choose-[0.02,0.05,0.08].choose, release: [0.1,0.2,0.3].choose-0.08
            play [n,n,n,n,n+12].look
            play [n,n,n,n,n+12].look+12 if (spread(3,5)+spread(5,5)+bools(1,0,1)).look
          when 3
            use_synth [:fm, :sine].choose #Nice
            use_synth_defaults attack: 0, sustain: [0.1,0.2,0.3].choose-[0.02,0.05,0.08].choose, release: [0.1,0.2,0.3].choose-0.08
            play [n,n,n,n,n+12].look
            play [n,n,n,n,n+12].look if (spread(3,5)+spread(5,5)+bools(1,0,1)).look
            play [n,n,n,n,n+12].look+12+12 if (spread(3,5)+spread(5,5)+bools(1,0,1)).rotate(2).look
          when 4
            use_synth [:fm, :sine, :dsaw].choose
            use_synth_defaults attack: 0, sustain: [0.1,0.2,0.3].choose-[0.02,0.05,0.08].choose, release: [0.1,0.2,0.3].choose-0.08
            play [n,n,n,n,n+12].look
            play [n,n,n,n,n+12].look if (spread(3,5)+spread(5,5)+bools(1,0,1)).look
          end
          
          sleep 0.25
        end
        
        /change here/
        / kick /
        kick = knit(0,32,1,32,2,32,3,64).look
        #kick = 1
        case kick
        when 0
        when 1
          sample :bd_haus, cutoff: 75, amp: 3 if bools(1,0,0,0).look #calm
        when 2
          sample :bd_haus, cutoff: 75, amp: 3 if (bools(1,0,0,0)*7+bools(1,0,0,1)).look #calm+variation
        when 3
          sample :bd_haus, cutoff: 75, amp: 3 if bools(1,0).look  # 4 on floor
        end
        
        
      end
    end
  end
end


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

Link to hydra visuals

Hydra code

//s1.initScreen() //Run this line 1 time. Choose Sonic pi window here. Then // this line
  
src(s1)
.pixelate(160*4,90*4)
.pixelate([50,20].fast(2),[20,500].smooth().fast(3))
.luma(0.2)
.invert(-5) //NO
//.modulate(src(s1),Math.tan(time*10))
//.rotate(0,0.1)
//.kaleid(4)
//.rotate(0,0.1)
.scale(1)
//.scale(2)
//.scale([1,2].fast(1))
.scale([1,1.2,0.8,1.5,0.5].fast(4))
//.colorama(1,0,0) //thin or thick
.colorama(0.4,-10,0) //NO
.thresh(0.56) //b&w or color //NO
.mask(shape(4,0.8)).scale(1.25,9/16) 
//  .mask(shape(99,0.8)).scale(1.25,9/16) 
//.mask(shape([2,4].fast(),0.8).scale(1,9/16))
//.mask(shape([2,3,4,99].fast(),0.8).scale(1,9/16))
.out()


2 Likes