Error and Stream Handling

Error management

HIDL interface methods that interact with the camera must generate the corresponding camera-specific status.

If ICameraDeviceCallbacks::notify() is called with ERROR_DEVICE, only the ICameraDeviceSession::close() method can be called successfully. All other methods will return INTERNAL_ERROR.

Transient errors in image capture must be reported through ICameraDeviceCallbacks::notify() with the appropriate error code. In each transient failure case, the HAL must still call ICameraDeviceCallbacks::processCaptureResult() with an appropriate capture result.

Stream management

HAL clients must configure camera streams by calling ICameraDeviceSession::configurestreams().