[libcamera-devel] [PATCH v2 0/9] libcamera: Introduce sensor database

Jacopo Mondi jacopo at jmondi.org
Fri Dec 18 17:47:45 CET 2020


Well, introducing the sensor database is only part of the series.

Compared to v1 I've moved the sensor database to report a list
of properties instead of custom data.

The end goal of the series is to report two android static metadata.
One exposed through the sensor database, the other collected from the
sensor database.

In order to get there:
- Introduce two new draft properties in the first 2 patches
- Expand the BayerPatter class to support mbus codes
- Allow creation of ControlList with initializer lists and build the
  sensor database on top of this new feature
- Register in the CameraSensor class properties retrieved from the
  sensor database and inspect the list of formats to deduce the color filter
  arrangement
- Register the two properties in the Android camera HAL

A note in patch [2/9] for a possible Doxygen bug.

Thanks
  j

Jacopo Mondi (9):
  libcamera: properties: SensorPhysicalSize draft property
  libcamera: properties: ColorFilterArrangement draft property
  libcamera: bayer_format: Add support for mbus codes
  libcamera: camera_sensor: Register ColorFilterArrangement
  android: camera_device: Report ColorFilterArrangement
  libcamera: controls: List-initialize ControlList
  libcamera: Introduce camera sensor database
  libcamera: camera_sensor: Register static properties
  android: camera_device: Report sensor physical size

 include/libcamera/controls.h                 |   2 +
 include/libcamera/internal/bayer_format.h    |   3 +
 include/libcamera/internal/camera_sensor.h   |   1 +
 include/libcamera/internal/meson.build       |   1 +
 include/libcamera/internal/sensor_database.h |  37 +++++++
 src/android/camera_device.cpp                |  21 +++-
 src/libcamera/bayer_format.cpp               |  71 ++++++++++++-
 src/libcamera/camera_sensor.cpp              |  57 +++++++++-
 src/libcamera/controls.cpp                   |  11 ++
 src/libcamera/meson.build                    |   1 +
 src/libcamera/property_ids.yaml              |  37 +++++++
 src/libcamera/sensor_database.cpp            | 106 +++++++++++++++++++
 12 files changed, 337 insertions(+), 11 deletions(-)
 create mode 100644 include/libcamera/internal/sensor_database.h
 create mode 100644 src/libcamera/sensor_database.cpp

--
2.29.2



More information about the libcamera-devel mailing list