My first creation.
As in title: is there an FX stack so I don’t have to have this nested structure?
live_loop :snake_jazz do
with_fx :compressor do
with_fx :flanger, mix: rrand(0, 0.2) do
with_fx :reverb, amp: rrand(0, 0.6) do
with_fx :tanh, krunch: 2, mix: rrand(0, 0.2) do
with_fx :hpf, cutoff: 130 - rrand(0, 20), mix: rrand(0.9, 1) do
sample :drum_cymbal_open
sleep 0.75
sample :drum_cymbal_pedal
sleep 0.5
sample :drum_cymbal_pedal, sustain: 0.1
sleep 0.25
end
end
end
end
end
end
I picture something like this. Apologies for the syntax errors, I’m a bit rusty with Ruby. I’m not even sure if this is Ruby.
chain = [
{ fx: :compressor },
{ fx: :flanger, mix: rrand(0, 0.2) },
{ fx: :reverb, amp: rrand(0, 0.6) },
{ fx: :tanh, krunch: 2, mix: rrand(0, 0.2) },
{ fx: :hpf, cutoff: 130 - rrand(0, 20), mix: rrand(0.9, 1) }
]
with_fx :chain, chain: chain do
play :c
end
The fx variable could be reversed, not sure which is more intuitive.
Above code is in a gist here https://gist.github.com/datashaman/e4cc432516dbe6c923c3390af2d6a52a