Gör en låt
Vi börjar med att ta ett titt på hur man kan programmera ett enkelt trumbeat med bastrumma, virvel och hi-hat. Dessutom bekantar vi oss med två nya egenskaper, live_loop
och sample
.
Vi börjar skriva programmet i en tom flik (Buffer) och skapar en live_loop
med namnet :trummor
. Loopen kan heta vad som helst, namnet är till för att klargöra vad loopen gör. live_loop
är en kontinuerlig loop (dvs. den spelas tills man klickar på STOP- knappen) och den körs samtidigt med andra live_loops.
live_loop :trummor do
sleep 1
end
Obs! En live_loop
kan heta nästan vad som helst, men två live_loops kan inte ha samma namn. Varje live_loop
måste ha åtminstone ett sleep
-kommando.
I ditt program har du nu en tom live_loop som heter :trummor
. Till näst programmerar vi ett enkelt komp, där bastrumman spelas på första och tredje slaget och virveln på andra och fjärde. I stället för att spela noter använder vi i stället kommandot sample :namn
, som man kan spela samples med (inspelade ljud). Här är ett exempel på ett trumbeat:
use_bpm 100
live_loop :trummor do
sample :drum_heavy_kick
sleep 1
sample :drum_snare_hard
sleep 1
sample :drum_heavy_kick
sleep 1
sample :drum_snare_hard
sleep 1
end
Nu borde programmet spela ett jämnt grundkomp. Tempot kan du prova byta genom att byta numret efter use_bpm
. När du skriver sample
och trycker på mellanslag ger Sonic Pi automatiskt en lista av olika möjligheter som du kan använda med kommandot.
Bilden nedan klargör ännu hur en live_loop
fungerar.
Nu tillägger vi hi-hats till trumkompet. Skapa en ny live_loop
som heter :hihat
och programmera den att spela sextondelsnoter med en sample som låter som en hi-hat.
live_loop :hihat do
sample :drum_cymbal_closed
sleep 0.25
end
Ett så monotoniskt hi-hatkomp passar inte så hemskt bra bland grundkompet. Vi gör det lite intressantare till exempel genom följande ändring:
live_loop :hihat do
sample :drum_cymbal_closed
sleep 0.25
sample :drum_cymbal_pedal
sleep 1
end
Hi-hatkompet blev nu polyrytmisk, dvs en omgång är 1.25 slag långt istället för 1, av misstag! Meningen var att skapa ett komp som är ett slag långt, men vi låter det nya kompet vara,för det låter jättebra och det är det viktigaste. Med Sonic Pi kan ett misstag ibland låta bättre eller intressantare än det som du planerade att göra.
Nu borde ditt stycke se ut ungefär såhär:
use_bpm 100
live_loop :trummor do
sample :drum_heavy_kick
sleep 1
sample :drum_snare_hard
sleep 1
sample :drum_heavy_kick
sleep 1
sample :drum_snare_hard
sleep 1
end
live_loop :hihat do
sample :drum_cymbal_closed
sleep 0.25
sample :drum_cymbal_pedal
sleep 1
end
Hur beter sig en live_loop
i vanlig musiksoftware? Den här videon förklarar hurdana sekvenser en live_loop
skapar.
Till näst skapar vi ett basspår till vår låt.