57 auto ret = std::shared_ptr<Spectrogram>(
new Spectrogram(fftlen));
58 ret->registerSelf(ret);
70 void apply_acc(std::vector<std::complex<float>> & invec,
71 std::vector<float> & outvec,
72 float accumulation_gain = 0.0);
82 void apply_max(std::vector<std::complex<float>> & invec,
83 std::vector<float> & outvec,
bool first =
true);
The Baseclass for all SoDa objects, and useful commonly used classes.
Base(const std::string &oname)
The constructor – pass a name for the object.
std::complex< float > * win_samp
void apply_acc(std::vector< std::complex< float > > &invec, std::vector< float > &outvec, float accumulation_gain=0.0)
Calculate the spectrogram from an input vector – add it to an accumulation buffer.
static SpectrogramPtr make(unsigned int fftlen)
Spectrogram(unsigned int fftlen)
Constructor.
std::complex< float > * fft_out
void apply_common(std::vector< std::complex< float > > &invec)
this is the common spectrogram calculation (window + fft + mag)
float * initBlackmanHarris()
all spectrograms are under a blackman harris window
void apply_max(std::vector< std::complex< float > > &invec, std::vector< float > &outvec, bool first=true)
Calculate the spectrogram from an input vector – add it to an accumulation buffer.
std::shared_ptr< Spectrogram > SpectrogramPtr