Mercurial > hg > piper-vamp-js
changeset 76:56709f8355cb
Use power spectrum rather than zero crossings, to exercise the input domain adapter, and make a process request in quick-test.cpp
author | Chris Cannam <c.cannam@qmul.ac.uk> |
---|---|
date | Tue, 06 Sep 2016 16:08:38 +0100 |
parents | 4c799e23eaef |
children | c8113837b479 |
files | Makefile.example.emscripten quick-test.cpp quick-test.js |
diffstat | 3 files changed, 20 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile.example.emscripten Wed Aug 24 18:00:28 2016 +0100 +++ b/Makefile.example.emscripten Tue Sep 06 16:08:38 2016 +0100 @@ -49,6 +49,7 @@ CXX := em++ #OPTFLAGS := -g3 OPTFLAGS := -O3 +#CXXFLAGS := -std=c++11 -fPIC -Wall -Wextra -DSINGLE_PRECISION_FFT $(OPTFLAGS) CXXFLAGS := -std=c++11 -fPIC -Wall -Wextra $(OPTFLAGS) INCPATH := -I$(SDK_DIR) -I.. -I../json
--- a/quick-test.cpp Wed Aug 24 18:00:28 2016 +0100 +++ b/quick-test.cpp Tue Sep 06 16:08:38 2016 +0100 @@ -4,7 +4,7 @@ using namespace std; -int main(int argc, char **argv) +int main(int, char **) { string example = "./example.so"; @@ -35,9 +35,25 @@ cout << listResponse << endl; freeFn(listResponse); - string loadRequest = "{\"type\":\"load\",\"content\": {\"pluginKey\":\"vamp-example-plugins:zerocrossing\",\"inputSampleRate\":44100,\"adapterFlags\":[\"AdaptAllSafe\"]}}"; + string loadRequest = "{\"type\":\"load\",\"content\": {\"pluginKey\":\"vamp-example-plugins:powerspectrum\",\"inputSampleRate\":44100,\"adapterFlags\":[\"AdaptAllSafe\"]}}"; const char *loadResponse = reqFn(loadRequest.c_str()); cout << loadResponse << endl; freeFn(loadResponse); + + string configRequest = "{\"type\":\"configure\",\"content\":{\"pluginHandle\":1,\"configuration\":{\"blockSize\":8,\"channelCount\":1,\"stepSize\":8}}}"; + const char *configResponse = reqFn(configRequest.c_str()); + cout << configResponse << endl; + freeFn(configResponse); + + string processRequest = "{\"type\":\"process\",\"content\":{\"pluginHandle\":1,\"processInput\":{\"timestamp\":{\"s\":0,\"n\":0},\"inputBuffers\":[{\"values\":[0,1,0,-1,0,1,0,-1]}]}}}"; + const char *processResponse = reqFn(processRequest.c_str()); + cout << processResponse << endl; + freeFn(processResponse); + + string finishRequest = "{\"type\":\"finish\",\"content\":{\"pluginHandle\":1}}"; + const char *finishResponse = reqFn(finishRequest.c_str()); + cout << finishResponse << endl; + freeFn(finishResponse); + }
--- a/quick-test.js Wed Aug 24 18:00:28 2016 +0100 +++ b/quick-test.js Tue Sep 06 16:08:38 2016 +0100 @@ -52,7 +52,7 @@ var result = request('{"type": "list"}'); comment("Loading zero crossings plugin..."); - result = request('{"type":"load","content": {"pluginKey":"vamp-example-plugins:zerocrossing","inputSampleRate":16,"adapterFlags":["AdaptAllSafe"]}}'); + result = request('{"type":"load","content": {"pluginKey":"vamp-example-plugins:powerspectrum","inputSampleRate":16,"adapterFlags":["AdaptAllSafe"]}}'); comment("I'm now assuming that the load succeeded and the returned pluginHandle was 1. I haven't bothered to parse the JSON. If those assumptions are wrong, this obviously isn't going to work. Configuring the plugin..."); result = request('{"type":"configure","content":{"pluginHandle":1,"configuration":{"blockSize": 8, "channelCount": 1, "stepSize": 8}}}');