RE: [PATCH] media: v4l2-ctrl: Add main 10 still picture profile for hevc

From: Dikshita Agarwal (QUIC)
Date: Fri Aug 26 2022 - 02:34:19 EST


Hi Hans,

-----Original Message-----
From: Hans Verkuil <hverkuil-cisco@xxxxxxxxx>
Sent: Wednesday, August 24, 2022 5:36 PM
To: Dikshita Agarwal (QUIC) <quic_dikshita@xxxxxxxxxxx>; linux-media@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; ezequiel@xxxxxxxxxxxxx
Cc: stanimir.varbanov@xxxxxxxxxx; linux-arm-msm@xxxxxxxxxxxxxxx; Vikash Garodia (QUIC) <quic_vgarodia@xxxxxxxxxxx>; Maheshwar Ajja (QUIC) <quic_majja@xxxxxxxxxxx>; quic_jdas <quic_jdas@xxxxxxxxxxx>
Subject: Re: [PATCH] media: v4l2-ctrl: Add main 10 still picture profile for hevc

Hi Dikshita,

On 23/08/2022 09:26, Dikshita Agarwal wrote:
> Add main 10 still picture profile for HEVC encoder.

Hmm, is this the same as the "Main 4:4:4 Still Picture" profile mentioned here:

https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding#Version_2_profiles

If not, where it is defined? I would also prefer to have this patch merged together with a driver that uses it.

It is different and definition can be found in Latest HEVC spec, Annex A, A.3.3 Main 10 and Main 10 Still Picture profiles.
https://www.itu.int/rec/dologin_pub.asp?lang=s&id=T-REC-H.265-201906-S!!PDF-E&type=items

Thanks,
Dikshita

Regards,

Hans

>
> Signed-off-by: Dikshita Agarwal <quic_dikshita@xxxxxxxxxxx>
> ---
> Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst | 2 ++
> include/uapi/linux/v4l2-controls.h | 1 +
> 2 files changed, 3 insertions(+)
>
> diff --git a/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst
> b/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst
> index 2a165ae..5b2da84 100644
> --- a/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst
> +++ b/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst
> @@ -2424,6 +2424,8 @@ enum v4l2_mpeg_video_hevc_profile -
> - Main still picture profile.
> * - ``V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10``
> - Main 10 profile.
> + * - ``V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10_STILL_PICTURE``
> + - Main 10 still picture profile.
>
> .. raw:: latex
>
> diff --git a/include/uapi/linux/v4l2-controls.h
> b/include/uapi/linux/v4l2-controls.h
> index 5f46bf4..1159337 100644
> --- a/include/uapi/linux/v4l2-controls.h
> +++ b/include/uapi/linux/v4l2-controls.h
> @@ -743,6 +743,7 @@ enum v4l2_mpeg_video_hevc_profile {
> V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN = 0,
> V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE = 1,
> V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10 = 2,
> + V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10_STILL_PICTURE = 3,
> };
> #define V4L2_CID_MPEG_VIDEO_HEVC_LEVEL (V4L2_CID_CODEC_BASE + 616)
> enum v4l2_mpeg_video_hevc_level {