diff options
| author | Tim Redfern <tim@eclectronics.org> | 2013-08-30 18:27:08 +0100 |
|---|---|---|
| committer | Tim Redfern <tim@eclectronics.org> | 2013-08-30 18:27:08 +0100 |
| commit | c5085b5a31c1e25bf83ae910710996863531f8b2 (patch) | |
| tree | 86bfd31285853f18f5ae436970deb0bc4f3e0fe1 /rotord/src/vampHost.cpp | |
| parent | f38cdcf952ac5c631ed285282e1bc2943f199101 (diff) | |
value output from audio analysis
Diffstat (limited to 'rotord/src/vampHost.cpp')
| -rw-r--r-- | rotord/src/vampHost.cpp | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/rotord/src/vampHost.cpp b/rotord/src/vampHost.cpp index 65755eb..de7bb53 100644 --- a/rotord/src/vampHost.cpp +++ b/rotord/src/vampHost.cpp @@ -605,7 +605,7 @@ bool vampHost::Analyser::init(const string &soname,const string &id,const int &_ scale=(1.0f/pow(2.0f,bits)); features.clear(); //in case of reuse - features[0.0f]=0; + features[0.0f]=feature(); loader = PluginLoader::getInstance(); key = loader->composePluginKey(soname, id); @@ -763,7 +763,10 @@ void vampHost::Analyser::process_frame(uint8_t *data,int samples_in_frame){ Plugin::FeatureSet feat=plugin->process(plugbuf, rt); for (unsigned int i = 0; i < feat[outputNo].size(); ++i) { - features[((float)feat[outputNo][i].timestamp.sec)+(((float)feat[outputNo][i].timestamp.nsec)*.000000001)]=featureNo; + feature f; + f.number=featureNo; + f.values=feat[outputNo][i].values; + features[((float)feat[outputNo][i].timestamp.sec)+(((float)feat[outputNo][i].timestamp.nsec)*.000000001)]=f; featureNo++; } @@ -794,14 +797,20 @@ void vampHost::Analyser::cleanup(){ Plugin::FeatureSet feat=plugin->process(plugbuf, rt); for (unsigned int i = 0; i < feat[outputNo].size(); ++i) { - features[((float)feat[outputNo][i].timestamp.sec)+(((float)feat[outputNo][i].timestamp.nsec)*.000000001)]=featureNo; + feature f; + f.number=featureNo; + f.values=feat[outputNo][i].values; + features[((float)feat[outputNo][i].timestamp.sec)+(((float)feat[outputNo][i].timestamp.nsec)*.000000001)]=f; featureNo++; } feat=plugin->getRemainingFeatures(); for (unsigned int i = 0; i < feat[outputNo].size(); ++i) { - features[((float)feat[outputNo][i].timestamp.sec)+(((float)feat[outputNo][i].timestamp.nsec)*.000000001)]=featureNo; + feature f; + f.number=featureNo; + f.values=feat[outputNo][i].values; + features[((float)feat[outputNo][i].timestamp.sec)+(((float)feat[outputNo][i].timestamp.nsec)*.000000001)]=f; featureNo++; } |
