I am studying the mel-frequency cepstral coefficient (MFCC) and have downloaded a pdf which is related to MFCC from this link. It is about the "ETSI ES 201 108"

ETSI ES 201 108 - Speech Processing, Transmission and Quality aspects (STQ); Distributed speech recognition; Front-end feature extraction algorithm; Compression algorithms

I am curious about the 4.2.5 Energy Measure

enter image description here

How can they calculate a floor that makes sure that the result is not less than -50? I don't know the reason why the result is not less than -50. Would you know why and explain for me?


You compute the energy (before the log operation) as

$$\max\left\{\sum_i s^2(i),\epsilon\right\}\tag{1}$$

with some small constant $\epsilon$ (they suggest $\epsilon=2e-22$ which gives $\ln\epsilon\approx -50$) to prevent the energy to become too small. The reason for this is that the logarithm of zero is $-\infty$ and gives you numerical trouble. So you always want to take the logarithm of a strictly positive number, never of zero. As far as I understand, the choice of $\epsilon=2e-22$ corresponding to a log value of $-50$ is rather arbitrary.

| improve this answer | |
  • $\begingroup$ The data are compressed later in the process. Values of lower than -50 may require more bits and make it difficult to reach the needed compression. Also, the data are interpreted in an entirely separate process not described in the referenced document. It may be that that second process also expects values above -50. $\endgroup$ – JRE Aug 18 '14 at 10:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.