aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/arm/dsputil_neon.c
diff options
context:
space:
mode:
authorMåns Rullgård <mans@mansr.com>2009-08-14 01:02:06 +0000
committerMåns Rullgård <mans@mansr.com>2009-08-14 01:02:06 +0000
commite814015d69578cb0d45407a8070a77fd542df6bf (patch)
treed09bfa8012e316e541a074c72f96849ee122ce6b /libavcodec/arm/dsputil_neon.c
parent737cbcde0873998f51cc7f640f6ea91d9e3fffd3 (diff)
downloadffmpeg-e814015d69578cb0d45407a8070a77fd542df6bf.tar.gz
ARM: NEON optimised vorbis_inverse_coupling
12% faster Vorbis decoding on Cortex-A8. Originally committed as revision 19637 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/arm/dsputil_neon.c')
-rw-r--r--libavcodec/arm/dsputil_neon.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/arm/dsputil_neon.c b/libavcodec/arm/dsputil_neon.c
index d7ee435c93..67315297df 100644
--- a/libavcodec/arm/dsputil_neon.c
+++ b/libavcodec/arm/dsputil_neon.c
@@ -161,6 +161,8 @@ void ff_vector_fmul_window_neon(float *dst, const float *src0,
void ff_float_to_int16_neon(int16_t *, const float *, long);
void ff_float_to_int16_interleave_neon(int16_t *, const float **, long, int);
+void ff_vorbis_inverse_coupling_neon(float *mag, float *ang, int blocksize);
+
void ff_dsputil_init_neon(DSPContext *c, AVCodecContext *avctx)
{
c->put_pixels_tab[0][0] = ff_put_pixels16_neon;
@@ -272,4 +274,7 @@ void ff_dsputil_init_neon(DSPContext *c, AVCodecContext *avctx)
c->float_to_int16 = ff_float_to_int16_neon;
c->float_to_int16_interleave = ff_float_to_int16_interleave_neon;
}
+
+ if (CONFIG_VORBIS_DECODER)
+ c->vorbis_inverse_coupling = ff_vorbis_inverse_coupling_neon;
}