# 合成器选项: 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

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