Message ID | 20220617115802.396442-4-benjamin.gaignard@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Enable 10bits bitstream for Hantro/G2 HEVC codec | expand |
Hi Benjamin, On Fri, Jun 17, 2022 at 01:57:58PM +0200, Benjamin Gaignard wrote: > The chroma offset depends of the bitstream depth. > Make sure that ctx->bit_depth is used to compute it. > > Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com> Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> Thanks, Ezequiel > --- > drivers/staging/media/hantro/hantro_g2_hevc_dec.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c > index 9eac133bda68..8407ad45b7b7 100644 > --- a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c > +++ b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c > @@ -12,7 +12,7 @@ > > static size_t hantro_hevc_chroma_offset(struct hantro_ctx *ctx) > { > - return ctx->dst_fmt.width * ctx->dst_fmt.height; > + return ctx->dst_fmt.width * ctx->dst_fmt.height * ctx->bit_depth / 8; > } > > static size_t hantro_hevc_motion_vectors_offset(struct hantro_ctx *ctx) > -- > 2.32.0 >
Hi Benjamin, On Fri 17 Jun 22, 13:57, Benjamin Gaignard wrote: > The chroma offset depends of the bitstream depth. > Make sure that ctx->bit_depth is used to compute it. > > Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com> > --- > drivers/staging/media/hantro/hantro_g2_hevc_dec.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c > index 9eac133bda68..8407ad45b7b7 100644 > --- a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c > +++ b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c > @@ -12,7 +12,7 @@ > > static size_t hantro_hevc_chroma_offset(struct hantro_ctx *ctx) > { > - return ctx->dst_fmt.width * ctx->dst_fmt.height; > + return ctx->dst_fmt.width * ctx->dst_fmt.height * ctx->bit_depth / 8; Is this a case for DIV_ROUND_UP or are you sure the rounded-down size is always sufficient? Cheers, Paul > } > > static size_t hantro_hevc_motion_vectors_offset(struct hantro_ctx *ctx) > -- > 2.32.0 >
Le 01/07/2022 à 10:47, Paul Kocialkowski a écrit : > Hi Benjamin, > > On Fri 17 Jun 22, 13:57, Benjamin Gaignard wrote: >> The chroma offset depends of the bitstream depth. >> Make sure that ctx->bit_depth is used to compute it. >> >> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com> >> --- >> drivers/staging/media/hantro/hantro_g2_hevc_dec.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c >> index 9eac133bda68..8407ad45b7b7 100644 >> --- a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c >> +++ b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c >> @@ -12,7 +12,7 @@ >> >> static size_t hantro_hevc_chroma_offset(struct hantro_ctx *ctx) >> { >> - return ctx->dst_fmt.width * ctx->dst_fmt.height; >> + return ctx->dst_fmt.width * ctx->dst_fmt.height * ctx->bit_depth / 8; > Is this a case for DIV_ROUND_UP or are you sure the rounded-down size is always > sufficient? No need of DIV_ROUND_UP here because it could affect the chroma offset when using decoder tiled format and add extra bytes between luma and chroma planes. Regards, Benjamin > Cheers, > > Paul > >> } >> >> static size_t hantro_hevc_motion_vectors_offset(struct hantro_ctx *ctx) >> -- >> 2.32.0 >>
diff --git a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c index 9eac133bda68..8407ad45b7b7 100644 --- a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c +++ b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c @@ -12,7 +12,7 @@ static size_t hantro_hevc_chroma_offset(struct hantro_ctx *ctx) { - return ctx->dst_fmt.width * ctx->dst_fmt.height; + return ctx->dst_fmt.width * ctx->dst_fmt.height * ctx->bit_depth / 8; } static size_t hantro_hevc_motion_vectors_offset(struct hantro_ctx *ctx)
The chroma offset depends of the bitstream depth. Make sure that ctx->bit_depth is used to compute it. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com> --- drivers/staging/media/hantro/hantro_g2_hevc_dec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)