最終更新:2018-02-19 (月) 13:13:41 (2258d)  

Camera.setPreviewCallback
Top / Camera.setPreviewCallback

https://developer.android.com/reference/android/hardware/Camera.html#setPreviewCallback(android.hardware.Camera.PreviewCallback)

Android 2.1以前

surfaceCreated(){
    camera.setPreviewCallback(cb);
    camera.startPreview()
}
onPreviewFrame(byte[] data, Camera camera){
    camera.setPreviewCallBack(null);
    [画像処理]
    camera.setPreviewCallBack(cb);
}

Android 2.2以降

surfaceCreated(){
    PixelFormat pixel_info = new PixelFormat();
    PixelFormat.getPixelFormatInfo(camera.getParameters()/getPreviewFormat(),pixel_info);
    byte[] buffer = new byte[camera.getParameters().getPreviewSize().width * camera.getParameters().getPreviewSize().height * pixel_info.bitsPerPixel /8];
    camera.addCallbackBuffer(buffer);
    camera.setPreviewCallbackWithBuffer(cb);
    camera.startPreview()
}
onPreviewFrame(byte[] data, Camera camera){
    [画像処理]
    camera.addCallbackBuffer(data);
}

動作確認

参考

関連