Uniapp实现实时音视频的基础美颜滤镜功能

视频基础美颜功能简介

ZEGO 音视频SDK提供基础美颜功能,为用户呈现出良好的肌肤状态,打造独特自然的美颜效果。美颜滤镜功能常用于视频通话、直播等场景。

开发者可以开启美颜开关,然后根据需要调整美白、磨皮、锐化以及红润的程度,轻松实现基础美颜功能。

在这里插入图片描述

Uniapp实现基础美颜的前提条件

在实现基础美颜功能之前,请确保:

Uniapp基础美颜SDK使用步骤

初始化基础美颜功能的环境

若您需要使用基础美颜功能,则必须在 startPreview 开始预览、startPublishingStream 推流前,调用 startEffectsEnv 接口初始化美颜环境。

/** 1. 创建美颜环境 */
await this.engine.startEffectsEnv();

开关基础美颜功能的效果展示

enableEffectsBeauty 接口和 setEffectsBeautyParam 接口的调用时序无先后之分。

初始化美颜环境后,您可以在推流前后,调用 enableEffectsBeauty 接口实时开启或关闭美颜效果。

/** 开关美颜效果 */
await this.engine.enableEffectsBeauty(true);

设置基础美颜效果参数

初始化美颜环境后,您可以在推流前后,调用 setEffectsBeautyParam 接口实时设置美颜效果参数。

  • smoothIntensity:磨皮,在保留脸部细节的基础上进行磨皮,比如脸上的痣会保留。
  • whitenIntensity:美白,对画面整体调高亮度来美白脸部。
  • rosyIntensity:红润,对画面整体进行暖色处理。
  • sharpenIntensity:锐化,对画面整体进行锐化处理,当画面有些模糊时可以稍微调大锐化使轮廓清晰。

以上四个参数的取值范围都为 0 ~ 100,取值越大美颜程度越高,默认值为 50。

// 创建美颜参数对象
let beautyParam = {};

// 美白、红润、磨皮、锐化
beautyParam.whitenIntensity = 50;
beautyParam.rosyIntensity = 50;
beautyParam.smoothIntensity = 50;
beautyParam.sharpenIntensity = 50;

/** 3. 设置美颜参数 */
await this.engine.setEffectsBeautyParam(beautyParam);

销毁基础美颜环境

当调用 enableEffectsBeauty 接口设为 “false” 时,会关闭美颜效果,但美颜模块还是会占用资源并消耗性能。如果想彻底释放资源,节省性能消耗,则需要在预览和推流前调用 stopEffectsEnv 接口销毁美颜环境。

当调用 destroyEngine 销毁引擎的同时,SDK 会自动销毁美颜环境。

/** 4. 销毁美颜环境 */
await this.engine.stopEffectsEnv();
posted @ 2022-09-07 14:43  ZEGO即构开发者  阅读(463)  评论(0编辑  收藏  举报