集成并初始化 SDK
更新时间: 2024/07/15 10:12:20
本文介绍 Windows&macOS 端快速集成并初始化 NERoom SDK 的操作步骤,帮助您快速集成并初始化 NERoom SDK。
开发环境要求
名称 | 要求 |
---|---|
IDE | Visual Studio 2017及以上 or Xcode 11.3.1及以上 |
OS | Windows7及以上 or macOS 10.14及以上 |
前提条件
- 已 创建应用。
- 已 开通 NERoom 房间组件。
SDK 引入
Windows 开发环境配置
-
单击下载 NERoom Windows C++ SDK(64位) 或 NERoom Windows C++ SDK(32位)。
下载完成后,Windows SDK 目录结构如下:
├─bin 包含 SDK 的二进制文件 ├─include 您需要引入的头文件目录 └─lib 您需要引入的依赖库文件
库文件的说明如下表所示。您可以根据您需要集成的能力,引入对应的库文件。
功能/插件 动态库 所有能力 所有 dll
动态库基础功能 nertc_sdk.dll
protoopp.dll
-
SDL2.dll
-
nim.dll
-
nim_chatroom.dll
-
protoopp.dll
roomkit.dll
roomkitd.dll
(Debug 版本)h_available.dll
美颜 - 美颜库:
NERtcBeauty.dll
- 人脸检测库:
NERtcFaceDetect.dll
- 机器学习库:
NERtcnn.dll
虚拟背景 - 虚拟背景库:
NERtcPersonSegment.dll
- 机器学习库:
NERtcnn.dll
音频 AI 降噪 AI 降噪库: NERtcAiDenoise.dll
AI 啸叫检测 - AI 啸叫检测库:
NERtcAiHowling.dll
- 机器学习库:
NERtcnn.dll
人脸增强 - 人脸增强库:
NERtcFaceEnhance.dll
- 机器学习库:
NERtcnn.dll
视频降噪 视频降噪库: NERtcVideoDenoise.dll
视频 AI 超分 视频 AI 超分库: NERtcSuperResolution.dll
屏幕增强 - 屏幕增强库:
NERtcScreenShareEnhance.dll
- 机器学习库:
NERtcnn.dll
-
将 bin 目录设置为项目的依赖目录,或放置与您已有项目的可搜索环境变量中、将 include 文件夹添加为项目的头文件搜索路径、将 lib 文件夹添加为项目的库文件搜索路径并引入库文件到项目中。以下为Qt5 Qmake配置示例:
win32 { DEPENDPATH += $$PWD/bin INCLUDEPATH += $$PWD/include LIBS += -L$$PWD/lib -lroomkit }
macOS 开发环境配置
-
macOS SDK 目录结构如下:
├─include 您需要引入的头文件目录 ├─lib 包含 SDK 所需的 framework和dylib文件 ├─resource 基础美颜资源文件 ├─resources 美颜滤镜、贴图等高级资源文件 └─tests 库的单元测试执行程序及集成测试执行程序,用于验证功能稳定性
-
根据您需要集成的能力,选择对应的
XX.framework
文件,并引入到您的工程中,以下为 Qt5 Qmake 配置示例:macx { INCLUDEPATH += $$PWD/roomkit/include # 如果是 debug 调试,请链接 libroomkitd.dylib,以下为 release 示例 LIBS += -L$$PWD/roomkit/lib -lroomkit DESTDIR = $$PWD/bin DEPENDPATH += $$PWD/bin # 如果是 debug 调试,请拷贝打包 libroomkitd.dylib,以下为 release 示例 ROOM_KIT_FRAMEWORK.files = $$PWD/roomkit/lib/libroomkit.dylib \ $$PWD/roomkit/lib/nertc_sdk_Mac.framework \ $$PWD/roomkit/lib/NERtcAiHowling.framework \ $$PWD/roomkit/lib/NERtcFaceDetect.framework \ $$PWD/roomkit/lib/NERtcVideoDenoise.framework \ $$PWD/roomkit/lib/NERtcFaceEnhance.framework \ $$PWD/roomkit/lib/NERtcPersonSegment.framework \ $$PWD/roomkit/lib/NERtcnn.framework \ $$PWD/roomkit/lib/NERtcBeauty.framework \ $$PWD/roomkit/lib/NERtcAiDenoise.framework \ $$PWD/roomkit/lib/NERtcScreenShareEnhance.framework \ $$PWD/roomkit/lib/libnim_chatroom.dylib \ $$PWD/roomkit/lib/libh_available.dylib \ $$PWD/roomkit/lib/libnim.dylib \ ROOM_KIT_FRAMEWORK.path = /Contents/Frameworks QMAKE_BUNDLE_DATA += ROOM_KIT_FRAMEWORK }
功能/插件 framework
动态库所有能力 所有 framework
动态库音视频 -
libroomkit.dylib
-
nertc_sdk_Mac.framework
美颜 - 美颜库:
NERtcBeauty.framework
- 人脸检测库:
NERtcFaceDetect.framework
- 机器学习库:
NERtcnn.framework
虚拟背景 - 虚拟背景库:
NERtcPersonSegment.framework
- 机器学习库:
NERtcnn.framework
音频 AI 降噪 AI 降噪库: NERtcAiDenoise.framework
AI 啸叫检测 - AI 啸叫检测库:
NERtcAiHowling.framework
- 机器学习库:
NERtcnn.framework
人脸增强 - 人脸增强库:
NERtcFaceEnhance.framework
- 机器学习库:
NERtcnn.framework
视频降噪 视频降噪库: NERtcVideoDenoise.framework
屏幕增强 - 屏幕增强库:
NERtcScreenShareEnhance.framework
- 机器学习库:
NERtcnn.framework
-
初始化
创建 NERoom 实例
createNERoomKit()
销毁 NERoom 实例
destroyNERoomKit()
实现初始化功能的示例代码如下:
auto roomkit =createNERoomKit();
NERoomKitOptions options;
options.appKey = "you appkey";
options.logPath = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation).toStdString().append("/Netease/RoomkitSample");
options.logLevel = NEVERBOSE;
roomkit->initialize(options, [&bInit](int errorCode, const std::string& errorMsg){
});
此文档是否对你有帮助?