You need to enable JavaScript to run this app.
导航

事件

最近更新时间2023.11.21 14:51:31

首次发布时间2023.11.21 14:51:31

从 3.2.0 版本开始可用
你可以通过 ARSessionevents 熟悉来获取有关 ARSession 的各种事件。
例如:在每一帧图像分析完成后,ARSession 会发送 frameAnalyzed 事件,你可以通过监听此事件,从事件参数(event)中获取诸如人脸检测结果之类的信息。

const listener = session.events.addEventListener("frameAnalyzed", (event) => {
    //事件处理函数
    //Handle event.
});

当你不再需要获取相关事件回调时,可以使用 listener.dispose() 来取消对事件的监听。
事件列表:

名称描述事件参数

frameAnalyzed

每一帧图像分析完成后发送

event.analysisResult:包含图像分析结果。
例如,想要获取图像中的人脸个数:

const faces = event.analysisResult.faceResult?.faces ?? []
const faceCount = faces.length;

需要注意的是,只有在当前特效需要用到人脸信息时,ARSession 才会进行人脸检测。在没有进行人脸检测的情况下 event.analysisResult.faceResultundefined

frameProcessingWillBegin

即将开始一帧的处理

event.frameTime:对应的帧时间。

frameProcessingDidEnd完成了一帧的处理event.frameTime:对应的帧时间。