RtcEngineContext

  • C++

更新时间不可用

用于配置 RtcEngineContext 实例。

C++
struct RtcEngineContext {
  IRtcEngineEventHandler* eventHandler;
  const char* appId;
  void* context;
  CHANNEL_PROFILE_TYPE channelProfile;
  const char* license;
  AUDIO_SCENARIO_TYPE audioScenario;
  unsigned int areaCode;
  commons::LogConfig logConfig;
  Optional<THREAD_PRIORITY_TYPE> threadPriority;
  bool useExternalEglContext;
  bool domainLimit;
  bool autoRegisterAgoraExtensions;
};

属性

参数名描述
eventHandler

用于 IRtcEngine 的事件处理器。详见 IRtcEngineEventHandler。

appId

由声网为你的项目签发的 App ID。只有在相同 App ID 下的用户才能加入同一个频道并互相通信。一个 App ID 只能用于创建一个 IRtcEngine 实例。若需更换 App ID,需调用 release 销毁当前的 IRtcEngine 实例,然后创建一个新的实例。

context

在 Windows 平台,该参数为应用窗口句柄。设置后可在设备通电状态下连接或断开视频设备。

channelProfile

频道场景类型。详见 CHANNEL_PROFILE_TYPE。

license

用于连接频道时验证的 License,根据 License 收费。

audioScenario

音频场景类型,不同场景下设备使用不同的音量类型。详见 AUDIO_SCENARIO_TYPE。

areaCode

连接区域。该高级功能适用于有区域限制的场景,支持的区域详见 AREA_CODE。区域码支持按位操作。

logConfig

日志配置。详见 LogConfig。 默认情况下,SDK 会生成五个 SDK 日志文件和五个 API 调用日志文件,规则如下:

  • SDK 日志文件包括:agorasdk.log、agorasdk.1.log、agorasdk.2.log、agorasdk.3.log 和 agorasdk.4.log。

  • API 调用日志文件包括:agoraapi.log、agoraapi.1.log、agoraapi.2.log、agoraapi.3.log 和 agoraapi.4.log。

  • 每个日志文件的默认大小为 2048 KB,编码为 UTF-8。

  • SDK 会将最新日志写入 agorasdk.log 或 agoraapi.log。

  • 当 agorasdk.log 写满时,SDK 会按以下顺序处理日志文件:

    1. 删除 agorasdk.4.log(如存在);
    2. 将 agorasdk.3.log 重命名为 agorasdk.4.log;
    3. 将 agorasdk.2.log 重命名为 agorasdk.3.log;
    4. 将 agorasdk.1.log 重命名为 agorasdk.2.log;
    5. 创建新的 agorasdk.log 文件。
  • agoraapi.log 的覆盖规则与 agorasdk.log 相同。

threadPriority

SDK 通用线程的线程优先级。详见 THREAD_PRIORITY_TYPE。

useExternalEglContext

注: 该属性仅适用于 Android 平台。

是否使用当前线程中的 EGL 上下文作为 SDK 的根 EGL 上下文,该上下文会被所有与 EGL 相关的模块共享,例如摄像头采集、视频渲染等。

  • true:使用当前线程中的 EGL 上下文。
  • false:(默认)不使用当前线程中的 EGL 上下文。
domainLimit

是否启用域名限制:

  • true:启用域名限制。适用于 IoT 设备使用物联网卡接入网络的场景。SDK 仅连接已上报给运营商的域名或 IP 白名单中的服务器。
  • false:(默认)不启用域名限制。适用于大多数常见场景。
autoRegisterAgoraExtensions

是否在初始化 IRtcEngine 时自动注册声网插件:

  • true:(默认)自动注册插件。
  • false:不自动注册插件。你需要调用 enableExtension 手动注册插件。
表格内容超出当前宽度,可横向滚动查看更多列。

这个页面有帮助吗?