我正在实现ArCore
. 我的数据库图像的识别工作正常,当它们被识别时开始播放视频。但是我想知道当图像在场景中不再可见时是否有任何侦听器被调用,以便我可以停止并隐藏该图像的视频。目前在我的实现中,即使我删除了物理图像,视频也会保持在场景中识别图像的相同位置。
问问题
791 次
2 回答
2
当 TrackingState 为 Tracking 时,检查 AugmentedImage 的当前TrackingMethod。当图像在相机视野中时,TrackingMethod 为 FULL_TRACKING ,否则它将在 LAST_KNOWN_POSE 中。如果您使用的是示例 augmentedImages 示例,则在 AugmentedImageActvity.java 中将是这样的 -
private void onUpdateFrame(FrameTime frameTime)
{
.
for (AugmentedImage augmentedImage : updatedAugmentedImages)
{
.
switch (augmentedImage.getTrackingState())
{
.
case TRACKING: if(augmentedImage.getTrackingMethod()==AugmentedImage.TrackingMethod.FULL_TRACKING) {
//Enable VideoNode
}
else{
//Disable VideoNode / Pause MediaPlayer /detach node
}
}
}
}
于 2019-06-20T08:47:37.070 回答
1
public TrackingState getTrackingState ()
如果它返回,您可以使用它,public static final TrackingState STOPPED
您可以停止您的视频或随心所欲地销毁。有关更多详细信息,您可以参考这里
于 2018-11-18T15:41:12.097 回答