MFCC class
Class to extract MFCC features from a signal.
There are 2 ways to use this class:
- Use the static method mfcc() to extract features from a signal.
- Intantiate MFCC to process frames on the go with processFrame() or processFrames().
MFCC are generated on each windows by:
- (Optional) Aplying pre-Emphasis
- Computing Spectrum
- Applying triangular filter in the MEL domain.
- Computing log for each band
- Appying Discrete Cosinus Transform
- (Optional) Replace first value by the window log-Energy.
Constructors
- MFCC(int sampleRate, { int fftSize, { int numFilters, { int numCoefs, { bool energy: true, double preEmphasis: 0.97 })
Properties
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
Methods
-
process_frame(
List< double> frame) → List<double> - Returns the MFCC values for the given frame
-
process_frames(
List< List< frames) → List<num> >List< double> > - Returns the MFCC values of a list of frames
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
toString(
) → String -
Returns a string representation of this object.
inherited
Operators
-
operator ==(
dynamic other) → bool -
The equality operator. [...]
inherited
Static Methods
-
dct(
List< double> x, bool norm) → List<double> - Returns the discrete cosinus transform. [...]
-
filterbanks(
int samplerate int num_filt int n_fft) → List< List< double> > - Returns the mel filters [...]
-
mel_coefs(
List< double> power_spec, List<List< filters) → List<double> >double> -
Maps the power spectrum over the mel
filters
to obtains a condensed spectrogram on the mel scale. -
mfccFeats(
List< num> signal, int sampleRate, { int windowLength, { int windowStride, { int fftSize, { int numFilters, { int numCoefs, { bool energy: true, double preEmphasis: 0.97 }) → List<List< double> > -
Generates MFCC features from a
signal
. [...] -
power_spectrum(
List< double> frame, dynamic fft_size) → List<double> -
Returns the power spectrum of a given
frame
. -
preEmphasis(
List< num> signal, double emphasisFactor, { num lastValue: 0.0 }) → List<double> -
splitSignal(
List< num> signal, int windowLength int windowStride) → List<List< num> >