O Sonic Pi tem suporte incluído para nomes de acordes que devolverão listas. Tenta por ti próprio:
play chord(:E3, :minor)
Agora estamos a chegar a algum lado. Isso parece mais bonito que as listas em bruto (e são mais fáceis de ler para outras pessoas). Assim que outros acordes o Sonic Pi suporta? Bem, muitos. Tenta alguns destes:
chord(:E3, :m7)
chord(:E3, :minor)
chord(:E3, :dim7)
chord(:E3, :dom7)
Podemos facilmente transformar acordes em arpejos com a função play_pattern
:
play_pattern chord(:E3, :m7)
Ok, isto não é tão divertido - tocou muito devagar. play_pattern
irá tocar cada nota na lista separada com uma chamada a sleep 1
entre cada chamada a play
. Podemos usar outra função play_pattern_timed
para especificar o nosso próprio tempo e acelerar as coisas:
play_pattern_timed chord(:E3, :m7), 0.25
Podemos até passar uma lista de tempos que ira ser tratada como um circulo de tempos:
play_pattern_timed chord(:E3, :m13), [0.25, 0.5]
Isto é equivalente a:
play 52
sleep 0.25
play 55
sleep 0.5
play 59
sleep 0.25
play 62
sleep 0.5
play 66
sleep 0.25
play 69
sleep 0.5
play 73
Qual preveres escrever?