[libcamera-devel] [PATCH v2 04/11] pipeline: rkisp1: Add basic AF controls to the supported controls list
Jacopo Mondi
jacopo at jmondi.org
Thu Jul 14 20:30:03 CEST 2022
Hi Daniel,
On Wed, Jul 13, 2022 at 10:43:10AM +0200, Daniel Semkowicz via libcamera-devel wrote:
> This will expose the AF controls and will allow controlling them using
> the top level API.
>
> Signed-off-by: Daniel Semkowicz <dse at thaumatec.com>
> ---
> src/libcamera/pipeline/rkisp1/rkisp1.cpp | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> index 7ee80192..99d66b1d 100644
> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> @@ -958,10 +958,12 @@ int PipelineHandlerRkISP1::createCamera(MediaEntity *sensor)
> std::unique_ptr<RkISP1CameraData> data =
> std::make_unique<RkISP1CameraData>(this, &mainPath_, &selfPath_);
>
> - ControlInfoMap::Map ctrls;
> - ctrls.emplace(std::piecewise_construct,
> - std::forward_as_tuple(&controls::AeEnable),
> - std::forward_as_tuple(false, true));
> + ControlInfoMap::Map ctrls({
> + { &controls::AeEnable, ControlInfo(false, true) },
> + { &controls::AfMode, ControlInfo(controls::AfModeValues) },
> + { &controls::AfTrigger, ControlInfo(controls::AfTriggerValues) },
> + { &controls::AfPause, ControlInfo(controls::AfPauseValues) }
Does the algorithm support continuous auto-focus ? Has it been tested ?
I've been told by those who tried implement it (RPi) that without PDAF
statistics from the sensor it's rather hard to get it right.
If the algorithm does not support it I would drop AfPause as it's
only useful for CAF (and the associated functions should probably be
removed along the class hierarchy as well maybe)
> + });
>
> data->controlInfo_ = ControlInfoMap(std::move(ctrls),
> controls::controls);
> --
> 2.34.1
>
More information about the libcamera-devel
mailing list