[PATCH v1] libcamera: pipeline: uvcvideo: Report new AeEnable control as available

Barnabás Pőcze barnabas.pocze at ideasonboard.com
Wed Apr 2 17:12:03 CEST 2025


2025. 04. 02. 16:40 keltezéssel, Laurent Pinchart írta:
> On Wed, Apr 02, 2025 at 01:49:28PM +0200, Barnabás Pőcze wrote:
>> 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 at ideasonboard.com>
>> ---
>>   src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 3 +++
>>   1 file changed, 3 insertions(+)
>>
>> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
>> index 5adc89fdb..ab180e820 100644
>> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
>> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
>> @@ -583,6 +583,9 @@ int UVCCameraData::init(MediaDevice *media)
>>   	/* Initialise the supported controls. */
>>   	ControlInfoMap::Map ctrls;
>>   
>> +	/* \todo Move this to the Camera class */
>> +	ctrls[&controls::AeEnable] = ControlInfo(false, true, true);
> 
> Shouldn't this be done only for camera that support the
> V4L2_CID_EXPOSURE_AUTO control ?

Ahh, yes, indeed, you're right.


> 
>> +
>>   	for (const auto &ctrl : video_->controls()) {
>>   		uint32_t cid = ctrl.first->id();
>>   		const ControlInfo &info = ctrl.second;
> 



More information about the libcamera-devel mailing list