【发布时间】:2015-10-22 03:55:19
【问题描述】:
我在框架布局中有两个表面视图,其中还包含带有一些按钮的线性布局。其中一个按钮应该能够捕获并保存两个表面视图的图像。一个表面视图是相机预览,另一个是一个带有正方形的 opengl 表面。您将如何拍摄并保存照片?
【问题讨论】:
标签: android image surfaceview
我在框架布局中有两个表面视图,其中还包含带有一些按钮的线性布局。其中一个按钮应该能够捕获并保存两个表面视图的图像。一个表面视图是相机预览,另一个是一个带有正方形的 opengl 表面。您将如何拍摄并保存照片?
【问题讨论】:
标签: android image surfaceview
您无法从 SurfaceView Surface 读取数据。参见例如this answer.
您“捕获”它的方式是将其渲染为您可以从中读取像素的东西。在您的情况下,您将从相机中抓取一帧,将其渲染到屏幕外 pbuffer,然后使用 OpenGL ES 将正方形渲染到同一个 pbuffer 上,然后使用glReadPixels() 抓取它。基本上你自己执行表面合成。
【讨论】: