Had a play with chord_degrees and inversions on a base note
use_synth :dsaw
with_fx :reverb, room: 0.7,mix: 0.6 do
live_loop :test do
use_transpose [0,2,4,-5].tick(:trans)
4.times do
sn=[:major,:major_pentatonic,:major,:major_pentatonic].tick(:base)
base=[:c4,:e4,:g4,:g3].look(:base)
puts current_transpose, base,sn
#play base nod
with_fx :ixi_techno, phase: 7,cutoff: 50,cutoff_max: 80 do
synth :tb303, note: base-24,sustain: 7,release: 0.2,amp: 0.2
end
#play chord notes
12.times do
#choose next chord notes
nv= chord_invert(chord_degree(rrand_i(1,3),base,sn,rrand_i(2,5)),rrand_i(1,4))
#arpeggiate
6.times do
play (nv.tick) - 12,release: 0.1,amp: 0.3
sleep 0.1
end
end
end
end#live_loop
end#reverb