【问题标题】:ARCore: How to play video in the photo frame when an image detectedARCore:检测到图像时如何在相框中播放视频
【发布时间】:2019-07-08 07:17:32
【问题描述】:

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

谢谢

【问题讨论】:

    标签: java android arcore


    【解决方案1】:

    我认为您的意思是在检测到图像时,您想在 ARCore 中添加视频作为可渲染对象。

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

    此特定示例还应用了色度滤镜,但您可以简单地忽略该部分。

    做法大致是:

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

    对于增强图像,只要图像的状态是“跟踪”,ArCore 就会自动计算它检测到的图像的大小。从文档中:

    ARCore 将尝试根据其对世界的理解来估计物理图像的宽度。如果在数据库中指定了可选的物理尺寸,这个估计过程会更快发生。但是,估计大小可能与指定大小不同。

    默认情况下,您的可渲染对象将调整大小以适应此内容,但您也可以根据需要向上或向下缩放可渲染对象。

    有一系列文章可能涵盖您的确切情况,具体取决于您的具体需求,以及此处的一些示例代码:https://proandroiddev.com/arcore-sceneform-simple-video-playback-3fe2f909bfbc

    【讨论】:

    • 我想在检测到图像时像在相框中一样在边框内播放视频
    • 查看更新 - 这是 AugmentedImage 的一个相当标准的用例。
    【解决方案2】:

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 2019-03-15
    • 1970-01-01
    • 1970-01-01
    • 2019-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-12
    相关资源
    最近更新 更多