Mixxx

Simac::ConstantQTransform Class Reference

#include <ConstantQTransform.hxx>

List of all members.

Public Types

typedef std::vector< double > ConstantQSpectrum
typedef std::vector< double > Spectrum

Public Member Functions

void doIt (const std::vector< double > &fftData)
 ConstantQTransform (unsigned FS, double fmin, double fmax, unsigned binsPerOctave)
void sparsekernel (double)
 ~ConstantQTransform ()
const ConstantQSpectrumconstantQSpectrum () const
double getQ () const
int getK () const
int getfftlength () const

Detailed Description

ConstantQTransform extract a ConstantQ spectrum using Blankertz's paper algorithm. This transformation is similar to the Fourier transform but it generates bins which bins are proportional to their center frequency.

This implementation saves computational time by moving most computation to configuration time and using a fft as starting point for the transform.

Parameters:

  • samplinRate: The sampling rate for the input audio
  • minFrequency: The minimum frequency to be considered
  • maxFrequency: The maximum frequency to be considered
  • binsPerOctave: The number of bins required for each octave

Configuration Outputs:

  • Q: Quality factor for the bins
  • K: Number of Constant Q spectrum bins
  • spectrumSize: Number of required fft spectrum bins

Inputs:

  • spectrum: An interlaced complex spectrum (complex, so, size 2*fftLength)

Outputs:

  • constantQSpectrum: An interlaced complex spectrum (complex, so, size 2*K)

Definition at line 62 of file ConstantQTransform.hxx.


Member Typedef Documentation

typedef std::vector<double> Simac::ConstantQTransform::ConstantQSpectrum

Definition at line 65 of file ConstantQTransform.hxx.

typedef std::vector<double> Simac::ConstantQTransform::Spectrum

Definition at line 66 of file ConstantQTransform.hxx.


Constructor & Destructor Documentation

Simac::ConstantQTransform::ConstantQTransform ( unsigned  FS,
double  fmin,
double  fmax,
unsigned  binsPerOctave 
)

Definition at line 42 of file ConstantQTransform.cxx.

Simac::ConstantQTransform::~ConstantQTransform ( )

Definition at line 59 of file ConstantQTransform.cxx.


Member Function Documentation

const ConstantQSpectrum& Simac::ConstantQTransform::constantQSpectrum ( ) const [inline]

Definition at line 92 of file ConstantQTransform.hxx.

Here is the caller graph for this function:

void Simac::ConstantQTransform::doIt ( const std::vector< double > &  fftData)

Definition at line 116 of file ConstantQTransform.cxx.

Here is the call graph for this function:

int Simac::ConstantQTransform::getfftlength ( ) const [inline]

Definition at line 95 of file ConstantQTransform.hxx.

int Simac::ConstantQTransform::getK ( ) const [inline]

Definition at line 94 of file ConstantQTransform.hxx.

double Simac::ConstantQTransform::getQ ( ) const [inline]

Definition at line 93 of file ConstantQTransform.hxx.

void Simac::ConstantQTransform::sparsekernel ( double  thresh)

Definition at line 63 of file ConstantQTransform.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines