Re: [PATCH] media: hantro: Support H264 profile control

From: Nicolas Dufresne
Date: Fri Nov 22 2019 - 10:09:28 EST


Le vendredi 22 novembre 2019 Ã 14:16 +0900, Hirokazu Honda a Ãcrit :
> The Hantro G1 decoder supports H.264 profiles from Baseline to High, with
> the exception of the Extended profile.
>
> Expose the V4L2_CID_MPEG_VIDEO_H264_PROFILE control, so that the
> applications can query the driver for the list of supported profiles.

Thanks for this patch. Do you think we could also add the LEVEL control
so the profile/level enumeration becomes complete ?

I'm thinking it would be nice if the v4l2 compliance test make sure
that codecs do implement these controls (both stateful and stateless),
it's essential for stack with software fallback, or multiple capable
codec hardware but with different capabilities.

>
> Signed-off-by: Hirokazu Honda <hiroh@xxxxxxxxxxxx>
> ---
> drivers/staging/media/hantro/hantro_drv.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/staging/media/hantro/hantro_drv.c b/drivers/staging/media/hantro/hantro_drv.c
> index 6d9d41170832..9387619235d8 100644
> --- a/drivers/staging/media/hantro/hantro_drv.c
> +++ b/drivers/staging/media/hantro/hantro_drv.c
> @@ -355,6 +355,16 @@ static const struct hantro_ctrl controls[] = {
> .def = V4L2_MPEG_VIDEO_H264_START_CODE_ANNEX_B,
> .max = V4L2_MPEG_VIDEO_H264_START_CODE_ANNEX_B,
> },
> + }, {
> + .codec = HANTRO_H264_DECODER,
> + .cfg = {
> + .id = V4L2_CID_MPEG_VIDEO_H264_PROFILE,
> + .min = V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE,
> + .max = V4L2_MPEG_VIDEO_H264_PROFILE_HIGH,
> + .menu_skip_mask =
> + BIT(V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED),
> + .def = V4L2_MPEG_VIDEO_H264_PROFILE_MAIN,
> + }
> }, {
> },
> };