[libcamera-devel] [PATCH v3 00/12] libcamera: Introduce SensorConfiguration
Jacopo Mondi
jacopo.mondi at ideasonboard.com
Fri Sep 15 15:06:38 CEST 2023
Hello,
the series introduces a slightly more formally defined camera sensor model
used to model a SensorConfiguration class, an instance of which is added to
the CameraConfiguration class. The newly introduced class allows to control the
sensor configuration without abusing the RAW stream configuration, reason
being some platforms do not allow to capture RAW frames as they get produced
by the sensor.
Introduce a model for the SensorConfiguration class and implement its handling
on the RaspberryPi pipeline handler as a proof of concept.
Tested with an imx219, configured to capture frames with different sensor
configurations, without using any RAW stream.
On top of the previously sent patches a series from Naush that simplifies the
RaspberryPi validatation and configuration code.
v2->v3:
- Address Kieran's comments on documentation
- Add Naush's patches on top
v1->v2:
- Fix spelling in 2/4 as suggested by Naush
- Add Naush's tags
Jacopo Mondi (5):
documentation: Introduce Camera Sensor Model
libcamera: camera: Introduce SensorConfiguration
libcamera: camera_sensor: Support SensorConfiguration
libcamera: rpi: Handle SensorConfiguration
libcamera: rpi: Fix wrong comment indentation
Naushir Patuck (7):
libcamera: rpi: Allow platformValidate() to adjust format strides
libcamera: rpi: Make isRaw/isYuv/isRgb static functions
libcamera: rpi: Cache rawStreams and outStreams
libcamera: rpi: Add some helpers to PipelineHandlerBase
libcamera: rpi: Simplify validate() and configure() for RAW streams
libcamera: rpi: Change default stream formats
libcamera: rpi: Simplify validate() and configure() for YUV/RGB
streams
Documentation/binning.png | Bin 0 -> 66004 bytes
Documentation/camera-sensor-model.png | Bin 0 -> 74270 bytes
Documentation/camera-sensor-model.rst | 198 ++++++++++++
Documentation/index.rst | 1 +
Documentation/meson.build | 1 +
Documentation/skipping.png | Bin 0 -> 67218 bytes
include/libcamera/camera.h | 43 +++
include/libcamera/internal/camera_sensor.h | 5 +
src/libcamera/camera.cpp | 185 ++++++++++++
src/libcamera/camera_sensor.cpp | 86 ++++++
.../pipeline/rpi/common/pipeline_base.cpp | 281 ++++++++++--------
.../pipeline/rpi/common/pipeline_base.h | 55 ++--
src/libcamera/pipeline/rpi/vc4/vc4.cpp | 86 +++---
13 files changed, 758 insertions(+), 183 deletions(-)
create mode 100644 Documentation/binning.png
create mode 100644 Documentation/camera-sensor-model.png
create mode 100644 Documentation/camera-sensor-model.rst
create mode 100644 Documentation/skipping.png
--
2.42.0
More information about the libcamera-devel
mailing list