Sonic Pi 最強大的功能就是它讓你可以透過寫程式碼,以及即時編輯程式碼來創作音樂,就像你在現場演奏吉他一樣。這意味著你只要做些練習,就可以帶著 Sonic Pi 上舞台表演了。
在開始真正的教學前,我想讓你體驗一下什麼是 Live Code。搞不明白也不用擔心。椅子坐穩,然後好好享受吧…
我們開始吧,複製下面這段程式碼到上方的空白區域:
live_loop :flibble do
sample :bd_haus, rate: 1
sleep 0.5
end
現在,按下執行(Run)
按鈕,你將會聽到動感的低音鼓節奏。如果你想停止音樂,只要按下停止(Stop)
按鈕。不過現在先別按啊,讓我們再嘗試些東西:
sleep
的數值,從 0.5
到更高的值,比如 1
。好,是不是很簡單。讓我們再往混音裡加入其他東西。在 sample :bd_haus
上面加入一行 sample :ambi_choir, rate: 0.3
。你的程式碼看起來會像下面這樣:
live_loop :flibble do
sample :ambi_choir, rate: 0.3
sample :bd_haus, rate: 1
sleep 1
end
現在,請隨意玩耍。試著改變一下速率(rates),試試更大或更小的數,甚至負數,聽聽有什麼不同?
例如修改一下 :ambi_choir
的 rate:
值,微調一下改為 0.29
。
例如修改 sleep
的值為很小的數。你可以測試一下,看看你的電腦能支持的最快的速度是多少?
再快電腦就會發出錯誤了(如果真的發生了,那就把 sleep
的值加大一點,然後重新按下 執行(Run)
即可)。
試試看在隨意一行 sample
行的最前面加上 #
符號來註解掉那一行:
live_loop :flibble do
sample :ambi_choir, rate: 0.3
# sample :bd_haus, rate: 1
sleep 1
end
注意它是如何告訴計算機忽略它的,所以我們不會聽到它。這叫做註釋。在Sonic Pi中,我們可以使用’#‘註釋增减東西混合代码中。
最後,讓我給你留點好玩的。將下面的程式碼複製到一個備用緩衝區中。現在,除了看到有兩個迴圈之外,不要太過理解它——所以兩個東西同時迴圈。現在,做你最擅長的事情——嘗試和玩耍。以下是一些建議:
記住按 “Run”,下次迴圈時你會聽到變化。如果你最後陷入困境,不要擔心,點擊 “停止”,删除緩衝區中的程式碼,貼上一個新的副本,你就可以再次進行干擾了。犯錯是你學習最快的方法…
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
現在,保持玩耍,不斷嘗試,直到你對這一切如何運作產生好奇心,你開始思考你還能做些什麼。現在您可以閱讀教程的其餘部分了。
所以您還在等什麼呢…