美颜插件
官方美颜插件
从 5.1.4 及之后版本开始,融云 RTCLib SDK 支持美颜和滤镜功能。美颜与滤镜功能以
RongFaceBeautifier
插件库形式提供,并已集成于 SDK 中。
集成使用
将 RongCloudRTC
升级到 5.1.4 及以后版本,在需要美颜功能的文件中导入美颜插件头文件:
Objective C
#import <RongFaceBeautifier/RongFaceBeautifier.h>
确保在设置美颜和滤镜之前已经初始化 RCRTCEngine
引擎。
使用 RCRTCBeautyEngine
单例的 setBeautyOption:option:
和 setBeautyFilter:
方法设置美颜参数和滤镜。
示例代码
Objective C
// 获取当前美颜参数
RCRTCBeautyOption *option = [[RCRTCBeautyEngine sharedInstance] getCurrentBeautyOption];
// 修改参数
option.whitenessLevel = 0;
option.smoothLevel = 0;
option.ruddyLevel = 0;
option.brightLevel = 5;
// 设置美颜
[[RCRTCBeautyEngine sharedInstance] setBeautyOption:YES option:option];
// 设置滤镜
[[RCRTCBeautyEngine sharedInstance] setBeautyFilter:RCRTCBeautyFilterEsthetic];
设置美颜
Objective C
- (BOOL)setBeautyOption:(BOOL)enable option:(RCRTCBeautyOption *)option;
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
enabled | BOOL | 是 | 是否开启美颜 |
option | RCRTCBeautyOption | 否 | 支持开发者设置参数 whitenessLevel(美白)、smoothLevel(磨皮)、ruddyLevel(红润)和 brightLevel(亮度),当 enabled 为 NO 时可以传 nil |
设置滤镜
Objective C
- (BOOL)setBeautyFilter:(RCRTCBeautyFilter)filter;
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
filter | RCRTCBeautyFilter | 是 | 滤镜类型,支持设置唯美、清新和浪漫三种基础滤镜。 |
重置参数
因为 RCRTCBeautyEngine
类是单例对象,所以会保留开发者设置的美颜参数或滤镜类型,在需要重置美颜的时候(例如重复进入房间时)需要调用 reset
方法重置所有美颜参数和滤镜。
Objective C
[[RCRTCBeautyEngine sharedInstance] reset];
相芯美颜插件概述
重要说明
- 从 5.4.0 及之后版本开始,融云 CallLib/CallKit SDK 支持相芯美颜插件
- 使用相芯美颜需要购买相关授权,详情请咨询融云商务
- 当前不支持同时使用官方美颜和相芯美颜插件
- 插件对应的相芯 SDK 版本号为 8.3.0,暂不支持加载用户自定义的 bundle
集成相芯美颜插件
通过 CocoaPods 集成
在 Podfile 文件中添加以下内容:
ruby
pod 'RongFUFaceBeautifier', '~> x.y.z'
版本要求
x.y.z
代表美颜插件的具体版本号,插件版本号需要与 RTCLib 版本号一致- 您可以在融云下载页或 CocoaPods 仓库进行查询
- 如果集成了 CallKit,则必须保持 CallKit、CallLib、RongFUFaceBeautifier 插件版本号前三位一致
导入头文件
将 RongCloudRTC
升级到 5.4.0 及以后版本,在需要美颜功能的文件中导入美颜插件头文件:
Objective C
#import <RongFUFaceBeautifier/RongFUFaceBeautifier.h>
初始化美颜引擎
功能描述
初始化相芯美颜引擎。应用运行期间只 需调用一次即可。
接口原型
Objective C
- (BOOL)registerWithAuthPackage:(void *)package
authSize:(int)size;
参数说明
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
package | void* | 是 | 密钥数组,必须配置好密钥,SDK 才能正常工作 |
size | int | 是 | 密钥数组大小 |
代码示例
Objective C
#import <RongFUFaceBeautifier/RongFUFaceBeautifier.h>
// 初始化美颜引擎(应用运行期间只调用一次)
// auth_package 为相芯美颜授权文件
[[RCRTCFUBeautyEngine sharedInstance] registerWithAuthPackage:&auth_package
authSize:sizeof(auth_package)];
注意事项
- 此方法应在应用启动时调用一次即可
- 确保授权文件的有效性,否则美颜功能无法正常使用