libcamera/src
Niklas Söderlund 3d4b7b0059 libcamera: delayed_controls: Add helper for controls that apply with a delay
Some sensor controls take effect with a delay as the sensor needs time
to adjust, for example exposure. Add an optional helper DelayedControls
to help pipelines deal with such controls.

The idea is to provide a queue of controls towards the V4L2 device and
apply individual controls with the specified delay with the aim to get
predictable and retrievable control values for any given frame. To do
this the queue of controls needs to be at least as deep as the control
with the largest delay.

The DelayedControls needs to be informed of every start of exposure.
This can be emulated but the helper is designed to be used with this
event being provide by the kernel through V4L2 events.

This helper is based on StaggeredCtrl from the Raspberry Pi pipeline
handler but expands on its API. This helpers aims to replace the
Raspberry Pi implementations and mimics it behavior perfectly.

Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
2021-01-29 15:35:28 +01:00
..
android android: camera_device: Set AE precapture trigger according to request 2021-01-29 19:30:19 +09:00
cam cam: Update command line description for stream role option 2020-11-29 20:35:36 +00:00
gstreamer gstreamer: libcamerasrc: Delete configuration before stopping camera manager 2020-11-07 20:24:31 +02:00
ipa ipa: raspberrypi: Remove legacy Rasberry Pi logging 2021-01-26 10:46:12 +02:00
libcamera libcamera: delayed_controls: Add helper for controls that apply with a delay 2021-01-29 15:35:28 +01:00
qcam qcam: Make log less verbose by default 2020-12-01 15:16:17 +02:00
v4l2 src: meson: Simplify v4l2 enablement 2020-12-30 15:31:53 +00:00
meson.build src: meson: Simplify v4l2 enablement 2020-12-30 15:31:53 +00:00