[libcamera-devel] [PATCH v3 1/2] libcamera: Add a SensorSensitivity property
Jacopo Mondi
jacopo at jmondi.org
Fri May 20 11:01:52 CEST 2022
Hi Naush,
On Fri, May 20, 2022 at 09:52:18AM +0100, Naushir Patuck wrote:
> Hi Jacopo.
>
> On Fri, 20 May 2022 at 09:43, Jacopo Mondi <jacopo at jmondi.org> wrote:
>
> > Hi,
> >
> > On Thu, Apr 21, 2022 at 04:11:16PM +0100, Naushir Patuck via
> > libcamera-devel wrote:
> > > The SensorSensitivity property is a scaling factor that describes how
> > sensitive
> > > the selected sensor mode is compared to other readout modes of the same
> > sensor.
> > > For example, a binned mode might have twice the sensitivity of the full
> > > resolution mode, meaning you would get double the signal level for the
> > same
> > > exposure and gains.
> > >
> > > Signed-off-by: David Plowman <david.plowman at raspberrypi.com>
> > > Signed-off-by: Naushir Patuck <naush at raspberrypi.com>
> > > ---
> > > src/libcamera/property_ids.yaml | 12 ++++++++++++
> > > 1 file changed, 12 insertions(+)
> > >
> > > diff --git a/src/libcamera/property_ids.yaml
> > b/src/libcamera/property_ids.yaml
> > > index 12ecbce5eed4..11b7ebdc3105 100644
> > > --- a/src/libcamera/property_ids.yaml
> > > +++ b/src/libcamera/property_ids.yaml
> > > @@ -678,6 +678,18 @@ controls:
> > > \todo Turn this property into a "maximum control value" for the
> > > ScalerCrop control once "dynamic" controls have been
> > implemented.
> > >
> > > + - SensorSensitivity:
> > > + type: float
> > > + description: |
> > > + The relative sensitivity of the chosen sensor mode.
> > > +
> > > + Some sensors have readout modes with different sensitivities.
> > For example,
> > > + a binned camera mode might, with the same exposure and gains,
> > produce
> > > + twice the signal level of the full resolution readout. This
> > would be
> > > + signalled by the binned mode, when it is chosen, indicating a
> > value here
> > > + that is twice that of the full resolution mode. This value will
> > be valid
> > > + after the configure method has returned successfully.
> >
> > Sorry, I should have payed much more attention during the review.
> >
> > The sensitivity depends on the mode applied to the sensor, and as the
> > description suggests changes at Camera::configure() time.
> >
> > Libcamera properties are immutable and they should not depend on the
> > current configuration but they should stay constant during the whole
> > lieftime of the Camera.
> >
> > This should rather be a Control, even if I understand it cannot be
> > changed by the user. Do we maybe need to reconsider Properties'
> > immutability (Laurent in cc for opinions)
> >
>
> ScalerCropMaximum is an existing mutable property as well. Like
> SensorSensitivity, it is mutable in the sense it is mode specific, but
> does not change after a Configure() call.
You are right, I always assume that being it expressed in the native's
sensor array full pixel array coordinates it was kind of constant
being skpping/binning not relevant. But some modes might be realized
by cropping the full pixel array indeed.
>
> Regards,
> Naush
>
>
>
> >
> > Thanks
> > j
> >
> > > +
> > > #
> > ----------------------------------------------------------------------------
> > > # Draft properties section
> > >
> > > --
> > > 2.25.1
> > >
> >
More information about the libcamera-devel
mailing list