【发布时间】:2017-03-29 11:16:08
【问题描述】:
我想做一些图像处理工作,我想从我的相机获取实时图像数据(在预览状态期间),而不是在拍照之后。
我看过这个post,但不知道如何使用它。
设置后,
SurfaceHolder.Callback surfaceCallback=new SurfaceHolder.Callback()
{
public void surfaceCreated(SurfaceHolder holder) {
camera.setPreviewCallback(previewCallback);
}
}
还有这个
private Camera.PreviewCallback previewCallback= new Camera.PreviewCallback()
{
@Override
public void onPreviewFrame(byte[] data,Camera cam)
{
Camera.Size previewSize = cam.getParameters().getPreviewSize();
YuvImage yuvImage = new YuvImage(data, ImageFormat.NV21,previewSize.width,previewSize.height, null);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
yuvImage.compressToJpeg(new Rect(0,0,previewSize.width,previewSize.height),80,baos);
byte[] jdata = baos.toByteArray();
Bitmap bitmap = BitmapFactory.decodeByteArray(jdata,0,jdata.length);
}
};
如何实时获取我的图像数据?谁能给我一个简短的示例代码?
谢谢
【问题讨论】:
-
这已经是实时的了。不是吗?
-
@greenapps 啊,我发现我需要做的就是将我的代码放入其中。
标签: android android-camera surfaceview