X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Ftransient_detector.h;h=d29e12463f7aa6f3c7826ea30aa43476b7356c8e;hb=ace9ee194d4f6599c79242d6dc523af5099eab0f;hp=259b79176fe68eb236a6df09835e15628d39130a;hpb=80c3677c837cc9eb432df3d65a34aba543fa7258;p=ardour.git diff --git a/libs/ardour/ardour/transient_detector.h b/libs/ardour/ardour/transient_detector.h index 259b79176f..d29e12463f 100644 --- a/libs/ardour/ardour/transient_detector.h +++ b/libs/ardour/ardour/transient_detector.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2008 Paul Davis + Copyright (C) 2008 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,37 +20,36 @@ #ifndef __ardour_transient_detector_h__ #define __ardour_transient_detector_h__ -#include +#include "ardour/audioanalyser.h" namespace ARDOUR { class AudioSource; +class Readable; class Session; -class TransientDetector : public AudioAnalyser +class LIBARDOUR_API TransientDetector : public AudioAnalyser { +public: + TransientDetector (float sample_rate); + ~TransientDetector(); - public: - TransientDetector (float sample_rate); - ~TransientDetector(); + static std::string operational_identifier(); - static std::string operational_identifier(); + void set_threshold (float); + void set_sensitivity (uint32_t, float); - void set_threshold (float); - void set_sensitivity (float); + int run (const std::string& path, Readable*, uint32_t channel, AnalysisFeatureList& results); + void update_positions (Readable* src, uint32_t channel, AnalysisFeatureList& results); - float get_threshold () const; - float get_sensitivity () const; - - int run (const std::string& path, Readable*, uint32_t channel, AnalysisFeatureList& results); + static void cleanup_transients (AnalysisFeatureList&, float sr, float gap_msecs); - static void cleanup_transients (AnalysisFeatureList&, float sr, float gap_msecs); - - protected: - AnalysisFeatureList* current_results; - int use_features (Vamp::Plugin::FeatureSet&, std::ostream*); +protected: + AnalysisFeatureList* current_results; + int use_features (Vamp::Plugin::FeatureSet&, std::ostream*); - static std::string _op_id; + static std::string _op_id; + float threshold; }; } /* namespace */