aboutsummaryrefslogtreecommitdiff
path: root/swig
diff options
context:
space:
mode:
authorJamie Bullock <jamie@postlude.co.uk>2007-12-21 11:05:20 +0000
committerJamie Bullock <jamie@postlude.co.uk>2007-12-21 11:05:20 +0000
commit672302aadaba97f3e5df256e3d358cb2411ab3ed (patch)
tree010d87021ec0debbddf69aa4b2ef580902a945a8 /swig
parent9ca79a2cc14c18758baa1adfaead49e70d80003e (diff)
downloadLibXtract-672302aadaba97f3e5df256e3d358cb2411ab3ed.tar.gz
LibXtract-672302aadaba97f3e5df256e3d358cb2411ab3ed.tar.bz2
LibXtract-672302aadaba97f3e5df256e3d358cb2411ab3ed.zip
- Added some previously uncommitted Pd testing examples
- Improved python bindings. Now we can do vector features as well as scalar from Python
Diffstat (limited to 'swig')
-rw-r--r--swig/python/test.py19
-rw-r--r--swig/python/xtract.i12
-rw-r--r--swig/xtract.i9
3 files changed, 26 insertions, 14 deletions
diff --git a/swig/python/test.py b/swig/python/test.py
index 4d994ac..f7297f8 100644
--- a/swig/python/test.py
+++ b/swig/python/test.py
@@ -3,11 +3,11 @@
try:
import xtract
except ImportError:
- print 'Failed to load the library "jxtract"'
+ print 'Failed to load the library "xtract"'
print '\nRunning libxtract Python bindings test...\n'
-len = 5
+len = 8
a = xtract.floatArray(len)
temp = []
@@ -19,4 +19,19 @@ for i in range(0, len):
print 'The mean of ' + ', '.join(temp) + ' is: %.2f' % \
xtract.xtract_mean(a,len,None)[1]
+print 'Computing spectrum...'
+
+argv = xtract.floatArray(1)
+argv[0] = 44100.0 / len # Fake sample rate
+
+xtract.xtract_init_fft(len, xtract.XTRACT_SPECTRUM);
+
+result = xtract.floatArray(len)
+
+xtract.xtract_spectrum(a,len,argv, result)
+
+
+for i in range(len):
+ print result[i]
+
print '\nFinished!\n'
diff --git a/swig/python/xtract.i b/swig/python/xtract.i
deleted file mode 100644
index b363f2e..0000000
--- a/swig/python/xtract.i
+++ /dev/null
@@ -1,12 +0,0 @@
-%module xtract
-%include carrays.i
-%include typemaps.i
-
-%{
-#include "xtract/xtract_scalar.h"
-%}
-
-%array_functions(float, floatArray);
-%apply float *OUTPUT { float *result };
-
-%include "xtract/xtract_scalar.h"
diff --git a/swig/xtract.i b/swig/xtract.i
index 58c9f18..a39a484 100644
--- a/swig/xtract.i
+++ b/swig/xtract.i
@@ -4,10 +4,19 @@
%{
#include "xtract/xtract_scalar.h"
+#include "xtract/xtract_vector.h"
+#include "xtract/libxtract.h"
%}
%array_class(float, floatArray);
%apply float *OUTPUT { float *result };
/* %apply float *INPUT { float *data }; */
+%ignore xtract;
+
%include "xtract/xtract_scalar.h"
+
+%clear float *result;
+
+%include "xtract/xtract_vector.h"
+%include "xtract/libxtract.h"