summaryrefslogtreecommitdiff
path: root/libavcodec/dsputil.h
diff options
context:
space:
mode:
authorMåns Rullgård <mans@mansr.com>2009-09-10 08:50:03 +0000
committerMåns Rullgård <mans@mansr.com>2009-09-10 08:50:03 +0000
commit648d792042cb6d58d032f3ae2518169d91a87274 (patch)
treea934b90c65f30fede4e46a1e314d7690b354c30b /libavcodec/dsputil.h
parent6d9d289e7671df94caba0a1ca1a93c0b12052d32 (diff)
ARM: NEON optimised FFT and MDCT
Vorbis and AC3 ~3x faster. Parts by Naotoshi Nojiri, naonoj gmail Originally committed as revision 19806 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/dsputil.h')
-rw-r--r--libavcodec/dsputil.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/dsputil.h b/libavcodec/dsputil.h
index 7a0fc47dd8..db19e3f076 100644
--- a/libavcodec/dsputil.h
+++ b/libavcodec/dsputil.h
@@ -694,11 +694,13 @@ extern FFTSample* const ff_cos_tabs[13];
int ff_fft_init(FFTContext *s, int nbits, int inverse);
void ff_fft_permute_c(FFTContext *s, FFTComplex *z);
void ff_fft_permute_sse(FFTContext *s, FFTComplex *z);
+void ff_fft_permute_neon(FFTContext *s, FFTComplex *z);
void ff_fft_calc_c(FFTContext *s, FFTComplex *z);
void ff_fft_calc_sse(FFTContext *s, FFTComplex *z);
void ff_fft_calc_3dn(FFTContext *s, FFTComplex *z);
void ff_fft_calc_3dn2(FFTContext *s, FFTComplex *z);
void ff_fft_calc_altivec(FFTContext *s, FFTComplex *z);
+void ff_fft_calc_neon(FFTContext *s, FFTComplex *z);
/**
* Do the permutation needed BEFORE calling ff_fft_calc().
@@ -768,6 +770,8 @@ void ff_imdct_calc_3dn2(MDCTContext *s, FFTSample *output, const FFTSample *inpu
void ff_imdct_half_3dn2(MDCTContext *s, FFTSample *output, const FFTSample *input);
void ff_imdct_calc_sse(MDCTContext *s, FFTSample *output, const FFTSample *input);
void ff_imdct_half_sse(MDCTContext *s, FFTSample *output, const FFTSample *input);
+void ff_imdct_calc_neon(MDCTContext *s, FFTSample *output, const FFTSample *input);
+void ff_imdct_half_neon(MDCTContext *s, FFTSample *output, const FFTSample *input);
void ff_mdct_calc(MDCTContext *s, FFTSample *out, const FFTSample *input);
void ff_mdct_end(MDCTContext *s);