Hi,
as far as I understood, the synchronisation is very strict since version 3. This means: a sync
event will only be considered as one if it is in the past, in other words: the first run of :foo
will not sync :bar
.
It depends a bit on what you want to do, but one option is to introduce an extra metronome loop (I sometimes have even more* with differnt length depending on the musical context):
live_loop :metro do
sleep 1
end
live_loop :foo, sync: :metro do
play :e4, release: 0.5
sleep 4
end
live_loop :bar, sync: :metro do
sample :bd_haus
sleep 1
end
- See https://github.com/mbutz/sonicpi-leuphana-ws1718/blob/master/session-04/synchronisation-of-live-loops.rb for some other examples.