Skip to content

Instantly share code, notes, and snippets.

@mbutz
Created November 9, 2021 17:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mbutz/6f43d2220802069980db422c2c144c86 to your computer and use it in GitHub Desktop.
Save mbutz/6f43d2220802069980db422c2c144c86 to your computer and use it in GitHub Desktop.
Who are you? (Sonic Pi)
# Who are you?
#
# filename: way.rb
# carla: way.carpx
live_loop :metro do
sleep 1
end
live_loop :phrase, sync: :metro do
sleep 8
end
live_loop :straw, sync: :phrase do
stop
with_fx :sound_out_stereo, output: 11 do
with_fx :slicer, phase: 0.75, prob_pos: 0.5, smooth: 0.25, mix: 0.75 do
with_fx :slicer, phase: 0.25, smooth: 0.25 do
with_fx :rhpf, cutoff: 70, res: 0.95 do
with_fx :gverb, room: 100 do
sample lcc, 5, attack: 0.5, release: 1, beat_stretch: 2, amp: 0.25, pitch: (knit -5,2,-7,2, (knit -10,2,-12,2), 2).flatten.tick
end
end
end
end
end
sleep 2
end
live_loop :marvin, sync: :phrase do
stop
with_fx :sound_out_stereo, output: 9 do
with_fx :rlpf, cutoff: (knit 80,12,82,12).tick, res: 0.955 do |rlp|
#control rlp, cutoff: 110, cutoff_slide: 4, mix: 0, mix_slide: 1
with_fx :gverb, room: 2, mix: 0.75, amp: 0.75 do
sample lcc, "nokey", 15, beat_stretch: 4, amp: 0.25
end
end
end
sleep 4
end
live_loop :wha, sync: :phrase do
stop
at [3, 20] do
with_fx :sound_out_stereo, output: 9 do
with_fx :reverb, room: 0.25, mix: 0.25 do |rev|
control rev, room: 1, room_slide: 2, mix: 1, mix_slide: 2
with_fx :rbpf, centre: 50 do |rbp|
control centre: 95, centre_slide: 1
s = sample lcc, 36, beat_stretch: 4, pitch: 2, finish: 0.35, pan: -1, amp: 10
control s, pitch: 2, pitch_slide: 1, pan: 1, pan_slide: 1.75, amp: 0, amp_slide: 8 # pitch 2, -4, 8
end
end
end
end
sleep 32
end
live_loop :eels, sync: :phrase do
stop
with_fx :sound_out_stereo, output: 3 do
sample beats, "eels", beat_stretch: 4, amp: 0.75
end
sleep 4
end
live_loop :magdalena, sync: :phrase do
stop
with_fx :sound_out_stereo, output: 7 do
with_fx :echo, phase: (ring 0.25, 0.5).choose, decay: (ring 4, 6, 10).choose, mix: 0.5, amp: 0.5 do
with_fx :reverb, room: 1, mix: 0.0 do |rev|
with_fx :bitcrusher, sample_rate: 5000 do
control rev, mix: 1, mix_slide: 3
s = sample lcc, 21, attack: 1, beat_stretch: 2, finish: 0.75, rpitch: 2, pan: 1 # 0, 2, -2, 5
control s, pan: -1, pan_slide: 1.5
end
end
end
end
sleep 12 #(ring 2, 4, 4, 6, 8).choose
end
live_loop :bass, sync: :phrase do
stop
use_synth :sine
vol = (ring 1, 0, 0, 0, 0, 0, 0.75, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0.75, 0, 0, 0, 1, 0, 1, 0, 1, 0)
dur = (ring 2, 0, 0, 0, 0, 0, 0.5,0, 0.175, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.25,0, 0, 0, 0.25,0, 0.25,0, 0.125,0)
ptn = (ring :db2,:r,:r,:r,:r,:r,:r, :r, :r, :r,:ab1,:r,:r,:r,:r, :r,:r,:r,:r, :r,:r,:r,:r, :r,:r,:r,:r, :r,:bb1,:r,:db2, :r)
#ptn = (ring :db2,:r,:r,:r,:r,:r,:r, :r, :eb3, :r,:ab1,:r,:r,:r,:cb2,:r,:r,:r,:db2,:r,:r,:r,:r, :r,:r,:r,:r, :r,:bb1,:r,:cs2, :r)
#ptn = (ring :db2,:r,:r,:r,:r,:r,:e2,:r, :eb3, :r,:ab1,:r,:r,:r,:cb2,:r,:r,:r,:db2,:r,:r,:r,:b2, :r,:r,:r,:ab1,:r,:bb2,:r,:ab2, :r)
with_fx :sound_out_stereo, output: 3 do
with_fx :hpf, cutoff: 30 do
with_synth_defaults release: dur.tick, depth: 1, divisor: 1, amp: vol.look * 1 do
play ptn.look
end
end
end
sleep 0.125
end
live_loop :way, sync: :phrase do
stop
with_fx :sound_out_stereo, output: 3 do
sample voices, "who_are_you_cut", beat_stretch: 32, amp: 1.5
end
sleep 32
end
live_loop :breakbeat, sync: :phrase do
stop
with_fx :sound_out_stereo, output: 3 do
with_fx :rhpf, cutoff: 110, res: 0.7 do
sample samples + "freesound", "breakbeat", beat_stretch: 64, start: 0, finish: 0.25, amp: 1.0 # 1, 1.5
end
end
sleep 16
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment