Sonic Pi - Beats

Uma das formas mais práticas para programar uma batida é utilizar estruturas de ring com parâmetros de volume (amp). Segue uma coleção de beats criados com essa técnica:

# Techno, Ramiro Galas
use_bpm 120
live_loop :drums do
  x = tick
  sample :bd_haus,          amp: ring(2,0,0,0) [x] #bd
  sample :drum_snare_soft,  amp: ring(0,0,0,0, 2,0,0,0, 0,0,0,0, 2,0,0,0)[x] #sr
  sample :drum_cymbal_soft, amp: ring(0,0,1,0, 0,0,1,0, 0,0,1,0, 0,0,1,0)[x] #ch
  sample :drum_snare_soft,  amp: ring(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,1,0,0)[x] #oh
  sample :drum_cymbal_pedal,amp: ring(0,0,0,0, 0,0,0,0, 1,0,1,1, 0,1,0,1)[x] #cp
  sleep 0.25
end

# Bossa Nova
use_bpm 120
live_loop :bossanova do
  x = tick
  sample :bd_haus,    amp: ring(1,0,0,1, 1,0,0,1, 1,0,0,1, 1,0,0,1)[x]
  sample :tabla_tas2, amp: ring(1,0,0,1, 0,0,1,0, 0,0,1,0, 0,1,0,0)[x]
  sleep 0.25
end

# Hip Hop
use_bpm 120
live_loop :hiphop do
  x = tick
  sample :bd_haus,            amp: ring(1,0,0,0, 0,0,0,1, 0,0,1,0, 0,1,0,1)[x]
  sample :tabla_tas2,         amp: ring(0,0,0,0, 1,0,0,0, 0,0,0,0, 1,0,0,0)[x]
  sample :drum_cymbal_closed, amp: ring(1,0,1,0, 1,0,1,0, 1,0,1,0, 1,0,1,0)[x]
  sleep 0.25
end

# Rock
use_bpm 120
live_loop :rock do
  x = tick
  sample :bd_haus,            amp: ring(1,0,1,0, 0,0,1,0, 1,0,1,0, 0,0,1,0)[x]
  sample :drum_snare_soft,    amp: ring(0,0,0,0, 1,0,0,0, 0,0,0,0, 1,0,0,0)[x]
  sample :drum_cymbal_closed, amp: ring(1,0,1,0, 1,0,1,0, 1,0,1,0, 1,0,1,0)[x]
  sleep 0.25
end

# Rumba
use_bpm 120
live_loop :rumba do
  x = tick
  sample :bd_haus,    amp: ring(1,0,0,1, 1,0,0,1, 1,0,0,1, 1,0,0,1)[x]
  sample :tabla_tas2, amp: ring(1,0,0,1, 0,0,0,1, 0,0,1,0, 1,0,0,0)[x]
  sleep 0.25
end

# Walk this way
use_bpm 120
live_loop :walk do
  x = tick
  sample :bd_haus,            amp: ring(1,0,0,0, 0,0,0,1, 1,0,1,0, 0,0,0,0)[x]
  sample :drum_snare_soft,    amp: ring(0,0,0,0, 1,0,0,0, 0,0,0,0, 1,0,0,0)[x]
  sample :drum_cymbal_closed, amp: ring(0,0,1,0, 1,0,1,0, 1,0,1,0, 1,0,1,0)[x]
  sample :drum_cymbal_open,   amp: ring(1,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0)[x] * 0.3
  sleep 0.25
end


Links extras:
www.attackmagazine.com/technique/tutorials/the-psychoacoustics-of-drums/