首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Android SDK:获取摄像头原始预览画面,不显示

Android SDK:获取摄像头原始预览画面,不显示
EN

Stack Overflow用户
提问于 2012-05-28 01:33:54
回答 2查看 23.1K关注 0票数 22

我想对原始图像进行图像处理,而不将其显示在屏幕上,这显然会降低性能。

根据这个帖子Taking picture from camera without preview的回答,这在Android1.5中是不可能的,但有人知道在Android4(API15级)中是否可能吗?

EN

回答 2

Stack Overflow用户

发布于 2013-09-30 23:15:59

因为我不被允许发表评论。关于Eddy的回答。您需要在NDK中处理这一点,因为使用Java接口将抵消任何性能优势。从性能的角度来看,不得不使用PixelBuffer绝对是疯狂的。从RGBA888到YUV的转换也需要用C语言完成。

不要试图使用TextureView,因为这样会更糟。在转换为YUV之前,您必须将像素复制到位图,然后从位图复制到数组。在全新的Nexus 7 2013上,仅此一项就占用了近30%的cpu利用率。

最有效的方法是直接与Camera.h对话,绕过所有Android API。您可以创建自己的缓冲区,并在YUV数据到达其他任何位置之前对其进行拦截。

票数 1
EN

Stack Overflow用户

发布于 2013-12-21 04:04:04

在屏幕上显示预览不会影响性能。在我遇到的所有设备上,相机输出都是“连接”到表面或纹理上的,不涉及CPU,所有的颜色转换和缩放都由专用硬件处理。

可能还有其他原因“隐藏”预览,但请记住,出于隐私和安全原因,API最初的目的是确保最终用户看到从摄像头到应用程序的任何内容。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10775942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档