comparison perf-test.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
50 frames.set(request.processInput.inputBuffers[i]); 50 frames.set(request.processInput.inputBuffers[i]);
51 buffers[i] = framesPtr; 51 buffers[i] = framesPtr;
52 } 52 }
53 53
54 const responseJson = vampipeProcessRaw( 54 const responseJson = vampipeProcessRaw(
55 request.pluginHandle, 55 request.handle,
56 buffersPtr, 56 buffersPtr,
57 request.processInput.timestamp.s, 57 request.processInput.timestamp.s,
58 request.processInput.timestamp.n); 58 request.processInput.timestamp.n);
59 59
60 for (let i = 0; i < nChannels; ++i) { 60 for (let i = 0; i < nChannels; ++i) {
134 return wfeatures.map(convertWireFeature); 134 return wfeatures.map(convertWireFeature);
135 } 135 }
136 136
137 function responseToFeatureSet(response) { 137 function responseToFeatureSet(response) {
138 const features = new Map(); 138 const features = new Map();
139 const processResponse = response.content; 139 const processResponse = response.result;
140 const wireFeatures = processResponse.features; 140 const wireFeatures = processResponse.features;
141 Object.keys(wireFeatures).forEach(key => { 141 Object.keys(wireFeatures).forEach(key => {
142 return features.set(key, convertWireFeatureList(wireFeatures[key])); 142 return features.set(key, convertWireFeatureList(wireFeatures[key]));
143 }); 143 });
144 return features; 144 return features;
147 function test() { 147 function test() {
148 148
149 const rate = 44100; 149 const rate = 44100;
150 150
151 comment("Loading zero crossings plugin..."); 151 comment("Loading zero crossings plugin...");
152 let result = request('{"type":"load","content": {"pluginKey":"vamp-example-plugins:zerocrossing","inputSampleRate":' + rate + ',"adapterFlags":["AdaptAllSafe"]}}'); 152 let result = request('{"method":"load","params": {"key":"vamp-example-plugins:zerocrossing","inputSampleRate":' + rate + ',"adapterFlags":["AdaptAllSafe"]}}');
153 153
154 const blockSize = 1024; 154 const blockSize = 1024;
155 155
156 result = request('{"type":"configure","content":{"pluginHandle":1,"configuration":{"blockSize": ' + blockSize + ', "channelCount": 1, "stepSize": ' + blockSize + '}}}'); 156 result = request('{"method":"configure","params":{"handle":1,"configuration":{"blockSize": ' + blockSize + ', "channelCount": 1, "stepSize": ' + blockSize + '}}}');
157 157
158 const nblocks = 1000; 158 const nblocks = 1000;
159 159
160 const makeBlock = (n => { 160 const makeBlock = (n => {
161 return { 161 return {
176 let start = (new Date()).getTime(); 176 let start = (new Date()).getTime();
177 comment("Start at " + start); 177 comment("Start at " + start);
178 178
179 for (let i = 0; i < nblocks; ++i) { 179 for (let i = 0; i < nblocks; ++i) {
180 result = processRaw({ 180 result = processRaw({
181 "pluginHandle": 1, 181 "handle": 1,
182 "processInput": blocks[i] 182 "processInput": blocks[i]
183 }); 183 });
184 let features = responseToFeatureSet(result); 184 let features = responseToFeatureSet(result);
185 let count = features.get("counts")[0].featureValues[0]; 185 let count = features.get("counts")[0].featureValues[0];
186 total += count; 186 total += count;
198 start = (new Date()).getTime(); 198 start = (new Date()).getTime();
199 comment("Start at " + start); 199 comment("Start at " + start);
200 200
201 for (let i = 0; i < nblocks; ++i) { 201 for (let i = 0; i < nblocks; ++i) {
202 result = processRaw({ 202 result = processRaw({
203 "pluginHandle": 1, 203 "handle": 1,
204 "processInput": blocks[i] 204 "processInput": blocks[i]
205 }); 205 });
206 let features = responseToFeatureSet(result); 206 let features = responseToFeatureSet(result);
207 let count = features.get("counts")[0].featureValues[0]; 207 let count = features.get("counts")[0].featureValues[0];
208 total += count; 208 total += count;
212 comment("Finish at " + finish + " for a time of " + (finish - start) + " ms"); 212 comment("Finish at " + finish + " for a time of " + (finish - start) + " ms");
213 213
214 comment("Total = " + total); 214 comment("Total = " + total);
215 215
216 comment("Cleaning up the plugin and getting any remaining features..."); 216 comment("Cleaning up the plugin and getting any remaining features...");
217 result = request('{"type":"finish","content":{"pluginHandle":1}}'); 217 result = request('{"method":"finish","params":{"handle":1}}');
218 } 218 }
219 219
220 window.onload = function() { 220 window.onload = function() {
221 test(); 221 test();
222 } 222 }