|
aubio
0.4.8
|
Mel-Frequency Cepstrum Coefficients object. More...
Go to the source code of this file.
Typedefs | |
| typedef struct _aubio_mfcc_t | aubio_mfcc_t |
| mfcc object | |
Mel-Frequency Cepstrum Coefficients object.
This object computes MFCC coefficients on an input cvec_t.
The implementation follows the specifications established by Malcolm Slaney in its Auditory Toolbox, available online at the following address (see file mfcc.m):
https://engineering.purdue.edu/~malcolm/interval/1998-010/
Definition in file mfcc.h.
| void aubio_mfcc_do | ( | aubio_mfcc_t * | mf, |
| const cvec_t * | in, | ||
| fvec_t * | out | ||
| ) |
mfcc object processing
| mf | mfcc object as returned by new_aubio_mfcc |
| in | input spectrum (buf_size long) |
| out | output mel coefficients buffer (n_coeffs long) |
| uint_t aubio_mfcc_get_power | ( | aubio_mfcc_t * | mf | ) |
get power parameter
| mf | mfcc object, as returned by new_aubio_mfcc() |
1.| uint_t aubio_mfcc_get_scale | ( | aubio_mfcc_t * | mf | ) |
get scaling parameter
| mf | mfcc object, as returned by new_aubio_mfcc() |
1. | uint_t aubio_mfcc_set_mel_coeffs | ( | aubio_mfcc_t * | mf, |
| smpl_t | fmin, | ||
| smpl_t | fmax | ||
| ) |
Mel filterbank initialization.
| mf | mfcc object |
| fmin | start frequency, in Hz |
| fmax | end frequency, in Hz |
The filterbank will be initialized with bands linearly spaced in the mel scale, from fmin to fmax.
| uint_t aubio_mfcc_set_mel_coeffs_htk | ( | aubio_mfcc_t * | mf, |
| smpl_t | fmin, | ||
| smpl_t | fmax | ||
| ) |
Mel filterbank initialization.
| mf | mfcc object |
| fmin | start frequency, in Hz |
| fmax | end frequency, in Hz |
The bank of filters will be initalized to to cover linearly spaced bands in the Htk mel scale, from fmin to fmax.
| uint_t aubio_mfcc_set_mel_coeffs_slaney | ( | aubio_mfcc_t * | mf | ) |
Mel filterbank initialization (Auditory Toolbox's parameters)
| mf | mfcc object |
The filter coefficients are built to match exactly Malcolm Slaney's Auditory Toolbox implementation. The number of filters should be 40.
This is the default filterbank when mf was created with n_filters = 40.
| uint_t aubio_mfcc_set_power | ( | aubio_mfcc_t * | mf, |
| smpl_t | power | ||
| ) |
set power parameter
| mf | mfcc object, as returned by new_aubio_mfcc() |
| power | Raise norm of the input spectrum norm to this power before computing filterbank. Defaults to 1. |
| uint_t aubio_mfcc_set_scale | ( | aubio_mfcc_t * | mf, |
| smpl_t | scale | ||
| ) |
set scaling parameter
| mf | mfcc object, as returned by new_aubio_mfcc() |
| scale | Scaling value to apply. |
Scales the output of the filterbank after taking its logarithm and before computing the DCT. Defaults to 1.
| void del_aubio_mfcc | ( | aubio_mfcc_t * | mf | ) |
delete mfcc object
| mf | mfcc object as returned by new_aubio_mfcc |
| aubio_mfcc_t* new_aubio_mfcc | ( | uint_t | buf_size, |
| uint_t | n_filters, | ||
| uint_t | n_coeffs, | ||
| uint_t | samplerate | ||
| ) |
create mfcc object
| buf_size | size of analysis buffer (and length the FFT transform) |
| samplerate | audio sampling rate |
| n_coeffs | number of desired coefficients |
| n_filters | number of desired filters |
1.8.14