谷歌搜索了很多之后。我找到了一种更改单帧预览的方法。如果我错了,请纠正我。
camera.setPreviewCallback(new PreviewCallback()
回调让你get the frame of a Camera in byte
。现在您可以保存或修改它。
首先,我只想为这些字节添加热效应或夜间效应。如何将这些颜色(效果)添加到 YUVImage or byte[]
数据中。
camera.setPreviewCallback(new PreviewCallback() {
@Override
public void onPreviewFrame(byte[] data, Camera camera) {
// TODO Auto-generated method stub
Camera.Parameters parameters = camera.getParameters();
Size size = parameters.getPreviewSize();
YuvImage image = new YuvImage(data, ImageFormat.NV21,
size.width, size.height, null);
/*Rect rectangle = new Rect();
rectangle.bottom = size.height;
rectangle.top = 0;
rectangle.left = 0;
rectangle.right = size.width;
ByteArrayOutputStream out2 = new ByteArrayOutputStream();
image.compressToJpeg(rectangle, 100, out2);
DataInputStream in = new DataInputStream();
in.write(out2.toByteArray());*/
}
}
});
如何对 YUVImage 或 byte[] 应用滤镜/效果。
为了拍照,我应该使用android.hardware.Camera.PictureCallback
或setOneShotPreviewCallback()
编辑
我想我找到了一些有助于过滤位图图像的有用链接。