├── angle // angle库 ├──bin ├──include ├── angle_dynamic // angle 加载动态库 ├── base64 // base64 编解码 ├── ESPreview // ui 相关,列表生成相关 ├── effect_manager // 算法检测,以及render绘制 │ ├── be_detector.h // 算法检测,包含人脸,手势等检测 │ ├── be_detector.cpp │ ├── be_effect_handle.h // 特效处理类,包含美颜,美形,滤镜,贴纸等处理逻辑 │ ├── be_effect_handle.cpp │ ├── be_feature_context.h // 资源路径管理 │ ├── be_feature_context.cpp │ ├── be_program.h // 算法结果渲染相关接口 │ ├── be_program.cpp │ ├── be_render.h // 算法结果渲染相关接口 │ ├── be_render.cpp │ ├── be_render_define.h │ ├── be_render_helper.h // 算法结果渲染相关接口 │ ├── be_render_helper.cpp │ ├── be_composer_node.h // 美颜,美形,美体,美妆等特效资源管理类,真正的处理参考EffectHandle实现 │ ├── be_composer_node.cpp │ ├── be_defines.h │ ├── be_face_attr_info_synchro.h // 处理人脸属性算法结果,和qml ui层进行数据通信 │ ├── be_face_attr_info_synchro.cpp │ ├── be_face_detect_info_synchro.h // 处理人脸信息算法结果,和qml ui层进行数据通信 │ ├── be_face_detect_info_synchro.cpp │ ├── be_hand_detect_info_synchro.h // 处理手势检测的算法结果,和qml ui层进行数据通信 │ ├── be_hand_detect_info_synchro.cpp │ ├── be_light_classify_info_synchro.h // 处理光线检测的算法结果,和qml ui层进行数据通信 │ ├── be_light_classify_info_synchro.cpp │ ├── be_resource_context.h // 资源管理,以及算法结果管理 │ ├── be_resource_context.cpp │ ├── be_util.h │ ├── be_util.cpp │ ├── BEFEffectGLContext.h // context环境,使用bef_effect_ai_create前必须创建context环境 │ ├── BEFEffectGLContext.cpp │ ├── BEFPlatformDefine.h │ ├── ESImageView.h // 图片模式下与qml ui进行数据交互 │ ├── ESImageView.cpp │ ├── ESPreviewViewModel.h // camera模式下与qml ui进行交互 │ ├── ESPreviewViewModel.cpp │ ├── ESSDKInterface.h │ ├── ESSDKProcessor.h // 主要的特效处理接口,process()在线程中循环对图片buffer进行特效处理(processImage处理图片模式下的特效) │ ├── ESSDKProcessor.cpp │ ├── ESVideoFilter.h // 与main.qml中的filter进行关联,提供接口设置特效和数据交互 │ ├── ESVideoFilter.cpp │ ├── ESVideoFilterRunnable.h // 管理ESSDKProcess,通过run 获取camera buffer传递给ESSDKProcessor特效处理 │ ├── ESVideoFilterRunnable.cpp │ ├── ESVideoSurface.h │ ├── ESVideoSurface.cpp │ ├── PBOReader.h // 使用双pbo的方式进行纹理->buffer的读取(加速处理) ├── license_handle // license 相关,包含license检查和下载逻辑 │ ├── license_check.h // 检查license文件是否存在,是否失效 │ ├── license_check.cpp │ ├── license_handle.h // 和licenseInput.qml进行通信,进行license文件下载 │ ├── license_handle.cpp │ ├── license_requester.h // 用libcurl+openssl发送license请求 │ ├── license_requester.cpp │ ├── misc.h ├── nlohmann // json 库 ├── resource // resource资源 ├── material # 特效资源文件路径 ├── animoji // moji资源文件 ├── ComposeMakeup.bundle ├── ComposeMakeup/beauty_4Items // 白牙、亮眼资源 ├── ComposeMakeup/beauty_Android // 美白、磨皮,锐化 ├── ComposeMakeup/beauty_image // 美白、磨皮、锐化(图片模式) ├── ComposeMakeup/blush // 美妆(腮红) ├── ComposeMakeup/body // 美体 ├── ComposeMakeup/eyebrow // 美妆(眉毛) ├── ComposeMakeup/eyeshadow // 美妆(眼影) ├── ComposeMakeup/facial // 美妆(修容) ├── ComposeMakeup/hair // 美妆(染发) ├── ComposeMakeup/lip // 美妆(口红) ├── ComposeMakeup/pupil // 美妆(美瞳) ├── ComposeMakeup/reshape // 美形 ├── FilterResource.bundle // 滤镜资源文件路径 ├── mini_game // 小游戏资源路径 ├── stickers_new // 贴纸路径 ├── model // 算法模型资源(特效依赖部分算法,必须有对应的算法模型文件才会生效) ├── third_include # 第三方库头文件 ├── third_lib # 第三方库lib文件 ├── animoji.xml // moji ui对应的列表(包括icon,资源路径等) ├── build.sh //编译脚本 ├── ByteBeautyBodyContainer.qml // 美体ui ├── ByteBeautyFaceContainer.qml // 美颜ui ├── ByteBeautyMakeupBlushContainer.qml // 美妆-腮红ui ├── ByteBeautyMakeupBrowContainer.qml // 美妆-眉毛ui ├── ByteBeautyMakeupEyeShadowContainer.qml // 美妆-眼影ui ├── ByteBeautyMakeupHairDyeContainer.qml // 美妆-染发ui ├── ByteBeautyMakeupLipstickContainer.qml // 美妆-口红ui ├── ByteBeautyMakeupPupilContainer.qml // 美妆-美瞳ui ├── ByteBeautyMakeupTrimContainer.qml // 美妆-修容ui ├── ByteBeautyShapeContainer.qml // 美形ui ├── ByteEffectButton.qml ├── ByteEffectMakeupButton.qml ├── ByteStickerContainer.qml // 贴纸ui ├── CMakeLists.txt // cmake编译配置 ├── ColorButton.qml ├── DetectButton.qml ├── FaceAttrInfoBox.qml // 人脸属性 ui ├── FaceInfoBox.qml // 人脸信息 ui ├── filter.xml // 滤镜 icon以及路径配置 ├── HandDetectBox.qml // 手势检测ui ├── LicenseInput.qml // license输入ui ├── LightClassifyInfoBox.qml // 光线检测UI ├── main.qml // 主窗口布局 ├── main.cpp // 主程序启动函数入口 ├── mini_game.xml // 小游戏 贴纸icon以及路径配置 ├── PopupTips.qml // 弹出提示ui布局 ├── process_status.h ├── process_status.cpp ├── qml.qrc ├── sticker2D.xml // 2D 贴纸icon以及路径配置 ├── sticker3D.xm // 3D 贴纸icon以及路径配置 ├── stickerComplex.xml // 复杂 贴纸icon以及路径配置