ARCore:检测到图像后如何在相框中播放视频

时间:2019-07-08 07:17:32

标签: java android arcore

我想在检测到图像时在相框中播放视频,有人使用ARCore这样做吗?会很有帮助的

谢谢

1 个答案:

答案 0 :(得分:0)

我认为您的意思是要在检测到图像的情况下将视频作为可渲染的图像添加到ARCore中。

(在撰写本文时)实际上存在一个包含在Sceneform中的示例,该示例显示了如何将视频添加为可渲染的视频-可在此处找到:https://github.com/google-ar/sceneform-android-sdk/tree/master/samples/chromakeyvideo

此示例还应用了色度滤镜,但是您可以忽略该部分。

方法大致为:

  • 创建一个外部纹理以播放视频
  • 创建一个MediaPlayer并将其表面设置为ExternalTexture的表面
  • 使用ExternalTexture构建新的可渲染对象
  • 创建一个节点并将其添加到场景中
  • 将节点的可渲染对象设置为您构建的新ModelRenderable

对于增强图像,只要图像状态为“ TRACKING”,ArCore就会自动计算其检测到的图像大小。

  

ARCore将根据对世界的理解来尝试估计物理图像的宽度。如果在数据库中指定了可选的物理大小,则此估计过程将更快地进行。但是,估计的大小可能与指定的大小不同。

默认情况下,您的可渲染对象的大小将适合于此大小,但是您也可以根据需要放大或缩小缩放对象。

根据您的实际需求,这里有一系列文章可能涵盖您的具体情况,以及此处的一些示例代码:https://proandroiddev.com/arcore-sceneform-simple-video-playback-3fe2f909bfbc