You are on page 1of 7

International Journal of Electrical and Computer Engineering (IJECE

Vol.2, No.3, June 2011, pp. 326~332
ISSN: 2088-8708  326

J ournal homepage:
An Acoustic Noise Canceller for Teleconferencing
Systems Using Levinson Algorithm

Shahruk Osman*, Sainath Maddala*, Rajesh Kontham*
* Department of Electrical Engineering, Blekinge Institute of Technology, Karlskrona, Sweden

Article Info ABSTRACT
Article history:
Received April 12
, 2011
Revised June 20
, 2011
Accepted June 26
, 2011

In teleconferencing systems, there are disturbing effects of acoustic echo
which hinder the quality of the sound from the loudspeakers. This paper
presents an optimization technique to attenuate the acoustic echoes generated
due to coupling between the microphone and the loudspeaker. An optimal
filter is designed based on a least squares technique. It uses Levinson
algorithm to equalize the acoustic channel in an iterative manner by
calculating the correlation coefficients needed for updating the iterations, in
order to minimize the echo effect. The method calculates the optimal solution
directly with less data recorded. The performance was validated using a real
time signal from a conference room.
Echo Cancellation
Levinson Algorithm
Copyright © 2011 Institute of Advanced Engineering and Science.
All rights reserved.
Corresponding Author:
Shahruk Osman,
Departement of Electrical Engineering,
Blekinge Institute of Technology Sweden,
SE 371 79, Karlskrona, Sweden


In teleconferencing, conference among people in different locations is held by means of a loudspeaker and a
microphone at each end of the speakers. Fig. 1 illustrates an acoustic echo canceller for teleconferencing
system. Generally when a speaker at far-end communicates through microphone M1, it picks up the sound
signal x(n) which is transmitted through the loudspeaker L2 into the near-end room. However, the microphone
M2 at the near-end room also picks up the echo from the loudspeaker through different locations in the room
and added with the speech signal s(n). As a result the transmitted speech signal through loudspeaker L2 is
degraded. This paper mainly deals with the suppression of echo in teleconferencing using an optimization
technique. In this approach, the near-end acoustic echo path was estimated and modeled using prediction
error (PE) identification technique. The Levinson algorithm was used to calculate an optimal estimate to this
model on MATLAB.


Echo cancellers are usually based on adaptive filters. Adaptive algorithms like RLS and NLMS are used to
estimate the signal path of the echo from the loudspeaker to the microphone (the room impulse response).
But during simultaneous conversation these algorithms do not track and converge efficiently [1]. New
techniques are being proposed on these algorithms in advanced echo cancellers to increase the robustness and
reduce the computational complexity [1],[2]. Other methods involve implementation of such algorithms
(NLMS) in frequency domain [3]. However the computation
 ISSN: 2088-8708
IJECE Vol. 2, No. 3, June 2011

Figure 1. Structure of an Acoustic Echo Cancellor

power and the memory requirements are fairly reduced.


In a typical teleconference system there is a signal path between the loudspeaker and the microphone. If the
transfer function of this signal path is modeled by a finite impulse response (FIR) and the actual room
impulse is identified, then the estimate of the echo component, y(n) could be subtracted from the desired
signal, d(n) and consequently the error signal e(n) will consists of the near end speakers voice compensating
the echo due to the far end speakers voice from the loudspeaker. The goal is to match the filter h(n) with the
actual room impulse response, so that the difference between the error signal e(n) and the near-end speaker
signal s(n) is minimized. Could an optimal filter be designed using Levinson algorithm for this echo
canceller? The objective of our work is to study and develop anoptimal filter for the echo canceller using
Levinson algorithm.

The main contributions towards our topic are:

1. Design and implementation of the optimal filter.
2. Validation based on simulation results using a real time signal.


4.1 Linear Predictor
We assume the case from fig.1. The desired signal d(n) in the microphone M2 consists of the speech signal
s(n) of the far end speaker and the filtered signal, x(n)g(n) from the loudspeaker L2.

d(n)= s(n) + x(n)g(n) (1)

where g(n) is assumed to be the actual room impulse response and is modeled as FIR filter (the most
common feature of an AEC). The AEC works as a linear predictor where it tries to predict the next sample by
observing the linear combination of the past samples. The solution to this prediction problem is calculated
using Levinson algorithm. It uses an iterative procedure to create the next predictor from the previous
predictors using the autocorrelation matrix of the input signal x(n) and the cross correlation vector of the
input x(n) and the desired signal d(n). During the process it calculates the optimal predictors of lower orders

Rxx w = rdx (2)

where Rxx is the autocorrelation matrix of the input signal x(n), w is the optimum solution and rdx is the cross
correlation vector between the signals x(n) and d(n) [4].

IJECE ISSN: 2088-8708 

An Acoustic Noise Canceller for Teleconferencing Systems using Levinson Algorithm

Figure 2. Formulation of the Levinson Algorithm

Fig. 2 shows the formulation of the Levinson algorithm. The prediction coefficients {a1, a2, …..,ap }
minimizes the mean square error[5].

ε =E [er
] (3)

where er
is the prediction error and x(n) is the input signal.

4.2. Description of Linear Prediction
Given a discrete set of original values which we extend to with an infinite number of
zeroes, we would like to find the best k coefficients that will approximatey
by . A
common way to define best is to use theleast-squares sense. Which means finding so that to
minimize the sum of the squares of the error between the original and approximated values.


Defining gives the simpler which is the value we would like to minimize.

4.3 Minimizing the error
At E’s minimum for we have . Calculating the partial derivatives of E gives

Although the sum is written as infinite, it is finite since all terms vanish to zero at some point, therefore we
can swap the two sum signs and get 2 which can re-written as



It takes the final following form

Which can we presented in matrix form MA
=0 with

and A
= (7)

The matrix M has k+1 columns and k lines. The system is not under determined, however in order to solve it,
it is more convenient to make the system under a square Matrix form.

We could rewrite MA
=0 into a square system easily as below, however there is an easier and better although
less direct way to solve this system.

 ISSN: 2088-8708
IJECE Vol. 2, No. 3, June 2011

Looking at M, we can notice that M is very close to be a Toeplitz symmetric Matrix, with only the top row
missing. We also notice that expending the top row would complete it into a square Matrix and system.

We do not know the value of E
at that point since it is a function of A
and the coefficients

This is a regular square linear system that we can not solve with the usual linearsystem solver. However this
system being a Toeplitz matrix can actually be solved better and quicker with a very simple recursive method
called the Levinson-Durbin recursion.

The basic simple ideas behind the recursion are first that it is easy to solve the system for k 1, and second
that it is also very simple to solve for a k 1 coefficients sized problem when we have solved a for a k
coefficients sized problem. In general none of the coefficients of the different sized problem match, so it is
not a way to calculate k 1 a but a way to calculate the whole vector A
as a function of N
, E
and A
Thinking about it Levinson-Durbin induction would be a better name.

We are looking for
not necessary at this stage. The dot product of the second line of N
and A
gives R
=0, with

There fore, we have found and also E
Suppose that we have solved the size k problem and have found then we have


has one more row and column than N
so we can not apply it directly to k A , however if we expend Ak
with a zero and call this vector U
we can apply N
to it and we get the following interesting result.
Since the matrix is symmetric, we also have something remarkable when reversing the order of coefficients
of U
and calling this vector V
IJECE ISSN: 2088-8708 

An Acoustic Noise Canceller for Teleconferencing Systems using Levinson Algorithm
We can notice that a linear combination U
+ V
is of the form wanted for A
since the first element is a 1 for all values of . Now if there was a value of for which
( U
+ would look like , no being known at this stage that would mean that we have
found A

( U
+ gives
So we just need to find satisfying which is trivial

Therefore (15)

And also (16)

Finally (17)

4.4 Real Data Analysis
Using real time speech signals recorded at both the microphones M1 and M2 from a conference room, the
model was implemented on MATLAB. The two speech signals were used to calculate a single correlation
coefficient and its corresponding filter using Levinson algorithm. Consequently the next correlation
coefficient is calculated and the filter is updated (but not the correlation coefficients) the intermediate design
error reaches a desired attenuation level.

Figure 3. Intermediate Design Error

 ISSN: 2088-8708
IJECE Vol. 2, No. 3, June 2011
The difference in variance between the desired signal d(n) and the filtered signal y(n) is referred as the
Intermediate design error as shown in fig. 3. The final filter consists of 966 filter taps to achieve 20dB
attenuation. Further attenuation could be obtained with an increased filter length.

Figure 3. Input Signal, Recorded Signal & Echo Cancellation

By estimating the impulse response, our echo canceller is now calibrated and it is used to attenuate the
reverberation from two other recorded speech signals at M1 and M2. Fig. 4. shows, the input signal at
microphone M1, the recorded signal at microphone M2 and the error signal after echo cancellation. It can be
observed that the difference between the error signal e(n) and the near-end speech signal s(n) is minimized in
the first 60 ms.


We have proposed an optimal method to approach echo cancellation and have been able to confirm that this
echo cancellation technique attenuates the echo to desired amount. Adaptive method calculates and updates
the filter online, and tracks the environment. It converges towards the optimal solution by updating each filter
coefficients every time it operates; as a result more data is recorded. Our proposed method calculates the
optimum solution directly as it requires all the data that has already been recorded. It does not update the
same filter coefficients every time, as a result less data is recorded, reducing the computational power.

For future work, the Levinson algorithm could further be manipulated to solve the prediction problem more
efficiently and reduce the computational complexity further in AEC


[1] Toon Can Waterschoot, Geert Rombouts, Piet Verhoeve, and Mark Moonen, “Double-Talk-Robust Prediction
Error Identification Algorithms for Acoustic Echo Cancellation,” IEEE Transactions on Speech and Audio
Processing, Vol. 9, No. 5, July 2001.
[2] John Garas, “An Engineering guide to Acoustic Echo Cancellers,” [online] Available: [Accessed Oct.2, 2010].
[3] Per Åhgren, “Acoustic Echo Cancellation and Doubletalk Detection using Estimated Loudspeaker Impulse
Responses,” IEEE Transactions on Speech and Audio Processing, Vol. 13, No. 6, Nov 2005.
[4] S. Haykin, Statistical Digital SignalProcessing& Modelling, John wiley & Sons Inc., 1996, p.p 215-277.
[5] Sophocles J. Orfanidis, Optimum Signal Processing An Introduction, 2
edition, Sophocles J. Orfanidis, 2007, p.p

IJECE ISSN: 2088-8708 

An Acoustic Noise Canceller for Teleconferencing Systems using Levinson Algorithm


Shahruk Osman was born in Dhaka, Bangladesh in 1983. He received the B.Sc.
degree in Electrical & Computer Engineering from Presidency University, Bangladesh
in 2008.He had worked briefly in NOC(Technical) for TM International (Bangladesh)
Ltd.(Aktel). He is currently pursuing the M.Sc. Degree in Electrical Engineering with
specialization in signal processing at Blekinge Tekniska Högskola (BTH), Sweden. His
research interest includes optimum filtering and its application in acoustic signal

Sainath Maddala was born in Kadapa town, India in 1986. He completed his
Bachelor’s degree in Electronics and Communication Engineering from Madhina
Engineering College affiliated to Jawaharlal Technological University (JNTU), India in
2007. He worked as a .Net developer from June 2007 to July 2008.
He is currently undergoing a Masters program in Electrical Engineering with emphasis
in signal processing at Blekinge Tekniska Högskola (BTH), Sweden. His research
interest includes biometrics signal processing.

Rajesh Kontham was born in Rayadurg town, India in 1986. He completed his
Bachelor’s degree in Electronics and Communication Engineering from B.I.T. Institute
of Technology affiliated to Jawaharlal Nehru Technological University(JNTU), India
in 2007. He was learning software courses (C, JAVA) during 2007-2008. He is
currently studying in a Double Degree Master’s Program with emphasis on signal
processing which is a collaboration program between JNTU, India and Blekinge
Tekniska Högskola (BTH), Sweden. His research interest is on speech processing.