diff options
author | Gregory Maxwell <greg@xiph.org> | 2011-10-27 07:55:33 +0400 |
---|---|---|
committer | Gregory Maxwell <greg@xiph.org> | 2011-10-27 14:27:13 +0400 |
commit | 9652f81eb9b03f744f4cbfeead696613ae973ead (patch) | |
tree | ebd5025b3d3e51b79148eed78da0c288dba22e54 /celt/tests | |
parent | da025d5632be80dad0af54af70d2cb0a286802d8 (diff) |
Test cleanups and renaming.
Build tests in the tests/ directory instead of top, cleanup, rename,
and eliminate recursive make for the celt/ unit tests.
Diffstat (limited to 'celt/tests')
-rw-r--r-- | celt/tests/Makefile.am | 15 | ||||
-rw-r--r-- | celt/tests/real-fft-test.c | 171 | ||||
-rw-r--r-- | celt/tests/test_unit_cwrs32.c (renamed from celt/tests/cwrs32-test.c) | 14 | ||||
-rw-r--r-- | celt/tests/test_unit_dft.c (renamed from celt/tests/dft-test.c) | 8 | ||||
-rw-r--r-- | celt/tests/test_unit_entropy.c (renamed from celt/tests/ectest.c) | 6 | ||||
-rw-r--r-- | celt/tests/test_unit_laplace.c (renamed from celt/tests/laplace-test.c) | 10 | ||||
-rw-r--r-- | celt/tests/test_unit_mathops.c (renamed from celt/tests/mathops-test.c) | 0 | ||||
-rw-r--r-- | celt/tests/test_unit_mdct.c (renamed from celt/tests/mdct-test.c) | 10 | ||||
-rw-r--r-- | celt/tests/test_unit_rotation.c (renamed from celt/tests/rotation-test.c) | 0 | ||||
-rw-r--r-- | celt/tests/test_unit_types.c (renamed from celt/tests/type-test.c) | 0 |
10 files changed, 24 insertions, 210 deletions
diff --git a/celt/tests/Makefile.am b/celt/tests/Makefile.am deleted file mode 100644 index 0dfdfd9f..00000000 --- a/celt/tests/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/celt -METASOURCES = AUTO - -TESTS = type-test ectest cwrs32-test dft-test laplace-test mdct-test mathops-test rotation-test - -noinst_PROGRAMS = type-test ectest cwrs32-test dft-test laplace-test mdct-test mathops-test rotation-test - -type_test_SOURCES = type-test.c -ectest_SOURCES = ectest.c -cwrs32_test_SOURCES = cwrs32-test.c -dft_test_SOURCES = dft-test.c -laplace_test_SOURCES = laplace-test.c -mdct_test_SOURCES = mdct-test.c -mathops_test_SOURCES = mathops-test.c -rotation_test_SOURCES = rotation-test.c diff --git a/celt/tests/real-fft-test.c b/celt/tests/real-fft-test.c deleted file mode 100644 index 3f3f7b23..00000000 --- a/celt/tests/real-fft-test.c +++ /dev/null @@ -1,171 +0,0 @@ -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "kiss_fftr.h" -#include "_kiss_fft_guts.h" -#include <stdio.h> -#include <string.h> - -#define CELT_C -#include "../celt/stack_alloc.h" -#include "../celt/kiss_fft.c" -#include "../celt/kiss_fftr.c" - -#ifdef FIXED_DEBUG -long long celt_mips=0; -#endif -int ret=0; - -static -kiss_fft_scalar rand_scalar(void) -{ - return (rand()%32767)-16384; -} - -static -double snr_compare( kiss_fft_cpx * vec1,kiss_fft_scalar * vec2, int n) -{ - int k; - double sigpow=1e-10, noisepow=1e-10, err,snr; - - vec1[0].i = vec1[n].r; - for (k=0;k<n;++k) { - sigpow += (double)vec1[k].r * (double)vec1[k].r + - (double)vec1[k].i * (double)vec1[k].i; - err = (double)vec1[k].r - (double)vec2[2*k]; - /*printf ("%f %f\n", (double)vec1[k].r, (double)vec2[2*k]);*/ - noisepow += err * err; - err = (double)vec1[k].i - (double)vec2[2*k+1]; - /*printf ("%f %f\n", (double)vec1[k].i, (double)vec2[2*k+1]);*/ - noisepow += err * err; - - } - snr = 10*log10( sigpow / noisepow ); - if (snr<60) { - printf( "** poor snr: %f **\n", snr); - ret = 1; - } - return snr; -} - -static -double snr_compare_scal( kiss_fft_scalar * vec1,kiss_fft_scalar * vec2, int n) -{ - int k; - double sigpow=1e-10, noisepow=1e-10, err,snr; - - for (k=0;k<n;++k) { - sigpow += (double)vec1[k] * (double)vec1[k]; - err = (double)vec1[k] - (double)vec2[k]; - noisepow += err * err; - } - snr = 10*log10( sigpow / noisepow ); - if (snr<60) { - printf( "\npoor snr: %f\n", snr); - ret = 1; - } - return snr; -} -#ifdef RADIX_TWO_ONLY -#define NFFT 1024 -#else -#define NFFT 8*3*5 -#endif - -#ifndef NUMFFTS -#define NUMFFTS 10000 -#endif - - -int main(void) -{ - int i; - kiss_fft_cpx cin[NFFT]; - kiss_fft_cpx cout[NFFT]; - kiss_fft_scalar fin[NFFT]; - kiss_fft_scalar sout[NFFT]; - kiss_fft_cfg kiss_fft_state; - kiss_fftr_cfg kiss_fftr_state; - - kiss_fft_scalar rin[NFFT+2]; - kiss_fft_scalar rout[NFFT+2]; - kiss_fft_scalar zero; - ALLOC_STACK; - memset(&zero,0,sizeof(zero) ); // ugly way of setting short,int,float,double, or __m128 to zero - - for (i=0;i<NFFT;++i) { - rin[i] = rand_scalar(); -#if defined(FIXED_POINT) && defined(DOUBLE_PRECISION) - rin[i] *= 32768; -#endif - cin[i].r = rin[i]; - cin[i].i = zero; - } - - kiss_fft_state = opus_fft_alloc(NFFT,0,0); - kiss_fftr_state = kiss_fftr_alloc(NFFT,0,0); - opus_fft(kiss_fft_state,cin,cout); - kiss_fftr(kiss_fftr_state,rin,sout); - - printf( "nfft=%d, inverse=%d, snr=%g\n", - NFFT,0, snr_compare(cout,sout,(NFFT/2)) ); - - memset(cin,0,sizeof(cin)); - cin[0].r = rand_scalar(); - cin[NFFT/2].r = rand_scalar(); - for (i=1;i< NFFT/2;++i) { - //cin[i].r = (kiss_fft_scalar)(rand()-RAND_MAX/2); - cin[i].r = rand_scalar(); - cin[i].i = rand_scalar(); - } - - // conjugate symmetry of real signal - for (i=1;i< NFFT/2;++i) { - cin[NFFT-i].r = cin[i].r; - cin[NFFT-i].i = - cin[i].i; - } - - -#ifdef FIXED_POINT -#ifdef DOUBLE_PRECISION - for (i=0;i< NFFT;++i) { - cin[i].r *= 32768; - cin[i].i *= 32768; - } -#endif - for (i=0;i< NFFT;++i) { - cin[i].r /= NFFT; - cin[i].i /= NFFT; - } -#endif - - fin[0] = cin[0].r; - fin[1] = cin[NFFT/2].r; - for (i=1;i< NFFT/2;++i) - { - fin[2*i] = cin[i].r; - fin[2*i+1] = cin[i].i; - } - - opus_ifft(kiss_fft_state,cin,cout); - kiss_fftri(kiss_fftr_state,fin,rout); - /* - printf(" results from inverse opus_fft : (%f,%f), (%f,%f), (%f,%f), (%f,%f), (%f,%f) ...\n " - , (float)cout[0].r , (float)cout[0].i , (float)cout[1].r , (float)cout[1].i , (float)cout[2].r , (float)cout[2].i , (float)cout[3].r , (float)cout[3].i , (float)cout[4].r , (float)cout[4].i - ); - - printf(" results from inverse kiss_fftr: %f,%f,%f,%f,%f ... \n" - ,(float)rout[0] ,(float)rout[1] ,(float)rout[2] ,(float)rout[3] ,(float)rout[4]); -*/ - for (i=0;i<NFFT;++i) { - sout[i] = cout[i].r; - } - - printf( "nfft=%d, inverse=%d, snr=%g\n", - NFFT,1, snr_compare_scal(rout,sout,NFFT) ); - free(kiss_fft_state); - free(kiss_fftr_state); - - return ret; -} diff --git a/celt/tests/cwrs32-test.c b/celt/tests/test_unit_cwrs32.c index ba19e4b1..905714e0 100644 --- a/celt/tests/cwrs32-test.c +++ b/celt/tests/test_unit_cwrs32.c @@ -12,13 +12,13 @@ #endif #define CELT_C -#include "../celt/stack_alloc.h" -#include "../celt/entenc.c" -#include "../celt/entdec.c" -#include "../celt/entcode.c" -#include "../celt/cwrs.c" -#include "../celt/mathops.c" -#include "../celt/rate.h" +#include "stack_alloc.h" +#include "entenc.c" +#include "entdec.c" +#include "entcode.c" +#include "cwrs.c" +#include "mathops.c" +#include "rate.h" #define NMAX (240) #define KMAX (128) diff --git a/celt/tests/dft-test.c b/celt/tests/test_unit_dft.c index 1bf4e74c..324244f3 100644 --- a/celt/tests/dft-test.c +++ b/celt/tests/test_unit_dft.c @@ -12,10 +12,10 @@ #include "kiss_fft.h" #define CELT_C -#include "../celt/stack_alloc.h" -#include "../celt/kiss_fft.c" -#include "../celt/mathops.c" -#include "../celt/entcode.c" +#include "stack_alloc.h" +#include "kiss_fft.c" +#include "mathops.c" +#include "entcode.c" #ifndef M_PI diff --git a/celt/tests/ectest.c b/celt/tests/test_unit_entropy.c index 29a82fcf..f151accb 100644 --- a/celt/tests/ectest.c +++ b/celt/tests/test_unit_entropy.c @@ -11,9 +11,9 @@ #include "entdec.h" #include <string.h> -#include "../celt/entenc.c" -#include "../celt/entdec.c" -#include "../celt/entcode.c" +#include "entenc.c" +#include "entdec.c" +#include "entcode.c" #ifndef M_LOG2E # define M_LOG2E 1.4426950408889634074 diff --git a/celt/tests/laplace-test.c b/celt/tests/test_unit_laplace.c index 3c4cbd72..5c80c190 100644 --- a/celt/tests/laplace-test.c +++ b/celt/tests/test_unit_laplace.c @@ -6,12 +6,12 @@ #include <stdlib.h> #include "laplace.h" #define CELT_C -#include "../celt/stack_alloc.h" +#include "stack_alloc.h" -#include "../celt/entenc.c" -#include "../celt/entdec.c" -#include "../celt/entcode.c" -#include "../celt/laplace.c" +#include "entenc.c" +#include "entdec.c" +#include "entcode.c" +#include "laplace.c" #define DATA_SIZE 40000 diff --git a/celt/tests/mathops-test.c b/celt/tests/test_unit_mathops.c index 92a79700..92a79700 100644 --- a/celt/tests/mathops-test.c +++ b/celt/tests/test_unit_mathops.c diff --git a/celt/tests/mdct-test.c b/celt/tests/test_unit_mdct.c index 67da13ad..07ac0ffd 100644 --- a/celt/tests/mdct-test.c +++ b/celt/tests/test_unit_mdct.c @@ -11,12 +11,12 @@ #include <stdio.h> #include "mdct.h" #define CELT_C -#include "../celt/stack_alloc.h" +#include "stack_alloc.h" -#include "../celt/kiss_fft.c" -#include "../celt/mdct.c" -#include "../celt/mathops.c" -#include "../celt/entcode.c" +#include "kiss_fft.c" +#include "mdct.c" +#include "mathops.c" +#include "entcode.c" #ifndef M_PI #define M_PI 3.141592653 diff --git a/celt/tests/rotation-test.c b/celt/tests/test_unit_rotation.c index 29082b6f..29082b6f 100644 --- a/celt/tests/rotation-test.c +++ b/celt/tests/test_unit_rotation.c diff --git a/celt/tests/type-test.c b/celt/tests/test_unit_types.c index 1c3357e9..1c3357e9 100644 --- a/celt/tests/type-test.c +++ b/celt/tests/test_unit_types.c |