c2sim_LDADD = $(lib_LTLIBRARIES)
c2sim_LDFLAGS = $(LIBS)
-fdmdv_get_test_bits_SOURCES = fdmdv_get_test_bits.c fdmdv.c fft.c kiss_fft.c
+fdmdv_get_test_bits_SOURCES = fdmdv_get_test_bits.c fdmdv.c kiss_fft.c
fdmdv_get_test_bits_LDFLAGS = $(LIBS)
-fdmdv_mod_SOURCES = fdmdv_mod.c fdmdv.c fft.c kiss_fft.c
+fdmdv_mod_SOURCES = fdmdv_mod.c fdmdv.c kiss_fft.c
fdmdv_mod_LDFLAGS = $(LIBS)
-fdmdv_demod_SOURCES = fdmdv_demod.c fdmdv.c fft.c kiss_fft.c octave.c
+fdmdv_demod_SOURCES = fdmdv_demod.c fdmdv.c kiss_fft.c octave.c
fdmdv_demod_LDFLAGS = $(LIBS)
-fdmdv_put_test_bits_SOURCES = fdmdv_put_test_bits.c fdmdv.c fft.c kiss_fft.c
+fdmdv_put_test_bits_SOURCES = fdmdv_put_test_bits.c fdmdv.c kiss_fft.c
fdmdv_put_test_bits_LDFLAGS = $(LIBS)
fdmdv_interleave_SOURCES = fdmdv_interleave.c
c2sim_OBJECTS = $(am_c2sim_OBJECTS)
c2sim_DEPENDENCIES = $(am__DEPENDENCIES_1)
am_fdmdv_demod_OBJECTS = fdmdv_demod.$(OBJEXT) fdmdv.$(OBJEXT) \
- fft.$(OBJEXT) kiss_fft.$(OBJEXT) octave.$(OBJEXT)
+ kiss_fft.$(OBJEXT) octave.$(OBJEXT)
fdmdv_demod_OBJECTS = $(am_fdmdv_demod_OBJECTS)
fdmdv_demod_LDADD = $(LDADD)
am_fdmdv_get_test_bits_OBJECTS = fdmdv_get_test_bits.$(OBJEXT) \
- fdmdv.$(OBJEXT) fft.$(OBJEXT) kiss_fft.$(OBJEXT)
+ fdmdv.$(OBJEXT) kiss_fft.$(OBJEXT)
fdmdv_get_test_bits_OBJECTS = $(am_fdmdv_get_test_bits_OBJECTS)
fdmdv_get_test_bits_LDADD = $(LDADD)
am_fdmdv_interleave_OBJECTS = fdmdv_interleave.$(OBJEXT)
fdmdv_interleave_OBJECTS = $(am_fdmdv_interleave_OBJECTS)
fdmdv_interleave_LDADD = $(LDADD)
am_fdmdv_mod_OBJECTS = fdmdv_mod.$(OBJEXT) fdmdv.$(OBJEXT) \
- fft.$(OBJEXT) kiss_fft.$(OBJEXT)
+ kiss_fft.$(OBJEXT)
fdmdv_mod_OBJECTS = $(am_fdmdv_mod_OBJECTS)
fdmdv_mod_LDADD = $(LDADD)
am_fdmdv_put_test_bits_OBJECTS = fdmdv_put_test_bits.$(OBJEXT) \
- fdmdv.$(OBJEXT) fft.$(OBJEXT) kiss_fft.$(OBJEXT)
+ fdmdv.$(OBJEXT) kiss_fft.$(OBJEXT)
fdmdv_put_test_bits_OBJECTS = $(am_fdmdv_put_test_bits_OBJECTS)
fdmdv_put_test_bits_LDADD = $(LDADD)
generate_codebook_SOURCES = generate_codebook.c
c2sim_SOURCES = c2sim.c
c2sim_LDADD = $(lib_LTLIBRARIES)
c2sim_LDFLAGS = $(LIBS)
-fdmdv_get_test_bits_SOURCES = fdmdv_get_test_bits.c fdmdv.c fft.c kiss_fft.c
+fdmdv_get_test_bits_SOURCES = fdmdv_get_test_bits.c fdmdv.c kiss_fft.c
fdmdv_get_test_bits_LDFLAGS = $(LIBS)
-fdmdv_mod_SOURCES = fdmdv_mod.c fdmdv.c fft.c kiss_fft.c
+fdmdv_mod_SOURCES = fdmdv_mod.c fdmdv.c kiss_fft.c
fdmdv_mod_LDFLAGS = $(LIBS)
-fdmdv_demod_SOURCES = fdmdv_demod.c fdmdv.c fft.c kiss_fft.c octave.c
+fdmdv_demod_SOURCES = fdmdv_demod.c fdmdv.c kiss_fft.c octave.c
fdmdv_demod_LDFLAGS = $(LIBS)
-fdmdv_put_test_bits_SOURCES = fdmdv_put_test_bits.c fdmdv.c fft.c kiss_fft.c
+fdmdv_put_test_bits_SOURCES = fdmdv_put_test_bits.c fdmdv.c kiss_fft.c
fdmdv_put_test_bits_LDFLAGS = $(LIBS)
fdmdv_interleave_SOURCES = fdmdv_interleave.c
fdmdv_interleave_LDFLAGS = $(LIBS)
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdmdv_interleave.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdmdv_mod.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdmdv_put_test_bits.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fft.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/generate_codebook.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/genlspdtcb.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/kiss_fft.Po@am__quote@
#include "test_bits.h"
#include "pilot_coeff.h"
#include "kiss_fft.h"
-#include "fft.h"
#include "hanning.h"
#include "os.h"
for(i=0; i<2*FDMDV_NFFT; i++)
f->fft_buf[i] = 0.0;
+ f->fft_cfg = kiss_fft_alloc (2*FDMDV_NFFT, 0, NULL, NULL);
+ assert(f->fft_cfg != NULL);
+
return f;
}
{
assert(fdmdv != NULL);
KISS_FFT_FREE(fdmdv->fft_pilot_cfg);
+ KISS_FFT_FREE(fdmdv->fft_cfg);
free(fdmdv);
}
void CODEC2_WIN32SUPPORT fdmdv_get_fft(struct FDMDV *f, float mag_dB[], float rx_fdm[], int nin)
{
int i,j;
- COMP fft_io[2*FDMDV_NFFT];
+ COMP fft_in[2*FDMDV_NFFT];
+ COMP fft_out[2*FDMDV_NFFT];
float fullscale_dB;
-#ifdef TT
/* update buffer of input samples */
for(i=0; i<2*FDMDV_NFFT-nin; i++)
/* window and FFT */
for(i=0; i<2*FDMDV_NFFT; i++) {
- fft_io[i].real = f->fft_buf[i] * (0.5 - 0.5*cos((float)i*2.0*PI/(2*FDMDV_NFFT)));
- fft_io[i].imag = 0.0;
- }
-#endif
- for(i=0; i<2*FDMDV_NFFT; i++) {
- fft_io[i].real = 1.0;
- fft_io[i].imag = 0.0;
+ fft_in[i].real = f->fft_buf[i] * (0.5 - 0.5*cos((float)i*2.0*PI/(2*FDMDV_NFFT)));
+ fft_in[i].imag = 0.0;
}
- //fft(&fft_io[0].real, 2*FDMDV_NFFT, -1);
- printf("%d fft_io[%d] %f %f\n", FDMDV_NFFT,0, fft_io[0].real, fft_io[0].imag);
-#ifdef TMP
+ kiss_fft(f->fft_cfg, (kiss_fft_cpx *)fft_in, (kiss_fft_cpx *)fft_out);
/* scale and convert to dB */
fullscale_dB = 20.0*log10(FDMDV_NFFT*32767.0);
for(i=0; i<FDMDV_NFFT; i++) {
- mag_dB[i] = 10.0*log10(F[i].real*F[i].real + F[i].imag*F[i].imag);
+ mag_dB[i] = 10.0*log10(fft_out[i].real*fft_out[i].real + fft_out[i].imag*fft_out[i].imag);
mag_dB[i] -= fullscale_dB;
}
-#endif
- for(i=0; i<FDMDV_NFFT; i++)
- mag_dB[i] = 1;
}
/* Buf for FFT/waterfall */
float fft_buf[2*FDMDV_NFFT];
-};
+ kiss_fft_cfg fft_cfg;
+ };
/*---------------------------------------------------------------------------*\
+++ /dev/null
-/*---------------------------------------------------------------------------*\
-
- FILE........: fft.c
- AUTHOR......: Bruce Robertson
- DATE CREATED: 20/11/2010
-
- Bridging function to the kiss_fft package.
-
-\*---------------------------------------------------------------------------*/
-
-/*
- Copyright (C) 2010 Bruce Robertson
-
- All rights reserved.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU Lesser General Public License version 2.1, as
- published by the Free Software Foundation. This program is
- distributed in the hope that it will be useful, but WITHOUT ANY
- WARRANTY; without even the implied warranty of MERCHANTABILITY or
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
- License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with this program; if not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <assert.h>
-#include "kiss_fft.h"
-
-/*---------------------------------------------------------------------------*\
-
- GLOBALS
-
-\*---------------------------------------------------------------------------*/
-
-kiss_fft_cpx *fin = 0;
-kiss_fft_cpx *fout = 0;
-kiss_fft_cfg cfg_forward = 0;
-kiss_fft_cfg cfg_reverse = 0;
-
-/*---------------------------------------------------------------------------*\
-
- initialize_fft(int n)
-
- Initialisation function for kiss_fft. This assumes that all calls to fft()
- use the same datatypes and are one arrays of the same size.
-
-\*---------------------------------------------------------------------------*/
-
-void
-initialize_fft (int n)
-{
- assert(!fin && !fout && !cfg_forward && !cfg_reverse);
- fin = KISS_FFT_MALLOC (n * sizeof (kiss_fft_cpx));
- assert(fin != NULL);
- fout = KISS_FFT_MALLOC (n * sizeof (kiss_fft_cpx));
- assert(fout != NULL);
- cfg_forward = kiss_fft_alloc (n, 0, NULL, NULL);
- assert(cfg_forward != NULL);
- cfg_reverse = kiss_fft_alloc (n, 1, NULL, NULL);
- assert(cfg_reverse != NULL);
-}
-
-/*---------------------------------------------------------------------------*\
-
- fft(float x[], int n, int isign)
- Function that calls kiss_fft with the signature of four1 from NRC.
-
-\*---------------------------------------------------------------------------*/
-
-
-#ifdef BRUCE
-
-/* Efficient but runs into problems if we have two different size FFTs
- in the same program - see notes below */
-
-void
-fft (float x[], int n, int isign)
-{
- int c;
- kiss_fft_cfg cfg;
- if (cfg_forward == NULL)
- {
- initialize_fft (n);
- }
- for (c = 0; c < n * 2; c += 2)
- {
- fin[c / 2].r = x[c];
- fin[c / 2].i = -x[c + 1];
- }
- if (isign == -1)
- {
- cfg = cfg_reverse;
- }
- else
- {
- cfg = cfg_forward;
- }
- kiss_fft (cfg, fin, fout);
- for (c = 0; c < n * 2; c += 2)
- {
- x[c] = fout[(c) / 2].r;
- x[c + 1] = -fout[(c) / 2].i;
- }
-}
-#endif
-
-/* This version not as efficient but can handle different size FFTs in
- the same program. This is reqd in fdmdv and if we link fdmdv and
- codec 2 into same program. If CPU load becomes an issue we could always
- modify to allocate FFT cfg states at start up.
-
- Or maybe we should just bite the bullet and modify all fft() calls
- to match the kiss_fft calling conventions. This would mean
- allocating states for each fft at the start of the program which is
- no biggie.
-
-*/
-
-#define DAVID
-#ifdef DAVID
-void
-fft (float x[], int n, int isign)
-{
- int c;
- kiss_fft_cfg cfg;
- kiss_fft_cpx *input, *output;
-
- input = KISS_FFT_MALLOC (n * sizeof (kiss_fft_cpx));
- assert(input != NULL);
- output = KISS_FFT_MALLOC (n * sizeof (kiss_fft_cpx));
- assert(output != NULL);
-
- for (c = 0; c < n * 2; c += 2) {
- input[c / 2].r = x[c];
- input[c / 2].i = -x[c + 1];
- }
- if (isign == -1)
- cfg = kiss_fft_alloc (n, 1, NULL, NULL);
- else
- cfg = kiss_fft_alloc (n, 0, NULL, NULL);
- kiss_fft (cfg, input, output);
- for (c = 0; c < n * 2; c += 2) {
- x[c] = output[(c) / 2].r;
- x[c + 1] = -output[(c) / 2].i;
- }
- KISS_FFT_FREE(input);
- KISS_FFT_FREE(output);
- KISS_FFT_FREE(cfg);
-}
-#endif
-
-void cleanup_fft(void)
-{
- KISS_FFT_FREE(fin);
- KISS_FFT_FREE(fout);
- KISS_FFT_FREE(cfg_forward);
- KISS_FFT_FREE(cfg_reverse);
-}
+++ /dev/null
-/*---------------------------------------------------------------------------*\
-
- FILE........: fft.h
- AUTHOR......: Bruce Robertson
- DATE CREATED: 29/11/2010
-
- Bridge between existing code and kiss_fft.
-
-\*---------------------------------------------------------------------------*/
-
-#ifndef __FFT__
-#define __FFT__
-void fft(float x[], int n, int isign);
-
-void cleanup_fft(void)
-#ifdef __GNUC__
- __attribute__ ((destructor))
-#endif
- ;
-
-#endif /* __FFT__ */
-
#include "defines.h"
#include "phase.h"
-#include "fft.h"
+#include "kiss_fft.h"
#include "comp.h"
#include "glottal.c"
CODEBOOKS = ../src/codebook.c ../src/codebookd.c ../src/codebookvq.c ../src/codebookjnd.c ../src/codebookdt.c ../src/codebookjvm.c ../src/codebookge.c
-tnlp_SOURCES = tnlp.c ../src/sine.c ../src/nlp.c ../src/fft.c ../src/kiss_fft.c ../src/dump.c
+tnlp_SOURCES = tnlp.c ../src/sine.c ../src/nlp.c ../src/kiss_fft.c ../src/dump.c
tnlp_LDADD = $(lib_LTLIBRARIES)
tnlp_LDFLAGS = $(LIBS)
-tinterp_SOURCES = tinterp.c ../src/sine.c ../src/fft.c ../src/kiss_fft.c ../src/interp.c ../src/lpc.c ../src/lsp.c ../src/quantise.c $(CODEBOOKS) ../src/dump.c
+tinterp_SOURCES = tinterp.c ../src/sine.c ../src/kiss_fft.c ../src/interp.c ../src/lpc.c ../src/lsp.c ../src/quantise.c $(CODEBOOKS) ../src/dump.c
tinterp_LDADD = $(lib_LTLIBRARIES)
tinterp_LDFLAGS = $(LIBS)
-tquant_SOURCES = tquant.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/fft.c ../src/kiss_fft.c $(CODEBOOKS)
+tquant_SOURCES = tquant.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/kiss_fft.c $(CODEBOOKS)
tquant_LDADD = $(lib_LTLIBRARIES)
tquant_LDFLAGS = $(LIBS)
-scalarlsptest_SOURCES = scalarlsptest.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/fft.c ../src/kiss_fft.c $(CODEBOOKS)
+scalarlsptest_SOURCES = scalarlsptest.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/kiss_fft.c $(CODEBOOKS)
scalarlsptest_LDADD = $(lib_LTLIBRARIES)
scalarlsptest_LDFLAGS = $(LIBS)
-tfdmdv_SOURCES = tfdmdv.c ../src/fdmdv.c ../src/fft.c ../src/kiss_fft.c ../src/octave.c
+tfdmdv_SOURCES = tfdmdv.c ../src/fdmdv.c ../src/kiss_fft.c ../src/octave.c
tfdmdv_LDADD = $(lib_LTLIBRARIES)
tfdmdv_LDFLAGS = $(LIBS)
-t48_8_SOURCES = t48_8.c ../src/fdmdv.c ../src/fft.c ../src/kiss_fft.c
+t48_8_SOURCES = t48_8.c ../src/fdmdv.c ../src/kiss_fft.c
t48_8_LDADD = $(lib_LTLIBRARIES)
t48_8_LDFLAGS = $(LIBS)
-lspsync_SOURCES = lspsync.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/fft.c ../src/kiss_fft.c \
+lspsync_SOURCES = lspsync.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/kiss_fft.c \
../src/codec2.c ../src/sine.c ../src/nlp.c ../src/postfilter.c ../src/phase.c ../src/interp.c ../src/pack.c $(CODEBOOKS)
lspsync_LDADD = $(lib_LTLIBRARIES)
lspsync_LDFLAGS = $(LIBS)
create_interleaver_LDADD = $(lib_LTLIBRARIES)
create_interleaver_LDFLAGS = $(LIBS)
-tlspsens_SOURCES = tlspsens.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/fft.c ../src/kiss_fft.c ../src/codec2.c ../src/sine.c ../src/nlp.c ../src/pack.c ../src/interp.c ../src/postfilter.c ../src/phase.c $(CODEBOOKS)
+tlspsens_SOURCES = tlspsens.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/kiss_fft.c ../src/codec2.c ../src/sine.c ../src/nlp.c ../src/pack.c ../src/interp.c ../src/postfilter.c ../src/phase.c $(CODEBOOKS)
tlspsens_LDADD = $(lib_LTLIBRARIES)
tlspsens_LDFLAGS = $(LIBS)
codebookdt.$(OBJEXT) codebookjvm.$(OBJEXT) \
codebookge.$(OBJEXT)
am_lspsync_OBJECTS = lspsync.$(OBJEXT) quantise.$(OBJEXT) \
- lpc.$(OBJEXT) lsp.$(OBJEXT) dump.$(OBJEXT) fft.$(OBJEXT) \
- kiss_fft.$(OBJEXT) codec2.$(OBJEXT) sine.$(OBJEXT) \
- nlp.$(OBJEXT) postfilter.$(OBJEXT) phase.$(OBJEXT) \
- interp.$(OBJEXT) pack.$(OBJEXT) $(am__objects_1)
+ lpc.$(OBJEXT) lsp.$(OBJEXT) dump.$(OBJEXT) kiss_fft.$(OBJEXT) \
+ codec2.$(OBJEXT) sine.$(OBJEXT) nlp.$(OBJEXT) \
+ postfilter.$(OBJEXT) phase.$(OBJEXT) interp.$(OBJEXT) \
+ pack.$(OBJEXT) $(am__objects_1)
lspsync_OBJECTS = $(am_lspsync_OBJECTS)
lspsync_DEPENDENCIES =
am_scalarlsptest_OBJECTS = scalarlsptest.$(OBJEXT) quantise.$(OBJEXT) \
- lpc.$(OBJEXT) lsp.$(OBJEXT) dump.$(OBJEXT) fft.$(OBJEXT) \
- kiss_fft.$(OBJEXT) $(am__objects_1)
+ lpc.$(OBJEXT) lsp.$(OBJEXT) dump.$(OBJEXT) kiss_fft.$(OBJEXT) \
+ $(am__objects_1)
scalarlsptest_OBJECTS = $(am_scalarlsptest_OBJECTS)
scalarlsptest_DEPENDENCIES =
-am_t48_8_OBJECTS = t48_8.$(OBJEXT) fdmdv.$(OBJEXT) fft.$(OBJEXT) \
- kiss_fft.$(OBJEXT)
+am_t48_8_OBJECTS = t48_8.$(OBJEXT) fdmdv.$(OBJEXT) kiss_fft.$(OBJEXT)
t48_8_OBJECTS = $(am_t48_8_OBJECTS)
t48_8_DEPENDENCIES =
-am_tfdmdv_OBJECTS = tfdmdv.$(OBJEXT) fdmdv.$(OBJEXT) fft.$(OBJEXT) \
+am_tfdmdv_OBJECTS = tfdmdv.$(OBJEXT) fdmdv.$(OBJEXT) \
kiss_fft.$(OBJEXT) octave.$(OBJEXT)
tfdmdv_OBJECTS = $(am_tfdmdv_OBJECTS)
tfdmdv_DEPENDENCIES =
-am_tinterp_OBJECTS = tinterp.$(OBJEXT) sine.$(OBJEXT) fft.$(OBJEXT) \
+am_tinterp_OBJECTS = tinterp.$(OBJEXT) sine.$(OBJEXT) \
kiss_fft.$(OBJEXT) interp.$(OBJEXT) lpc.$(OBJEXT) \
lsp.$(OBJEXT) quantise.$(OBJEXT) $(am__objects_1) \
dump.$(OBJEXT)
tinterp_OBJECTS = $(am_tinterp_OBJECTS)
tinterp_DEPENDENCIES =
am_tlspsens_OBJECTS = tlspsens.$(OBJEXT) quantise.$(OBJEXT) \
- lpc.$(OBJEXT) lsp.$(OBJEXT) dump.$(OBJEXT) fft.$(OBJEXT) \
- kiss_fft.$(OBJEXT) codec2.$(OBJEXT) sine.$(OBJEXT) \
- nlp.$(OBJEXT) pack.$(OBJEXT) interp.$(OBJEXT) \
- postfilter.$(OBJEXT) phase.$(OBJEXT) $(am__objects_1)
+ lpc.$(OBJEXT) lsp.$(OBJEXT) dump.$(OBJEXT) kiss_fft.$(OBJEXT) \
+ codec2.$(OBJEXT) sine.$(OBJEXT) nlp.$(OBJEXT) pack.$(OBJEXT) \
+ interp.$(OBJEXT) postfilter.$(OBJEXT) phase.$(OBJEXT) \
+ $(am__objects_1)
tlspsens_OBJECTS = $(am_tlspsens_OBJECTS)
tlspsens_DEPENDENCIES =
am_tnlp_OBJECTS = tnlp.$(OBJEXT) sine.$(OBJEXT) nlp.$(OBJEXT) \
- fft.$(OBJEXT) kiss_fft.$(OBJEXT) dump.$(OBJEXT)
+ kiss_fft.$(OBJEXT) dump.$(OBJEXT)
tnlp_OBJECTS = $(am_tnlp_OBJECTS)
tnlp_DEPENDENCIES =
am_tquant_OBJECTS = tquant.$(OBJEXT) quantise.$(OBJEXT) lpc.$(OBJEXT) \
- lsp.$(OBJEXT) dump.$(OBJEXT) fft.$(OBJEXT) kiss_fft.$(OBJEXT) \
+ lsp.$(OBJEXT) dump.$(OBJEXT) kiss_fft.$(OBJEXT) \
$(am__objects_1)
tquant_OBJECTS = $(am_tquant_OBJECTS)
tquant_DEPENDENCIES =
vq_train_jvm_LDADD = $(lib_LTLIBRARIES)
vq_train_jvm_LDFLAGS = $(LIBS)
CODEBOOKS = ../src/codebook.c ../src/codebookd.c ../src/codebookvq.c ../src/codebookjnd.c ../src/codebookdt.c ../src/codebookjvm.c ../src/codebookge.c
-tnlp_SOURCES = tnlp.c ../src/sine.c ../src/nlp.c ../src/fft.c ../src/kiss_fft.c ../src/dump.c
+tnlp_SOURCES = tnlp.c ../src/sine.c ../src/nlp.c ../src/kiss_fft.c ../src/dump.c
tnlp_LDADD = $(lib_LTLIBRARIES)
tnlp_LDFLAGS = $(LIBS)
-tinterp_SOURCES = tinterp.c ../src/sine.c ../src/fft.c ../src/kiss_fft.c ../src/interp.c ../src/lpc.c ../src/lsp.c ../src/quantise.c $(CODEBOOKS) ../src/dump.c
+tinterp_SOURCES = tinterp.c ../src/sine.c ../src/kiss_fft.c ../src/interp.c ../src/lpc.c ../src/lsp.c ../src/quantise.c $(CODEBOOKS) ../src/dump.c
tinterp_LDADD = $(lib_LTLIBRARIES)
tinterp_LDFLAGS = $(LIBS)
-tquant_SOURCES = tquant.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/fft.c ../src/kiss_fft.c $(CODEBOOKS)
+tquant_SOURCES = tquant.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/kiss_fft.c $(CODEBOOKS)
tquant_LDADD = $(lib_LTLIBRARIES)
tquant_LDFLAGS = $(LIBS)
-scalarlsptest_SOURCES = scalarlsptest.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/fft.c ../src/kiss_fft.c $(CODEBOOKS)
+scalarlsptest_SOURCES = scalarlsptest.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/kiss_fft.c $(CODEBOOKS)
scalarlsptest_LDADD = $(lib_LTLIBRARIES)
scalarlsptest_LDFLAGS = $(LIBS)
-tfdmdv_SOURCES = tfdmdv.c ../src/fdmdv.c ../src/fft.c ../src/kiss_fft.c ../src/octave.c
+tfdmdv_SOURCES = tfdmdv.c ../src/fdmdv.c ../src/kiss_fft.c ../src/octave.c
tfdmdv_LDADD = $(lib_LTLIBRARIES)
tfdmdv_LDFLAGS = $(LIBS)
-t48_8_SOURCES = t48_8.c ../src/fdmdv.c ../src/fft.c ../src/kiss_fft.c
+t48_8_SOURCES = t48_8.c ../src/fdmdv.c ../src/kiss_fft.c
t48_8_LDADD = $(lib_LTLIBRARIES)
t48_8_LDFLAGS = $(LIBS)
-lspsync_SOURCES = lspsync.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/fft.c ../src/kiss_fft.c \
+lspsync_SOURCES = lspsync.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/kiss_fft.c \
../src/codec2.c ../src/sine.c ../src/nlp.c ../src/postfilter.c ../src/phase.c ../src/interp.c ../src/pack.c $(CODEBOOKS)
lspsync_LDADD = $(lib_LTLIBRARIES)
create_interleaver_SOURCES = create_interleaver.c
create_interleaver_LDADD = $(lib_LTLIBRARIES)
create_interleaver_LDFLAGS = $(LIBS)
-tlspsens_SOURCES = tlspsens.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/fft.c ../src/kiss_fft.c ../src/codec2.c ../src/sine.c ../src/nlp.c ../src/pack.c ../src/interp.c ../src/postfilter.c ../src/phase.c $(CODEBOOKS)
+tlspsens_SOURCES = tlspsens.c ../src/quantise.c ../src/lpc.c ../src/lsp.c ../src/dump.c ../src/kiss_fft.c ../src/codec2.c ../src/sine.c ../src/nlp.c ../src/pack.c ../src/interp.c ../src/postfilter.c ../src/phase.c $(CODEBOOKS)
tlspsens_LDADD = $(lib_LTLIBRARIES)
tlspsens_LDFLAGS = $(LIBS)
all: all-am
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dump.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/extract.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdmdv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fft.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/genlsp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/genres.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/interp.Po@am__quote@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o dump.obj `if test -f '../src/dump.c'; then $(CYGPATH_W) '../src/dump.c'; else $(CYGPATH_W) '$(srcdir)/../src/dump.c'; fi`
-fft.o: ../src/fft.c
-@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fft.o -MD -MP -MF "$(DEPDIR)/fft.Tpo" -c -o fft.o `test -f '../src/fft.c' || echo '$(srcdir)/'`../src/fft.c; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fft.Tpo" "$(DEPDIR)/fft.Po"; else rm -f "$(DEPDIR)/fft.Tpo"; exit 1; fi
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../src/fft.c' object='fft.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fft.o `test -f '../src/fft.c' || echo '$(srcdir)/'`../src/fft.c
-
-fft.obj: ../src/fft.c
-@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fft.obj -MD -MP -MF "$(DEPDIR)/fft.Tpo" -c -o fft.obj `if test -f '../src/fft.c'; then $(CYGPATH_W) '../src/fft.c'; else $(CYGPATH_W) '$(srcdir)/../src/fft.c'; fi`; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fft.Tpo" "$(DEPDIR)/fft.Po"; else rm -f "$(DEPDIR)/fft.Tpo"; exit 1; fi
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='../src/fft.c' object='fft.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fft.obj `if test -f '../src/fft.c'; then $(CYGPATH_W) '../src/fft.c'; else $(CYGPATH_W) '$(srcdir)/../src/fft.c'; fi`
-
kiss_fft.o: ../src/kiss_fft.c
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT kiss_fft.o -MD -MP -MF "$(DEPDIR)/kiss_fft.Tpo" -c -o kiss_fft.o `test -f '../src/kiss_fft.c' || echo '$(srcdir)/'`../src/kiss_fft.c; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/kiss_fft.Tpo" "$(DEPDIR)/kiss_fft.Po"; else rm -f "$(DEPDIR)/kiss_fft.Tpo"; exit 1; fi
\r
HDRS = ../src/codec2.h ../src/fdmdv.h\r
\r
-OBJS = dump.o lpc.o nlp.o postfilter.o sine.o codec2.o fdmdv.o fft.o kiss_fft.o interp.o lsp.o phase.o quantise.o pack.o codebook.o codebookd.o codebookvq.o codebookjnd.o codebookjvm.o codebookdt.o codebookge.o\r
+OBJS = dump.o lpc.o nlp.o postfilter.o sine.o codec2.o fdmdv.o kiss_fft.o interp.o lsp.o phase.o quantise.o pack.o codebook.o codebookd.o codebookvq.o codebookjnd.o codebookjvm.o codebookdt.o codebookge.o\r
\r
all: $(DLLNAME) c2demo.exe c2enc.exe c2dec.exe fdmdv_get_test_bits.exe fdmdv_mod.exe fdmdv_demod.exe fdmdv_put_test_bits.exe\r
\r