TRTC美颜套件集成(iOS)

最近更新时间:2024-06-07 16:11:01

我的收藏
TRTCAdapter 是一个可以快速将腾讯特效 SDK 集成进腾讯 TRTC 项目中的库,主要用于加快特效 SDK 的集成和解决横屏时美颜适配较复杂问题。

SDK 集成

1. 集成 TEBeautyKit 库,参见 TEBeautyKit 集成指引/iOS 中的集成步骤。
2. 下载并解压 TRTCAdapter
3. 集成 TRTCAdapter,参见 TRTC demo 工程。




SDK 使用

第一步:配置美颜面板 json 数据

- (void)initBeautyJson{
NSString *resourcePath = [[NSBundle mainBundle]
pathForResource:@"TEBeautyKitResources" ofType:@"bundle"];
NSBundle *bundle = [NSBundle bundleWithPath:resourcePath];
[[TEUIConfig shareInstance] setTEPanelViewRes:[bundle pathForResource:@"beauty_S1" ofType:@"json"] beautyBody:[bundle pathForResource:@"beauty_body" ofType:@"json"] lut:[bundle pathForResource:@"lut" ofType:@"json"] motion:[bundle pathForResource:@"motions" ofType:@"json"] makeup:[bundle pathForResource:@"makeup" ofType:@"json"] segmentation:[bundle pathForResource:@"segmentation" ofType:@"json"]];
}

第二步:adapter 绑定美颜

-(TEBeautyTRTCAdapter *)trtcAdapter{
if (!_trtcAdapter) {
_trtcAdapter = [[TEBeautyTRTCAdapter alloc] init];
}
return _trtcAdapter;
}
__weak __typeof(self)weakSelf = self;
[self.trtcAdapter bind:self.trtcCloud onCreatedTEBeautyKit:^(TEBeautyKit * _Nullable beautyKit, XMagic * _Nullable xmagicApi) {
__strong typeof(self) strongSelf = weakSelf;
strongSelf.xMagicKit = xmagicApi;
[strongSelf.teBeautyKit setXMagicApi:xmagicApi];
strongSelf.tePanelView.teBeautyKit = strongSelf.teBeautyKit;
[strongSelf.teBeautyKit setTePanelView:strongSelf.tePanelView];
[strongSelf.teBeautyKit setLogLevel:YT_SDK_ERROR_LEVEL];
strongSelf.tePanelView.beautyKitApi = xmagicApi;
} onDestroyTEBeautyKit:^{
}];

第三步:美颜鉴权


[TELicenseCheck setTELicense:@"your license" key:@"your key" completion:^(NSInteger authresult, NSString * _Nonnull errorMsg) {
if (authresult == TELicenseCheckOk) {
NSLog(@"XMagic 授权成功");
} else {
NSLog(@"XMagic 授权失败");
}
}];

第四步:参数变化通知 adapter

//通知adapter前后置摄像头,是否镜像
[self.trtcAdapter notifyCameraChanged:isFrontCamera mirrorType:mirrorType];
//通知adapter屏幕方向改变
[self.trtcAdapter setDeviceOrientation:orientation];

第五步:解绑 adapter

[self.trtcAdapter unbind];