音频采集

  • Unreal Blueprint

更新时间不可用

AdjustLoopbackSignalVolume

调节声卡采集信号音量。

C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
	int AdjustLoopbackSignalVolume(int volume);

详情

调用 EnableLoopbackRecording 开启声卡采集后,你可以调用该方法调节声卡采集的信号音量。

参数

参数名描述
volume

音乐文件音量范围为 0~100。100 (默认值)为原始文件音量。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

所属接口类

AdjustRecordingSignalVolume

调节音频采集信号音量。

C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
	int AdjustRecordingSignalVolume(int volume);

如果你只需将音频信号静音,建议你使用 MuteRecordingSignal。

调用时机

加入频道前后均可调用。

调用限制

无。

参数

参数名描述
volume

音量,取值范围为 [0,400]。

  • 0: 静音。
  • 100: (默认)原始音量。
  • 400: 原始音量的 4 倍,自带溢出保护。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

所属接口类

EnableInEarMonitoring

开启耳返功能。

C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
	int EnableInEarMonitoring(bool enabled, int includeAudioFilters);

该方法用于打开或关闭耳返功能。

调用时机

加入频道前后均可调用。

调用限制

用户必须使用耳机(有线和蓝牙均可)才能听到耳返效果。

参数

参数名描述
enabled

开启/关闭耳返功能:

  • true: 开启耳返功能。
  • false: (默认)关闭耳返功能。
includeAudioFilters

耳返 Audio filter 类型:

  • EAR_MONITORING_FILTER_NONE (1 << 0):不在耳返中添加 Audio filter。
  • EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS (1 << 1): 在耳返中添加人声效果 Audio filter。如果你实现了美声、音效等功能,用户可以在耳返中听到添加效果后的声音。该枚举值支持使用按位或运算符(|)进行组合。
  • EAR_MONITORING_FILTER_NOISE_SUPPRESSION (1 <<2):在耳返中添加降噪 Audio filter。该枚举值支持使用按位或运算符(|)进行组合。
  • EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER (1 <<15): 复用发送端已进行过音效处理的 Audio filter。通过复用 Audio filter 降低耳返对 CPU 的占用率,但会增加耳返延迟,适用于需要降低 CPU 消耗且对耳返延迟不敏感的场景。该枚举值仅支持单独使用,一旦指定了该选项,其他 Audio filter 配置将自动失效。

注意: 该参数仅在 enabled 设为 true 时生效。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。

  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

      • 8: 请确保当前的音频路由为蓝牙或耳机。

所属接口类

EnableLocalAudio

开启或关闭本地音频采集。

C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
	int EnableLocalAudio(bool enabled);

当用户加入频道时,音频功能默认是开启的。该方法可以关闭或重新开启本地音频功能,即停止或重新开始本地音频采集。

该方法与 MuteLocalAudioStream 的区别在于:

  • EnableLocalAudio: 开启或关闭本地音频采集及处理。使用 EnableLocalAudio 关闭或开启本地采集后,本地听远端播放会有短暂中断。
  • MuteLocalAudioStream: 停止或继续发送本地音频流,不影响音频的采集状态。

适用场景

该方法不影响远端音频流的接收和播放。EnableLocalAudio(false) 适用于只接收远端音频而不发送本地采集音频的场景。

调用时机

该方法在加入频道前后均可调用。在加入频道前调用只能设置设备状态,在加入频道后才会立即生效。

调用限制

无。

相关回调

音频功能关闭或重新开启后,会收到 OnLocalAudioStateChanged 回调,并报告 LOCAL_AUDIO_STREAM_STATE_STOPPED(0) 或 LOCAL_AUDIO_STREAM_STATE_RECORDING(1)。

参数

参数名描述
enabled
  • true: 重新开启本地音频功能,即开启本地音频采集(默认);
  • false: 关闭本地音频功能,即停止本地音频采集。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

所属接口类

EnableLoopbackRecording

开启声卡采集。

C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
	int EnableLoopbackRecording(bool enabled, const FString & deviceName);

详情

启用声卡采集功能后,声卡播放的声音会被合到本地音频流中,从而可以发送到远端。

注意:

  • 该方法仅适用于 macOS 和 Windows 平台。
  • 该方法在加入频道前后都能调用。
  • 如果你调用了 DisableAudio 关闭音频模块,声卡采集功能也会被关闭。如果你需要再次启用声卡采集功能,需要调用 EnableAudio 启用音频模块后再次调用 EnableLoopbackRecording。

参数

参数名描述
enabled

是否开启声卡采集:

  • true: 开启声卡采集;系统声音 > 输出界面显示虚拟声卡名称。
  • false:(默认)关闭声卡采集;系统声音 > 输出界面不显示虚拟声卡名称。
deviceName
  • macOS: 虚拟声卡的设备名。默认为空,代表使用 AgoraALD 虚拟声卡进行采集。
  • Windows: 声卡的设备名。默认为空,代表使用设备自带的声卡进行采集。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

所属接口类

EnableLoopbackRecordingEx

开启声卡采集。

C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
	int EnableLoopbackRecordingEx(const FRtcConnection& connection, bool enabled, const FString& deviceName);

详情

启用声卡采集功能后,声卡播放的声音会被合到本地音频流中,从而可以发送到远端。

注意:

  • 该方法仅适用于 macOS 和 Windows 平台。
  • macOS 系统默认声卡不支持采集功能,如果你需要使用该功能,请启用一个虚拟声卡,并将 deviceName 设为该虚拟声卡的设备名。声网推荐你使用声网自研的虚拟声卡 AgoraALD 进行采集。
  • 该方法目前仅支持一路声卡采集。

参数

参数名描述
connection

Connection 信息。详见 FUABT_RtcConnection。

enabled

是否开启声卡采集:

  • true: 开启声卡采集。
  • false:(默认)不开启声卡采集。
deviceName
  • macOS: 虚拟声卡的设备名。默认为空,代表使用 AgoraALD 虚拟声卡进行采集。
  • Windows: 声卡的设备名。默认为空,代表使用设备自带的声卡进行采集。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

所属接口类

MuteRecordingSignal

是否将录音信号静音。

C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
	int MuteRecordingSignal(bool mute);

如果你已经调用 AdjustRecordingSignalVolume 调节了音频采集信号音量,则调用该方法并设置为 true 时,SDK 的行为如下:

  1. 记录调节后的音量。
  2. 将音频采集信号静音。

当你再次调用该方法并设置为 false 时,录音信号会恢复为静音前 SDK 记录的音量。

调用时机

加入频道前后均可调用。

调用限制

无。

参数

参数名描述
mute
  • true: 静音。
  • false:(默认)原始音量。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

所属接口类

SetInEarMonitoringVolume

设置耳返音量。

C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
	int SetInEarMonitoringVolume(int volume);

调用时机

加入频道前后均可调用。

调用限制

无。

参数

参数名描述
volume

音量,取值范围为 [0,400]。

  • 0: 静音。
  • 100: (默认)原始音量。
  • 400: 原始音量的 4 倍,自带溢出保护。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。

  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

    • -2: 参数设置无效,例如耳返音量超出取值范围 (< 0 或 > 400)。

所属接口类