ARM: NEON VP3 Loop Filter

Originally committed as revision 18916 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
David Conrad 2009-05-23 18:36:20 +00:00
parent 45e5feda68
commit 6db8697a39
2 changed files with 12 additions and 0 deletions

View File

@ -495,11 +495,15 @@ OBJS-$(HAVE_ARMVFP) += arm/dsputil_vfp.o \
OBJS-$(HAVE_IWMMXT) += arm/dsputil_iwmmxt.o \
arm/mpegvideo_iwmmxt.o \
NEON-OBJS-$(CONFIG_THEORA_DECODER) += arm/vp3dsp_neon.o
NEON-OBJS-$(CONFIG_VP3_DECODER) += arm/vp3dsp_neon.o
OBJS-$(HAVE_NEON) += arm/dsputil_neon.o \
arm/dsputil_neon_s.o \
arm/h264dsp_neon.o \
arm/h264idct_neon.o \
arm/simple_idct_neon.o \
$(NEON-OBJS-yes)
OBJS-$(ARCH_BFIN) += bfin/dsputil_bfin.o \
bfin/fdct_bfin.o \

View File

@ -150,6 +150,9 @@ void ff_h264_idct_add8_neon(uint8_t **dest, const int *block_offset,
DCTELEM *block, int stride,
const uint8_t nnzc[6*8]);
void ff_vp3_v_loop_filter_neon(uint8_t *, int, int *);
void ff_vp3_h_loop_filter_neon(uint8_t *, int, int *);
void ff_vector_fmul_neon(float *dst, const float *src, int len);
void ff_vector_fmul_window_neon(float *dst, const float *src0,
const float *src1, const float *win,
@ -255,6 +258,11 @@ void ff_dsputil_init_neon(DSPContext *c, AVCodecContext *avctx)
c->h264_idct_add16intra = ff_h264_idct_add16intra_neon;
c->h264_idct_add8 = ff_h264_idct_add8_neon;
if (CONFIG_VP3_DECODER || CONFIG_THEORA_DECODER) {
c->vp3_v_loop_filter = ff_vp3_v_loop_filter_neon;
c->vp3_h_loop_filter = ff_vp3_h_loop_filter_neon;
}
c->vector_fmul = ff_vector_fmul_neon;
c->vector_fmul_window = ff_vector_fmul_window_neon;