[PATCH] libcamera: camera_sensor_properties: ov5675: Set correct delays

Hans de Goede hdegoede at redhat.com
Fri Dec 20 12:49:03 CET 2024


Hi,

On 19-Dec-24 10:33 AM, Naushir Patuck wrote:
> Hi Kieran,
> 
> On Thu, 19 Dec 2024 at 01:00, Kieran Bingham
> <kieran.bingham at ideasonboard.com> wrote:
>>
>> The OV5675 uses different delays for gain and exposure than are configured
>> in the default sensorDelays utilised by the CameraSensorLegacy.
>>
>> Empirical testing using a Lenovo X13s shows that the exposure delay is
>> only a single frame, and the current setting of 2 frame delay produces
>> exceedingly frequent oscillations in the image exposure.
>>
>> Update the OV5675 sensor delays table accordingly.
>>
>> Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
>> ---
>>  src/libcamera/sensor/camera_sensor_properties.cpp | 7 ++++++-
>>  1 file changed, 6 insertions(+), 1 deletion(-)
>>
>> diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp
>> index bd1fc86977ce..813878386a35 100644
>> --- a/src/libcamera/sensor/camera_sensor_properties.cpp
>> +++ b/src/libcamera/sensor/camera_sensor_properties.cpp
>> @@ -360,7 +360,12 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
>>                                 { controls::draft::TestPatternModeOff, 0 },
>>                                 { controls::draft::TestPatternModeColorBars, 1 },
>>                         },
>> -                       .sensorDelays = { },
>> +                       .sensorDelays = {
>> +                               .exposureDelay = 1,
> 
> From my experience, an exposure delay of 1 is very unlikely with a
> rolling shutter sensor because of the integration overlap between
> successive frames.  Of course, I could be wrong since I've not
> encounter this sensor before.  Perhaps it's worth looking at other
> delays to see if the general interaction between vblank/exposure/gain
> is causing the oscillations?

I wonder if this is caused by the simple pipeline handler applying
new controls coming from the software ISP IPA immediately rather
then waiting for the start of the next frame ?

This issue is fixed by:

https://patchwork.libcamera.org/patch/22397/

Kieran can you test if that maybe fixes the oscillation
without needing to change the delays ?

p.s. regardless of it helping, that patch is ready for merging.

Regards,

Hans




More information about the libcamera-devel mailing list