1 #include <ardour/transient_detector.h>
6 using namespace ARDOUR;
9 TransientDetector::TransientDetector (float sr)
10 : AudioAnalyser (sr, X_("vamp-example-plugins:percussiononsets"))
12 cerr << "plugin in constructor = " << plugin << endl;
15 TransientDetector::~TransientDetector()
20 TransientDetector::run (const std::string& path, boost::shared_ptr<Readable> src, uint32_t channel, vector<nframes64_t>& results)
22 current_results = &results;
23 int ret = analyse (path, src, channel);
29 TransientDetector::use_features (Plugin::FeatureSet& features, ostream* out)
31 const Plugin::FeatureList& fl (features[0]);
33 for (Plugin::FeatureList::const_iterator f = fl.begin(); f != fl.end(); ++f) {
35 if ((*f).hasTimestamp) {
38 (*out) << (*f).timestamp.toString() << endl;
41 current_results->push_back (RealTime::realTime2Frame ((*f).timestamp, sample_rate));
49 TransientDetector::set_threshold (float val)
52 plugin->setParameter ("threshold", val);
57 TransientDetector::set_sensitivity (float val)
60 plugin->setParameter ("sensitivity", val);