dequeuebuffer 调用顺序
时间: 2023-10-09 07:17:11 浏览: 66
对vue里函数的调用顺序介绍
dequeuebuffer 调用顺序通常遵循以下步骤:
1. 创建一个 SurfaceTexture 对象,并使用它作为相机预览数据的目标。
2. 在 SurfaceTexture 对象上调用 setOnFrameAvailableListener() 方法,以便在有新的帧可用时接收回调。
3. 创建一个 GLES20Display 对象,并使用它作为 SurfaceTexture 的渲染目标。
4. 在 GLES20Display 对象上调用 start() 方法,启动渲染线程。
5. 在渲染线程中,循环执行以下步骤:
a. 调用 SurfaceTexture 的 updateTexImage() 方法,将最新的图像帧更新到纹理中。
b. 调用 SurfaceTexture 的 getTransformMatrix() 方法,获取纹理变换矩阵。
c. 调用 GLES20Display 的 drawFrame() 方法,将纹理渲染到屏幕上。
在这个过程中,dequeueBuffer() 方法会在 GLES20Display 的 drawFrame() 方法中被调用。它用于从缓冲区队列中获取一个可用的缓冲区,并将渲染结果绘制到该缓冲区上。由于这个过程涉及到多线程的操作,所以要确保正确的同步和顺序执行。
阅读全文