Sonic Pi

Live Coding

Um dos espectos mais excitantes do Sonic Pi eh a possibilidade de escrever e modificar codigo ao vivo para fazer musica, assim como uma performance de guitarra ao vivo, isto quer dizer que apos alguma pratica voce pode fazer suas gigs com ele.

Agenda

  • A importancia do Software Livre
  • Visao geral da GUI do Sonic Pi
  • Como instalar e configurar Sonic Pi
  • Conceitos de sample e sintetizador
  • Explorando o Sonic Pi
  • Conceitos de envelope ADSR
  • Funcoes da linguagem Sonic Pi

A importancia do Software Livre

ir para slides sobre software livre

A interface grafica (GUI) do Sonic Pi

  • Controles de Play
  • Editor de codigo
  • Controles do editor de codigo
  • Informacoes e ajuda
  • Visualizacao
  • Logs, help

Como instalar e configurar o

Sonic Pi

Sample

Sintetizador

Sample


sample :drum_cymbal_soft

Sintetizador


play 60

Sample, Play e Sleep


sample :drum_cymbal_soft
sleep 0.5
play 60
sleep 0.5
sample :drum_cymbal_soft
sleep 0.5
play 60
sleep 0.5
sample :drum_cymbal_soft

Live Loop


live_loop :meuloop do
  sample :drum_cymbal_soft
  sleep 0.5
  play 60
  sleep 0.5
end

Parametro ‘rate


live_loop :meuloop do
  sample :drum_cymbal_soft, rate: 0.5
  sleep 0.5
  play 60
  sleep 0.5
end

adicione o parametro rate com valor 0.5
(valores possiveis vao de 0 ate 1)

Comentarios


live_loop :meuloop do
  #sample :drum_cymbal_soft, rate: 0.5
  sample :drum_cymbal_soft, rate: 0.1
  sleep 0.5
  #play 60
  play 120
  sleep 0.5
end

linhas iniciadas com # nao sao executadas

Não existem erros,

Apenas oportunidades

Parametro ‘amp’ (Amplitude)


sample :drum_cymbal_soft, amp: 0.5
sleep 0.5
play 60, amp: 0.5
sleep 0.5

amp com valor 0.5 ajusta volume em 50%
(valores recomendados vao de 0 ate 1)

Parametro ‘pan’ (Panning)


sample :drum_cymbal_soft, pan: -1
sleep 0.5
play 60, pan: 1
sleep 0.5

valor -1 som 100% para o lado esquerdo
valor 1 som 100% para o lado direito
(valores vao de -1 ate 1)

Selecionando o sintetizador


use_synth :saw
play 60

Desafio!

Fazer 2 live loops cada um com um sintetizador diferente tocando de maneira intercalada.

Envelope ADSR

(Attack, Decay, Sustain, Release)

Envelope ADSR

(Attack, Decay, Sustain, Release)


play 60, attack: 0.7, release: 4

Envelope ADSR

(Attack, Decay, Sustain, Release)


play 60, attack: 4, release: 0.7

Listas e a funcao choose


loop do
  play choose([60, 65, 72])
  sleep 1
end

Outras funcoes de loop


3.times do
  play 60
  sleep 1
end


loop do
  play 60
  sleep 1
end

Adicionar samples

Extras

  • Gravando com Sonic Pi
  • Master e mixer com Audacity
  • Transmissao com OBS

Obrigado!

joenio@joenio.me


Esta apresentação está disponível em:

http://joenio.me/sonic-pi

(código-fonte: http://github.com/joenio/joenio.me)

Licença Creative Commons

Presentation history

Onde e quando esta apresentação foi realizada