enableVirtualBackground method

Future<int?> enableVirtualBackground(
  1. string modelPath,
  2. VirtualBackgroundSource source
)

@detail api @author zhushufan.ref @brief 将摄像头采集画面中的人像背景替换为指定图片或纯色背景。 @param backgroundStickerRes 背景贴纸特效素材绝对路径。 @param source 背景贴纸对象,参看 VirtualBackgroundSource{@link #VirtualBackgroundSource}。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note - 调用本方法前,必须先调用 initCVResource{@link #IVideoEffect#initCVResource} 进行初始化。 - 调用 disableVirtualBackground{@link #IVideoEffect#disableVirtualBackground} 关闭虚拟背景。

Implementation

Future<int?> enableVirtualBackground(
    string modelPath, VirtualBackgroundSource source) async {
  $a() => ($instance as $p_a.IVideoEffect).enableVirtualBackground(
      modelPath, unpackObject<$p_a.VirtualBackgroundSource>(source));
  $i() => ($instance as $p_i.ByteRTCVideoEffect).enableVirtualBackground(
      modelPath, unpackObject<$p_i.ByteRTCVirtualBackgroundSource>(source));

  if (Platform.isAndroid) {
    return $a();
  } else if (Platform.isIOS) {
    return $i();
  } else {
    throw UnsupportedError(
        'Not Support Platform ${Platform.operatingSystem}');
  }
}