comparison perf-test-node.js @ 109:9d20eb251fbc

Update again to latest plugin-terminology-free schema
author Chris Cannam <c.cannam@qmul.ac.uk>
date Thu, 06 Oct 2016 14:32:58 +0100
parents 4845fbb1a516
children 90bf9d9f9c95
comparison
equal deleted inserted replaced
108:19d4ac80cb5a 109:9d20eb251fbc
52 frames.set(request.processInput.inputBuffers[i]); 52 frames.set(request.processInput.inputBuffers[i]);
53 buffers[i] = framesPtr; 53 buffers[i] = framesPtr;
54 } 54 }
55 55
56 const responseJson = vampipeProcessRaw( 56 const responseJson = vampipeProcessRaw(
57 request.pluginHandle, 57 request.handle,
58 buffersPtr, 58 buffersPtr,
59 request.processInput.timestamp.s, 59 request.processInput.timestamp.s,
60 request.processInput.timestamp.n); 60 request.processInput.timestamp.n);
61 61
62 for (let i = 0; i < nChannels; ++i) { 62 for (let i = 0; i < nChannels; ++i) {
136 return wfeatures.map(convertWireFeature); 136 return wfeatures.map(convertWireFeature);
137 } 137 }
138 138
139 function responseToFeatureSet(response) { 139 function responseToFeatureSet(response) {
140 const features = new Map(); 140 const features = new Map();
141 const processResponse = response.content; 141 const processResponse = response.result;
142 const wireFeatures = processResponse.features; 142 const wireFeatures = processResponse.features;
143 Object.keys(wireFeatures).forEach(key => { 143 Object.keys(wireFeatures).forEach(key => {
144 return features.set(key, convertWireFeatureList(wireFeatures[key])); 144 return features.set(key, convertWireFeatureList(wireFeatures[key]));
145 }); 145 });
146 return features; 146 return features;
149 function test() { 149 function test() {
150 150
151 const rate = 44100; 151 const rate = 44100;
152 152
153 comment("Loading zero crossings plugin..."); 153 comment("Loading zero crossings plugin...");
154 let result = request('{"type":"load","content": {"pluginKey":"vamp-example-plugins:zerocrossing","inputSampleRate":' + rate + ',"adapterFlags":["AdaptAllSafe"]}}'); 154 let result = request('{"method":"load","params": {"key":"vamp-example-plugins:zerocrossing","inputSampleRate":' + rate + ',"adapterFlags":["AdaptAllSafe"]}}');
155 155
156 const blockSize = 1024; 156 const blockSize = 1024;
157 157
158 result = request('{"type":"configure","content":{"pluginHandle":1,"configuration":{"blockSize": ' + blockSize + ', "channelCount": 1, "stepSize": ' + blockSize + '}}}'); 158 result = request('{"method":"configure","params":{"handle":1,"configuration":{"blockSize": ' + blockSize + ', "channelCount": 1, "stepSize": ' + blockSize + '}}}');
159 159
160 const nblocks = 1000; 160 const nblocks = 1000;
161 161
162 const makeBlock = (n => { 162 const makeBlock = (n => {
163 return { 163 return {
178 let start = (new Date()).getTime(); 178 let start = (new Date()).getTime();
179 comment("Start at " + start); 179 comment("Start at " + start);
180 180
181 for (let i = 0; i < nblocks; ++i) { 181 for (let i = 0; i < nblocks; ++i) {
182 result = processRaw({ 182 result = processRaw({
183 "pluginHandle": 1, 183 "handle": 1,
184 "processInput": blocks[i] 184 "processInput": blocks[i]
185 }); 185 });
186 let features = responseToFeatureSet(result); 186 let features = responseToFeatureSet(result);
187 let count = features.get("counts")[0].featureValues[0]; 187 let count = features.get("counts")[0].featureValues[0];
188 total += count; 188 total += count;
200 start = (new Date()).getTime(); 200 start = (new Date()).getTime();
201 comment("Start at " + start); 201 comment("Start at " + start);
202 202
203 for (let i = 0; i < nblocks; ++i) { 203 for (let i = 0; i < nblocks; ++i) {
204 result = processRaw({ 204 result = processRaw({
205 "pluginHandle": 1, 205 "handle": 1,
206 "processInput": blocks[i] 206 "processInput": blocks[i]
207 }); 207 });
208 let features = responseToFeatureSet(result); 208 let features = responseToFeatureSet(result);
209 let count = features.get("counts")[0].featureValues[0]; 209 let count = features.get("counts")[0].featureValues[0];
210 total += count; 210 total += count;
214 comment("Finish at " + finish + " for a time of " + (finish - start) + " ms"); 214 comment("Finish at " + finish + " for a time of " + (finish - start) + " ms");
215 215
216 comment("Total = " + total); 216 comment("Total = " + total);
217 217
218 comment("Cleaning up the plugin and getting any remaining features..."); 218 comment("Cleaning up the plugin and getting any remaining features...");
219 result = request('{"type":"finish","content":{"pluginHandle":1}}'); 219 result = request('{"method":"finish","params":{"handle":1}}');
220 } 220 }
221 221
222 test(); 222 test();
223 223