Re: [PATCH v8 0/6] media: verisilicon: HEVC: fix 10bits handling

From: Ezequiel Garcia
Date: Sat Feb 18 2023 - 07:54:39 EST


Hi Benjamin,

We are almost there, just some minor comments.

On Fri, Feb 3 2023 at 10:16:16 AM +0100, Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx> wrote:
When decoding a 10bits bitstreams HEVC driver should only expose 10bits pixel formats.
To fulfill this requirement it is needed to call hantro_reset_raw_fmt()
and to only change driver internal state in case of success.

Fluster score for HEVC (140/147) doesn't change after this series.
Fluster score for VP9 is 146/303.


Given the series is changing the format negotation which affects
all codecs, can you test MPEG-2, VP8, H.264 and JPEG encoding?

Can you also run v4l2-compliance on all the /dev/videoX devices?

(Adding Robert Mader, who recently helped test the JPEG encoder).

Thanks,
Ezequiel

version 8:
- Correct patch 4.
- Add a patch for VP9.

version 7:
- Remove unused ctx variable in hantro_try_ctrl().
- Change HANTRO_DEFAULT_BIT_DEPTH value to 8.
- Simplify hantro_check_depth_match logic.
- Keep ctx->bit_depth as integer value because it is use
to compute buffers size for hevc.

version 6:
- Split the patches in multiple sub-patches.
- Rework hantro_reset_encoded_fmt() usage.

version 5:
- Add Nicolas's review tags
- Add Fixes tags

version 4:
- Split the change in 2 patches.
- Change hantro_check_depth_match() prototype to avoid using
ctx->bit_depth
- Return the result of hantro_reset_raw_fmt() to the caller.
- Only set ctx->bit_depth when hantro_reset_raw_fmt() returns is ok.

Benjamin Gaignard (6):
media: verisilicon: Do not set context src/dst formats in reset
functions
media: verisilicon: Do not use ctx fields as format storage when
resetting
media: verisilicon: Do not set ctx->bit_depth in hantro_try_ctrl()
media: verisilicon: Do not change context bit depth before validating
the format
media: verisilicon: HEVC: Only propose 10 bits compatible pixels
formats
media: verisilicon: VP9: Only propose 10 bits compatible pixels
formats

.../media/platform/verisilicon/hantro_drv.c | 49 +++++++---
.../platform/verisilicon/hantro_postproc.c | 2 +-
.../media/platform/verisilicon/hantro_v4l2.c | 90 +++++++++----------
.../media/platform/verisilicon/hantro_v4l2.h | 3 +-
.../media/platform/verisilicon/imx8m_vpu_hw.c | 2 +
5 files changed, 86 insertions(+), 60 deletions(-)

--
2.34.1