虚拟背景

  • HarmonyOS

更新时间不可用

enableVirtualBackground

开启虚拟背景并指定媒体源,或关闭虚拟背景。

TypeScript
public abstract enableVirtualBackground(enabled:boolean,backgroundSource:VirtualBackgroundSource,segproperty:SegmentationProperty,sourceType?:Constants.MediaSourceType):number;

详情

虚拟背景功能支持将本地用户原来的背景替换为静态图片、动态视频、将背景虚化,或者将人像与背景分割以实现人像画中画。成功开启虚拟背景功能后,频道内所有用户都能看到自定义的背景。

请在 enableVideo 或 startPreview 之后调用该方法。

注意:

  • 该功能对设备性能要求较高,调用该方法时 SDK 会自动对当前设备能力进行检查。建议你在搭载如下芯片的设备上使用:

  • 建议你在满足如下条件的场景中使用该功能:

    • 使用高清摄像设备、摄像环境光照均匀。
    • 摄像画面中,物件较少,用户的人像为半身人像且基本无遮挡,背景色较单一且与用户着装颜色不同。
  • 该方法依赖于虚拟背景动态库 libagora_segmentation_extension.so,如果删除该动态库会导致无法正常开启该功能。

参数

是否开启虚拟背景:

  • true: 开启虚拟背景。
  • false: 关闭虚拟背景。

自定义的背景。详见 VirtualBackgroundSource。为将自定义背景图的分辨率与 SDK 的视频采集分辨率适配,SDK 会在保证自定义背景图不变形的前提下,对自定义背景图进行缩放和裁剪。

背景图像的处理属性。详见 SegmentationProperty。

应用效果的媒体源。详见 MediaSourceType。

返回值

  • 0: 方法调用成功。

  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

    • -4:设备能力不满足虚拟背景的使用要求,建议更换性能更高的设备。

所属接口类