diff options
author | Anton Khirnov <anton@khirnov.net> | 2015-07-24 08:24:21 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2015-12-05 21:08:04 +0100 |
commit | 1f821750f0b8d0c87cbf88a28ad699b92db5ec88 (patch) | |
tree | 78ec782cd9a422df28fa05c2c0a72650f1ec89c1 /libavcodec/hevcdsp.h | |
parent | 6788baebb3680d447eabdadf3f5743c8470a4611 (diff) | |
download | ffmpeg-1f821750f0b8d0c87cbf88a28ad699b92db5ec88.tar.gz |
hevcdsp: split the qpel functions by width instead of by the subpixel fraction
This should allow for more efficient SIMD.
Keep the C versions as they are now, to allow the compiler to inline the
interpolation coefficients.
Diffstat (limited to 'libavcodec/hevcdsp.h')
-rw-r--r-- | libavcodec/hevcdsp.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libavcodec/hevcdsp.h b/libavcodec/hevcdsp.h index 72784645e9..c250385341 100644 --- a/libavcodec/hevcdsp.h +++ b/libavcodec/hevcdsp.h @@ -58,9 +58,9 @@ typedef struct HEVCDSPContext { int height, int c_idx, uint8_t vert_edge, uint8_t horiz_edge, uint8_t diag_edge); - void (*put_hevc_qpel[4][4])(int16_t *dst, ptrdiff_t dststride, uint8_t *src, - ptrdiff_t srcstride, int width, int height, - int16_t *mcbuffer); + void (*put_hevc_qpel[2][2][8])(int16_t *dst, ptrdiff_t dststride, uint8_t *src, + ptrdiff_t srcstride, int height, + int mx, int my, int16_t *mcbuffer); void (*put_hevc_epel[2][2])(int16_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int width, int height, int mx, int my, int16_t *mcbuffer); |