On Mon, Apr 17, 2017 at 07:20:36PM +0200, Alexandra Hájková wrote:
> ---
> libavcodec/arm/hevc_idct.S | 50
> ++++++++++++++++++++++++++++++++-------
> libavcodec/arm/hevcdsp_init_arm.c | 21 +++++++++++-----
> 2 files changed, 56 insertions(+), 15 deletions(-)
hevc: arm: Add IDCT DC for bitdepth 10
> --- a/libavcodec/arm/hevcdsp_init_arm.c
> +++ b/libavcodec/arm/hevcdsp_init_arm.c
> @@ -25,13 +25,18 @@
>
> -void ff_hevc_idct_4x4_8_neon(int16_t *coeffs, int col_limit);
> void ff_hevc_idct_4x4_dc_8_neon(int16_t *coeffs);
> -void ff_hevc_idct_8x8_8_neon(int16_t *coeffs, int col_limit);
> void ff_hevc_idct_8x8_dc_8_neon(int16_t *coeffs);
> -void ff_hevc_idct_16x16_8_neon(int16_t *coeffs, int col_limit);
> void ff_hevc_idct_16x16_dc_8_neon(int16_t *coeffs);
> void ff_hevc_idct_32x32_dc_8_neon(int16_t *coeffs);
> +void ff_hevc_idct_4x4_dc_10_neon(int16_t *coeffs);
> +void ff_hevc_idct_8x8_dc_10_neon(int16_t *coeffs);
> +void ff_hevc_idct_16x16_dc_10_neon(int16_t *coeffs);
> +void ff_hevc_idct_32x32_dc_10_neon(int16_t *coeffs);
> +
> +void ff_hevc_idct_4x4_8_neon(int16_t *coeffs, int col_limit);
> +void ff_hevc_idct_8x8_8_neon(int16_t *coeffs, int col_limit);
> +void ff_hevc_idct_16x16_8_neon(int16_t *coeffs, int col_limit);
> void ff_hevc_idct_4x4_10_neon(int16_t *coeffs, int col_limit);
> void ff_hevc_idct_8x8_10_neon(int16_t *coeffs, int col_limit);
> void ff_hevc_idct_16x16_10_neon(int16_t *coeffs, int col_limit);
> @@ -51,9 +56,13 @@ av_cold void ff_hevc_dsp_init_arm(HEVCDSPContext *c, int
> bit_depth)
> c->idct_dc[3] = ff_hevc_idct_32x32_dc_8_neon;
> }
> if (bit_depth == 10) {
> - c->idct[0] = ff_hevc_idct_4x4_10_neon;
> - c->idct[1] = ff_hevc_idct_8x8_10_neon;
> - c->idct[2] = ff_hevc_idct_16x16_10_neon;
> + c->idct[0] = ff_hevc_idct_4x4_10_neon;
> + c->idct_dc[0] = ff_hevc_idct_4x4_dc_10_neon;
> + c->idct[1] = ff_hevc_idct_8x8_10_neon;
> + c->idct_dc[1] = ff_hevc_idct_8x8_dc_10_neon;
> + c->idct[2] = ff_hevc_idct_16x16_10_neon;
> + c->idct_dc[2] = ff_hevc_idct_16x16_dc_10_neon;
> + c->idct_dc[3] = ff_hevc_idct_32x32_dc_10_neon;
I'd group idct and idct_dc separately, like you do for the prototypes.
That would also reduce the diff.
Diego
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel