diff options
Diffstat (limited to 'libavcodec/dsputil.h')
-rw-r--r-- | libavcodec/dsputil.h | 40 |
1 files changed, 18 insertions, 22 deletions
diff --git a/libavcodec/dsputil.h b/libavcodec/dsputil.h index e69ac32e6e..5c6aedb407 100644 --- a/libavcodec/dsputil.h +++ b/libavcodec/dsputil.h @@ -3,20 +3,20 @@ * Copyright (c) 2000, 2001, 2002 Fabrice Bellard * Copyright (c) 2002-2004 Michael Niedermayer <michaelni@gmx.at> * - * This file is part of Libav. + * This file is part of FFmpeg. * - * Libav is free software; you can redistribute it and/or + * FFmpeg is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * - * Libav is distributed in the hope that it will be useful, + * FFmpeg is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with Libav; if not, write to the Free Software + * License along with FFmpeg; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ @@ -47,22 +47,12 @@ extern const uint8_t ff_zigzag248_direct[64]; /* temporary */ extern uint32_t ff_squareTbl[512]; -extern uint8_t ff_cropTbl[256 + 2 * MAX_NEG_CROP]; +extern const uint8_t ff_cropTbl[256 + 2 * MAX_NEG_CROP]; -#define PUTAVG_PIXELS(depth)\ -void ff_put_pixels8x8_ ## depth ## _c(uint8_t *dst, uint8_t *src, int stride);\ -void ff_avg_pixels8x8_ ## depth ## _c(uint8_t *dst, uint8_t *src, int stride);\ -void ff_put_pixels16x16_ ## depth ## _c(uint8_t *dst, uint8_t *src, int stride);\ -void ff_avg_pixels16x16_ ## depth ## _c(uint8_t *dst, uint8_t *src, int stride); - -PUTAVG_PIXELS( 8) -PUTAVG_PIXELS( 9) -PUTAVG_PIXELS(10) - -#define ff_put_pixels8x8_c ff_put_pixels8x8_8_c -#define ff_avg_pixels8x8_c ff_avg_pixels8x8_8_c -#define ff_put_pixels16x16_c ff_put_pixels16x16_8_c -#define ff_avg_pixels16x16_c ff_avg_pixels16x16_8_c +void ff_put_pixels8x8_c(uint8_t *dst, uint8_t *src, int stride); +void ff_avg_pixels8x8_c(uint8_t *dst, uint8_t *src, int stride); +void ff_put_pixels16x16_c(uint8_t *dst, uint8_t *src, int stride); +void ff_avg_pixels16x16_c(uint8_t *dst, uint8_t *src, int stride); /* RV40 functions */ void ff_put_rv40_qpel16_mc33_c(uint8_t *dst, uint8_t *src, int stride); @@ -76,7 +66,7 @@ void ff_gmc_c(uint8_t *dst, uint8_t *src, int stride, int h, int ox, int oy, /* minimum alignment rules ;) If you notice errors in the align stuff, need more alignment for some ASM code for some CPU or need to use a function with less aligned data then send a mail -to the libav-devel mailing list, ... +to the ffmpeg-devel mailing list, ... !warning These alignments might not match reality, (missing attribute((align)) stuff somewhere possible). @@ -179,6 +169,8 @@ typedef struct DSPContext { me_cmp_func vsad[6]; me_cmp_func vsse[6]; me_cmp_func nsse[6]; + me_cmp_func w53[6]; + me_cmp_func w97[6]; me_cmp_func dct_max[6]; me_cmp_func dct264_sad[6]; @@ -226,7 +218,7 @@ typedef struct DSPContext { * @param line_size number of bytes in a horizontal line of block * @param h height */ - op_pixels_func put_no_rnd_pixels_tab[2][4]; + op_pixels_func put_no_rnd_pixels_tab[4][4]; /** * Halfpel motion compensation with no rounding (a+b)>>1. @@ -262,7 +254,7 @@ typedef struct DSPContext { /* huffyuv specific */ void (*add_bytes)(uint8_t *dst/*align 16*/, uint8_t *src/*align 16*/, int w); - void (*diff_bytes)(uint8_t *dst/*align 16*/, uint8_t *src1/*align 16*/, uint8_t *src2/*align 1*/,int w); + void (*diff_bytes)(uint8_t *dst/*align 16*/, const uint8_t *src1/*align 16*/, const uint8_t *src2/*align 1*/,int w); /** * subtract huffyuv's variant of median prediction * note, this might read from src1[-1], src2[-1] @@ -271,6 +263,7 @@ typedef struct DSPContext { void (*add_hfyu_median_prediction)(uint8_t *dst, const uint8_t *top, const uint8_t *diff, int w, int *left, int *left_top); int (*add_hfyu_left_prediction)(uint8_t *dst, const uint8_t *src, int w, int left); void (*add_hfyu_left_prediction_bgr32)(uint8_t *dst, const uint8_t *src, int w, int *red, int *green, int *blue, int *alpha); + /* this might write to dst[w] */ void (*bswap_buf)(uint32_t *dst, const uint32_t *src, int w); void (*bswap16_buf)(uint16_t *dst, const uint16_t *src, int len); @@ -383,6 +376,7 @@ typedef struct DSPContext { void ff_dsputil_static_init(void); void ff_dsputil_init(DSPContext* p, AVCodecContext *avctx); +attribute_deprecated void dsputil_init(DSPContext* c, AVCodecContext *avctx); int ff_check_alignment(void); @@ -396,4 +390,6 @@ void ff_dsputil_init_ppc(DSPContext* c, AVCodecContext *avctx); void ff_dsputil_init_sh4(DSPContext* c, AVCodecContext *avctx); void ff_dsputil_init_vis(DSPContext* c, AVCodecContext *avctx); +void ff_dsputil_init_dwt(DSPContext *c); + #endif /* AVCODEC_DSPUTIL_H */ |