[PATCH v4 1/3] libcamera: Add gamma control id

Laurent Pinchart laurent.pinchart at ideasonboard.com
Tue Jun 11 22:16:27 CEST 2024


On Wed, Jun 05, 2024 at 11:53:49AM +0200, Stefan Klug wrote:
> A camera gamma of roughly 2.2 is necessary to produce correct output
> images on a standard monitor. Add a control for that.
> 
> Further information is available here:
> https://en.wikipedia.org/wiki/SRGB
> https://www.cambridgeincolour.com/tutorials/gamma-correction.htm
> 
> Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
> Reviewed-by: Daniel Scally <dan.scally at ideasonboard.com>
> Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> ---
>  src/libcamera/control_ids_core.yaml | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/src/libcamera/control_ids_core.yaml b/src/libcamera/control_ids_core.yaml
> index bf1f1a839f6a..303b0d32e020 100644
> --- a/src/libcamera/control_ids_core.yaml
> +++ b/src/libcamera/control_ids_core.yaml
> @@ -243,6 +243,13 @@ controls:
>          Specify a fixed contrast parameter. Normal contrast is given by the
>          value 1.0; larger values produce images with more contrast.
>  
> +  - Gamma:
> +      type: float
> +      description:  |
> +        Specify a fixed gamma value. Default must be 2.2 which closely mimics 
> +        sRGB gamma. Note that this is camera gamma, so it is applied as 
> +        1.0/gamma

Small typo here, missing period at the end of the line.

It would be nice to tell a bit more about the lower and upper bounds,
but that can come later. We should also document the camera pipeline at
some point, to show where gamma is applied.

> +
>    - Lux:
>        type: float
>        description: |

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list