camera2: refactor LEGACY mode error handling.
Bug: 17431462
Bug: 17407537
- Add Surface format/size validation during configure.
- Update exception error codes used in binder calls.
- Report dropped requests, frames, captures, and device
errors in binder callback properly.
- Fixes CameraDeviceTest errors for incorrect metering
rectangle weight in template tests.
- Fixes CameraDeviceTest errors for missing
noiseReductionMode field in template tests.
- Implement flush call.
Change-Id: I0da803bccf2bfb9b4c0cf61208e160a86c577497
diff --git a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
index 1dc5533..2578093 100644
--- a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
+++ b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
@@ -51,7 +51,6 @@
* HAL2.1+ implementation of CameraDevice. Use CameraManager#open to instantiate
*/
public class CameraDeviceImpl extends CameraDevice {
-
private final String TAG;
private final boolean DEBUG;
@@ -1136,7 +1135,6 @@
}
public class CameraDeviceCallbacks extends ICameraDeviceCallbacks.Stub {
-
//
// Constants below need to be kept up-to-date with
// frameworks/av/include/camera/camera2/ICameraDeviceCallbacks.h
@@ -1149,34 +1147,29 @@
/**
* Camera has been disconnected
*/
- static final int ERROR_CAMERA_DISCONNECTED = 0;
-
+ public static final int ERROR_CAMERA_DISCONNECTED = 0;
/**
* Camera has encountered a device-level error
* Matches CameraDevice.StateCallback#ERROR_CAMERA_DEVICE
*/
- static final int ERROR_CAMERA_DEVICE = 1;
-
+ public static final int ERROR_CAMERA_DEVICE = 1;
/**
* Camera has encountered a service-level error
* Matches CameraDevice.StateCallback#ERROR_CAMERA_SERVICE
*/
- static final int ERROR_CAMERA_SERVICE = 2;
-
+ public static final int ERROR_CAMERA_SERVICE = 2;
/**
* Camera has encountered an error processing a single request.
*/
- static final int ERROR_CAMERA_REQUEST = 3;
-
+ public static final int ERROR_CAMERA_REQUEST = 3;
/**
* Camera has encountered an error producing metadata for a single capture
*/
- static final int ERROR_CAMERA_RESULT = 4;
-
+ public static final int ERROR_CAMERA_RESULT = 4;
/**
* Camera has encountered an error producing an image buffer for a single capture
*/
- static final int ERROR_CAMERA_BUFFER = 5;
+ public static final int ERROR_CAMERA_BUFFER = 5;
@Override
public IBinder asBinder() {
@@ -1187,9 +1180,9 @@
public void onDeviceError(final int errorCode, CaptureResultExtras resultExtras) {
if (DEBUG) {
Log.d(TAG, String.format(
- "Device error received, code %d, frame number %d, request ID %d, subseq ID %d",
- errorCode, resultExtras.getFrameNumber(), resultExtras.getRequestId(),
- resultExtras.getSubsequenceId()));
+ "Device error received, code %d, frame number %d, request ID %d, subseq ID %d",
+ errorCode, resultExtras.getFrameNumber(), resultExtras.getRequestId(),
+ resultExtras.getSubsequenceId()));
}
synchronized(mInterfaceLock) {