From c5085b5a31c1e25bf83ae910710996863531f8b2 Mon Sep 17 00:00:00 2001 From: Tim Redfern Date: Fri, 30 Aug 2013 18:27:08 +0100 Subject: value output from audio analysis --- rotord/src/vampHost.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'rotord/src/vampHost.cpp') 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++; } -- cgit v1.2.3