Mercurial > hg > piper-vamp-js
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 |