如何为YUV图像添加热效应

时间:2015-04-15 09:01:23

标签: android android-camera picturecallback previewcallback

  谷歌搜索了很多。我找到了一种方法来改变单帧的预览。   如果我错了,请纠正我。

camera.setPreviewCallback(new PreviewCallback() 

callBack 让你get the frame of a Camera in byte。现在您可以保存或修改它。

首先,我只想为这些字节添加热效应或夜间效果。 如何将这些颜色(效果)添加到YUV Image 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.PictureCallbacksetOneShotPreviewCallback()

修改

我想我找到了一些有用的链接来帮助过滤位图图像。

setPixel Explanation

getPixel and setPixel not working Properly

0 个答案:

没有答案