Take the 2-minute tour ×

I am trying to compute the Pre-emphasis of a signal and the formular is below:

y[n] = x[n] - 0.95 x[n-1]


 x[n] = 0.34
 x[n - 1] = 0.24


 y[n] = 0.34 - (0.95 * 0.24) = 0.112 

But I don't understand how this has increased the energy of the signal at a higher frequency? Because 0.34 is greater than 0.112.. Am I not calculating something right here?

share|improve this question

3 Answers 3

up vote 2 down vote accepted

The transformation you are describing is essentially a high-pass filter. Here is an intuitive explanation: suppose you feed a signal of magnitude 1 and of zero frequency in this filter. Then this signal is equal to $x[n]=1$. Hence the output of your filter will be $y[n]=0.05$. Observe the the energy of the output signal is much smaller than the energy of the input signal. Next, suppose that you feed a signal of small frequency in the filter. Because the frequency is small, adjacent samples will tend to be similar in magnitude and so the difference $x[n]-0.95 x[n-1]$ will tend to be very small. The numerical experiment that you are presenting, does not give you any information, because if $x[n]=0.34, x[n-1]=0.24$, then this does not say anything about the frequency of $x$. How about the other values of $x$, i.e. $x[n-2], x[n-3], e.t.c.$?

share|improve this answer
Thank you for your reply. So am I calculating this correctly? I just tried to calculate this using 1 value, rather than a vector of values. I think I get the point to this, I just did not understand why the resulting value will be much smaller than the actual value if we're taking the high-pass filter? –  Phorce Nov 30 '12 at 3:33
You are calculating correctly. First note that we can't exactly say that your signal has high frequency, since you are only giving two values. Second, this filter is a high-pass filter, however it is a first order high pass filter, which means that it is not very precise and so it ends up attenuating high frequencies as well, albeit to a lesser degree than low frequencies. –  Manos Nov 30 '12 at 14:11
Thank you. I understand it a lot better now :) One final question (Sorry!) Where does the 0.95 come from? (I read it in a paper) so is this value just a generic value, or, will this value depend on inputs x[x]? –  Phorce Nov 30 '12 at 14:43
This value, in your case $0.95$, determines the cut-off frequency of the high-pass filter. Many authors select it via a trial and error process or based on their experience. Other authors might set some criterion associated with their application and select this value optimally based on the criterion. If you have MATLAB you can try and see the magnitude response of the filter for various values of this parameter. Try "fdatool". –  Manos Nov 30 '12 at 17:04
I am really glad i did. Take care! –  Manos Nov 30 '12 at 17:37

This attenuates slow-changeable components of a signal.
Imagine that undesirable constant C was added to your signal.
This constant would be 20 times attenuated on output of your filter.
High frequency components would pass this filter without such attenuation.

share|improve this answer

This is a convolution of $x$ with a two point signal $z$ with $z[0] = 1$ and $z[1] = \alpha = 0.95$. The spectrum of $x$ is therefore multiplied by the spectrum of $z$. The spectrum of $z$ is given by $\hat{z}[x] = 1 - \alpha e^{-2 \pi i x}$. The square norm of this spectrum is

$$ \left|\hat{z}[x]\right|^2 = (1 - \alpha)^2 + 4 \alpha \sin^2(\pi x). $$

So for $\alpha \in [0, 1]$ the norm $\left| \hat{z}(x) \right|$ has a minimum $1-\alpha$ at $x = 0$ and a maximum $1+\alpha$ at $x = \tfrac{1}{2}$. For values of $\alpha$ close to one it acts as a low pass filter as was already observed in the other answers and emphasises high frequencies.

share|improve this answer

Your Answer


