summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBarnabás Pőcze <barnabas.pocze@ideasonboard.com>2025-04-02 12:53:34 +0200
committerBarnabás Pőcze <barnabas.pocze@ideasonboard.com>2025-05-22 12:34:54 +0200
commitffcecda4d5b9b5d17e3a99e07033321186f25a63 (patch)
tree17552abc9fcc06d00e78ee344a9f33c76daf90f5
parentefdbe3969841e342c30dfdced38b6ad9ad55dccf (diff)
libcamera: pipeline: uvcvideo: Report new AeEnable control as available
The `AeEnable` control is handled by the `Camera` class directly, but it still has to be added because `ControlInfoMap`s are not easily modifiable. See 338ba00e7abfe8 ("ipa: rkisp1: agc: Report new AeEnable control as available") for more details and a similar change in rkisp1. Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r--src/libcamera/pipeline/uvcvideo/uvcvideo.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
index 586e932d..58aa0eb4 100644
--- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
+++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
@@ -596,6 +596,11 @@ int UVCCameraData::init(MediaDevice *media)
addControl(cid, info, &ctrls);
}
+ if (autoExposureMode_ && manualExposureMode_) {
+ /* \todo Move this to the Camera class */
+ ctrls[&controls::AeEnable] = ControlInfo(false, true, true);
+ }
+
controlInfo_ = ControlInfoMap(std::move(ctrls), controls::controls);
/*