NERtc Wwise SDK 适配 Unreal V.5.4.122
载入中...
搜索中...
未找到
Public 成员函数 | 所有成员列表
nertc::wwiseplugin::IRtcEngine类 参考abstract

#include <IRtcEngine.h>

类 nertc::wwiseplugin::IRtcEngine 继承关系图:
nertc::wwiseplugin::NertcEngine nertc::wwiseplugin::NertcEngineImpl

Public 成员函数

virtual ~IRtcEngine ()=default
 
virtual void SetCallbacks (IRtcCallback *callback)=0
 
virtual IAudioDeviceManagerGetAudioDeviceManager ()=0
 
virtual IVoiceEngineGetVoiceEngine ()=0
 
virtual void InitEngine (RtcEngineContext context)=0
 
virtual void SetToken (const char *token)=0
 
virtual void SetChannelName (const char *channelName)=0
 
virtual void SetUserID (uint64_t userID)=0
 
virtual void SetParameters (const char *parameters)=0
 
virtual int CheckMicphonePermision (bool &enabled)=0
 
virtual void SetSendAuthInfoWithGameObjectID (uint64_t gameObjectID, const char *channelName, const char *token)=0
 
virtual void SetReceiveAuthInfoWithGameObjectID (uint64_t gameObjectID, const char *channelName, const char *token)=0
 
virtual void SetReceiveUserIDWithGameObjectID (uint64_t gameObjectID, uint64_t userID)=0
 
virtual uint64_t GetReceiveUserIDWithGameObjectID (uint64_t gameObjectID)=0
 
virtual void EnableLoopbackWithGameObjectID (uint64_t gameObjectID, bool enableLoopback)=0
 
virtual bool GetEnableLoopbackWithGameObjectID (uint64_t gameObjectID)=0
 
virtual int SetRangeAudioMode (const char *channelName, RtcRangeAudioMode mode)=0
 
virtual int SetRangeAudioTeamID (const char *channelName, int teamID)=0
 
virtual int SetAudioRecvRange (const char *channelName, int range)=0
 
virtual void UpdateSelfPosition (const char *channelName, int positionX, int positionY, int positionZ)=0
 
virtual int EnableAudioVolumeIndication (const char *channelName, bool enable, uint64_t interval, bool enableVad)=0
 
virtual int SetPublishAudioAllowList (const char *channelName, uint64_t *uids, int size)=0
 
virtual int SetSubscribeAudioAllowList (const char *channelName, uint64_t *uids, int size)=0
 
virtual int SetSubscribeAudioBlockList (const char *channelName, uint64_t *uids, int size)=0
 
virtual int PauseAudio ()=0
 
virtual int ResumeAudio ()=0
 
virtual const char * GetVersion ()=0
 
virtual int StartAudioDump (RtcAudioDumpType type)=0
 
virtual int StopAudioDump ()=0
 
virtual int Release ()=0
 

详细描述

SDK功能接口类。
此接口类提供了 SDK 的初始化、参数设置、事件回调等功能。

构造及析构函数说明

◆ ~IRtcEngine()

virtual nertc::wwiseplugin::IRtcEngine::~IRtcEngine ( )
virtualdefault

成员函数说明

◆ SetCallbacks()

virtual void nertc::wwiseplugin::IRtcEngine::SetCallbacks ( IRtcCallback * callback)
pure virtual

设置事件回调 该方法在加入房间前后都能调用。

参数
[in]callback传入的 IRtcCallback 对象.

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ GetAudioDeviceManager()

virtual IAudioDeviceManager * nertc::wwiseplugin::IRtcEngine::GetAudioDeviceManager ( )
pure virtual

获取音频设备管理器 该方法在加入房间前后都能调用。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ GetVoiceEngine()

virtual IVoiceEngine * nertc::wwiseplugin::IRtcEngine::GetVoiceEngine ( )
pure virtual

获取语音消息对象 该方法在加入房间前后都能调用。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ InitEngine()

virtual void nertc::wwiseplugin::IRtcEngine::InitEngine ( RtcEngineContext context)
pure virtual

初始化 NERTC SDK 服务。
你必须先调用该方法进行初始化,才能使用其他方法。初始化成功后,默认处于音视频通话模式。

警告
  • 必须使用同一个 App Key 才能进行通话。
参数
[in]context传入的 RtcEngineContext 对象.
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetToken()

virtual void nertc::wwiseplugin::IRtcEngine::SetToken ( const char * token)
pure virtual

设置Token。

参数
[in]token传入的RTC token,调试模式下可以为null。
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetChannelName()

virtual void nertc::wwiseplugin::IRtcEngine::SetChannelName ( const char * channelName)
pure virtual

设置房间名

参数
[in]channelName房间名,不能为空。
返回
无返回值。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetUserID()

virtual void nertc::wwiseplugin::IRtcEngine::SetUserID ( uint64_t userID)
pure virtual

设置用户唯一标识

参数
[in]userID用户唯一ID。
返回
无返回值。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetParameters()

