Mercurial > hg > azi
annotate Azi.h @ 35:299df1b44eff tip
Note source code available
author | Chris Cannam |
---|---|
date | Fri, 15 May 2020 09:40:50 +0100 |
parents | 844b318649b8 |
children |
rev | line source |
---|---|
Chris@0 | 1 #ifndef AZI_H |
Chris@0 | 2 #define AZI_H |
Chris@0 | 3 |
Chris@0 | 4 #include <vamp-sdk/Plugin.h> |
Chris@0 | 5 |
Chris@0 | 6 using std::string; |
Chris@0 | 7 |
Chris@0 | 8 |
Chris@0 | 9 class Azi : public Vamp::Plugin |
Chris@0 | 10 { |
Chris@0 | 11 public: |
Chris@0 | 12 Azi(float inputSampleRate); |
Chris@0 | 13 virtual ~Azi(); |
Chris@0 | 14 |
Chris@0 | 15 string getIdentifier() const; |
Chris@0 | 16 string getName() const; |
Chris@0 | 17 string getDescription() const; |
Chris@0 | 18 string getMaker() const; |
Chris@0 | 19 int getPluginVersion() const; |
Chris@0 | 20 string getCopyright() const; |
Chris@0 | 21 |
Chris@0 | 22 InputDomain getInputDomain() const; |
Chris@0 | 23 size_t getPreferredBlockSize() const; |
Chris@0 | 24 size_t getPreferredStepSize() const; |
Chris@0 | 25 size_t getMinChannelCount() const; |
Chris@0 | 26 size_t getMaxChannelCount() const; |
Chris@0 | 27 |
Chris@0 | 28 ParameterList getParameterDescriptors() const; |
Chris@0 | 29 float getParameter(string identifier) const; |
Chris@0 | 30 void setParameter(string identifier, float value); |
Chris@0 | 31 |
Chris@0 | 32 ProgramList getPrograms() const; |
Chris@0 | 33 string getCurrentProgram() const; |
Chris@0 | 34 void selectProgram(string name); |
Chris@0 | 35 |
Chris@0 | 36 OutputList getOutputDescriptors() const; |
Chris@0 | 37 |
Chris@0 | 38 bool initialise(size_t channels, size_t stepSize, size_t blockSize); |
Chris@0 | 39 void reset(); |
Chris@0 | 40 |
Chris@0 | 41 FeatureSet process(const float *const *inputBuffers, |
Chris@0 | 42 Vamp::RealTime timestamp); |
Chris@0 | 43 |
Chris@0 | 44 FeatureSet getRemainingFeatures(); |
Chris@0 | 45 |
Chris@0 | 46 protected: |
Chris@25 | 47 int m_channels; |
Chris@1 | 48 int m_width; |
Chris@1 | 49 int m_blockSize; |
Chris@1 | 50 |
Chris@3 | 51 float rms(const std::vector<float> &); |
Chris@0 | 52 }; |
Chris@0 | 53 |
Chris@0 | 54 |
Chris@0 | 55 |
Chris@0 | 56 #endif |