Sonic Pi 最NB的功能之一就是它允许你通过写代码,以及实时修改代码来创作音乐,就像你在用吉他表演一样。这意味着你只需要做些练习,然后就可以带着 Sonic Pi 上舞台表演了。
在开始真正的教程之前,我想让你体验一下什么是 Live Code 。搞不明白也不用担心,坐稳扶好,我要带你装B带你飞了…
开始吧,复制下面的代码,粘贴到上面的空白区域:
live_loop :flibble do
sample :bd_haus, rate: 1
sleep 0.5
end
现在点击Run
按钮,你将会听到动感的低音鼓节奏。如果你想停止发声,只需要点击 Stop
按钮。先别点击哈,跟随下面的步骤:
确保低音鼓声音还在
修改 sleep
的值从 0.5
到更高的值,比如 1
.
再次点击 Run
按钮
注意鼓的节奏的速度已经变了。
最后,请记住这一刻,这是你使用 Sonic Pi 的第一次 Live Code ,期待你后续的精彩表演…
好的,是不是很简单。我们再往混音里面添加其他东西。在 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 中我们可以通过注释来在混音中去掉某些小样。
最后,我给你时间你自己再玩一会。体验一下下面的代码,现在先不要尝试理解代码的含义,你只需要明白代码里有两个循环就可以了。两个循环会同时运行。 现在,按照之前的方式体验和玩耍吧。另外我有一些建议:
尝试修改蓝色的rate:
值,听听小样音量改变的效果。
尝试修改 sleep
的值,听听两个循环中的声音以不同速度播放的效果。
尝试取消掉小样的注释(删除 #
),体会有吉他小样播放的效果。
尝试修改蓝色 mix:
的值,在0
(不参与混音) 和 1
(完全参与混音)之间。
记着点击Run
按钮,下一次循环你就能听到你所做的改变。如果你觉得音乐很混乱,不要担心,点击Stop
按钮,删除掉代码,重新粘贴一份干净的拷贝,然后再修改,再玩。失败是成功之母,加油。
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
现在,继续玩耍,体验。当你开始好奇这一切到底是怎么发生的时候,好奇还能干点别的事情不的时候,就可以开始读剩下的教程了。
往下看吧。