Mercurial > libavcodec.hg
diff dsputil.h @ 2415:db2cf6005d19 libavcodec
H.264 weighted prediction.
Bidirectional weighting has not been tested for bitwise accuracy, but looks correct.
author | lorenm |
---|---|
date | Fri, 07 Jan 2005 05:56:07 +0000 |
parents | 55a72627a2c5 |
children | 72e6ffa1f3a5 |
line wrap: on
line diff
--- a/dsputil.h Thu Jan 06 01:02:36 2005 +0000 +++ b/dsputil.h Fri Jan 07 05:56:07 2005 +0000 @@ -105,6 +105,8 @@ typedef void (*tpel_mc_func)(uint8_t *block/*align width (8 or 16)*/, const uint8_t *pixels/*align 1*/, int line_size, int w, int h); typedef void (*qpel_mc_func)(uint8_t *dst/*align width (8 or 16)*/, uint8_t *src/*align 1*/, int stride); typedef void (*h264_chroma_mc_func)(uint8_t *dst/*align 8*/, uint8_t *src/*align 1*/, int srcStride, int h, int x, int y); +typedef void (*h264_weight_func)(uint8_t *block, int stride, int log2_denom, int weight, int offset); +typedef void (*h264_biweight_func)(uint8_t *dst, uint8_t *src, int stride, int log2_denom, int weightd, int weights, int offsetd, int offsets); #define DEF_OLD_QPEL(name)\ void ff_put_ ## name (uint8_t *dst/*align width (8 or 16)*/, uint8_t *src/*align 1*/, int stride);\ @@ -258,6 +260,9 @@ qpel_mc_func put_h264_qpel_pixels_tab[3][16]; qpel_mc_func avg_h264_qpel_pixels_tab[3][16]; + h264_weight_func weight_h264_pixels_tab[10]; + h264_biweight_func biweight_h264_pixels_tab[10]; + me_cmp_func pix_abs[2][4]; /* huffyuv specific */