gpt4 book ai didi

android - 将 ImageReader 和 SurfaceTexture 与 Android Camera2 输出同步

转载 作者:太空狗 更新时间:2023-10-29 13:02:34 25 4
gpt4 key购买 nike

ImageReader 和 SurfaceTexture 与应用程序端异步。 SurfaceTexture.OnFrameAvailableListenerImageReader.OnImageAvailableListener 来的时间不同。

现在我将制作一个 AR 应用程序。我用 ImageReader 中的图像计算物体运动并输出物体运动信息。另一方面。调用 updateTexImage 渲染背景。但问题是对象运动在背景渲染之后有明显的延迟。

工作流程如下:

Camera2->ImageReader->calculate object motion -> Render a virtual object with object motion information

Camera2->SufaceTexture->使用updateTexImage渲染背景

upateTexImage 和 rendering-virtual-object 在 Render.onDrawFrame 中调用

很明显,问题是如何将 ImageReader 和 SurfaceTexture 与 Android Camera2 输出同步

最佳答案

最简单的选择是不使用两个数据路径,而是在 SurfaceTexture 缓冲区上进行图像分析(在 EGL 中或从 GPU 回读到 CPU 进行分析),或者使用 ImageReader 缓冲区绘制所有内容。

如果这不可行,您需要查看时间戳(https://developer.android.com/reference/android/graphics/SurfaceTexture.html#getTimestamp()https://developer.android.com/reference/android/media/Image.html#getTimestamp())。对于同一个捕获,两条路径将具有相同的时间戳,因此您可以通过匹配它们来排队并同步您的最终绘图。

关于android - 将 ImageReader 和 SurfaceTexture 与 Android Camera2 输出同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53777072/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com