Well, the obvious way to acomplish that (and not at all Tidal like) is probably to work with a pattern and tick:
live_loop :rhythm do
#ptn = (ring 1,0,0,0, 1,0,0,0, 1,0,0,0, 1,0,0,0)
#ptn = (ring 1,0,0,0, 1,0,1,0, 1,0,0,0, 1,0,0,0)
ptn = (ring 1,0,0,0, 1,1,1,1, 1,0,0,0, 1,0,0,0)
sample :drum_cymbal_closed, amp: ptn.tick if ptn.look > 0
sleep 0.25
end
In the example I did not use the amp option but it is a good way to give the rhythm some dynamic qualities like:
ptn = (ring 1,0,0,0, 1,0.5,0.25,1, 1,0,0,0, 1,0,0,0)
But I guess you were looking for something easier like the Tidal way, right? Maybe there are others with better ideas.
Plus: I am always looking for firstly easy to remember (not too much programming ) and secondly performance sparing solutions. In my experience (or better the experience of my laptop) it is quite a lot of work for a processor to run e. g. 4 live loops with a run time of 0.25 (let’s say at the bpm of 120) to just deliver a few sounds while using
tick
. That is why I have been experimenting with at
(assuming that this would lower the work for the processor). In the end for me it all depends on the musical idea I try to get across…