Index: opencv/android/android-opencv/src/com/opencv/camera/NativePreviewer.java =================================================================== --- opencv/android/android-opencv/src/com/opencv/camera/NativePreviewer.java (revision 5173) +++ opencv/android/android-opencv/src/com/opencv/camera/NativePreviewer.java (working copy) @@ -156,34 +156,37 @@ // this is available in 8+ // parameters.setExposureCompensation(0); - if (parameters.getSupportedWhiteBalance().contains(whitebalance_mode)) { - parameters.setWhiteBalance(whitebalance_mode); - } -// if (parameters.getSupportedAntibanding().contains( -// Camera.Parameters.ANTIBANDING_OFF)) { -// parameters.setAntibanding(Camera.Parameters.ANTIBANDING_OFF); -// } + if (parameters.getSupportedWhiteBalance() != null + && parameters.getSupportedWhiteBalance().contains(whitebalance_mode)) { + parameters.setWhiteBalance(whitebalance_mode); + } + //if (parameters.getSupportedAntibanding() != null + // && parameters.getSupportedAntibanding().contains(Camera.Parameters.ANTIBANDING_OFF)) { + // parameters.setAntibanding(Camera.Parameters.ANTIBANDING_OFF); + //} + List fmodes = mCamera.getParameters().getSupportedFocusModes(); // for(String x: fmodes){ // } - if (parameters.get("meter-mode") != null) parameters.set("meter-mode", "meter-average"); - int idx = fmodes.indexOf(Camera.Parameters.FOCUS_MODE_INFINITY); - if (idx != -1) { - parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_INFINITY); - } else if (fmodes.indexOf(Camera.Parameters.FOCUS_MODE_FIXED) != -1) { - parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_FIXED); - } + + if(fmodes != null){ + int idx = fmodes.indexOf(Camera.Parameters.FOCUS_MODE_INFINITY); + if (idx != -1) { + parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_INFINITY); + } else if (fmodes.indexOf(Camera.Parameters.FOCUS_MODE_FIXED) != -1) { + parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_FIXED); + } - if (fmodes.indexOf(Camera.Parameters.FOCUS_MODE_AUTO) != -1) { - hasAutoFocus = true; + if (fmodes.indexOf(Camera.Parameters.FOCUS_MODE_AUTO) != -1) { + hasAutoFocus = true; + } } - List scenemodes = mCamera.getParameters() .getSupportedSceneModes(); if (scenemodes != null)