# 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
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()