这是我的方案:当有人在锁定屏幕输入错误的密码时,我正试图从前置摄像头拍照。基本上,我需要能够在没有预览的情况下从前凸轮拍摄照片。
经过大量的谷歌搜索,我发现这样做的方法是opengl和SurfaceTexture。您将相机预览指向SurfaceTexture,然后以某种方式从此纹理中提取图片。我从以下资源中找到了这个:
我理解要做什么,但我无法正确地将它们放入代码中,因为我是opengl的新手。
答案 0 :(得分:0)
CameraToMpegTest示例包含您需要的大部分内容,但它远远超出您的使用情况(它将一系列预览帧录制为视频)。
你需要的其余部分是ExtractMpegFramesTest。特别是,您希望渲染到屏幕外的pbuffer(而不是MediaCodec
编码器输入表面),并且可以使用saveFrame()
将pbuffer内容保存为PNG文件。
以上是小型“无头”测试用例。您可以在Grafika中的完整应用中看到类似的代码。