44 |
mfcc::mfcc ( ContSignal signal ){ |
mfcc::mfcc ( ContSignal signal ){ |
45 |
} |
} |
46 |
|
|
47 |
DiscSignal mfcc::get_result() |
DiscSignal &mfcc::get_result() const |
48 |
{ |
{ |
49 |
return *result; |
return *result; |
50 |
} |
} |
198 |
empreinte[i - 1] = (ceps[i] + ceps[i + 13] + ceps[i+26] + ceps[i+39] + ceps[i+52] + ceps[i+65]); |
empreinte[i - 1] = (ceps[i] + ceps[i + 13] + ceps[i+26] + ceps[i+39] + ceps[i+52] + ceps[i+65]); |
199 |
|
|
200 |
maxi=0; |
maxi=0; |
201 |
for (i=0;i<12;i++) if (maxi*maxi<empreinte[i]*empreinte[i]) maxi=empreinte[i]; |
for (i=0;i<13;i++) if (maxi*maxi<empreinte[i]*empreinte[i]) maxi=empreinte[i]; |
202 |
for (i=0;i<12;i++) empreinte[i]=(empreinte[i]/fabs(maxi))*2; |
for (i=0;i<12;i++) empreinte[i]=(empreinte[i]/fabs(maxi))*2; |
203 |
result = (new DiscSignal(empreinte, 13)); |
result = (new DiscSignal(empreinte, 12)); |
204 |
//for (i=0;i<12;i++) printf("%d %lf\n",i,empreinte[i]); |
for (i=0;i<12;i++) printf("%d %lf\n",i,empreinte[i]); |
205 |
free(mfccFilterWeights); |
free(mfccFilterWeights); |
206 |
free(triangleHeight); |
free(triangleHeight); |
207 |
free(lower); |
free(lower); |