RE: [PATCH 1/7] venus : Add default values for the control V4L2_CID_COLORIMETRY_HDR10_MASTERING_DISPLAY

From: Viswanath Boma (Temp)
Date: Mon Jul 18 2022 - 06:35:44 EST




-----Original Message-----
From: Nicolas Dufresne <nicolas@xxxxxxxxxxxx>
Sent: Tuesday, July 12, 2022 7:04 PM
To: Viswanath Boma (Temp) (QUIC) <quic_vboma@xxxxxxxxxxx>; video.upstream.external <video.upstream.external@xxxxxxxxxxxxxxxx>; stanimir.varbanov@xxxxxxxxxx; Andy Gross <agross@xxxxxxxxxx>; bjorn.andersson@xxxxxxxxxx; Mauro Carvalho Chehab <mchehab@xxxxxxxxxx>; linux-media@xxxxxxxxxxxxxxx; linux-arm-msm@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
Subject: Re: [PATCH 1/7] venus : Add default values for the control V4L2_CID_COLORIMETRY_HDR10_MASTERING_DISPLAY

WARNING: This email originated from outside of Qualcomm. Please be wary of any links or attachments, and do not enable macros.

Le mardi 12 juillet 2022 à 17:53 +0530, Viswanath Boma a écrit :
> From: Stanimir Varbanov <stanimir.varbanov@xxxxxxxxxx>
>
> V4l2 encoder compliance expecting default values of colormetry for the control.

nit: colormetry -> colorimetry
[vboma]
Will ensure with next patch set .
>
> Change-Id: I1db0d4940b54e033d646ce39d60dc488afba8d58
> Signed-off-by: Viswanath Boma <quic_vboma@xxxxxxxxxxx>
> ---
> drivers/media/platform/qcom/venus/venc_ctrls.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/qcom/venus/venc_ctrls.c
> b/drivers/media/platform/qcom/venus/venc_ctrls.c
> index ea5805e71c143..37ba7d97f99b2 100644
> --- a/drivers/media/platform/qcom/venus/venc_ctrls.c
> +++ b/drivers/media/platform/qcom/venus/venc_ctrls.c
> @@ -352,6 +352,8 @@ static const struct v4l2_ctrl_ops venc_ctrl_ops =
> { int venc_ctrl_init(struct venus_inst *inst) {
> int ret;
> + struct v4l2_ctrl_hdr10_mastering_display p_hdr10_mastering = { {34000, 13250, 7500 },
> + { 16000, 34500, 3000 }, 15635, 16450, 10000000, 500 };

What is the origin of these values ? Should this be done in the control framework instead ?
[vboma]
Control frame work handling the min/max value that required with the default control object.
As per @Stanimir Varbanov (Consultant) inputs ,added these values for the default .
HI , @Stanimir Varbanov (Consultant) , could you please share more info as required .

>
> ret = v4l2_ctrl_handler_init(&inst->ctrl_handler, 58);
> if (ret)
> @@ -580,7 +582,7 @@ int venc_ctrl_init(struct venus_inst *inst)
>
> v4l2_ctrl_new_std_compound(&inst->ctrl_handler, &venc_ctrl_ops,
> V4L2_CID_COLORIMETRY_HDR10_MASTERING_DISPLAY,
> - v4l2_ctrl_ptr_create(NULL));
> + v4l2_ctrl_ptr_create((void
> + *)&p_hdr10_mastering));
>
> v4l2_ctrl_new_std(&inst->ctrl_handler, &venc_ctrl_ops,
> V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD, 0,