跳到主要内容

音量

本文介绍如何设置音频采集音量、耳返播放的音量以及如何对播放音频进行静音。

本文不介绍混音音量控制。请另行参见混音文档。

设置采集音量

采集是指音频信号由采集设备(麦克风)采集,然后传输到发送端的过程。App 可通过 RCRTCMicOutputStreamrecordingVolume 设置麦克风为音频源的音频输出流音量大小。

  • 如果 SDK 版本 < 5.3.4,采集音量大小范围为 0-100。默认 100。
  • 如果 SDK 版本 ≧ 5.3.4,采集音量大小范围为 0-200。默认 100。
/*!
麦克风的音量, 范围: 0~200, 默认值: 100
*/
@property (nonatomic, assign) NSUInteger recordingVolume;

RCRTCMicOutputStream 对象不能自行创建。App 通过 [RCRTCEngine sharedInstance].defaultAudioStream 获取后 RCRTCMicOutputStream 对象可进行设置:

[RCRTCEngine sharedInstance].defaultAudioStream.recordingVolume = 100;

设置耳返音量

耳返是指播放采集设备输出音频的过程。SDK 支持通过 RCRTCAudioEffectManager 管理耳返功能。

App 通过 [RCRTCEngine sharedInstance].audioEffectManager 获取 RCRTCAudioEffectManager 后,可打开或关闭耳返功能,调整耳返音量。音量取值范围 0 ~ 100。

// 打开或关闭耳返功能
[[RCRTCEngine sharedInstance].audioEffectManager enableInEarMonitoring:YES];

// 设置耳返音量
[[RCRTCEngine sharedInstance].audioEffectManager setInEarMonitoringVolume:100];

设置播放音量

  • 如果 SDK 版本 < 5.3.4,不支持设置播放音量值,仅支持设置指定或全部远端音频流为静默状态,实现静音效果。
  • 如果 SDK 版本 ≧ 5.3.4,可调节远端播放音量。

调节远端播放音量

提示

SDK 从 5.3.4 版本开始支持调节远端播放音量。

从 5.3.4 开始,App 可以通过 RCRTCEngineremotePlaybackVolume 属性调节远端播放音量。音量范围为 [0-200],0 表示静音。加入房间前后均可调节音量。该方法调节的是本地播放的所有远端用户混音后的音量。

// 设置远端音频播放音量
[[RCRTCEngine sharedInstance].remotePlaybackVolume = 150];

静音本地音频流

媒体流对象都可以调用 RCRTCStreamisMute 属性设置是否静默。

对于本地音频流,如果 isMute 为 YES 则不再发送本地资源,也不能播放,但不影响音频数据采集。

// 设置本地音频流为静默状态
[[RCRTCEngine sharedInstance].defaultAudioStream setIsMute:YES];

静音远端音频流

媒体流对象都可以调用 RCRTCStreamisMute 属性设置是否静默。

对于远端音频流,如果 isMute 为 YES 则不再播放远端音频,但不影响远端音频数据接收。

静音房间内全部远端音频流

远端流静音是将房间内接收到所有远端音频流静音。默认不开启。App 需要在用户加入房间后,在当前房间对象 RCRTCRoom 上调用 muteAllRemoteAudio

提示

当前静音方式只是不播放接收的音频数据。

/*!
设置所有远端用户是否静音

@param mute 是否静音所有远端用户, YES 禁止 NO 允许
@discussion
将所有远端用户静音, 注: 该功能只是不播放接收到的音频数据

@remarks 音频流处理
*/
- (void)muteAllRemoteAudio:(BOOL)mute;
参数类型说明
muteBOOLYES (开启静音) NO (默认不静音)
//self.room 为 sdk 加入的房间对象
[self.room muteAllRemoteAudio:YES];