# 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