Mercurial > hg > piper-vamp-js
changeset 40:a734a7e976fa jsonrpc
Update again to latest plugin-terminology-free schema
author | Chris Cannam |
---|---|
date | Thu, 06 Oct 2016 14:32:58 +0100 |
parents | a9dbf9f45896 |
children | 39436f3b8dcd |
files | VamPipePluginLibrary.cpp example.cpp perf-test-node.js perf-test.js qm-vamp-plugins.cpp quick-test.cpp quick-test.js silvet.cpp vamp-test-plugin.cpp |
diffstat | 9 files changed, 49 insertions(+), 49 deletions(-) [+] |
line wrap: on
line diff
--- a/VamPipePluginLibrary.cpp Wed Oct 05 18:00:58 2016 +0100 +++ b/VamPipePluginLibrary.cpp Thu Oct 06 14:32:58 2016 +0100 @@ -126,18 +126,18 @@ } string -VamPipePluginLibrary::processRawImpl(int pluginHandle, +VamPipePluginLibrary::processRawImpl(int handle, const float *const *inputBuffers, int sec, int nsec) { - Vamp::Plugin *plugin = m_mapper.handleToPlugin(pluginHandle); + Vamp::Plugin *plugin = m_mapper.handleToPlugin(handle); if (!plugin) { return VampJson::fromError("unknown plugin handle", RRType::Process) .dump(); } - if (!m_mapper.isConfigured(pluginHandle)) { + if (!m_mapper.isConfigured(handle)) { return VampJson::fromError("plugin has not been configured", RRType::Process) .dump(); } @@ -150,7 +150,7 @@ m_useBase64 = true; - return VampJson::fromVampResponse_Process + return VampJson::fromRpcResponse_Process (resp, m_mapper, VampJson::BufferSerialisation::Base64) .dump(); @@ -181,12 +181,12 @@ switch (type) { case RRType::List: - rj = VampJson::fromVampResponse_List(listPluginData()); + rj = VampJson::fromRpcResponse_List(listPluginData()); break; case RRType::Load: { - auto req = VampJson::toVampRequest_Load(j, err); + auto req = VampJson::toRpcRequest_Load(j, err); if (err != "") { rj = VampJson::fromError(err, type); } else { @@ -195,7 +195,7 @@ rj = VampJson::fromError(err, type); } else { m_mapper.addPlugin(resp.plugin); - rj = VampJson::fromVampResponse_Load(resp, m_mapper); + rj = VampJson::fromRpcResponse_Load(resp, m_mapper); } } break; @@ -203,7 +203,7 @@ case RRType::Configure: { - auto req = VampJson::toVampRequest_Configure(j, m_mapper, err); + auto req = VampJson::toRpcRequest_Configure(j, m_mapper, err); if (err != "") { rj = VampJson::fromError(err, type); } else { @@ -220,7 +220,7 @@ m_mapper.markConfigured(h, req.configuration.channelCount, req.configuration.blockSize); - rj = VampJson::fromVampResponse_Configure(resp, m_mapper); + rj = VampJson::fromRpcResponse_Configure(resp, m_mapper); } } } @@ -231,7 +231,7 @@ { VampJson::BufferSerialisation serialisation; - auto req = VampJson::toVampRequest_Process(j, m_mapper, + auto req = VampJson::toRpcRequest_Process(j, m_mapper, serialisation, err); if (err != "") { rj = VampJson::fromError(err, type); @@ -268,7 +268,7 @@ resp.plugin = req.plugin; resp.features = req.plugin->process(fbuffers, req.timestamp); delete[] fbuffers; - rj = VampJson::fromVampResponse_Process + rj = VampJson::fromRpcResponse_Process (resp, m_mapper, serialisation); } } @@ -278,7 +278,7 @@ case RRType::Finish: { - auto req = VampJson::toVampRequest_Finish(j, m_mapper, err); + auto req = VampJson::toRpcRequest_Finish(j, m_mapper, err); if (err != "") { rj = VampJson::fromError(err, type); } else { @@ -293,7 +293,7 @@ resp.plugin = req.plugin; resp.features = req.plugin->getRemainingFeatures(); - rj = VampJson::fromVampResponse_Finish + rj = VampJson::fromRpcResponse_Finish (resp, m_mapper, serialisation); m_mapper.removePlugin(h);
--- a/example.cpp Wed Oct 05 18:00:58 2016 +0100 +++ b/example.cpp Thu Oct 06 14:32:58 2016 +0100 @@ -69,11 +69,11 @@ return library.requestJson(request); } -const char *vampipeProcessRaw(int pluginHandle, +const char *vampipeProcessRaw(int handle, const float *const *inputBuffers, int sec, int nsec) { - return library.processRaw(pluginHandle, inputBuffers, sec, nsec); + return library.processRaw(handle, inputBuffers, sec, nsec); } void vampipeFreeJson(const char *json) {
--- a/perf-test-node.js Wed Oct 05 18:00:58 2016 +0100 +++ b/perf-test-node.js Thu Oct 06 14:32:58 2016 +0100 @@ -54,7 +54,7 @@ } const responseJson = vampipeProcessRaw( - request.pluginHandle, + request.handle, buffersPtr, request.processInput.timestamp.s, request.processInput.timestamp.n); @@ -138,7 +138,7 @@ function responseToFeatureSet(response) { const features = new Map(); - const processResponse = response.content; + const processResponse = response.result; const wireFeatures = processResponse.features; Object.keys(wireFeatures).forEach(key => { return features.set(key, convertWireFeatureList(wireFeatures[key])); @@ -151,11 +151,11 @@ const rate = 44100; comment("Loading zero crossings plugin..."); - let result = request('{"type":"load","content": {"pluginKey":"vamp-example-plugins:zerocrossing","inputSampleRate":' + rate + ',"adapterFlags":["AdaptAllSafe"]}}'); + let result = request('{"method":"load","params": {"key":"vamp-example-plugins:zerocrossing","inputSampleRate":' + rate + ',"adapterFlags":["AdaptAllSafe"]}}'); const blockSize = 1024; - result = request('{"type":"configure","content":{"pluginHandle":1,"configuration":{"blockSize": ' + blockSize + ', "channelCount": 1, "stepSize": ' + blockSize + '}}}'); + result = request('{"method":"configure","params":{"handle":1,"configuration":{"blockSize": ' + blockSize + ', "channelCount": 1, "stepSize": ' + blockSize + '}}}'); const nblocks = 1000; @@ -180,7 +180,7 @@ for (let i = 0; i < nblocks; ++i) { result = processRaw({ - "pluginHandle": 1, + "handle": 1, "processInput": blocks[i] }); let features = responseToFeatureSet(result); @@ -202,7 +202,7 @@ for (let i = 0; i < nblocks; ++i) { result = processRaw({ - "pluginHandle": 1, + "handle": 1, "processInput": blocks[i] }); let features = responseToFeatureSet(result); @@ -216,7 +216,7 @@ comment("Total = " + total); comment("Cleaning up the plugin and getting any remaining features..."); - result = request('{"type":"finish","content":{"pluginHandle":1}}'); + result = request('{"method":"finish","params":{"handle":1}}'); } test();
--- a/perf-test.js Wed Oct 05 18:00:58 2016 +0100 +++ b/perf-test.js Thu Oct 06 14:32:58 2016 +0100 @@ -52,7 +52,7 @@ } const responseJson = vampipeProcessRaw( - request.pluginHandle, + request.handle, buffersPtr, request.processInput.timestamp.s, request.processInput.timestamp.n); @@ -136,7 +136,7 @@ function responseToFeatureSet(response) { const features = new Map(); - const processResponse = response.content; + const processResponse = response.result; const wireFeatures = processResponse.features; Object.keys(wireFeatures).forEach(key => { return features.set(key, convertWireFeatureList(wireFeatures[key])); @@ -149,11 +149,11 @@ const rate = 44100; comment("Loading zero crossings plugin..."); - let result = request('{"type":"load","content": {"pluginKey":"vamp-example-plugins:zerocrossing","inputSampleRate":' + rate + ',"adapterFlags":["AdaptAllSafe"]}}'); + let result = request('{"method":"load","params": {"key":"vamp-example-plugins:zerocrossing","inputSampleRate":' + rate + ',"adapterFlags":["AdaptAllSafe"]}}'); const blockSize = 1024; - result = request('{"type":"configure","content":{"pluginHandle":1,"configuration":{"blockSize": ' + blockSize + ', "channelCount": 1, "stepSize": ' + blockSize + '}}}'); + result = request('{"method":"configure","params":{"handle":1,"configuration":{"blockSize": ' + blockSize + ', "channelCount": 1, "stepSize": ' + blockSize + '}}}'); const nblocks = 1000; @@ -178,7 +178,7 @@ for (let i = 0; i < nblocks; ++i) { result = processRaw({ - "pluginHandle": 1, + "handle": 1, "processInput": blocks[i] }); let features = responseToFeatureSet(result); @@ -200,7 +200,7 @@ for (let i = 0; i < nblocks; ++i) { result = processRaw({ - "pluginHandle": 1, + "handle": 1, "processInput": blocks[i] }); let features = responseToFeatureSet(result); @@ -214,7 +214,7 @@ comment("Total = " + total); comment("Cleaning up the plugin and getting any remaining features..."); - result = request('{"type":"finish","content":{"pluginHandle":1}}'); + result = request('{"method":"finish","params":{"handle":1}}'); } window.onload = function() {
--- a/qm-vamp-plugins.cpp Wed Oct 05 18:00:58 2016 +0100 +++ b/qm-vamp-plugins.cpp Thu Oct 06 14:32:58 2016 +0100 @@ -90,11 +90,11 @@ return library.requestJson(request); } -const char *vampipeProcessRaw(int pluginHandle, +const char *vampipeProcessRaw(int handle, const float *const *inputBuffers, int sec, int nsec) { - return library.processRaw(pluginHandle, inputBuffers, sec, nsec); + return library.processRaw(handle, inputBuffers, sec, nsec); } void vampipeFreeJson(const char *json) {
--- a/quick-test.cpp Wed Oct 05 18:00:58 2016 +0100 +++ b/quick-test.cpp Thu Oct 06 14:32:58 2016 +0100 @@ -35,27 +35,27 @@ cout << listResponse << endl; freeFn(listResponse); - string loadRequest = "{\"method\":\"load\",\"params\": {\"pluginKey\":\"vamp-example-plugins:powerspectrum\",\"inputSampleRate\":44100,\"adapterFlags\":[\"AdaptAllSafe\"]}}"; + string loadRequest = "{\"method\":\"load\",\"params\": {\"key\":\"vamp-example-plugins:powerspectrum\",\"inputSampleRate\":44100,\"adapterFlags\":[\"AdaptAllSafe\"]}}"; const char *loadResponse = reqFn(loadRequest.c_str()); cout << loadResponse << endl; freeFn(loadResponse); - string configRequest = "{\"method\":\"configure\",\"params\":{\"pluginHandle\":1,\"configuration\":{\"blockSize\":8,\"channelCount\":1,\"stepSize\":8}}}"; + string configRequest = "{\"method\":\"configure\",\"params\":{\"handle\":1,\"configuration\":{\"blockSize\":8,\"channelCount\":1,\"stepSize\":8}}}"; const char *configResponse = reqFn(configRequest.c_str()); cout << configResponse << endl; freeFn(configResponse); - string processRequest = "{\"method\":\"process\",\"params\":{\"pluginHandle\":1,\"processInput\":{\"timestamp\":{\"s\":0,\"n\":0},\"inputBuffers\":[[0,1,0,-1,0,1,0,-1]]}}}"; + string processRequest = "{\"method\":\"process\",\"params\":{\"handle\":1,\"processInput\":{\"timestamp\":{\"s\":0,\"n\":0},\"inputBuffers\":[[0,1,0,-1,0,1,0,-1]]}}}"; const char *processResponse = reqFn(processRequest.c_str()); cout << processResponse << endl; freeFn(processResponse); - string b64processRequest = "{\"method\":\"process\",\"params\":{\"pluginHandle\":1,\"processInput\":{\"timestamp\":{\"s\":0,\"n\":0},\"inputBuffers\":[\"AAAAAAAAgD8AAAAAAACAvwAAAAAAAIA/AAAAAAAAgL8\"]}}}"; + string b64processRequest = "{\"method\":\"process\",\"params\":{\"handle\":1,\"processInput\":{\"timestamp\":{\"s\":0,\"n\":0},\"inputBuffers\":[\"AAAAAAAAgD8AAAAAAACAvwAAAAAAAIA/AAAAAAAAgL8\"]}}}"; const char *b64processResponse = reqFn(b64processRequest.c_str()); cout << b64processResponse << endl; freeFn(b64processResponse); - string finishRequest = "{\"method\":\"finish\",\"params\":{\"pluginHandle\":1}}"; + string finishRequest = "{\"method\":\"finish\",\"params\":{\"handle\":1}}"; const char *finishResponse = reqFn(finishRequest.c_str()); cout << finishResponse << endl; freeFn(finishResponse);
--- a/quick-test.js Wed Oct 05 18:00:58 2016 +0100 +++ b/quick-test.js Thu Oct 06 14:32:58 2016 +0100 @@ -49,26 +49,26 @@ function test() { comment("Querying plugin list..."); - var result = request('{"type": "list"}'); + var result = request('{"method": "list"}'); comment("Loading zero crossings plugin..."); - result = request('{"type":"load","content": {"pluginKey":"vamp-example-plugins:powerspectrum","inputSampleRate":16,"adapterFlags":["AdaptAllSafe"]}}'); + result = request('{"method":"load","params": {"key":"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}}}'); + comment("I'm now assuming that the load succeeded and the returned handle 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('{"method":"configure","params":{"handle":1,"configuration":{"blockSize": 8, "channelCount": 1, "stepSize": 8}}}'); comment("If I try to configure it again, it should fail because it's already configured... but this doesn't change anything, and subsequent processing should work fine. Just an example of a failure call. NB this only works if Emscripten has exception catching enabled -- it's off by default in opt builds, which would just end the script here. Wonder what the performance penalty is like."); - result = request('{"type":"configure","content":{"pluginHandle":1,"configuration":{"blockSize": 8, "channelCount": 1, "stepSize": 8}}}'); + result = request('{"method":"configure","params":{"handle":1,"configuration":{"blockSize": 8, "channelCount": 1, "stepSize": 8}}}'); comment("Now processing a couple of blocks of data, on the same assumptions..."); - result = request('{"type":"process","content":{"pluginHandle":1,"processInput":{"timestamp":{"s":0,"n":0},"inputBuffers":[{"values":[0,1,-1,0,1,-1,0,1]}]}}}'); - result = request('{"type":"process","content":{"pluginHandle":1,"processInput":{"timestamp":{"s":0,"n":500000000},"inputBuffers":[{"values":[0,1,-1,0,1,-1,0,1]}]}}}'); + result = request('{"method":"process","params":{"handle":1,"processInput":{"timestamp":{"s":0,"n":0},"inputBuffers":[[0,1,-1,0,1,-1,0,1]]}}}'); + result = request('{"method":"process","params":{"handle":1,"processInput":{"timestamp":{"s":0,"n":500000000},"inputBuffers":[[0,1,-1,0,1,-1,0,1]]}}}'); comment("Cleaning up the plugin and getting any remaining features..."); - result = request('{"type":"finish","content":{"pluginHandle":1}}'); + result = request('{"method":"finish","params":{"handle":1}}'); comment("A process call should now fail, as the plugin has been cleaned up."); - result = request('{"type":"process","content":{"pluginHandle":1,"processInput":{"timestamp":{"s":0,"n":1000000000},"inputBuffers":[{"values":[0,1,-1,0,1,-1,0,1]}]}}}'); + result = request('{"method":"process","params":{"handle":1,"processInput":{"timestamp":{"s":0,"n":1000000000},"inputBuffers":[{"values":[0,1,-1,0,1,-1,0,1]}]}}}'); } window.onload = function() {
--- a/silvet.cpp Wed Oct 05 18:00:58 2016 +0100 +++ b/silvet.cpp Thu Oct 06 14:32:58 2016 +0100 @@ -21,11 +21,11 @@ return library.requestJson(request); } -const char *vampipeProcessRaw(int pluginHandle, +const char *vampipeProcessRaw(int handle, const float *const *inputBuffers, int sec, int nsec) { - return library.processRaw(pluginHandle, inputBuffers, sec, nsec); + return library.processRaw(handle, inputBuffers, sec, nsec); } void vampipeFreeJson(const char *json) {
--- a/vamp-test-plugin.cpp Wed Oct 05 18:00:58 2016 +0100 +++ b/vamp-test-plugin.cpp Thu Oct 06 14:32:58 2016 +0100 @@ -68,11 +68,11 @@ return library.requestJson(request); } -const char *vampipeProcessRaw(int pluginHandle, +const char *vampipeProcessRaw(int handle, const float *const *inputBuffers, int sec, int nsec) { - return library.processRaw(pluginHandle, inputBuffers, sec, nsec); + return library.processRaw(handle, inputBuffers, sec, nsec); } void vampipeFreeJson(const char *json) {