腾讯特效SDK使用人像分割(虚拟背景)_音视频解决方案_同尘科技

腾讯特效SDK 1年前 (2023-12-19) 浏览 64

注意:虚拟背景目前仅支持 Web 端及小程序直播场景 native 模式接入。WEB 端实现虚拟背景需要在初始化时启用人像分割模块,详情请参见 自定义流、内置相机。

Web端设置背景

SDK 支持设置模糊背景、图片背景,支持在初始化参数中透传:

const config = {  module: {      beautify: true, // 是否启用美颜模块,启用后可以使用美颜、美妆、贴纸等功能      segmentation: true // 是否启用人像分割模块,启用后可以使用背景功能      segmentationLevel: 0 // 1.0.19 及以上版本开始支持切换背景分割模型  },  auth: authData, // 鉴权参数  input: stream, // input传输入流  beautify: { // 初始化美颜参数(可选)      whiten: 0.1,      dermabrasion: 0.3,      eye: 0.2,      chin: 0,      lift: 0.1,      shave: 0.2  },  background: {      type: 'blur' // 模糊背景  }}const sdk = new ArSdk(  // 传入一个 config 对象用于初始化 sdk  config)

SDK 也支持动态修改背景:

sdk.setBackground({  type: 'image', // 图片背景  src: '/2023/12/30/https://www.tongchenkeji.com/wp-content/uploads/2023/12/20231230043834-658f9eca31069.jpg'})

Web端透明背景

SDK 在部分浏览器中支持透明背景:

sdk.setBackground({    type: 'transparent'})

注意由于浏览器的兼容性问题,请注意以下几点:人像分割同时支持移动端及桌面端浏览器。仅能在本地处理并展示透明背景,WebRTC 不支持编码透明通道,推流会使透明背景失效。透明背景效果仅支持桌面端的 Chrome/Firefox,桌面端 Safari 及 iOS 端均不支持。1.0.19 及以上版本开始支持切换背景分割模型,参数支持 0 | 1 | 2。level 0 的性能最好,但分割效果相对一般。level 1 的效果和性能均适中。level 2的分割效果最好,推理耗时最长,适合对分割效果要求高且性能要求不高的应用。

小程序直播场景设置背景

SDK 在直播场景下仅支持设置图片背景,且仅支持 png 格式图片:

const sdk = new ArSdk({  live: {    // 重要!!直播方案中,必须使用live代替camera参数    pusherContext,    mode: "native",  },  auth: {    licenseKey: LICENSE_KEY,    appId: APP_ID,    authFunc,  },  // 无需其他参数});sdk.on("ready", (_) => {  sdk.setBackGround(    "/2023/12/30/https://www.tongchenkeji.com/wp-content/uploads/2023/12/20231230043834-658f9eca890bc.jpg"  );});



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

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

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

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

- 0人点赞 -

发表点评 (0条)

not found

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