Web视频通话时怎么美颜?教你3步轻松搞定!
功能简介
我们在视频通话、直播等场景中,为用户呈现出良好的肌肤状态,打造独特自然的美颜效果。我们需要使用到美颜功能,通过调整美白、磨皮、锐化以及红润的程度,轻松实现最佳的视频效果。
那么我们如何使用 ZEGO SDK 实现这样的效果呢?

支持美颜功能的浏览器如下表:
| 浏览器 | 兼容版本 |
|---|---|
| Chrome | 65 及以上 |
| Firefox | 70 及以上 |
| Safari | 12 ~14 或 15.2 及以上 |
| Edge | 80 及以上 |
| 移动端浏览器 | 不支持 |
| 微信内嵌网页 | 不支持 |
示例源码下载
请参考 下载示例源码 获取源码。
相关源码请查看 “src/Examples/Others/EffectsBeauty” 目录下的文件。
前提条件
在实现美颜功能之前,请确保:
- 已在项目中集成 ZEGO Express SDK,实现基本的实时音视频功能,详情请参考 快速开始 - 集成 和 快速开始 - 实现流程。
- 已在 ZEGO 控制台 创建项目,并申请有效的 AppID,详情请参考 控制台 - 项目管理 中的“项目信息”。
使用步骤
- 在
createStream获取到媒体流后,通过 ZegoExpressEngine 实例调用setEffectsBeauty接口开启基础美颜功能,并可以根据需要通过ZegoEffectsBeautyParam的 4 个参数设置美颜效果。
- smoothIntensity:磨皮,在保留脸部细节的基础上进行磨皮,比如脸上的痣会保留。
- whitenIntensity:美白,对画面整体调高亮度来美白脸部。
- rosyIntensity:红润,对画面整体进行暖色处理。
- sharpenIntensity:锐化,对画面整体进行锐化处理,当画面有些模糊时可以稍微调大锐化使轮廓清晰。
以上四个参数的取值范围都为 0 ~ 100,取值越大美颜程度越高,默认值为 50。
- 如果在推流前开启美颜,需要等待美颜开启完成后再调用
startPublishingStream接口推流。 - 美颜效果与对应的 MediaStream 绑定,当调用
useVideoDevice、replaceTrack接口时不会改变 MediaStream 的美颜效果。 - 美颜处理占用资源并消耗性能,当不需要使用美颜时请及时调用
zg.setEffectsBeauty(localStream,false)关闭。 - 当调用
destroyStream销毁流的同时 SDK 会关闭美颜效果,其他情况 SDK 不会自动关闭美颜,需要自行调用zg.setEffectsBeauty(localStream,false)关闭。
// 创建流,zg 为 ZegoExpressEngine 实例对象。
const localStream = await zg.createStream();
const enable = true;
// 开启美颜
// setEffectsBeauty 是 Promise 异步方法,异步函数执行完美颜才完成开启。
await zg.setEffectsBeauty(
localStream,
enable,
{
sharpenIntensity: 50,
whitenIntensity: 50,
rosyIntensity: 50,
smoothIntensity: 50
}
)
// 开始推流
// 如果是推流前开启美颜,需要等待美颜开启完成才能进行推流。
zg.startPublishingStream("stream1", localStream);
// 关闭美颜
await zg.setEffectsBeauty(localStream, false);
获取Demo
获取本文的Demo、开发文档、技术支持。
获取SDK的商务活动、热门产品。
注册即构ZEGO开发者帐号,快速开始。
Web视频通话时怎么美颜?教你3步轻松搞定!的更多相关文章
- java web每天定时执行任务(四步轻松搞定)
第一步: package com.eh.util; import java.util.Calendar; import java.util.Date; import java.util.Timer; ...
- 手把手教你使用Python轻松搞定发邮件
前言 现在生活节奏加快,人们之间交流方式也有了天差地别,为了更加便捷的交流沟通,电子邮件产生了,众所周知,电子邮件其实就是客户端和服务器端发送接受数据一样,他有一个发信和一个收信的功能,电子邮件的通信 ...
- 2018.11.7 关于将Web项目部署到阿里云服务器-5个步骤搞定
将Eclipse导出的War包部署到阿里云服务器上,提供给移动端实时的访问 1. 先登录阿里云网站注册账号,选择服务器类型(我用的是 云服务器ECS), 如果你还是在读大学生可享受优惠价,最低好像是9 ...
- 推荐一款好用的国产web报表软件,轻松搞定复杂报表
随着经济全球化程度的逐步加深以及全球市场的加速整合以便最大程度地对企业资源进行整合,从而达到降低成本和提高效率的目的.Web报表由于借助于web平台,即运用了B/S模式,即"浏览器/服务器& ...
- CAD动态输入框不见了怎么办?教你三个调出方法,轻松搞定!
CAD动态输入是除了命令行以外又一种友好的人机交互方式,在CAD设计过程中,启用CAD动态输入功能,可以直接在光标附近显示信息.输入值等.可当CAD动态输入框不见了的时候,该怎么办呢?本文小编以浩辰C ...
- 手把手教你学Numpy,搞定数据处理——收官篇
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Numpy专题第6篇文章,我们一起来看看Numpy库当中剩余的部分. 数组的持久化 在我们做机器学习模型的研究或者是学习的时候,在完成 ...
- Web端即时通讯基础知识补课:一文搞懂跨域的所有问题!
本文原作者: Wizey,作者博客:http://wenshixin.gitee.io,即时通讯网收录时有改动,感谢原作者的无私分享. 1.引言 典型的Web端即时通讯技术应用场景,主要有以下两种形式 ...
- Golang Web开发时前端出现谜之空白换行的坑
在使用Golang做Web开发时,有时候渲染出来的模板在前台显示时会出现一些奇怪的空白换行,具体特征就是查看css样式表并没有相关定义的空白部分. 分析: 查看出现问题页面的网页源代码,复制空白换行部 ...
- 引用web service时,出现无法识别的配置节点applicationSettings
ApplicationSetting 节点的内容: <applicationSettings> <MyWeb.Properties.Settings> <setting ...
- PHP为fopen,file_get_contents等函数请求web地址时增加Http头的方法
我们在使用fsockopen时可以方便的自定义自己请求的http头内容来访问某些对客户端请求头有特殊限制的网站,但是使用fopen,file_get_contents等函数请求web地址时怎么来灵活定 ...
随机推荐
- C#/.NET/.NET Core技术前沿周刊 | 第 38 期(2025年5.12-5.18)
前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...
- Redis介绍及6.2.x版本安装
概述 Redis官网:https://redis.io/ Redis 是完全开源免费的,遵守BSD协议,是一个高性能(NOSQL)的key-value数据库,Redis是一个开源的使用ANSI C语言 ...
- eclipse修改默认的工作空间路径
搜索Workspaces -->勾选Prompt for workspace on startup
- DeepSeek R1再进化:这次更新让它直接对标Claude 4
DeepSeek R1再进化:这次更新让它直接对标Claude 4 今天凌晨,AI圈又炸了.DeepSeek在没有任何官方预告的情况下,悄悄发布了R1模型的最新版本--R1-0528[1][6][7] ...
- 一文速通Python并行计算:11 Python多进程编程-进程之间的数据安全传输-基于队列和管道
一文速通 Python 并行计算:11 Python 多进程编程-进程之间的数据安全传输-基于队列和管道 摘要: Python 多进程中,Queue 和 Pipe 提供进程间安全通信.Queue 依赖 ...
- git命令--拉取代码和切换分支
git一般有很多分支,我们clone到本地的代码都是master分支,那么如何切换到其它分支呢?本文介绍主要操作流程和命令,包括拉取仓库代码.查看分支和切换分支,至于如何提交代码,需要的童鞋自己查 ...
- 初探Iris
Iris 安装 go get -u github.com/kataras/iris 若遇到下面这种情况: 可删除保存路径中的kataras目录,并执行go get github.com/kataras ...
- Doxygen基本使用教程
前言 规范的注释是一个良好的编程习惯. Doxygen可以直接将注释提取为程序文档,便于开发人员使用 本文主要介绍了Doxygen的使用方法,更多细节请阅读官方文档 一.Doxygen是什么? dox ...
- 自动 GitHub Readme 20 种语言翻译平台 - OpenAiTx 开源免费
[野人献曝]晚辈开发自动 GitHub Readme 20 种语言翻译平台 - OpenAiTx 开源免费 只需要一键将 GitHub 的网址替换为 OpenAiTx 即可自动进行 AI 翻译 例如: ...
- 前端将医学影像DCM转换为Base64 图像数据的方法
第一步 下载dicom-parser.js库 npm安装: npm install dicom-parser 第二步 封装dcm转换base64图像数据的方法 /** * dicomToBase64. ...