Re: Gain controls in v4l2-ctrl framework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 09/24/2012 01:00 PM, Laurent Pinchart wrote:
Hi Hans,

On Monday 24 September 2012 12:55:53 Hans de Goede wrote:
On 09/23/2012 01:26 PM, Prabhakar Lad wrote:
Hi All,

The CCD/Sensors have the capability to adjust the R/ye, Gr/Cy, Gb/G,
B/Mg gain values.
Since these control can be re-usable I am planning to add the
following gain controls as part of the framework:

1: V4L2_CID_GAIN_RED
2: V4L2_CID_GAIN_GREEN_RED
3: V4L2_CID_GAIN_GREEN_BLUE

Not all sensors have separate V4L2_CID_GAIN_GREEN_RED /
V4L2_CID_GAIN_GREEN_BLUE, so we will need a separate control for sensors
which have one combined gain called simply V4L2_CID_GAIN_GREEN

Also do we really need separate V4L2_CID_GAIN_GREEN_RED /
V4L2_CID_GAIN_GREEN_BLUE controls? I know hardware has them, but in my
experience that is only done as it is simpler to make the hardware this way
(fully symmetric sensor grid), have you ever tried actually using different
gain settings for the 2 different green rows ?

I've and that always results in an ugly checker board pattern. So I think we
can and should only have a V4L2_CID_GAIN_GREEN, and for sensors with 2
green gains have that control both, forcing both to always have the same
setting, which is really what you want anyways ...

I've never had to set different gains for the two green components either,
although I haven't done much with them.

4: V4L2_CID_GAIN_BLUE
5: V4L2_CID_GAIN_OFFSET

GAIN_OFFSET that sounds a bit weird... GAIN_OFFSET sounds like it is
a number which gets added to the 3/4 gain settings before the gain gets
applied, but I assume that you just mean a number which gets added to the
value from the pixel, either before or after the gain is applied and I must
admit I cannot come up with a better name.

I believe (not sure) that some sensors have these per color ...

Some might at least.

The question is if it makes sense to actually control this per color though,
I don't think it does as it is meant to compensate for any fixed measuring
errors, which are the same for all 3/4 colors.

The offset is usually applied after the gain, so you might need different
offsets to compensate for a fixed error that is multiplied by different gains.

Hmm, so some have per color, some don't, so then we need:

V4L2_CID_GAIN_OFFSET
V4L2_CID_BLUE_OFFSET
V4L2_CID_RED_OFFSET
V4L2_CID_GREEN_OFFSET

Where GAIN_OFFSET is for the ones with just 1 offset register. Anyone have
a better name for that ?

Regards,

Hans
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux