Eitt af því sem er mest spennandi við Sonic Pi er þú getur skrifað kóða og breytt honum á meðan hann keyrir til að skapa tónlist, svona eins og þegar spilað er á gítar. Það þýðir að þegar þú hefur náð ákveðinni færni gætir þú farið með Sonic Pi á svið og haldið gigg.
Áður en við förum í smáatriðin um hvernig Sonic Pi virkar hér á eftir í þessu kennsluefni, langar mig til að láta þig upplifa hvernig það er að kóða beint. Ekki hafa áhyggjur þó þú skiljir lítið (eða ekkert) af þessu. Haltu þér bara fast í sætinu og njóttu …
Byrjum á þessu. Afritaðu þennan kóða inn í tómt rissblað hér fyrir ofan:
live_loop :flibble do
sample :bd_haus, rate: 1
sleep 0.5
end
Ýttu nú á Run
hnappinn og þá muntu heyra hraðan bassatommuslátt spilaðan. Ef þú vilt stöðva hljóðið getur þú ýtt á Stop
hnappinn. En ekki ýta á hann strax … Fylgdu heldur þessum leiðbeiningum:
sleep
úr 0.5
í eitthvað annað, t.d. 1
.Run
hnappinnJæja, þetta var nú nógu einfalt. Kryddum nú súpuna aðeins: Bættu við fyrir ofan sample :bd_haus
nýrri línu sample :ambi_choir, rate: 0.3
. Nú ætti kóðinn þinn að vera svona:
live_loop :flibble do
sample :ambi_choir, rate: 0.3
sample :bd_haus, rate: 1
sleep 1
end
Fiktaðu nú í þessu. Breyttu rate
tölunum (rate=tíðni) - hvað gerist ef þú notar hærri tölur eða litlar tölur eða mínus tölur? Gáðu hvað gerist ef þú breytir rate
tölunni fyrir sample:ambi_choir
(sample=sýni) bara örlítið (t.d. í 0.29
). Hvað gerist ef þú notar mjög litla sleep
tölu (sleep=hvíld)? Gáðu hvort þú getir látið þetta spila svo hratt að tölvan stoppi með villu því hún getur ekki fylgt eftir (ef það gerist þarftu bara að velja stærri sleep
tölu og ýta svo aftur á Run
).
Prófaðu að gera eina sample
línuna óvirka með því að bæta #
framan við hana:
live_loop :flibble do
sample :ambi_choir, rate: 0.3
# sample :bd_haus, rate: 1
sleep 1
end
Táknið # lætur tölvuna sleppa línunni, svo hún heyrist ekki. Þetta má nota til að gera línur óvirkar án þess að eyða þeim. Líka til að skrifa athugasemdir (comment) til að útskýra kóða.
Hér að lokum færðu svolítið sem er gaman að fikta við. Veldu kóðann hér fyrir neðan og afritaðu hann yfir á tómt rissblað. Ekki reyna að skilja þetta of mikið nema hvað nú hefurðu tvær lykkjur - eitthvað tvennt sem fer í hringi á sama tíma. Gerðu nú það sem þú gerir best - að gera tilraunir og leika þér með þetta. Hér eru nokkrar hugmyndir:
rate
(tíðni) til að heyra hvernig hljóð sýnisins breytist.sample
línuna (fjarlægja #) og heyra hvernig gítarinn hljómar spilaður aftur á bak.mix:
tölu í tölu á milli 0
(ekki með í hljóðblönduninni) og 1
(að fullu blandað).Mundu að ýta á Run
eftir breytingar og þá heyrast þær í næstu umferð lykkjunnar. Ef þú lendir í veseni, ekki örvænta. Ýttu bara á Stop
, eyddu kóðanum á rissblaðinu og límdu nýtt afrit á það og þá geturðu haldið áfram að djamma. Af mistökunum lærir maður best …
live_loop :guit do
with_fx :echo, mix: 0.3, phase: 0.25 do
sample :guit_em9, rate: 0.5
end
# sample :guit_em9, rate: -0.5
sleep 8
end
live_loop :boom do
with_fx :reverb, room: 1 do
sample :bd_boom, amp: 10, rate: 1
end
sleep 8
end
Haltu nú áfram að leika þér og gera tilraunir þangað til þú ferð að pæla í hvernig þetta allt saman virkar og þú ferð að velta fyrir þér hvað sé hægt að gera fleira með þessu. Þá munt þú læra sem mest á kennslunni sem fylgir hér á eftir.
Halló, eftir hverju ertu að bíða …