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