test-mfcc.c: add simple mfcc test
authorPaul Brossier <piem@piem.org>
Thu, 17 Sep 2009 18:07:24 +0000 (20:07 +0200)
committerPaul Brossier <piem@piem.org>
Thu, 17 Sep 2009 18:07:24 +0000 (20:07 +0200)
tests/src/Makefile.am
tests/src/test-mfcc.c [new file with mode: 0644]

index f97d33b5423d3ba14358d0308839895207bc174c..e40f739cd4ecb6ecdf62a461e4bdc33d0a8ac43e 100644 (file)
@@ -18,6 +18,7 @@ bin_PROGRAMS = \
        test-phasevoc \
        test-filterbank \
        test-filterbank_mel \
+       test-mfcc \
        test-phasevoc-jack \
        test-onsetdetection \
        test-pitchyin \
diff --git a/tests/src/test-mfcc.c b/tests/src/test-mfcc.c
new file mode 100644 (file)
index 0000000..474db96
--- /dev/null
@@ -0,0 +1,33 @@
+#include <aubio.h>
+
+int
+main (void)
+{
+  /* allocate some memory */
+  uint_t win_s = 512;           /* fft size */
+  uint_t channels = 1;          /* number of channel */
+  uint_t n_filters = 40;        /* number of filters */
+  uint_t n_coefs = 13;          /* number of coefficients */
+  cvec_t *in = new_cvec (win_s, channels);      /* input buffer */
+  fvec_t *out = new_fvec (n_coefs, channels);     /* input buffer */
+  smpl_t samplerate = 16000.;
+  uint_t i = 0;
+
+  /* allocate fft and other memory space */
+  aubio_mfcc_t *o = new_aubio_mfcc (win_s, samplerate, n_filters, n_coefs);
+
+  for (i = 0; i < in->length; i ++) {
+    in->norm[0][i] = 1.;
+  }
+
+  aubio_mfcc_do (o, in, out);
+
+  fvec_print (out);
+
+  del_aubio_mfcc (o);
+  del_cvec (in);
+  del_fvec (out);
+  aubio_cleanup ();
+
+  return 0;
+}