音频采集
- macOS
更新时间不可用
adjustLoopbackSignalVolume:
调节声卡采集信号的音量。
- (int)adjustLoopbackSignalVolume:(NSInteger)volume NS_SWIFT_NAME(adjustLoopbackSignalVolume(_:));调用 enableLoopbackRecording:deviceName: 后,可以调用该方法调节声卡采集信号的音量。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
adjustRecordingSignalVolume:
调节采集音量。
- (int)adjustRecordingSignalVolume:(NSInteger)volume NS_SWIFT_NAME(adjustRecordingSignalVolume(_:));如果你只需要静音音频信号,声网建议使用 muteRecordingSignal: 方法。
调用时机
该方法可以在加入频道前或后调用。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
enableInEarMonitoring:
启用或关闭耳返监听功能。
- (int)enableInEarMonitoring:(BOOL)enabled NS_SWIFT_NAME(enable(inEarMonitoring:));你可以调用该方法启用或关闭耳返监听功能。
注: enableInEarMonitoring: 仅在使用有线或蓝牙耳机时有效。
调用时机
该方法可以在加入频道前或加入频道后调用。
参数
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见错误码了解详情和解决建议。
- -8:请确保当前音频路由为蓝牙或耳机。
所属接口类
enableInEarMonitoring:includeAudioFilters:
启用或关闭耳返监听功能。
- (int)enableInEarMonitoring:(BOOL)enabled includeAudioFilters:(AgoraEarMonitoringFilterType)includeAudioFilters NS_SWIFT_NAME(enable(inEarMonitoring:includeAudioFilters:));注: 你必须使用有线或蓝牙耳机才能听到耳返监听效果。
调用时机
该方法可以在加入频道前或加入频道后调用。
参数
| 参数名 | 描述 |
|---|---|
enabled | |
includeAudioFilters | 耳返监听的音频滤波器类型,详见 AgoraEarMonitoringFilterType。 |
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见错误码了解详情和解决建议。
- -8:请确保当前音频路由为蓝牙或有线耳机。
所属接口类
enableLocalAudio:
启用或关闭本地音频采集功能。
- (int)enableLocalAudio:(BOOL)enabled NS_SWIFT_NAME(enableLocalAudio(_:));enableLocalAudio: 方法用于启用或关闭本地音频采集功能。默认情况下,加入频道时会启用音频功能。调用该方法可以停止或重新启动本地音频采集。 该方法与 muteLocalAudioStream: 的区别如下:
- enableLocalAudio::关闭或重新启用本地音频采集和处理。如果使用该方法关闭或重新启用本地音频采集,可能会导致远端音频播放出现短暂中断。
- muteLocalAudioStream::仅停止或恢复发送本地音频流,不影响音频采集状态。
该方法不会影响接收远端音频流。将 enabled 设为 NO 适用于只接收远端音频而不发送本地音频的场景。你可以在加入频道前或加入频道后调用该方法。在加入频道前调用时,仅设置设备状态,加入频道后立即生效。
适用场景
enableLocalAudio(false) 适用于只接收远端音频流而不发送本地采集音频的场景。该方法不会影响接收远端音频流。
调用时机
你可以在加入频道前或加入频道后调用该方法。在加入频道前调用时,仅设置设备状态,加入频道后立即生效。
相关回调
成功调用该方法后,SDK 会触发 rtcEngine:localAudioStateChanged:reason: 回调,报告 AgoraAudioLocalStateStopped(0)或 AgoraAudioLocalStateRecording(1)。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
enableLoopbackRecording:deviceName:
启用声卡回采功能。
- (int)enableLoopbackRecording:(BOOL)enabled deviceName:(NSString* _Nullable)deviceName NS_SWIFT_NAME(enableLoopbackRecording(_:deviceName:));如果你启用了声卡回采功能,声卡的输出会被混入发送到远端的音频流中。
注:
- macOS 系统的默认声卡不支持录音功能。从 v4.5.0 起,当你首次调用该方法时,SDK 会自动安装由声网开发的内置虚拟声卡
AgoraALD。安装成功后,音频路由会自动切换到虚拟声卡,并使用其进行音频采集。 - 你可以在加入频道前或加入频道后调用该方法。
- 如果你调用 disableAudio 方法禁用了音频模块,音频采集也会被禁用。如果你需要启用音频采集,请先调用 enableAudio 方法启用音频模块,然后再调用 enableLoopbackRecording:deviceName: 方法。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
enableLoopbackRecordingEx:deviceName:connection:
启用回环音频采集。
- (int)enableLoopbackRecordingEx:(BOOL)enabled
deviceName:(NSString* _Nullable)deviceName
connection:(AgoraRtcConnection * _Nonnull)connection NS_SWIFT_NAME(enableLoopbackRecordingEx(_:deviceName:connection:));启用该方法后,声卡的输出会被混入发送到远端的音频流中。
注: 该方法仅支持使用一个声卡进行音频采集。
适用场景
该方法适用于多频道场景。
参数
| 参数名 | 描述 |
|---|---|
enabled | |
deviceName | |
connection | 连接信息,详见 AgoraRtcConnection。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
muteRecordingSignal:
设置是否静音录制信号。
- (int)muteRecordingSignal:(BOOL)muted NS_SWIFT_NAME(muteRecordingSignal(_:));如果你已经调用了 adjustRecordingSignalVolume: 方法调整了录制信号的音量,当你调用该方法并将参数设置为 YES 时,SDK 的行为如下:
- 记录调整后的音量。
- 静音录制信号。
当你再次调用该方法并将参数设置为 NO 时,录制信号音量将恢复为静音前 SDK 记录的音量。
调用时机
该方法可以在加入频道前或后调用。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setInEarMonitoringVolume:
设置耳返音量。
- (int)setInEarMonitoringVolume:(NSInteger)volume NS_SWIFT_NAME(setInEarMonitoringVolume(_:));调用时机
该方法可以在加入频道前或加入频道后调用。
参数
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见错误码了解详情和解决建议。
- -2:参数设置不合法,例如耳返音量超出有效范围(小于 0 或大于 400)。