首页 > 代码库 > Android使用Buffer提高相机的处理能力
Android使用Buffer提高相机的处理能力
Android上使用相机的的Preview的时候,如果不使用Buffer,相机程序会反复创建销毁Byte数组,造成系统频繁垃圾回收,非常影响体验,这时可以用Buffer来进行处理。
首先,在调用相机的回调时,用如下代码:
for (int i = 0; i < 3; i++) { camera.addCallbackBuffer(new byte[((previewWidth * previewHeight) * bitsPerPixel) / 8 ]); } camera.setPreviewCallbackWithBuffer(this);
在Callback中加了3个Buffer,一般2个应该够用,保险起见加3个。
在OnPreviewFrame处理完毕后,再把Buffer加回去。
public void onPreviewFrame(byte[] data, Camera camera) { camera.addCallbackBuffer(data);
Android使用Buffer提高相机的处理能力
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。