Mercurial > hg > nnls-chroma
annotate Tuning.h @ 35:cf8898a0174c matthiasm-plugin
* Split out NNLSChroma plugin into three plugins (chroma, chordino, tuning) with a common base class.
There's still quite a lot of duplication between the getRemainingFeatures functions.
Also add copyright / copying headers, etc.
author | Chris Cannam |
---|---|
date | Fri, 22 Oct 2010 11:30:21 +0100 |
parents | NNLSChroma.h@93c836cfb8c5 |
children | 0bf1486dc674 |
rev | line source |
---|---|
Chris@23 | 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ |
matthiasm@0 | 2 |
Chris@35 | 3 /* |
Chris@35 | 4 NNLS-Chroma / Chordino |
matthiasm@0 | 5 |
Chris@35 | 6 Audio feature extraction plugins for chromagram and chord |
Chris@35 | 7 estimation. |
Chris@35 | 8 |
Chris@35 | 9 Centre for Digital Music, Queen Mary University of London. |
Chris@35 | 10 This file copyright 2008-2010 Matthias Mauch and QMUL. |
Chris@35 | 11 |
Chris@35 | 12 This program is free software; you can redistribute it and/or |
Chris@35 | 13 modify it under the terms of the GNU General Public License as |
Chris@35 | 14 published by the Free Software Foundation; either version 2 of the |
Chris@35 | 15 License, or (at your option) any later version. See the file |
Chris@35 | 16 COPYING included with this distribution for more information. |
Chris@35 | 17 */ |
Chris@35 | 18 |
Chris@35 | 19 #ifndef _TUNING_ |
Chris@35 | 20 #define _TUNING_ |
Chris@35 | 21 |
Chris@35 | 22 #include "NNLSBase.h" |
Chris@35 | 23 |
matthiasm@0 | 24 using namespace std; |
matthiasm@0 | 25 |
matthiasm@0 | 26 |
Chris@35 | 27 class Tuning : public NNLSBase |
matthiasm@0 | 28 { |
matthiasm@0 | 29 public: |
Chris@35 | 30 Tuning(float inputSampleRate); |
Chris@35 | 31 virtual ~Tuning(); |
matthiasm@0 | 32 |
matthiasm@0 | 33 string getIdentifier() const; |
matthiasm@0 | 34 string getName() const; |
matthiasm@0 | 35 string getDescription() const; |
matthiasm@0 | 36 |
matthiasm@0 | 37 OutputList getOutputDescriptors() const; |
matthiasm@0 | 38 |
Chris@35 | 39 FeatureSet process(const float *const *inputBuffers, |
Chris@35 | 40 Vamp::RealTime timestamp); |
Chris@35 | 41 FeatureSet getRemainingFeatures(); |
Chris@35 | 42 |
matthiasm@0 | 43 bool initialise(size_t channels, size_t stepSize, size_t blockSize); |
matthiasm@0 | 44 void reset(); |
matthiasm@0 | 45 |
matthiasm@0 | 46 protected: |
Chris@35 | 47 mutable int m_outputTuning; |
Chris@35 | 48 mutable int m_outputLocalTuning; |
matthiasm@0 | 49 }; |
matthiasm@0 | 50 |
matthiasm@0 | 51 |
matthiasm@0 | 52 |
matthiasm@0 | 53 #endif |