合成器选项: Amp 和 Pan

除了允许您控制播放哪个音符或触发哪个示例之外,Sonic Pi还提供了一系列选项来制作和控制声音。我们将在本教程中介绍其中的许多内容,并且在帮助系统中有详细的文档。不过,我们现在要介绍是最有用的两个选项:声音增幅左右声道平移。首先,让我们看看这些选项到底是什么。

选项

Sonic Pi支持合成器选项的概念(以下简称选项)。选项是你传向play命令的控制,它可以修改和控制你听到的声音。每一个合成器都有自己的一套选项来精确调整它的声音。然而,有一些常见的设置选项是许多声音共有的,如amp:(增幅)和波封设置选项(将在另一节中介绍)。

选项有两个主要部分, 它们的名称 (控件的名称) 和它们的值 (你想设置到控件上的值)。例如, 您可能有一个名为 cheese: 的选项, 并希望将它的值设置为 1

合成器选项通过逗号,传递给play调用,紧跟着的是选项的名称,例如amp:(不要忘记冒号: ),接着是空格和选项的值。举例如下:

play 50, cheese: 1

(请注意这里的cheese:并不是一个有效的选项,我们只是用它作为一个例子)。

你需要传递多个选项时,可以用逗号分隔:

play 50, cheese: 1, beans: 0.5

选项的顺序是无关紧要的,因此以下内容相同:

play 50, beans: 0.5, cheese: 1

不被合成器识别的选项会被忽略 (就像 cheese[奶酪] 和 beans[豌豆], 这显然只是些可笑的选项名称!)

如果你意外地对同一个选项赋予两次不同的值,最后一次赋值将会被应用。下面的例子中,beans:的值将是2,而不是0.5 :

play 50, beans: 0.5, cheese: 3, eggs: 0.1, beans: 2

Sonic Pi 中的很多东西接受选项的控制,所以你只需花点时间去学习怎么使用它们,就能够设置好!让我们来玩一玩我们的第一个合成器选项:amp:.

振幅

振幅是声音响度的计算机表示。高振幅产生的声音大低振幅产生的声音小。就像Sonic Pi用数字来表示时间和音符一样,它也用数字来表示振幅。振幅为0就是静音(你什么也听不到),而振幅为1是正常音量。你甚至可以把振幅调到2,10,100。然而,你应该注意,当所有声音的整体振幅变得过高时,Sonic Pi会使用所谓的压缩器来压缩它们,以确保传到你耳朵的声音不会太大。这往往会使声音变得浑浊和奇怪。所以尽量使用低振幅,即在0到0.5的范围内,以避免被压缩。

放大它

要改变声音的振幅,你可以使用amp:选项。例如,赋值0.5,播放的振幅减半:

play 60, amp: 0.5

赋值2,播放的增幅加倍:

play 60, amp: 2

amp: 选项只修改与之关联的play调用 。因此, 在本例中, 第一个play调用的是音量减半,第二个play则返回到默认音量(1):

play 60, amp: 0.5
sleep 0.5
play 65

当然,你也可以为每一个play的调用,使用不同的amp:值:

play 50, amp: 0.1
sleep 0.25
play 55, amp: 0.2
sleep 0.25
play 57, amp: 0.4
sleep 0.25
play 62, amp: 1

声道平移

另一个有趣的选项是pan:,它控制着立体声声音的平移。向左平移一个声音意味着你将从左边的扬声器中听到它,向右平移意味着你将从右边的扬声器中听到它。对于我们的设定,我们用-1表示完全左声道,0表示中心,1表示完全右声道。当然,我们可以随意使用-1到1之间的任何值来控制声音的精确位置。

让我们从左扬声器中播放蜂鸣声:

play 60, pan: -1

现在,让我们从右扬声器中播放:

play 60, pan: 1

最后,让我们从两扬声器的中心(默认位置)播放出来:

play 60, pan: 0

现在,去享受改变振幅和平移声音的乐趣吧!