shithub: aubio

Download patch

ref: addc9ec3911bfdfdf3231242082406aa9f0e592b
parent: cfd35dbe9ee20e0697abf8b3ffb2b7182b4e2b41
author: Paul Brossier <piem@piem.org>
date: Wed Sep 16 21:37:03 EDT 2009

test-filterbank.c: add trivial test for filterbank object

--- a/tests/src/Makefile.am
+++ b/tests/src/Makefile.am
@@ -16,6 +16,7 @@
 	test-resample \
 	test-peakpick \
 	test-phasevoc \
+  test-filterbank \
 	test-phasevoc-jack \
 	test-onsetdetection \
 	test-pitchyin \
--- /dev/null
+++ b/tests/src/test-filterbank.c
@@ -1,0 +1,40 @@
+#include <aubio.h>
+
+int
+main (void)
+{
+  /* allocate some memory */
+  uint_t win_s = 1024;          /* window size */
+  uint_t channels = 2;          /* number of channel */
+  uint_t n_filters = 13;        /* number of filters */
+  cvec_t *in = new_cvec (win_s, channels);      /* input buffer */
+  fvec_t *out = new_fvec (win_s, channels);     /* input buffer */
+  fvec_t *coeffs = NULL;
+
+  /* allocate fft and other memory space */
+  aubio_filterbank_t *o = new_aubio_filterbank (n_filters, win_s);
+
+  coeffs = aubio_filterbank_get_coeffs (o);
+  if (coeffs == NULL) {
+    return -1;
+  }
+
+  if (vec_max (coeffs) != 0.) {
+    return -1;
+  }
+
+  if (vec_min (coeffs) != 0.) {
+    return -1;
+  }
+
+  // fvec_print (coeffs);
+
+  aubio_filterbank_do (o, in, out);
+
+  del_aubio_filterbank (o);
+  del_cvec (in);
+  del_fvec (out);
+  aubio_cleanup ();
+
+  return 0;
+}