virtual void nertc::wwiseplugin::IRtcEngine::SetParameters ( const char * parameters)
pure virtual

设置音视频通话的相关参数。通过 JSON 配置 SDK 提供技术预览或特别定制功能。以标准化方式公开 JSON 选项。

参数
[in]parameters音视频通话的相关参数。 JSON 字符串形式。
返回
无返回值。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ CheckMicphonePermision()

virtual int nertc::wwiseplugin::IRtcEngine::CheckMicphonePermision ( bool & enabled)
pure virtual

检查平台麦克风权限(移动端)

参数
enabled麦克风是否有权限
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetSendAuthInfoWithGameObjectID()

virtual void nertc::wwiseplugin::IRtcEngine::SetSendAuthInfoWithGameObjectID ( uint64_t gameObjectID,
const char * channelName,
const char * token )
pure virtual

绑定采集插件的房间信息和gameobject对象,channelName传入空解除绑定关系.不支持动态绑定,需要停止当前运行的插件后再行解绑或者换绑。

参数
[in]gameObjectIDwwise gameobject对象唯一标识。
[in]channelName房间号。
[in]token传入的RTC token,调试模式下可以为null。
返回
无返回值。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetReceiveAuthInfoWithGameObjectID()

virtual void nertc::wwiseplugin::IRtcEngine::SetReceiveAuthInfoWithGameObjectID ( uint64_t gameObjectID,
const char * channelName,
const char * token )
pure virtual

绑定接收插件的房间信息和gameobject对象,channelName传入空解除绑定关系.不支持动态绑定,需要停止当前运行的插件后再行解绑或者换绑。

参数
[in]gameObjectIDwwise gameobject对象唯一标识。
[in]channelName房间号。
[in]token传入的RTC token,调试模式下可以为null。
返回
无返回值。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetReceiveUserIDWithGameObjectID()

virtual void nertc::wwiseplugin::IRtcEngine::SetReceiveUserIDWithGameObjectID ( uint64_t gameObjectID,
uint64_t userID )
pure virtual

绑定userID和gameobject对象,userID传入0解出绑定关系

参数
[in]gameObjectIDwwise gameobject对象唯一标识。
[in]userID用户唯一ID。
返回
无返回值。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ GetReceiveUserIDWithGameObjectID()

virtual uint64_t nertc::wwiseplugin::IRtcEngine::GetReceiveUserIDWithGameObjectID ( uint64_t gameObjectID)
pure virtual

获取绑定的userID和gameobject对象

参数
[in]gameObjectIDwwise gameobject对象唯一标识。
返回
gameobject对象绑定的用户唯一ID。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ EnableLoopbackWithGameObjectID()

virtual void nertc::wwiseplugin::IRtcEngine::EnableLoopbackWithGameObjectID ( uint64_t gameObjectID,
bool enableLoopback )
pure virtual

开启或关闭loopback。如果开启,则仅播放,不会发送到Rtc服务器,如果关闭,则仅发送到服务器,不被播放。

参数
[in]gameObjectIDwwise gameobject对象唯一标识。
[in]enableLoopback是否开启loopback。
返回
无返回值。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ GetEnableLoopbackWithGameObjectID()

virtual bool nertc::wwiseplugin::IRtcEngine::GetEnableLoopbackWithGameObjectID ( uint64_t gameObjectID)
pure virtual

是否开启或关闭loopback

参数
[in]gameObjectIDwwise gameobject对象唯一标识。
返回
  • true: 开启Loopback
  • false: 关闭Loopback

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetRangeAudioMode()

virtual int nertc::wwiseplugin::IRtcEngine::SetRangeAudioMode ( const char * channelName,
RtcRangeAudioMode mode )
pure virtual

设置音频编码属性。需要在播放或采集插件运行之前设置

  • 音乐场景下,建议将 profile 设置为 kWWISEPLUGINAudioProfileHighQuality。
    参数
    [in]profile设置采样率,码率,编码模式和声道数: RtcAudioProfileType
    返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。 设置范围语音模式
    注解
    此接口在加入房间前后均可调用。
    参数
    [in]channelName房间号。如果channelName为空,则为默认房间。
    [in]mode范围语音模式
    返回
    操作返回值,成功则返回

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetRangeAudioTeamID()

virtual int nertc::wwiseplugin::IRtcEngine::SetRangeAudioTeamID ( const char * channelName,
int teamID )
pure virtual

设置范围语音小队

注解
此接口在加入房间前后均可调用。
参数
[in]channelName房间号。如果channelName为空,则为默认房间。
[in]teamID小队ID
返回
返回值,成功则返回 0

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetAudioRecvRange()

virtual int nertc::wwiseplugin::IRtcEngine::SetAudioRecvRange ( const char * channelName,
int range )
pure virtual

设置范围语音接收范围

