设置通话音量
更新时间: 2024/08/05 15:02:55
在音视频通话和互动直播过程中,为了提高产品使用者的体验,NERTC SDK 支持调整各种声音的音量,例如调整 SDK 采集的声音、播放的声音等。音量调节功能适用于多种需要自定义调节音量的场景。
除此之外,NERTC SDK 也支持通过监听回调的方式获取房间内成员的音量。在一些语音连麦场景或者视频会议场景中,产品应用层常常需要获取发言者的音量,并通过 UI 进行音量展示,或者根据发言者的音量大小进行视图布局的动态调整。详细信息请参考监测发言者音量。
设置采集音量
NERTC SDK 通过录音设备采集房间内成员的音频信号,将其录制下来以后播放给远端用户收听。
技术原理
实现方法
调用 setCaptureVolume
方法设置录制声音的信号幅度,从而达到调节采集音量的目的。具体参数说明如下表所示。
参数 |
参数说明 |
---|---|
volume |
设置录音信号的音量百分比。取值范围为 0 ~ 100:
|
mediaTypeAudio |
采集类型,可以设置为:
|
示例代码如下:
//普通场景下,默认为调节麦克风音量
rtc.localStream.setCaptureVolume(50)
//开启音频共享的场景下
//设置麦克风采集音量为50
rtc.localStream.setCaptureVolume(50, 'microphone')
//设置屏幕共享音频音量为50
rtc.localStream.setCaptureVolume(50, 'screenAudio')
设置播放音量
在音视频通话过程中,音频信号从发送端进入到接收端,然后使用播放设备进行播放。
由于系统限制,iOS 平台上目前不支持调节播放音量,请使用侧边物理按键调节音量。
技术原理
实现方法
调用 remoteStream.setAudioVolume
或 Client.setPlaybackVolume
方法调节播放声音的信号幅度,从而达到调节播放音量的目的。
两个接口的对比如下表所示。
接口 | 生效的对象 | 调用时机 |
---|---|---|
setAudioVolume |
针对某个远端用户的音频流生效。 | 对应的远端用户进入房间后。 |
setPlaybackVolume |
针对该房间内的所有远端用户的音频流生效。按房间级别控制音量,方便您快速调节音量。 | 远端用户进入房间之前,就可以控制音量。 |
参数说明如下表所示。
参数 | 描述 |
---|---|
|
设置播放信号的音量百分比,取值范围为 0 ~ 100:
|
- 当调用
setPlaybackVolume
方法将音量设置为 0 时,active-speaker
和volume-indicator
不再有回调。 - 如果您在
remoteStream.setAudioVolume
和Client.setPlaybackVolume
中都设置了音量,实际输出的音量值为 “setAudioVolume 音量值 × setPlaybackVolume 音量值”。例如Client.setPlaybackVolume
中的音量值设为 90,remoteStream.setAudioVolume
中的音量值设为70,实际输出音量为“90% × 70% = 63%”。
示例代码如下:
//设置某个远端用户的播放音量为50
remoteStream.setAudioVolume(50)
// 设置整个房间的远端用户的播放音量为 50
client.setPlaybackVolume(50)
此文档是否对你有帮助?