码迷,mamicode.com
首页 > 移动开发 > 详细

Android使用Buffer提高相机的处理能力

时间:2015-01-05 16:44:28      阅读:4374      评论:0      收藏:0      [点我收藏+]

标签:

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提高相机的处理能力

标签:

原文地址:http://blog.csdn.net/dzg1977/article/details/42423131

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!