音量
本文介绍如何设置音频采集音量、耳返播放的音量以及如何对播放音频进行静音。
本文不介绍混音音量控制。请另行参见混音文档。
设置采集音量
采集是指音频信号由采集设备(麦克风)采集,然后传输到发送端的过程。App 可通过 RCRTCMicOutputStream 的 recordingVolume
设置麦克风为音频源的音频输出流音量大小。
- 如果 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 可以通过 RCRTCEngine
的 remotePlaybackVolume
属性调节远端播放音量。音量范围为 [0-200],0 表示静音。加入房间前后均可调节音量。该方法调节的是本地播放的所有远端用户混音后的音量。
// 设置远端音频播放音量
[[RCRTCEngine sharedInstance].remotePlaybackVolume = 150];
静音本地音频流
媒体流对象都可以调用 RCRTCStream
的 isMute 属性设置是否静默。
对于本地音频流,如果 isMute
为 YES 则不再发送本地资源,也不能播放,但不影响音频数据采集。
// 设置本地音频流为静默状态
[[RCRTCEngine sharedInstance].defaultAudioStream setIsMute:YES];
静音远端音频流
媒体流对象都可以调用 RCRTCStream
的 isMute 属性设置是否静默。
对于远端音频流,如果 isMute
为 YES 则不再播放远端音频,但不影响远端音频数据接收。
静音房间内全部远端音频流
远端流静音是将房间内接收到所有远端音频流静音。默认不开启。App 需要在用户加入房间后,在当前房间对象 RCRTCRoom 上调用 muteAllRemoteAudio
。
当前静音方式只是不播放接收的音频数据。
/*!
设置所有远端用 户是否静音
@param mute 是否静音所有远端用户, YES 禁止 NO 允许
@discussion
将所有远端用户静音, 注: 该功能只是不播放接收到的音频数据
@remarks 音频流处理
*/
- (void)muteAllRemoteAudio:(BOOL)mute;