[v4,0/3] Add Face Detection Controls
mbox series

Message ID 20240903103810.3288042-1-chenghaoyang@chromium.org
Headers show
Series
  • Add Face Detection Controls
Related show

Message

Harvey Yang Sept. 3, 2024, 10:35 a.m. UTC
Hi folks,

This series of patches adds face detection controls in the control ids,
the corresponding usages, and a c'tor of libcamera::Rectangle to
construct it easiler with face detection results.

It passed gitlab pipeline checks:
https://gitlab.freedesktop.org/chenghaoyang/libcamera/-/pipelines/1261374

This is one of the series cherry-picked from cros mtkisp7 branch.

The corresponding CLs in cros are:
https://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/4741266
https://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/4741267
https://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/5669229
https://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/5669232

The usages in pipeline handler mtkisp7 will be added later.

The checkstyle's suggestion on the second patch is ignored, as it
changes the style of previous code.

v4:
- Added support of FaceDetectModeFull and FaceDetectFaceIds
- Fixed descriptions of control sizes.

v3: Applied fixes according to Jacopo's comments.
- Moved the new face detection controls from core to draft.
- Amended new controls' descriptions.

v2:
- Squashed the fourth CL into the last patch, as it's a fix.
- Fixed CLs based on checkstyle's suggestions.

Harvey Yang (1):
  libcamera: android: Add face detection control support

Yudhistira Erlandinata (2):
  libcamera: Add rectangle two-point constructor
  libcamera: Add face detection controls

 include/libcamera/controls.h         |  6 ++
 include/libcamera/geometry.h         |  2 +
 src/android/camera_capabilities.cpp  | 45 +++++++++++++--
 src/android/camera_device.cpp        | 75 +++++++++++++++++++++++-
 src/libcamera/control_ids_draft.yaml | 85 ++++++++++++++++++++++++++++
 src/libcamera/controls.cpp           |  6 ++
 src/libcamera/geometry.cpp           | 14 +++++
 7 files changed, 227 insertions(+), 6 deletions(-)