#
# 220923 0001 Metallic contrast with hydra visuals
# 220923 0001 saved
# My performance https://youtu.be/viUdT4e6rNE medley of 4 tracks "Sonic Pi medley of 4 with hydra Visuals"
# create by https://linktr.ee/relaxnow
use_bpm 100
live_loop :time, delay: 0.01 do
sleep 1
end
w = 1
h = 0.5
q = 0.25
s = 0.125
with_fx :level, amp: 2 do
live_loop :kick, sync: :time do
tick
#sleep 8
#stop
#sleep 2
2.times do
# sleep 2
sample :bd_fat, amp: 2
sleep 4
end
24.times do
sample :bd_haus, cutoff: ring(90,80,70,60).mirror.look if bools(1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,1).tick(:bd)
sleep 0.25
end
end
end
live_loop :snare, sync: :time do
tick
#sample :tabla_na_s, amp: 2
sleep 8
48.times do
puts sample :elec_snare, finish: rrand(0.01,0.03), amp: 0.4 if spread(3,5).look
sleep 0.25
end
end
#with_fx :level, amp: 0.5 do
with_fx :lpf, cutoff: 110, mix: 0.4 do
with_fx :distortion, distort: 0.5 do
#with_fx :flanger, feedback: 0.3, depth: 0.5 do |flanger|
with_fx :vowel, amp: 0.8 do |vowel|
with_fx :flanger, depth: 0.5 do |flanger|
live_loop :bass1, sync: :time do
tick
#stop
use_synth :saw
notes = [:bs2, :bs2,:bs2,:cs3, :bs2].look
#notes = [:f2, :f2,:fs2,:gs3, :c3].look
se = [q, h, h, h, h].look
a = knit(0,32,12,8).look
play notes+a, release: 0.125, cutoff: ring(90,80,70, 60).look, pan: 0.5
play notes-12+a, release: 0.25, cutoff: ring(90,80,70, 60).mirror.look-40, pan: -0.5
sleep se
control vowel, mix: range(0,0.8, step: 0.1).look, vowel_sound: ring(1,2,3).choose
control flanger, feedback: range(0.1,0.8, step: 0.1).look
end
end
end
end
#end
end
with_fx :reverb, room: 0.8 do
live_loop :bass3, sync: :time do
#stop
tick
use_synth :saw
notes = [:bs2, :bs2,:bs2,:cs3, :bs2, :g3].look
notes = :bs4
notes = :g4
notes = [:g4, :g4,:as4,:g4, :bb4, :g3].look
#notes = [:f2, :f2,:fs2,:gs3, :c3].look
se = [q, h, h, h, h].look
play notes+24, release: 0.125, cutoff: ring(90,80,70, 60).look, pan: 0.5
play notes+12, release: 0.125, cutoff: ring(90,80,70, 60).mirror.look, pan: -0.5
sleep se*4
end
end
#end
# Shiffting between CTRL+ 1-4 in chrome
# Hydra code 1
# https://hydra.ojack.xyz/?code=c2hhcGUoJTVCMyUyQzIlMkM1JTJDMSU1RC5mYXN0KDAuMikpJTBBLm11bHQob3NjKDIlMkMwLjUlMkMyKSklMEEucm90YXRlKDElMkMlNUIwLjIlMkMtMC4xJTJDMC40JTJDLTAuMyU1RCUyQzIpJTBBJTBBJTIwJTIwLm1vZHVsYXRlKG5vaXNlKCU1QjElMkMyJTJDNCUyQy0yJTVEKSklMEEubWFzayhzaGFwZSgyJTJDMC4xKS5yZXBlYXQoMTApLnNjYWxlKDAuMTI1KS5tb2R1bGF0ZShub2lzZSgyJTJDMC4wNSkpKSUwQSUwQSUyMCUyMC5ibGVuZChzaGFwZSg5OSUyQzAuMDEpLmJsZW5kKG9zYygyJTJDMC41JTJDMjApKSUwQS5zY3JvbGxYKDElMkMlNUIwLjAyJTJDLTAuMDElMkMwLjA0JTJDLTAuMDMlNUQpJTBBLnNjcm9sbFkoMSUyQyU1QjAuMDQlMkMtMC4xJTJDMC4wMiUyQy0wLjA1JTVEKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCklMEElMjAlMjAuc2NhbGUoMS41JTJDOSUyRjE2KS5vdXQoKQ%3D%3D
# Hydra code 2
# https://hydra.ojack.xyz/?code=c2hhcGUoJTVCMyUyQzIlMkM1JTJDMSU1RC5mYXN0KDAuMikpJTBBLm11bHQob3NjKDIlMkMwLjUlMkMyKSklMEEucm90YXRlKDElMkMlNUIwLjIlMkMtMC4xJTJDMC40JTJDLTAuMyU1RCUyQzIpJTBBJTBBJTIwJTIwLm1vZHVsYXRlKG5vaXNlKCU1QjElMkMyJTJDNCUyQy0yJTVEKSklMEEubWFzayhzaGFwZSgyJTJDMC4xKS5yZXBlYXQoMTApLnNjYWxlKDAuMTI1KS5tb2R1bGF0ZShub2lzZSgyJTJDMC4wNSkpKSUwQSUwQSUyMCUyMC5ibGVuZChzaGFwZSg5OSUyQzAuMDEpLmJsZW5kKG9zYygyJTJDMC41JTJDMjApKSUwQS5zY3JvbGxYKDElMkMlNUIwLjAyJTJDLTAuMDElMkMwLjA0JTJDLTAuMDMlNUQpJTBBLnNjcm9sbFkoMSUyQyU1QjAuMDQlMkMtMC4xJTJDMC4wMiUyQy0wLjA1JTVEKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCklMEElMjAlMjAuc2NhbGUoMS41JTJDOSUyRjE2KS5vdXQoKQ%3D%3D
# Hydra code 3
# https://hydra.ojack.xyz/?code=c2hhcGUoJTVCMyUyQzIlMkM1JTJDMSU1RC5mYXN0KDAuMikpJTBBLm11bHQob3NjKDIlMkMwLjUlMkMyKSklMEEucm90YXRlKDElMkMlNUIwLjIlMkMtMC4xJTJDMC40JTJDLTAuMyU1RCUyQzIpJTBBJTBBJTIwJTIwLm11bHQobm9pc2UoJTVCMSUyQzIlMkM0JTJDLTIlNUQpKSUwQS5tYXNrKHNoYXBlKDElMkMwLjEpLnJlcGVhdCg1KS5zY2FsZSgwLjA1MTI1KS5tb2R1bGF0ZShub2lzZSgyJTJDMC4wNSkpKSUwQSUwQSUyMCUyMC5kaWZmKHNoYXBlKDk5JTJDMC4wMSkuYmxlbmQob3NjKDIlMkMwLjUlMkMyMCkpJTBBLnNjcm9sbFgoMSUyQyU1QjAuMDIlMkMtMC4wMSUyQzAuMDQlMkMtMC4wMyU1RCklMEEuc2Nyb2xsWSgxJTJDJTVCMC4wNCUyQy0wLjElMkMwLjAyJTJDLTAuMDUlNUQpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUwQSUwQS5tb2R1bGF0ZShub2lzZSgyJTJDMC4yJTJDMjApKSUwQS5zYXR1cmF0ZSgwLjUpJTBBJTBBJTIwLnNjYWxlKDEuNSUyQzklMkYxNikub3V0KCk%3D
# Hydra code 4
# https://hydra.ojack.xyz/?code=c2hhcGUoJTVCMyUyQzIlMkM1JTJDMSU1RC5mYXN0KDAuMikpJTBBLmRpZmYob3NjKDIlMkMwLjUlMkMyKSklMEEucm90YXRlKDElMkMlNUIwLjIlMkMtMC4xJTJDMC40JTJDLTAuMyU1RCUyQzIpJTBBJTBBJTIwJTIwLm11bHQobm9pc2UoJTVCMSUyQzIlMkM0JTJDLTIlNUQpKSUwQS5tYXNrKHNoYXBlKDElMkMwLjEpLnJlcGVhdCg1KS5zY2FsZSgwLjA1MTI1KS5tb2R1bGF0ZShub2lzZSgyJTJDMC4wNSkpKSUwQSUwQSUyMCUyMC5kaWZmKHNoYXBlKDk5JTJDMC4wMSkuYmxlbmQob3NjKDIlMkMwLjUlMkMyMCkpLnJlcGVhdCg0KSUwQS5zY3JvbGxYKDElMkMlNUIwLjAyJTJDLTAuMDElMkMwLjA0JTJDLTAuMDMlNUQpLnJlcGVhdCg0KSUwQS5zY3JvbGxZKDElMkMlNUIwLjA0JTJDLTAuMSUyQzAuMDIlMkMtMC4wNSU1RCkucmVwZWF0KDQpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUwQSUwQS5kaWZmKHNoYXBlKDk5JTJDMC4wMSkuYmxlbmQob3NjKDIlMkMwLjUlMkMyMCkpJTBBLnNjcm9sbFgoMS4yJTJDJTVCMC4wMiUyQy0wLjAxJTJDMC4wNCUyQy0wLjAzJTVEKSUwQS5zY3JvbGxZKC0wLjUlMkMlNUIwLjA0JTJDLTAuMSUyQzAuMDIlMkMtMC4wNSU1RCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjApJTBBJTBBLm1vZHVsYXRlKG5vaXNlKDIlMkMwLjAyJTJDMikpJTBBLnNhdHVyYXRlKDAuNCklMEElMEElMjAuc2NhbGUoMS41JTJDOSUyRjE2KS5vdXQoKQ%3D%3D
# 220920 2338 late night sketch in Sonic Pi (not used yet) with Hydra
# 220920 2338 saved
# My performance https://youtu.be/E_jYn0DewXo
# create by https://linktr.ee/relaxnow
use_bpm 88
with_fx :level, amp: 1 do
with_fx :reverb, room: 0.7 do
live_loop :chords do
tick
1
a = 32
use_synth knit(:dsaw,a, :dpulse,a, :saw,a, :dtri,a).look
n1 = [:e2, :e4,:b4,:g3].look
n2 = [:c2, :d4,:g4,:c3].look
n3 = [:a2, :e4,:c4,:g3].look
notes = knit(n1,32*2, n2,32, n3,32).look
play notes, release: 0.125, pan: 0.5 if spread(3,7).look
play notes+12, release: 0.125, pan: -0.5 if spread(5,7).look
sleep 0.25
end
live_loop :bass do
tick
use_synth :saw
n1 = [:e2, :e4,:b4,:g3].take(1).look
n2 = [:c2, :d4,:g4,:c3].take(1).look
n3 = [:a2, :e4,:c4,:g3].take(1).look
notes = knit(n1,32*2/16, n2,32/16, n3,32/16).look
play notes-12, release: 1, cutoff: 85
sleep 4
end
live_loop :hihat do
#stop
use_synth :noise
tick
notes = [:c4].look
play notes, release: 0.01, amp: range(0.1,0.6,step: 0.01).mirror.look
sleep 0.25
end
live_loop :kick do
sleep 3
sample :bd_haus, amp: 2, cutoff: 85
sleep 1
end
with_fx :ixi_techno do
with_fx :level, amp: 0.5 do
live_loop :randomSamples do
sleep 4
sleep 2
sample :glitch_robot1, beat_stretch: 12, rate: 8 # if one_in(2)
sleep 4
sample :glitch_robot2, beat_stretch: 8, rate: 2 if one_in(2)
sleep 2
sample :glitch_perc3, beat_stretch: 2, rate: 8 if one_in(2)
sleep 4
sample :glitch_perc5, beat_stretch: 8, rate: 2 if one_in(2)
sleep 8
end
end
end
with_fx :ping_pong, mix: 0.4 do
live_loop :highMelody do
puts "##########################################################################"
puts "##########################################################################"
puts "##########################################################################"
puts "##########################################################################"
sleep 8
16.times do
tick
use_synth :beep
puts "#################################################"
puts play ring(:g6, :fs5, :e6, nil).look, release: 0.125 if bools(1,1,0,0,1).look
sleep 2
end
end
end
end
end
# Hydra code original
# https://hydra.ojack.xyz/?code=JTJGJTJGJTIwbGljZW5zZWQlMjB3aXRoJTIwQ0MlMjBCWS1OQy1TQSUyMDQuMCUyMGh0dHBzJTNBJTJGJTJGY3JlYXRpdmVjb21tb25zLm9yZyUyRmxpY2Vuc2VzJTJGYnktbmMtc2ElMkY0LjAlMkYlMEElMkYlMkYlMjAlMjJlZ2clMjBvZiUyMHRoZSUyMHBob2VuaXglMjIlMEElMkYlMkYlMjBBbGV4YW5kcmUlMjBSYW5nZWwlMEElMkYlMkYlMjB3d3cuYWxleGFuZHJlcmFuZ2VsLmFydC5iciUyRmh5ZHJhLmh0bWwlMEElMEFzcGVlZCUzRDEuMiUwQXNoYXBlKDk5JTJDLjE1JTJDLjUpLmNvbG9yKDAlMkMxJTJDMiklMEElMEEuZGlmZiglMjBzaGFwZSgyNDAlMkMuNSUyQzApLnNjcm9sbFgoLjA1KS5yb3RhdGUoJTIwKCklM0QlM0V0aW1lJTJGMTAlMjApLmNvbG9yKDElMkMwJTJDLjc1KSUyMCklMEEuZGlmZiglMjBzaGFwZSg5OSUyQy40JTJDLjAwMikuc2Nyb2xsWCguMTApLnJvdGF0ZSglMjAoKSUzRCUzRXRpbWUlMkYyMCUyMCkuY29sb3IoMSUyQzAlMkMuNzUpJTIwKSUwQS5kaWZmKCUyMHNoYXBlKDk5JTJDLjMlMkMuMDAyKS5zY3JvbGxYKC4xNSkucm90YXRlKCUyMCgpJTNEJTNFdGltZSUyRjMwJTIwKS5jb2xvcigxJTJDMCUyQy43NSklMjApJTBBLmRpZmYoJTIwc2hhcGUoOTklMkMuMiUyQy4wMDIpLnNjcm9sbFgoLjIwKS5yb3RhdGUoJTIwKCklM0QlM0V0aW1lJTJGNDAlMjApLmNvbG9yKDElMkMwJTJDLjc1KSUyMCklMEEuZGlmZiglMjBzaGFwZSg5OSUyQy4xJTJDLjAwMikuc2Nyb2xsWCguMjUpLnJvdGF0ZSglMjAoKSUzRCUzRXRpbWUlMkY1MCUyMCkuY29sb3IoMSUyQzAlMkMuNzUpJTIwKSUwQSUwQS5tb2R1bGF0ZVNjYWxlKCUwQSUyMCUyMHNoYXBlKDI0MCUyQy4yNSUyQzApLnNjcm9sbFgoLjA1KS5yb3RhdGUoJTIwKCklM0QlM0V0aW1lJTJGMTAlMjApJTBBJTIwJTIwJTJDJTIwKCklM0QlM0UoTWF0aC5zaW4odGltZSUyRjMpKi4yKSUyQi4yJTIwKSUwQSUwQS5zY2FsZSgxLjYlMkMuNiUyQzEpJTBBLm91dCgpJTBB
# Hydra code last edit with pixelate
# https://hydra.ojack.xyz/?code=JTJGJTJGJTIwbGljZW5zZWQlMjB3aXRoJTIwQ0MlMjBCWS1OQy1TQSUyMDQuMCUyMGh0dHBzJTNBJTJGJTJGY3JlYXRpdmVjb21tb25zLm9yZyUyRmxpY2Vuc2VzJTJGYnktbmMtc2ElMkY0LjAlMkYlMEElMkYlMkYlMjAlMjJlZ2clMjBvZiUyMHRoZSUyMHBob2VuaXglMjIlMEElMkYlMkYlMjBBbGV4YW5kcmUlMjBSYW5nZWwlMEElMkYlMkYlMjB3d3cuYWxleGFuZHJlcmFuZ2VsLmFydC5iciUyRmh5ZHJhLmh0bWwlMEElMEFzcGVlZCUzRDEuMiUwQXNoYXBlKDIlMkMuMTUlMkMuNSkuY29sb3IoMCUyQzElMkMyKSUwQSUwQS5kaWZmKCUyMHNoYXBlKDMlMkMuNSUyQzApLnNjcm9sbFgoLjA1KS5yb3RhdGUoJTIwKCklM0QlM0V0aW1lJTJGMTAlMjApLmNvbG9yKDElMkMwJTJDLjc1KSUyMCklMEEuZGlmZiglMjBzaGFwZSgzJTJDLjQlMkMuMDAyKS5zY3JvbGxYKC4xMCkucm90YXRlKCUyMCgpJTNEJTNFdGltZSUyRjIwJTIwKS5jb2xvcigxJTJDMCUyQy43NSklMjApJTBBLmRpZmYoJTIwc2hhcGUoMyUyQy4zJTJDLjAwMikuc2Nyb2xsWCguMTUpLnJvdGF0ZSglMjAoKSUzRCUzRXRpbWUlMkYzMCUyMCkuY29sb3IoMSUyQzAlMkMuNzUpJTIwKSUwQS5kaWZmKCUyMHNoYXBlKDMlMkMuMiUyQy4wMDIpLnNjcm9sbFgoLjIwKS5yb3RhdGUoJTIwKCklM0QlM0V0aW1lJTJGNDAlMjApLmNvbG9yKDElMkMwJTJDLjc1KSUyMCklMEEuZGlmZiglMjBzaGFwZSg5OSUyQy4xJTJDLjAwMikuc2Nyb2xsWCguMjUpLnJvdGF0ZSglMjAoKSUzRCUzRXRpbWUlMkY1MCUyMCkuY29sb3IoMSUyQzAlMkMuNzUpJTIwKSUwQSUwQS5tb2R1bGF0ZVNjYWxlKCUwQSUyMCUyMHNoYXBlKDI0MCUyQy4yNSUyQzApLnNjcm9sbFgoLjA1KS5yb3RhdGUoJTIwKCklM0QlM0V0aW1lJTJGMiUyMCklMEElMjAlMjAlMkMlMjAoKSUzRCUzRShNYXRoLnNpbih0aW1lJTJGMykqLjIpJTJCLjIlMjApJTBBJTBBLnNjYWxlKDEuNiUyQy42JTJDMSklMEEubW9kdWxhdGUodm9yb25vaSgyJTJDMC4yJTJDMjApKSUwQS5hZGQobm9pc2UoMiUyQzAuMSUyQzIpKSUwQS5yb3RhdGUoMCUyQzAuMjUpJTBBLnBpeGVsYXRlKDIwJTJDNDAwKSUwQS5sdW1hKDAuNyklMEEub3V0KCklMEE%3D
use_bpm 65#45
w = 1
h = 0.5
q = 0.25
s = 0.125
with_fx :reverb do
live_loop :askdads do
#stop
tick
use_synth :fm
notes = [:e3, :e2, :e3,:d3,:e3, :d3, :b2,:a2,:b2,:g2 , :e2]
sl = [q*3, q*6 , q, q ,q, q*3, q, q, q, q*3 , q*3]
play notes.look, release: 0.5
use_synth :saw
play notes.look, release: 0.5, pitch: 12, cutoff: 70
use_synth :prophet
play notes.look, release: 0.5, pitch: 24, cutoff: 90
play notes.look+0.1, release: 0.35
sleep sl.look
end
live_loop :mel1 do
stop
use_synth :saw
tick
play ring(:g4).look, release: 0.125, cutoff: ring(85,90,100).choose if spread(5,7).look and bools(1,0,0).look
sleep 0.125
end
end
live_loop :klik do
tick
sample :elec_pop, rate: 4, finish: knit(0.2,1,0.1,5).look,amp: knit(1,1,0.5,5).look
sleep q
end
live_loop :hihat do
stop
tick
sample :elec_pop, rate: 6, finish: knit(0.3,1,0.1,5).look if bools(1,0,0,0,0).look
sleep q
end
live_loop :kick do
stop
sample :bd_haus, cutoff: 85, amp: 2
sleep q*3
end
live_loop :time, delay: 0.01 do
sleep 1
end
live_loop :kick1, sync: :time do
tick
sample :bd_haus, cutoff: 85 if bools(1,0,0,0,0).look
sample :bd_haus, cutoff: 85, rate: 2 if bools(0,1,0,0).look and one_in(2)
sample :bd_haus, cutoff: 115, rate: 4 if bools(0,0,1).look and one_in(4)
sample :elec_plip, amp: range(0.01,0.8,step: 0.1).mirror.look if bools(0,0,1,1,0,1,0).look
sleep 0.25
end
live_loop :noise, sync: :time do
tick
use_synth :noise
play :c4, release: 0.01, amp: knit(1,1,0.3,5).look
sleep 0.25
end
live_loop :bas1, sync: :time do
use_synth_defaults release: 0.125, cutoff: rrand(75,110), amp: range(0.01,0.8,step: 0.1).mirror.look
use_synth :saw
notes = [:c3]
tick
play notes.look if bools(1,0,0,0,0).look
play notes.look+5 if bools(0,1,0,0).look
play notes.look+12 if bools(0,0,1).look
#use_synth :piano
#play notes.look+3+12+knit(0,16,-1,16, 12,32).look, amp: range(0.01,0.8,step: 0.1).mirror.look if bools(1).look
sleep 0.25
end
with_fx :reverb, room: 0.8 do
live_loop :mel1, sync: :time do
use_synth_defaults release: 0.125, cutoff: rrand(75,110), amp: range(0.01,0.8,step: 0.1).mirror.look
notes = [:c4]
tick
use_synth :dsaw
play notes.look+3+12+knit(0,16,-1,16, 12,32).look, amp: range(0.01,0.8,step: 0.1).mirror.look if bools(1).look
sleep 0.25
end
end