腾讯特效SDK设置美颜和特效_音视频解决方案_同尘科技

腾讯特效SDK 2年前 (2023-07-17) 浏览 67

SDK 内置提供美颜滤镜特效几类效果,均支持 Web 端与微信小程序;其中滤镜和特效需要先获取到素材列表再通过素材的 EffectId 在 SDK 中设置。

美颜

除了初始化时可以传入美颜参数,也可以通过 ArSdk 的 setBeautify 方法设置美颜。SDK 目前支持的美颜效果有:

type BeautifyOptions = {    whiten?: number; // 美白 0-1    dermabrasion?: number; // 磨皮0-1    lift?: number; // 窄脸0-1    shave?: number; // 削脸0-1    eye?: number; // 大眼0-1    chin?: number; // 下巴0-1    // 注意:以下参数仅在1.0.11及以上版本可用    darkCircle?: number; // 黑眼圈0-1    nasolabialFolds?: number; // 法令纹0-1    cheekbone?: number; // 颧骨0-1    head?: number; // 小头0-1    eyeBrightness?: number; // 亮眼0-1    lip?: number; //嘴唇 -1 - 1    forehead?: number; //发际线 0-1    nose?: number; // 鼻子 -1 - 1    usm?: number; // 清晰 0-1}

调用 SDK 实例的 setBeautify 方法设置美颜参数:

sdk.setBeautify({  whiten: 0.2,  dermabrasion: 0,  lift: 0.3,  shave:0.1,  eye: 0.9,  chin: 0,  ……  // 上述其他美颜设置})

滤镜

由于制作滤镜图的成本较高,我们提供了一些内置滤镜供您直接使用。1. 获取内置滤镜列表:

const filterList = await sdk.getCommonFilter()

2. 设置滤镜:

sdk.setFilter(filterList[0].EffectId, 0.5)

特效

您可以直接在 SDK 中设置您在 控制台 上制作的特效,也可以使用我们提供的内置效果。相关教程请参见 素材制作基础。

// 获取内置特效// 默认返回内置美妆和贴纸素材,通过Label参数可以指定返回特定类型的素材const presetEffectList = await sdk.getEffectList({    Type: 'Preset'    // Label: ['贴纸'] 只返回内置贴纸})
// 获取自制特效const customEffectList = await sdk.getEffectList({ Type: 'Custom'})
// 传入列表请求参数const lipList = await sdk.getEffectList({ PageNumber: 0, PageSize: 10, Name: '', Label: ['唇妆'], // 用特效的标签筛选 Type: 'Custom'})const eyeList = await sdk.getEffectList({ PageNumber: 0, PageSize: 10, Name: '', Label: ['眼妆'], // 用特效的标签筛选 Type: 'Custom'})// 设置特效sdk.setEffect([lipList[0].EffectId, eyeList[0].EffectId])
// 设置特效+强度sdk.setEffect([{ id: lipList[0].EffectId, intensity: 0.5}, { id: eyeList[0].EffectId, intensity: 0.7})// 单独设置特效中的滤镜强度sdk.setEffect([{ id: lipList[0].EffectId, intensity: 0.5, filterIntensity: 0}, { id: eyeList[0].EffectId, intensity: 0.7, filterIntensity: 1})

注意 由于特效制作工具支持在特效中添加滤镜,当多个特效叠加时,滤镜默认采用叠加处理,如需要单独控制,可使用 filterIntensity 单独控制。

关闭美颜

由于 AI 检测的性能消耗较大,为了尽可能节约资源。当 SDK 没有设置任何美颜与特效效果的时候,会自动关闭 AI 检测,再次设置效果后自动开启。

// 清空SDK设置的所有效果即可关闭检测sdk.setBeautify({    whiten: 0,    dermabrasion: 0,    lift: 0,    shave:0,    eye: 0,    chin: 0,    …… // 上述所有美颜参数设置为0即可})sdk.setEffect('')



对音视频的解决方案有疑惑?想了解解决方案收费? 联系解决方案专家

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心,购买腾讯云享受折上折,更有现金返利:同意关联,立享优惠

阿里云解决方案也看看?: 点击对比阿里云的解决方案

- 0人点赞 -

发表点评 (0条)

not found

暂无评论,你要说点什么吗?