设置通话音量
更新时间: 2024/09/18 16:26:13
在音视频通话和互动直播过程中,为了提高产品使用者的体验,NERTC SDK 支持调整各种声音的音量,例如调整 SDK 采集的声音、播放的声音等。音量调节功能适用于多种需要自定义调节音量的场景。
除此之外,NERTC SDK 也支持通过监听回调的方式获取房间内成员的音量。在一些语音连麦场景或者视频会议场景中,产品应用层常常需要获取发言者的音量,并通过 UI 进行音量展示,或者根据发言者的音量大小进行视图布局的动态调整。详细信息请参考监测发言者音量。
此外,本文档将在末尾为您介绍 NERTC SDK 相关音频接口的实现原理和适用场景,具体内容请点击音频主要接口对比查看。
设置采集音量
NERTC SDK 通过录音设备采集房间内成员的音频信号,将其录制下来以后播放给远端用户收听。
技术原理
实现方法
调用 adjustRecordingSignalVolume
方法设置录制声音的信号幅度,从而达到调节采集音量的目的。
该方法通过 volume
参数设置录音信号的音量,取值范围为 0 ~ 400:
- 0: 静音。
- 100: (默认值)原始音量,即不对信号做缩放。
- 400: 原始音量的 4 倍,即把信号放大到原始信号的 4 倍。
建议设置采集音量时使用默认值(100)或小于该值,否则可能会导致音质问题。
示例代码如下:
//将采集音量设置为100
nertc_engine_->adjustRecordingSignalVolume(100);
设置播放音量
在音视频通话过程中,音频信号从发送端进入到接收端,然后使用播放设备进行播放。
技术原理
调用 adjustPlaybackSignalVolume
方法可以调节本地播放的所有远端用户的音量。
参数说明如下表所示。
参数 | 类型 | 描述 |
---|---|---|
volume | int | 播放音量的百分比,取值范围为 [0,400]。
|
建议设置本地播放音量时使用默认值(100)或小于该值,否则可能会导致音质问题。
示例代码如下:
//调整本端播放的所有远端用户的播放音量为50
nertc_engine_->adjustPlaybackSignalVolume(50);
//调整本端播放的所有远端用户的播放音量为0,静音所有用户
nertc_engine_->adjustPlaybackSignalVolume(0);
设置耳返音量
NERTC SDK 通过录音设备采集房间内成员的音频信号,然后使用播放设备进行播放,实现耳返功能。
技术原理
实现方法
调用 enableEarback
方法开启耳返功能之后,您可以调用 setEarbackVolume
方法设置耳返音量。
该方法通过 volume
参数设置播放信号的音量,取值范围为 0 ~ 100,默认值为 100。
示例代码如下:
//将耳返音量设置为100
device_manager_->enableEarback(100);
音频主要接口对比
接口名称 |
功能及适用场景 |
实现原理图解 |
---|---|---|
enableLocalAudio | 开启或关闭本地音频采集和发送 | |
适用于简单的音频开关场景 | ||
enableMediaPublish | 开启或关闭本地媒体流(主流)的发送 | |
适用于单独开启麦克风但不发送音频的场景,比如会议场景、大房间 | ||
muteLocalAudioStream | 开启或关闭本地音频主流的发送 | |
适用于需要频繁静音\取消静音操作的场景 | ||
setRecordDeviceMute | 静音音频采集设备 | |
适用于麦克风采集和伴音同时开启时,只发送伴音音频的场景 | ||
adjustRecordingSignalVolume | 调节采集信号音量 | |
适用于需要精确调整本地音频采集(包括外部输入)音量的场景,比如 KTV、语聊房 |