Changes in src/spectral/mfcc.c [8428a52:1c1dae7]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/spectral/mfcc.c
r8428a52 r1c1dae7 52 52 fvec_t *output; 53 53 #endif 54 smpl_t scale; 54 55 }; 55 56 … … 75 76 /* filterbank allocation */ 76 77 mfcc->fb = new_aubio_filterbank (n_filters, mfcc->win_s); 77 aubio_filterbank_set_mel_coeffs_slaney (mfcc->fb, samplerate); 78 if (n_filters == 40) 79 aubio_filterbank_set_mel_coeffs_slaney (mfcc->fb, samplerate); 80 else 81 aubio_filterbank_set_mel_coeffs(mfcc->fb, samplerate, 82 0, samplerate/2.); 78 83 79 84 /* allocating buffers */ … … 97 102 mfcc->output = new_fvec (n_filters); 98 103 #endif 104 105 mfcc->scale = 1.; 99 106 100 107 return mfcc; … … 128 135 fvec_t tmp; 129 136 #endif 137 130 138 /* compute filterbank */ 131 139 aubio_filterbank_do (mf->fb, in, mf->in_dct); … … 134 142 fvec_log10 (mf->in_dct); 135 143 136 /* raise power */ 137 //fvec_pow (mf->in_dct, 3.); 144 if (mf->scale != 1) fvec_mul (mf->in_dct, mf->scale); 138 145 139 146 /* compute mfccs */ … … 151 158 return; 152 159 } 160 161 uint_t aubio_mfcc_set_power (aubio_mfcc_t *mf, smpl_t power) 162 { 163 return aubio_filterbank_set_power(mf->fb, power); 164 } 165 166 uint_t aubio_mfcc_get_power (aubio_mfcc_t *mf) 167 { 168 return aubio_filterbank_get_power(mf->fb); 169 } 170 171 uint_t aubio_mfcc_set_scale (aubio_mfcc_t *mf, smpl_t scale) 172 { 173 mf->scale = scale; 174 return AUBIO_OK; 175 } 176 177 uint_t aubio_mfcc_get_scale (aubio_mfcc_t *mf) 178 { 179 return mf->scale; 180 } 181 182 uint_t aubio_mfcc_set_mel_coeffs (aubio_mfcc_t *mf, smpl_t freq_min, 183 smpl_t freq_max) 184 { 185 return aubio_filterbank_set_mel_coeffs(mf->fb, mf->samplerate, 186 freq_min, freq_max); 187 } 188 189 uint_t aubio_mfcc_set_mel_coeffs_htk (aubio_mfcc_t *mf, smpl_t freq_min, 190 smpl_t freq_max) 191 { 192 return aubio_filterbank_set_mel_coeffs_htk(mf->fb, mf->samplerate, 193 freq_min, freq_max); 194 } 195 196 uint_t aubio_mfcc_set_mel_coeffs_slaney (aubio_mfcc_t *mf) 197 { 198 return aubio_filterbank_set_mel_coeffs_slaney (mf->fb, mf->samplerate); 199 }
Note: See TracChangeset
for help on using the changeset viewer.