O Sonic Pi tem um interface muito simples para programar música. Vamos passar algum tempo a explorá-la.
A - Controlos de Reprodução B - Controlos do Editor C - Informação e Ajuda D - Editor (de código) E - Painel de Opções F - Vizualizador de logs G - Sistema de Ajuda ‘H’ - Osciloscópio I - Cue Viewer
Estes botões rosa são os controlos principais para reproduzir e parar sons. O botão Run serve para reproduzir o código no editor, Stop para parar todas as reproduções, Save para guardar o código num ficheiro externo e Record para gravar (num ficheiro WAV) o som que estiver a tocar.
Estes butões laranja permitem manipular o editor de código. Os butões de Tamanho + e “Tamanho -“permitem fazer com que o texto seja maior e mais pequeno.
Estes botões azuis dão-te acesso a informação, ajuda e opções. O botão Info abre a janela de informação que contém informação sobre o Sonic Pi em si – a equipa, histórico de actualizações, contribuidores e a comunidade. O botão Ajuda abre e fecha o sistema de ajuda (F) e o botão Opções abre e fecha a janela das opções que te permitem controlar alguns parâmetros básicos do sistema.
Esta é a área onde irá escrever o seu código e compor/tocar a sua música. Trata-se de um editor de texto simples onde pode escrever código, apagá-lo, ou modificá-lo. Pense no que é uma versão básica do Word ou do Google Docs. O editor irá mudar de cores automaticamente tendo em conta as propriedades do código. Pode parecer estranho em primeiro lugar, mas brevemente irá chegar à conclusão que isto é bastante útil. Por exemplo, irá ficar a saber que algo é um número, no instante, em que o caracter assumir a cor base azul
O Sonic Pi suporta um número de preferências que podem ser acedidas ao carregar no botão Prefs. Isto abre o painel das opções que inclui várias opções alteráveis. Alguns exemplos são forçar o mono mode, inverter o stereo, activar/desactivar logs e também um slider para o volume e selector de audio no Raspberry Pi.
Quando corres o teu código, vai ser mostrada informação sobre o que o programa está a fazer no Vizualizador do log. Por defeito, verás uma mensagem por cada som que crias com a hora exacta a que começou a tocar. Isto é útil para debugging e perceber o que o teu código está a fazer.
Uma das partes mais importantes da interface do Sonic Pi, é o sistema de ajuda que aparece por baixo da janela. Isto pode ser exibido através do botão azul intitulado “Help”. O sistema contém informação de ajuda acerca de todos os aspectos do SOnic Pi, incluindo este tutorial, e uma lista dos sintetizadores e samples disponíveis, assim como efeitos e uma lista completa de todas as função que o Sonic Pi disponibiliza para fins de criação musical
O osciloscópio permite visualizar a forma de onde do sinal de áudio reproduzido. É possível observar fcilmente a forma de uma onda triangular e constatar que o sinal se aproxima de parece uma forma de onda triangular e que um beep básico tem uma curva de sinosoidal. É também possível constatar a diferença entre um som alto e um som calmo através do tamanho das linhas. Existem três osciloscópios com os quais é possível trabalhar-se - o pré-definido é uma combinação do osciloscópio para o canal esquerdo e direito. Existe um osciloscópio estéreo que desenha um osciloscópio com linhas separadas para cada canal. Finalmente, existe um osciloscópio com curva Lissajous que permite ver a relação de fase entre o canal esquerdo e direito e permite desenhar imagens bonitas a partir da forma do som (https://en.wikipedia.org/wiki/Lissajous_curve).
All internal and external events (called cues in Sonic Pi) are automatically logged in the Cue Viewer. For example, if you have a MIDI controller connected and press one of its buttons, you’ll see a new cue event in the Cue Viewer telling you the name of the controller and which button you pressed. Once you’ve mastered the basics of making and producing sounds, you’ll start to want to cue sounds or whole sections of sounds based on events such as these. A cue event is just an indication that something happened. For example, every time a live loop spins round, it sends a cue event out which is logged in the Cue Viewer. Also, external events such as MIDI messages from connected MIDI equipment and OSC messages from other programs or computers are also displayed in the Cue Viewer. It is also possible to directly generate cue events using the cue
function. Anything that appears in the Cue Viewer can be used to trigger something happening. This is covered in more detail in Sections 10 to 12 of this tutorial.