summaryrefslogtreecommitdiff
path: root/ffmpeg/libavcodec/arm/fft_init_arm.c
diff options
context:
space:
mode:
Diffstat (limited to 'ffmpeg/libavcodec/arm/fft_init_arm.c')
-rw-r--r--ffmpeg/libavcodec/arm/fft_init_arm.c25
1 files changed, 9 insertions, 16 deletions
diff --git a/ffmpeg/libavcodec/arm/fft_init_arm.c b/ffmpeg/libavcodec/arm/fft_init_arm.c
index 8c98abc..7e49b9c 100644
--- a/ffmpeg/libavcodec/arm/fft_init_arm.c
+++ b/ffmpeg/libavcodec/arm/fft_init_arm.c
@@ -26,22 +26,25 @@
void ff_fft_permute_neon(FFTContext *s, FFTComplex *z);
void ff_fft_calc_neon(FFTContext *s, FFTComplex *z);
+void ff_imdct_half_vfp(FFTContext *s, FFTSample *output, const FFTSample *input);
+
void ff_imdct_calc_neon(FFTContext *s, FFTSample *output, const FFTSample *input);
void ff_imdct_half_neon(FFTContext *s, FFTSample *output, const FFTSample *input);
void ff_mdct_calc_neon(FFTContext *s, FFTSample *output, const FFTSample *input);
void ff_rdft_calc_neon(struct RDFTContext *s, FFTSample *z);
-void ff_synth_filter_float_neon(FFTContext *imdct,
- float *synth_buf_ptr, int *synth_buf_offset,
- float synth_buf2[32], const float window[512],
- float out[32], const float in[32],
- float scale);
-
av_cold void ff_fft_init_arm(FFTContext *s)
{
int cpu_flags = av_get_cpu_flags();
+ if (have_vfp(cpu_flags)) {
+#if CONFIG_MDCT
+ if (!have_vfpv3(cpu_flags))
+ s->imdct_half = ff_imdct_half_vfp;
+#endif
+ }
+
if (have_neon(cpu_flags)) {
#if CONFIG_FFT
s->fft_permute = ff_fft_permute_neon;
@@ -65,13 +68,3 @@ av_cold void ff_rdft_init_arm(RDFTContext *s)
s->rdft_calc = ff_rdft_calc_neon;
}
#endif
-
-#if CONFIG_DCA_DECODER
-av_cold void ff_synth_filter_init_arm(SynthFilterContext *s)
-{
- int cpu_flags = av_get_cpu_flags();
-
- if (have_neon(cpu_flags))
- s->synth_filter_float = ff_synth_filter_float_neon;
-}
-#endif