参数
[in]channelName房间号。如果channelName为空,则为默认房间。
[in]range监听器能够听到扬声器并接收其文本消息的距离扬声器的最大距离。无默认值, 有效范围[1, ∞)。
返回
  • 0: 方法调用成功
  • 其他: 调用失败

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ UpdateSelfPosition()

virtual void nertc::wwiseplugin::IRtcEngine::UpdateSelfPosition ( const char * channelName,
int positionX,
int positionY,
int positionZ )
pure virtual

引擎3D音效算法中本人坐标方位更新接口

参数
[in]channelName房间号。如果channelName为空,则为默认房间。
[in]positionX当前玩家的X轴坐标
[in]positionY当前玩家的Y轴坐标
[in]positionZ当前玩家的Z轴坐标
返回
  • 0: 方法调用成功
  • 其他: 调用失败

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ EnableAudioVolumeIndication()

virtual int nertc::wwiseplugin::IRtcEngine::EnableAudioVolumeIndication ( const char * channelName,
bool enable,
uint64_t interval,
bool enableVad )
pure virtual

启用说话者音量提示。
该方法允许 SDK 定期向 App 反馈本地发流用户和瞬时音量最高的远端用户(最多 3 位)的音量相关信息,即当前谁在说话以及说话者的音量。
启用该方法后,只要房间内有发流用户,无论是否有人说话,SDK 都会在加入房间后根据预设的时间间隔触发OnRemoteAudioVolumeIndication回调。

参数
[in]channelName房间号。如果channelName为空,则为默认房间。
[in]enable是否启用说话者音量提示。
[in]interval指定音量提示的时间间隔,单位为毫秒。必须设置为 100 毫秒的整数倍值。
[in]enableVad是否启用本地采集人声监测。
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetPublishAudioAllowList()

virtual int nertc::wwiseplugin::IRtcEngine::SetPublishAudioAllowList ( const char * channelName,
uint64_t * uids,
int size )
pure virtual

你可以调用该方法指定音频流被谁订阅。

注解
  • 此接口需要在加入房间成功后调用。
  • 对于调用接口时不在房间的 uid 不生效。
参数
[in]channelName房间号。如果channelName为空,则为默认房间。
[in]uids可订阅自己音频的用户uid 列表
注解
此列表为全量列表。如果列表为空或 null,取消订阅白名单。
参数
[in]sizeuids 的数组长度。
返回
  • 0:方法调用成功。
  • 其他:方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetSubscribeAudioAllowList()

virtual int nertc::wwiseplugin::IRtcEngine::SetSubscribeAudioAllowList ( const char * channelName,
uint64_t * uids,
int size )
pure virtual

你可以调用该方法指定只订阅的音频流。

注解
  • 此接口需要在加入房间成功后调用。
  • 对于调用接口时不在房间的 uid 不生效。
自从
V5.4.101
参数
[in]channelName房间号。如果channelName为空,则为默认房间。
[in]uids只订阅此 用户uid列表 的音频。
[in]sizeuids 的数组长度。
注解
此列表为全量列表。如果列表为空或 null,取消订阅白名单。
返回
  • 0:方法调用成功。
  • 其他:方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ SetSubscribeAudioBlockList()

virtual int nertc::wwiseplugin::IRtcEngine::SetSubscribeAudioBlockList ( const char * channelName,
uint64_t * uids,
int size )
pure virtual

你可以调用该方法指定不订阅的音频流。

注解
  • 此接口需要在加入房间成功后调用。
  • 对于调用接口时不在房间的 uid 不生效。
自从
V5.4.101
参数
[in]channelName房间号。如果channelName为空,则为默认房间。
[in]uids不订阅此 用户uid列表 的音频。
[in]sizeuids 的数组长度。
注解
此列表为全量列表。如果列表为空或 null,取消订阅黑名单。
返回
  • 0:方法调用成功。
  • 其他:方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ PauseAudio()

virtual int nertc::wwiseplugin::IRtcEngine::PauseAudio ( )
pure virtual

暂停音频输入与输出

返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ ResumeAudio()

virtual int nertc::wwiseplugin::IRtcEngine::ResumeAudio ( )
pure virtual

恢复音频输入与输出

返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ GetVersion()

virtual const char * nertc::wwiseplugin::IRtcEngine::GetVersion ( )
pure virtual

获取SDK版本号

返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ StartAudioDump()

virtual int nertc::wwiseplugin::IRtcEngine::StartAudioDump ( RtcAudioDumpType type)
pure virtual

开始记录音频 dump。 音频 dump 可用于分析音频问题。

参数
type音频dump类型
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ StopAudioDump()

virtual int nertc::wwiseplugin::IRtcEngine::StopAudioDump ( )
pure virtual

结束音频dump。

返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.

◆ Release()

virtual int nertc::wwiseplugin::IRtcEngine::Release ( )
pure virtual

销毁资源,必须要在停止所有插件之后调用

返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

nertc::wwiseplugin::NertcEngineImpl , 以及 nertc::wwiseplugin::NertcEngine 内被实现.


该类的文档由以下文件生成: