Mercurial > libavcodec.hg
comparison arm/fft_init_arm.c @ 11532:e011e73a902b libavcodec
ARM: NEON optimised RDFT
author | mru |
---|---|
date | Tue, 23 Mar 2010 03:35:02 +0000 |
parents | 4b3da727d832 |
children | b7fa70eabb1f |
comparison
equal
deleted
inserted
replaced
11531:31033caa5344 | 11532:e011e73a902b |
---|---|
25 | 25 |
26 void ff_imdct_calc_neon(FFTContext *s, FFTSample *output, const FFTSample *input); | 26 void ff_imdct_calc_neon(FFTContext *s, FFTSample *output, const FFTSample *input); |
27 void ff_imdct_half_neon(FFTContext *s, FFTSample *output, const FFTSample *input); | 27 void ff_imdct_half_neon(FFTContext *s, FFTSample *output, const FFTSample *input); |
28 void ff_mdct_calc_neon(FFTContext *s, FFTSample *output, const FFTSample *input); | 28 void ff_mdct_calc_neon(FFTContext *s, FFTSample *output, const FFTSample *input); |
29 | 29 |
30 void ff_rdft_calc_neon(struct RDFTContext *s, FFTSample *z); | |
31 | |
30 av_cold void ff_fft_init_arm(FFTContext *s) | 32 av_cold void ff_fft_init_arm(FFTContext *s) |
31 { | 33 { |
32 if (HAVE_NEON) { | 34 if (HAVE_NEON) { |
33 s->fft_permute = ff_fft_permute_neon; | 35 s->fft_permute = ff_fft_permute_neon; |
34 s->fft_calc = ff_fft_calc_neon; | 36 s->fft_calc = ff_fft_calc_neon; |
36 s->imdct_half = ff_imdct_half_neon; | 38 s->imdct_half = ff_imdct_half_neon; |
37 s->mdct_calc = ff_mdct_calc_neon; | 39 s->mdct_calc = ff_mdct_calc_neon; |
38 s->permutation = FF_MDCT_PERM_INTERLEAVE; | 40 s->permutation = FF_MDCT_PERM_INTERLEAVE; |
39 } | 41 } |
40 } | 42 } |
43 | |
44 #if CONFIG_RDFT | |
45 av_cold void ff_rdft_init_arm(RDFTContext *s) | |
46 { | |
47 if (HAVE_NEON) | |
48 s->rdft_calc = ff_rdft_calc_neon; | |
49 } | |
50 #endif |