Hi folks,
First off let me say this is not my code… hats off to Nanomancer,
who released this to the forum about Feb 2018.
But I’ve always wanted to include some kind of… Eastern, Persian,
Turkish (?) sounds to my range, and this seemed the perfect way in
to that kind of sound…
I messed around with it for a couple of months, till it felt ‘right’ but
then I got cold feet about posting it, because it was so obviously
Nano’s work…
Cheers Nano.
Eli…
## Eastern pluck
## Coded by Nanomancer
## Modifications by Eli. April 2018.
set_volume! 0.55
set_mixer_control! amp: 0.1, amp_slide: 0.1
sleep 1
set_mixer_control! amp: 5, amp_slide: 12
use_bpm 120
seeds = [1024,2048,3072,4096,5120,6144,7168,8192,9212,512].ring
use_random_seed 999
vol=0.3
live_loop :low_boom, delay: 8 do
sample :bd_boom, rate: 0.75, amp: 2
sleep [7,1,8].ring.tick
end
live_loop :drums do
use_bpm 60
this_sample = [:loop_compus, :loop_tabla, :loop_safari].ring
start = [ 0.0 , 0.125 , 0.25 , 0.375 , 0.5 , 0.625 , 0.75 , 0.875 ].ring
sample this_sample.look , beat_stretch: 4, start: start.look, rate: 0.5
sleep 1
tick
end
live_loop :eastern_twang do |idx|
use_synth :pluck
if rand() > 0.75 then
seeds = [1024,2048,3072,4096,5120,6144,7168,8192,9212,512].ring
else
seeds =seeds.shuffle
end
with_random_seed seeds[idx] do
notes = scale(:a3, :harmonic_minor, num_octaves: dice(2)).pick(4)
multi = [0.5,1,1.5,2].choose
cut = range(50, 130, step: 2.5).mirror.ring
slp = [1,1.5,0.5,1].ring
if multi == 0.5 || multi == 1 then
reps = 16
else
reps = 8
end
with_fx :echo, mix: 0.4, phase: 2, max_phase: 4 do
with_fx :reverb, mix: 0.65, room: 0.85 do
reps.times do
play notes.tick, amp: vol*rdist(0.09, 1),
cutoff: rdist(15, 115), pitch: rdist(0.1, 0)
sleep slp.look*multi
end
end
end
if one_in(3) then
sleep 8
end
idx+=1
end
end