接口挂在全局单例
MeetingKit 上,不在 MeetingKitRoom 上——虚拟背景作用于进程内唯一的共享摄像头采集链路,属设备级配置,设置会同时作用于全部房间。同时加入多个房间时,不存在「只给某一个房间开虚拟背景」的用法。会中切换摄像头(switchCamera)与断线重连都会重建采集链路,SDK 会自动把当前配置整体重放一遍,业务层不需要在这些时机自己补。step 1:装载虚拟背景组件
建议在需要用到虚拟背景前装载,例如进入会议页面时。modelPath 传 nil 使用 SDK 内置的人像分割模型。
step 2:设置背景效果
背景虚化与背景替换互斥,后调用的生效。两个接口在装载前调用也会被记住,装载完成后自动生效,因此不必关心与installVirtualBackground: 的先后顺序。
step 3:开启或关闭虚拟背景
装载后默认不开启,需要显式打开。关闭后是零开销直通,不再跑推理。SEAErrorConflict。关闭时会清掉帧间状态,下次开启从首帧重新收敛,不会闪出过期蒙版。
step 4:低端机保帧率(可选)
默认每帧都跑一次人像分割。低端机上可以调大推理间隔,用蒙版复用换帧率;此时再按需打开蒙版对齐消除拖影。inferenceInterval 为 1 时,setVirtualBackgroundMaskSync: 开与不开没有任何区别——它只在调大推理间隔后才起作用。