# In Game Control Audio Levels

> Allow players to control voice and audio levels in-game.

可以使用 Vivox SDK 来允许对音频输入和输出电平进行游戏内控制。

以下列表详细说明了您希望在游戏中实现音频电平控制的场景示例：

* 用户希望游戏声音和语音输出具有不同音量级别。
* 用户希望调整语音输入的音量。
* 用户希望调整整个频道的音量。
* 用户希望调整同一频道中其他人的音量。

音量设置可调整设备或参与者的表观响度。所有音量设置的可设置范围在对数刻度上为 -50 到 50 之间，0 时为 +0db（无变化）。因为这是对数刻度，所以可用范围一般介于 -10 与 25 之间，其中 25 倾向于在捕获设备上产生过度调制，并可能在头盔上导致用户感到不适。高于默认值的任何音量提升都会引入某种程度的失真，不过这在较低电平时不太明显。

> **Note:**
>
> 不建议允许用户将其捕获设备音量提高到 25 以上。

## 调整本地用户输入和输出设备音量##adjust-local-user-input-and-output-device-volume

Vivox Unity SDK 使用以下方法来设置输入和输出设备音频电平：

* [`VivoxService.Instance.SetInputDeviceVolume(int value)`](https://docs.unity3d.com/Packages/com.unity.services.vivox@latest/index.html?subfolder=/api/Unity.Services.Vivox.IVivoxService.html#Unity_Services_Vivox_IVivoxService_SetInputDeviceVolume_System_Int32_)
  * 设置输入设备（麦克风）的客户端音量。
  * 可以将此值设置为介于 -50 与 50 之间的任何值，其中负数会降低音量，正数会升高音量。
  * 该值影响所有频道。

* [`VivoxService.Instance.SetOutputDeviceVolume(int value)`](https://docs.unity3d.com/Packages/com.unity.services.vivox@latest/index.html?subfolder=/api/Unity.Services.Vivox.IVivoxService.html#Unity_Services_Vivox_IVivoxService_SetOutputDeviceVolume_System_Int32_)
  * 为所有通过计算机上的音频设备播放的 Vivox 语音音频设置客户端音量。
  * 可以将此值设置为介于 -50 与 50 之间的任何值，其中负数会降低音量，正数会升高音量。
  * 该值影响所有频道。

## 调整频道参与者的音量##adjust-a-channel-participant's-volume

Vivox Unity SDK 使用以下方法来设置用户所在频道中各个玩家的音量：

* [`VivoxParticipant.SetLocalVolume(int volume)`](https://docs.unity3d.com/Packages/com.unity.services.vivox@latest/index.html?subfolder=/api/Unity.Services.Vivox.VivoxParticipant.html#Unity_Services_Vivox_VivoxParticipant_SetLocalVolume_System_Int32_)
  * 为频道中单个参与者的 Vivox 语音音频设置客户端音量。
  * 可以将此值设置为介于 -50 与 50 之间的任何值，其中负数会降低参与者音量，正数会升高参与者音量。
  * 如需有关 `VivoxParticipant` 对象的信息，请参阅[参与者管理](/vivox-unity/developer-guide/channels/participant-events.md)文档。

## 调整频道的音量##adjust-the-volume-of-a-channel

Vivox Unity SDK 使用以下方法来设置频道的音量：

* [`VivoxService.Instance.SetChannelVolumeAsync(string channelName, int value)`](https://docs.unity3d.com/Packages/com.unity.services.vivox@latest/index.html?subfolder=/api/Unity.Services.Vivox.IVivoxService.html#Unity_Services_Vivox_IVivoxService_SetChannelVolumeAsync_System_String_System_Int32_)
  * 为所有通过特定频道播放的 Vivox 语音音频设置客户端音量。
  * 可以将此值设置为介于 -50 与 50 之间的任何值，其中负数会降低某个频道的所有传入音频的音量，正数会升高音量。
