适用平台:Windows、Linux。所有 API 位于facebetter命名空间。
SDK 版本:1.3.1
日志相关
LogLevel
日志级别枚举。LogConfig
日志配置结构体。 字段说明:console_enabled:是否输出到控制台,默认falsefile_enabled:是否写入文件,默认falselevel:最低输出日志级别,默认Infofile_name:日志文件路径(file_enabled = true时有效),默认""
引擎相关
EngineConfig
引擎初始化配置结构体。 字段说明:app_id:应用 ID,从控制台获取app_key:应用密钥,从控制台获取resource_path:resource.fbd文件路径(支持相对或绝对路径)license_json:离线/在线授权 JSON 字符串(可选)external_context:是否使用外部 OpenGL 上下文,默认false
- 若
license_json不为空 → 使用 license JSON 验证(支持在线响应和离线授权) - 否则 → 使用
app_id+app_key进行联网验证
BeautyEffectEngine
美颜效果引擎主类。不可复制/赋值。静态方法
SetLogConfig
Create 之前调用,否则引擎初始化期间的日志无法捕获。
返回值:
0 成功,非零失败。
Create
nullptr。
参数设置
SetBeautyParam(基础美颜)
[0.0, 1.0],0 表示关闭该效果。
SetBeautyParam(美型)
SetBeautyParam(美妆)
SetLipstickStyle / SetBlushStyle
SetBeautyParam(绿幕抠图 ChromaKey)
SetVirtualBackground
SetSkinOnlyBeauty
滤镜管理
SetFilter
SetFilterIntensity
[0.0, 1.0]。
RegisterFilter
.fbd 文件路径或内存数据)。注册后即可通过 ID 使用。
UnregisterFilter / UnregisterAllFilters
GetRegisteredFilters
贴纸管理
SetSticker
RegisterSticker
.fbd 文件路径或内存数据)。
UnregisterSticker / UnregisterAllStickers
GetRegisteredStickers
回调
SetCallbacks
图像处理
ProcessImage
nullptr。
输出格式: 引擎会尽量使输出格式与输入格式保持一致。
已废弃接口
图像相关
Format
图像像素格式枚举。Rotation
图像旋转角度枚举。FrameType
帧类型枚举,通过frame->type 字段设置。
ImageFrame
图像帧类,提供创建、转换和操作图像数据的功能。不可复制/赋值。 线程安全:ImageFrame 不保证线程安全,同一实例不应在多线程中同时调用 Rotate / Mirror / Convert 等操作。
静态创建方法
CreateWithFile
nullptr。
Create(通用方法)
多平面 YUV 格式(I420/NV12/NV21)建议使用对应的专用方法。
CreateWithRGBA
CreateWithBGRA
CreateWithRGB
CreateWithBGR
CreateWithI420
CreateWithNV12
CreateWithNV21
CreateWithTexture
Format::Texture),用于 GPU 纹理输入。
CreateWithAndroid420
YUV_420_888 格式创建(主要用于 Android 平台)。
图像操作方法
Rotate
0 成功,非零失败。
Mirror
mode 值(不区分大小写):"horizontal"、"vertical"、"both"。
SetMirror
ProcessImage 时由引擎执行镜像操作(避免额外的格式转换)。传入空字符串
"" 清除标志。
Convert
ImageFrame。若目标格式与当前格式相同,返回共享底层 buffer 的等价帧。失败返回 nullptr。
ToFile
quality 为 JPEG 质量参数(1–100),默认 90。返回 0 成功。
数据访问
公共字段
回调与事件
EngineEventCode
引擎事件码枚举。EngineCallbacks
引擎回调函数集合结构体。数据结构
Point2d
二维坐标点,坐标归一化到[0.0, 1.0]。
Rect
归一化矩形区域。FaceDetectionResult
单张人脸的检测结果。 字段说明:rect:人脸 ROI 区域(归一化矩形)key_points:111 个归一化人脸关键点坐标(vector<Point2d>)visibility:111 个关键点的可见度评分[0.0, 1.0](vector<float>)face_id:人脸唯一 ID(跨帧追踪),未检测到为-1face_action:人脸动作位掩码(如张嘴、眨眼),未检测到为-1score:人脸置信度[0.0, 1.0]pitch:俯仰角(上仰为负,下低为正),范围[-π, π]roll:翻滚角(左倾为负,右倾为正),范围[-π, π]yaw:偏航角(左转为负,右转为正),范围[-π, π]
美颜参数枚举
BeautyType
beauty_params::Basic
beauty_params::Reshape
beauty_params::Makeup
beauty_params::ChromaKey
beauty_params::BackgroundMode
beauty_params::VirtualBackgroundOptions
使用注意事项
线程安全
BeautyEffectEngine 不是线程安全的,多线程环境下需要在调用侧加锁。
内存管理
所有工厂方法(Create、CreateWithXxx)返回 std::shared_ptr,内存由智能指针自动管理,无需手动释放。
数据只读
Data() 等返回的指针为只读指针,不可直接修改像素数据。需要修改时,应创建新的 ImageFrame。

