platform_hardware_interfaces/camera/provider
Avichal Rakesh e1857f8dbd Migrate reference external HAL implementation to AIDL
Android T migrated the HAL interface to AIDL, but the reference HAL
was never updated to use AIDL. This CL migrates the reference
HAL implementation for external cameras to use AIDL as well. The
external HAL uses V4L2 standard to expose USB cameras to the
cameraserver.

The reference HAL implementation for internal camera was dropped
because it is not possible to write a generic HAL that works with some
large percentage of internal cameras.

Bug: 219974678
Test: Existing CTS tests pass with external camera connected.
Change-Id: I35f3dc32c16670eca7735a4ac00fed3daf36aa65
2022-12-01 05:09:18 -08:00
..
2.4 Fix the problem that the data field of Entry in the verifyLogicalOrUltraHighResCameraMetadata function is empty 2022-09-28 20:35:55 +00:00
2.5 [LSC] Add LOCAL_LICENSE_KINDS to hardware/interfaces 2021-02-23 14:26:20 -08:00
2.6 [LSC] Add LOCAL_LICENSE_KINDS to hardware/interfaces 2021-02-23 14:26:20 -08:00
2.7 Avoid multiple map lookups 2022-01-21 07:00:25 -08:00
aidl Merge "Remove placeholder API from camera.provider" 2022-11-21 21:58:17 +00:00
default Migrate reference external HAL implementation to AIDL 2022-12-01 05:09:18 -08:00
README.md Add pointer to default AIDL Camera HAL Implementation in README.md 2022-11-13 04:29:49 +00:00

Camera Provider HAL


Overview:

The camera.provider HAL is used by the Android camera service to discover, query, and open individual camera devices.

It also allows for direct control of the flash unit of camera devices that have one, for turning on/off torch mode.

More complete information about the Android camera HAL and subsystem can be found at source.android.com.

Version history:

types.hal:

@0.0:

Common enum and struct definitions for all camera HAL interfaces. Does not define any interfaces of its own.

ICameraProvider.hal:

@2.4:

First HIDL version of the camera provider HAL, closely matching the feature set and operation of the pre-HIDL camera HAL module v2.4.

ICameraProviderCallback.hal:

@2.4:

First HIDL version of the camara provider HAL callback interface, closely matching the feature set and operation of the pre-HIDL camera HAL module callbacks v2.4.

AIDL Camera HAL Default Implementation

The default implementation can be found at $ANDROID_BUILD_TOP/hardware/google/camera/common/hal/aidl_service and $ANDROID_BUILD_TOP/hardware/google/camera/devices/EmulatedCamera