音频采集
adjustLoopbackSignalVolume:
调节声卡采集信号音量。
Objective-C
- (int)adjustLoopbackSignalVolume:(NSInteger)volume;
详情
调用 enableLoopbackRecording:deviceName: 开启声卡采集后,你可以调用该方法调节声卡采集的信号音量。
参数
- volume
- 音乐文件音量范围为 0~100。100 (默认值)为原始文件音量。
返回值
- 0: 方法调用成功
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
adjustRecordingSignalVolume:
调节音频采集信号音量。
Objective-C
- (int)adjustRecordingSignalVolume:(NSInteger)volume;
如果你只需将音频信号静音,建议你使用 muteRecordingSignal:。
调用时机
加入频道前后均可调用。
调用限制
无。
参数
- volume
- 音量,取值范围为 [0,400]。
- 0: 静音。
- 100: (默认)原始音量。
- 400: 原始音量的 4 倍,自带溢出保护。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
enableLoopbackRecording:deviceName:
开启声卡采集。
Objective-C
- (int)enableLoopbackRecording:(BOOL)enabled deviceName:(NSString* _Nullable)deviceName NS_SWIFT_NAME(enableLoopbackRecording(_:deviceName:));
详情
启用声卡采集功能后,声卡播放的声音会被合到本地音频流中,从而可以发送到远端。
注意
- macOS 系统默认声卡不支持采集功能,如果你需要使用该功能,请启用一个虚拟声卡,并将 deviceName 设为该虚拟声卡的设备名。声网推荐你使用声网自研的虚拟声卡 AgoraALD 进行采集。
- 该方法在加入频道前后都能调用。
- 如果你调用了 disableAudio 关闭音频模块,声卡采集功能也会被关闭。如果你需要再次启用声卡采集功能,需要调用 enableAudio 启用音频模块后再次调用 enableLoopbackRecording:deviceName:。
参数
- enabled
- 是否开启声卡采集:
YES
: 开启声卡采集。NO
:(默认)关闭声卡采集。
- deviceName
- 虚拟声卡的设备名。默认为空,代表使用 AgoraALD 虚拟声卡进行采集。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
enableLoopbackRecordingEx:deviceName:connection:
开启声卡采集。
Objective-C
- (int)enableLoopbackRecordingEx:(BOOL)enabled
deviceName:(NSString* _Nullable)deviceName
connection:(AgoraRtcConnection * _Nonnull)connection NS_SWIFT_NAME(enableLoopbackRecordingEx(_:deviceName:connection:));
详情
启用声卡采集功能后,声卡播放的声音会被合到本地音频流中,从而可以发送到远端。
注意
- 该方法目前仅支持一路声卡采集。
参数
- connection
- Connection 信息。详见 AgoraRtcConnection。
- enabled
- 是否开启声卡采集:
YES
: 开启声卡采集。NO
:(默认)不开启声卡采集。
- deviceName
- 虚拟声卡的设备名。默认为空,代表使用 AgoraALD 虚拟声卡进行采集。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
enableInEarMonitoring:
enableInEarMonitoring:includeAudioFilters:
开启耳返功能。
Objective-C
- (int)enableInEarMonitoring:(BOOL)enabled includeAudioFilters:(AgoraEarMonitoringFilterType)includeAudioFilters;
该方法用于打开或关闭耳返功能。
调用时机
加入频道前后均可调用。
调用限制
用户必须使用耳机(有线和蓝牙均可)才能听到耳返效果。
参数
- enabled
- 开启/关闭耳返功能:
YES
: 开启耳返功能。NO
: (默认)关闭耳返功能。
- includeAudioFilters
- 耳返 Audio filter 类型。详见 AgoraEarMonitoringFilterType。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
- - 8: 请确保当前的音频路由为蓝牙或耳机。
enableLocalAudio:
开启或关闭本地音频采集。
Objective-C
- (int)enableLocalAudio:(BOOL)enabled;
当用户加入频道时,音频功能默认是开启的。该方法可以关闭或重新开启本地音频功能,即停止或重新开始本地音频采集。
该方法与 muteLocalAudioStream: 的区别在于:
- enableLocalAudio:: 开启或关闭本地音频采集及处理。使用 enableLocalAudio: 关闭或开启本地采集后,本地听远端播放会有短暂中断。
- muteLocalAudioStream:: 停止或继续发送本地音频流,不影响音频的采集状态。
适用场景
该方法不影响远端音频流的接收和播放。enableLocalAudio:(NO)
适用于只接收远端音频而不发送本地采集音频的场景。
调用时机
该方法在加入频道前后均可调用。在加入频道前调用只能设置设备状态,在加入频道后才会立即生效。
调用限制
无。
相关回调
音频功能关闭或重新开启后,会收到 rtcEngine:localAudioStateChanged:reason: 回调,并报告 AgoraAudioLocalStateStopped(0) 或 AgoraAudioLocalStateRecording(1)。
参数
- enabled
YES
: 重新开启本地音频功能,即开启本地音频采集(默认);NO
: 关闭本地音频功能,即停止本地音频采集。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
muteRecordingSignal:
是否将录音信号静音。
Objective-C
-(int)muteRecordingSignal:(BOOL)muted;
如果你已经调用 adjustRecordingSignalVolume: 调节了音频采集信号音量,则调用该方法并设置为
YES
时,SDK 的行为如下:- 记录调节后的音量。
- 将音频采集信号静音。
NO
时,录音信号会恢复为静音前 SDK 记录的音量。调用时机
加入频道前后均可调用。
调用限制
无。
参数
- muted
YES
: 静音。NO
:(默认)原始音量。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。