Patent ID: 6249581
Filing Date: 2001-06-19
Classification: H04M

Abstract:
An acoustic echo canceller for a telecommunications system adapted for communication between a first speaker and a second speaker, said system having a microphone and a loud-speaker, said microphone receiving a speech signal from said first speaker and an echo from a speech of said second speaker emanating from said loud-speaker, comprising:a means for collecting samples of two inputs from said telecommunications system, x(t) and y(t), said y(t) being a speech signal from a first speaker, said x(t) being a combination of a speech signal from a second speaker and an echo signal of said y(t);a means for estimating a delay D.sub.n between the x(t) and y(t);a means for aligning x(t) and y(t) by time-shifting y(t) by D.sub.n ;a means for normalizing an amplitude of x(t) and y(t);a means for applying a Hanning window and transforming said signals x(t) and y(t) into a frequency domain where X(f)=x.sub.r (f)+jx.sub.i (f) and Y(f)=y.sub.r (f)+jy.sub.i (f) and whore X(f)=FFT(x) and Y(f)=FFT(y);a means for computing a power spectrum P.sub.x and P.sub.y whereP.sub.x =.vertline.x.sub.r (f).vertline.+.vertline.x.sub.i (f).vertline.+.epsilon.*.vertline.x.sub.r (f).vertline.*.vertline.x.sub.i (f).vertline. andP.sub.y =.vertline.y.sub.r (f).vertline.+.vertline.y.sub.i (f).vertline.+.epsilon.*.vertline.y.sub.r (f).vertline.*.vertline.y.sub.i (f).vertline.where .epsilon. is a scaling factor which controls the amount of echo to be suppressed, and converting P.sub.x and P.sub.y to bark scales P.sub.x (b) and P.sub.y (b);a means for estimating a transfer function H(b) and normalizing P.sub.x (b) and P.sub.y (b) by said transfer function;a means for estimating a gain function G(b), said G(b) being calculated from P.sub.x and P.sub.y ;a means for unwarping said G(b) to yield G(f);a means for multiplying said signal X(f) by said gain function G(f) to yield X(f); anda means for performing an inverse transform and overlap add to convert said signal X(f) to yield an echo-free signal X(t).