WO1997002664A1 - Spectral noise compensation for echo cancellation - Google Patents

Spectral noise compensation for echo cancellation Download PDF

Info

Publication number
WO1997002664A1
WO1997002664A1 PCT/US1996/011271 US9611271W WO9702664A1 WO 1997002664 A1 WO1997002664 A1 WO 1997002664A1 US 9611271 W US9611271 W US 9611271W WO 9702664 A1 WO9702664 A1 WO 9702664A1
Authority
WO
WIPO (PCT)
Prior art keywords
subband
noise
signal
signals
send
Prior art date
Application number
PCT/US1996/011271
Other languages
French (fr)
Inventor
Roland E. Genter
Original Assignee
Coherent Communications Systems Corp.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Coherent Communications Systems Corp. filed Critical Coherent Communications Systems Corp.
Priority to AU64515/96A priority Critical patent/AU697941B2/en
Priority to EP96923639A priority patent/EP0872028A4/en
Priority to CA002226083A priority patent/CA2226083C/en
Priority to JP9505297A priority patent/JP2000502520A/en
Publication of WO1997002664A1 publication Critical patent/WO1997002664A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • H04M9/082Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/20Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
    • H04B3/21Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a set of bandfilters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/20Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
    • H04B3/23Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a replica of transmitted signal in the time domain, e.g. echo cancellers

Definitions

  • the present invention relates to an echo canceler having subband attenuation control for reducing residual echo, and having subband noise estimation and injection for providing spectrally-matched noise compensation.
  • Echo is a result of coupling between signals travelling in opposite directions within a telecommunication system.
  • reflections from a four-wire to two-wire hybrid are a well known source of echo in telephone networks.
  • Other sources of echo include acoustic or electromagnetic coupling of received signals and transmitted signals within a terminal device, such as a telephone.
  • Acoustic echo for example, can result from the microphone of a telephone responding to audio signals emitted by the speaker. Acoustic echo can be particularly acute in an enclosed environment, such as in mobile cellular telephony.
  • Echo cancelers are commonly employed to substantially reduce transmission of echoes within telecommunication networks.
  • a traditional echo canceler includes a transversal filter which is characterized by coefficients of the impulse response of the near-end terminal equipment.
  • the transversal filter is connected to receive a near-end receive signal, and to produce an estimated echo signal.
  • the estimated echo signal is subtracted from the send signal transmitted by the near-end terminal equipment.
  • Echo cancelers have contributed substantially to the intelligibility of low-loss long distance, satellite and fiber optic telephone networks. Examples of such echo cancelers are described in United States Patent Nos. 4,064,379; 4,113,997; 4,321,686; 4,360,712; 4,377,793; and 4,600,815 to Horna, and in United States Patent Nos.
  • the center clipper is selectively deactivated when the near-end send signal is large, in order to avoid zero-crossing distortion of transmitted speech.
  • selective activation and de-activation of the center clipper also tends to undesirably modulate low-amplitude background noise components of the transmitted signal. Such modulation can be perceived at the far end as occasional disconnection of the communication channel.
  • selectively-activated center clippers can undesirably clip softly-spoken syllables.
  • United States Patent Nos. 5,157,653 and 5,283,784 to Genter describe an echo canceler wherein a variable attenuator is employed to attenuate the echo-canceled signal over a continuous range of attenuation.
  • the attenuation is determined by an attenuation factor that is varied in response to comparison of relative levels of the receive signal, the send signal, and the echo-canceled signal, in order to attenuate residual echo.
  • an attenuation factor that is varied in response to comparison of relative levels of the receive signal, the send signal, and the echo-canceled signal, in order to attenuate residual echo.
  • changes in the attenuation factor are made gradually during finite intervals of time, rather than abruptly.
  • the aforementioned Genter patent discloses injection of a compensating noise component into the attenuated echo-canceled signal.
  • the level of the injected noise component is determined on the basis of an estimated noise component of the send signal and the prevailing attenuation applied by the attenuator.
  • the compensating noise component is derived from a noise source for providing a noise signal having a predetermined spectral characteristic, such as white noise or noise that is otherwise band shaped to approximate typical telephone circuit noise.
  • a noise source for providing a noise signal having a predetermined spectral characteristic, such as white noise or noise that is otherwise band shaped to approximate typical telephone circuit noise.
  • "typical" telephone circuit noise can vary considerably, as can ambient acoustic noise in the vicinity of a telephone user.
  • telephone signals produced by a mobile user of a cellular radio telephone system may include noise that is spectrally distinct from noise within telephone signals produced by a stationary user of a twisted-pair local loop.
  • even a slow transition from the actual background noise to an artificial injected noise may be distinctly perceptible and distracting to the far end listener.
  • an echo canceler wherein a send-input signal having a finite bandwidth, is divided into a plurality of subband send-input signals for independent echo cancellation.
  • the receive-input signal is also divided into subband receive-input signals.
  • the subband receive-input channel signals are each convolved with a corresponding estimated impulse response pertaining to an echo path between the receive-input signal and the send-input signal within the corresponding subband, to produce respective estimated subband echo signals.
  • Each of the subband echo signals is subtracted from the corresponding subband send-input channel signal to produce respective subband error signals. Residual echo is then reduced by variably attenuating the subband error signals on an independent basis in response to a comparison of the relative levels of the corresponding subband send-input signals, subband receive-input signals, and subband error signals.
  • noise components are added, or injected, into the variably-attenuated subband error signals in order to compensate for incidental attenuation of background noise within the respective attenuated error signals.
  • the level of each of the injected noise components is independently controlled in proportion to the attenuation applied to the corresponding subband error signal.
  • Each injected noise component is further controlled in proportion to a determined noise level within the corresponding subband send-input channel signal. The resulting noise component of the send-output signal is thereby spectrally matched to the noise component of the send-input signal.
  • the computational complexity of the echo canceler is reduced by providing the subband send-input signals and the subband receive-input signals as decimated signals. Decimating the subband signals reduces the required bit rate for encoding the audio content thereof.
  • FIG. 1 is a functional block diagram of an echo canceler according to the invention
  • FIG. 2 is a functional block diagram of a non-linear processor employed within the echo canceler of FIG. 1;
  • FIG. 3 is a logical flow diagram of an attenuation control procedure executed within the echo canceler of FIG. 1; and FIG. 4 is a logical flow diagram of a noise injection control procedure executed within the echo canceler of FIG. 1.
  • the echo canceler 10 is connected within a telecommunication system between a near-end station 12 and a far-end station 14.
  • the near-end station 12 may include a telephone, a hybrid, a codec, or other equipment, such as a central office associated with providing telephone service to a near-end user.
  • the near-end station produces and transmits a signal that is provided as a send-input signal, SI, to terminal 18 of the echo canceler 10.
  • the send-input signal, SI is processed by the echo canceler 10 for removal of echo.
  • the processed signal is provided as a send-output signal, SO, at terminal 21 for transmission to the far-end station 14.
  • the far-end station 14 produces and transmits a signal that is received by the echo canceler 10 as a receive-input signal, RI, at terminal 20.
  • the receive-input signal, RI is provided as a receive-output signal, RO, at terminal 22 of the echo canceler 10 for transmission to the near-end station 12.
  • the receive-input signal, RI is analyzed by a multi-channel filter bank 24.
  • RI and SI are a digital telephone signals, each having a data rate of 64 Kb/s and an audio bandwidth of about 3,000 Hz, extending from about 300 Hz to about 3,300 Hz.
  • the filter bank 24 includes bandpass filters 26a-p for dividing RI into 16 approximately 250 Hz - wide subband channel signals (the respective bands of the filters 26a-p being partially overlapping) .
  • the filter bank 24 further includes decimation filters 28a-p, each connected to receive one of the subband channel signals from a corresponding one of band pass filters 26a-p, for effectively shifting the audio content of the subband channel signal into the baseband and reducing the data rate required to encode the audio content thereof.
  • Each of the decimation filters reduces a subband input signal to an output signal having an audio bandwidth of between about 0-250 Hz.
  • the filter bank 24 analyzes the receive-input signal, RI, into 16 decimated subband receive-input signals, RC1-RC16, which are then provided at the respective output terminals of the decimation filters 28a-p.
  • the signals RC1-RC16 are provided from filter bank 24 to respective convolvers 29a-p.
  • Each of the convolvers comprises a memory for providing a shift register for storing a set of successive values of the corresponding receive channel signal, and for storing a set of echo path impulse response coefficients associated with the corresponding channel (i.e. the impulse response of the echo path between terminal 22 and terminal 18) .
  • the convolvers 29a-p are each configured for convolving one of the signals RC1-RC16 with the stored impulse response coefficients.
  • the convolvers 29a-p are preferably configured for adapting to changes in the respective subbands of the echo path by periodically updating the stored impulse response coefficients.
  • Each of the resulting output signals, EC1-EC16 represents an estimated echo signal pertaining to the corresponding subband.
  • the convolutions represented by convolvers 29a-p are performed by a single digital signal processor on a time-shared basis among the respective subband channels.
  • a 16-channel decimated filter bank 30, similar in operation to filter bank 24, is connected with terminal 18 to receive the send-input signal, SI.
  • the filter bank 30 analyzes SI into 16 decimated subband send-input signals SC1-SC16.
  • the echo canceler then subtracts each of the estimated echo signals EC1-EC16 from the corresponding one of decimated subband send-input signals SC1-SC16, in order to produce respective error signals ER1-ER16. As represented in FIG.
  • each of the estimated echo signals EC1-EC16 is provided to an inverting input of a corresponding one of summing amplifiers 34a-p.
  • Each of the signals SC1-SC16 is provided to a non-inverting input of a corresponding one of amplifiers 34a-p.
  • Amplifiers 34a-p perform the indicated subtractions of the corresponding subband send-input signals and estimated echo signals, to provide error signals ER1-ER16 at the respective output terminals of the amplifiers 34a-p.
  • the error signals ER1-ER16 are then subjected to further processing in order to attenuate residual echo components thereof.
  • Such further processing includes independently attenuating each of the error signals on the basis of the relative strength of the respective error signals ER1-ER16, the corresponding subband send-input signals SC1-SC16, and the corresponding subband receive-input signals RC1-RC16. Additionally, such further processing preferably includes adding a compensating noise component to the attenuated error signals independently and in proportion to the degree of attenuation applied to each of the respective error signals. As represented in FIG. 1, such further processing is provided by non-linear processors 36a-p. Each non-linear processor 36a-p is connected to receive a corresponding one of the error signals ER1-ER16.
  • the non-linear processors 36a-p selectively attenuate the error signals ER1-ER16, and inject compensating noise therein to provide respective output channel signals, OC1-OC16, at the output terminals of the respective non-linear processors 36a-p.
  • the output channel signals OC1-OC16 are then combined, or synthesized, to produce the send-output signal, SO, at terminal 21.
  • a synthesis filter bank 38 is connected to receive the signals OC1-OC16.
  • the filter bank 38 includes interpolation filters 40a-p for interpolating each of the output channel signals 0C1-0C16, such that the audio spectrum of each output channel signal is, in effect, relocated about the center frequency of the corresponding bandpass filter of the send-input analysis filter bank 30.
  • the output signals produced by the respective filters 42a-p are then combined, for example by summing amplifier 44, to provide the send-output signal SO at terminal 21.
  • the operations performed upon the error signals ER1-ER16 by the non-linear processors 36a-p are represented in greater detail in FIG. 2, in connection with a representative non-linear processor 36.
  • the non-linear processor 36 receives a send-input subband signal, SCn; an error signal ERn; and a receive-input subband signal, RCn.
  • Filters 56a-c are connected to receive the respective input signals, SCn, ERn and RCn, and are each responsive thereto for producing a statistical measure of each of the input signals in the form of a nonzero-mean signal.
  • the filters 56a-c may provide moving averages SAVG, EAVG and RAVG, of the absolute value ⁇ of the respective input signals SCn, ERn, and RCn.
  • other nonzero-mean values such as squared values, mean-squared values, root-mean-squared values, or logarithms thereof may be provided by the filters 56a-c in order to provide a comparison level in respect of each of the input signals SCn.
  • the average value signals, SAVG, EAVG, and RAVG are provided to an attenuation factor controller 60 for determining an attenuation factor, ATT, to be applied to the error signal, ERn, in order to reduce residual echo.
  • a preferred procedure executed by the attenuation factor controller 60 is illustrated in FIG. 3.
  • the attenuation factor controller 60 obtains the most current values of EAVG, SAVG, and RAVG pertaining to one of the subband channels. Execution then proceeds to step 82.
  • the attenuation factor controller 60 determines whether the values of EAVG, RAVG, and SAVG are indicative of a condition wherein communication within the selected subband channel between the near-end station and the far-end station is dominated by signals produced at the near-end. For example, when EAVG is greater than a predetermined proportion of RAVG plus a relatively small constant level, D (i.e.
  • step 82 when EAVG > A*RAVG, where A*RAVG is preferably 18 dB or less below RAVG and D is about -50 dBmO) , and when EAVG is greater than a predetermined proportion of SAVG (i.e. when EAVG > B*SAVG, where B ⁇ 1 and B*SAVG is preferably below SAVG by about 12 dB or more) , then it may be assumed that the near-end station is producing a substantially larger send signal than the far-end station. If the conditions of step 82 are satisfied, then execution proceeds to step 84. Otherwise, execution proceeds to step 86.
  • the attenuation factor is decremented by a predetermined amount.
  • the attenuation factor may be multiplied by a factor of C ⁇ 1.
  • the attenuation factor controller 60 operates to rapidly decrease the attenuation factor, ATT, to a predetermined minimum value, ATT min .
  • the attenuation factor may be reduced by subtracting a predetermined decrement value therefrom.
  • step 86 the attenuation factor controller 60 determines whether EAVG is less than a predetermined proportion of SAVG (i.e. when EAVG ⁇ B*SAVG) .
  • a predetermined proportion of SAVG i.e. when EAVG ⁇ B*SAVG.
  • SCn send-input subband signal
  • the attenuation factor controller 60 rapidly increases the attenuation factor, ATT toward a maximum level, ATT ⁇ ,,., in order to reduce transmission of residual echo to the far-end station. Such an increase can be carried out by multiplying the attenuation factor by a predetermined constant, E>1, or by adding a predetermined increment, until the attenuation factor is greater than, or equal to, the maximum value ATT ⁇ .
  • the attenuation factor will be increased, in step 88, whenever EAVG is less than a predetermined proportion of SAVG, preferably when EAVG is below SAVG by about 12 dB or more. Execution then returns to step 80.
  • step 90 none of the previously-defined conditions of step 82 or step 86 prevails. If step 90 is reached, then EAVG is not significantly higher than RAVG plus a small offset, and EAVG is within 12 dB of SAVG. In such a situation, EAVG is close enough to SAVG that relatively little echo is being subtracted. Additionally, EAVG is either very low relative to RAVG or both EAVG and RAVG are very low relative to the small offset, D, defined in step 82. In such circumstances, the attenuation factor controller 60 slowly reduces the attenuation factor toward a minimum value. The attenuation factor is reduced in step 90, by a decrement sufficient to reach ATT min within about 1 to 5 seconds.
  • any residual echo components that are transmitted to the far end during double-talk by the echo canceler of the present invention are significantly less perceptible than when a single attenuation factor decision for the entire transmission band is made by previously-known echo cancelers.
  • the attenuation controller returns to step 80.
  • the attenuation factor is converted to a gain signal, for example, by subtracting the attenuation factor from a constant value as shown in connection with summing amplifier 62.
  • the gain signal is then provided as a control input into a variable gain amplifier 64.
  • the error signal ERn is applied as an input signal to amplifier 64, and is multiplied by the applied gain to produce an attenuated error signal, shown as intermediate output signal IOn, at the output terminal of amplifier 64.
  • conversion means may be provided for converting the attenuation factor to an appropriate linear or logarithmic scale for modulating the amplitude of the error signal.
  • the respective SAVG, EAVG, and RAVG signals include moving average square values, then the square root of the attenuation factor may be determined and applied to amplifier 62.
  • the output of summing amplifier 62 is further varied as a sinusoidal function with respect to the attenuation factor .
  • the amplifier 64 amplifies the error signal inversely relative to the attenuation factor determined by the attenuation factor controller 60. Any noise component of the error signal will also be modulated according to adjustments made to the attenuation factor. For example, when the attenuation factor is at the maximum value, the noise component of the error signal, ERn, will be attenuated along with the residual echo.
  • a noise determination and injection system is provided for determining the noise content of the error signal, and for injecting a compensating noise component into the outbound signal.
  • the compensating noise component is preferably directly proportional to a determined noise content of the error signal and is also controlled relative to the determined attenuation factor to maintain a constant noise level in the output signal as the attenuation factor is varied.
  • the intermediate output signal, IOn may be directly provided from the non-linear processor as the output channel signal for subsequent reconstruction and combination with similarly-processed signals to provide the send-output signal.
  • a noise source 66 is provided for producing a noise signal, NS.
  • the noise source 56 may comprise a memory device for storing a series of pseudo-random numerical values that are cyclically retrieved from the memory device.
  • the spectrum of the noise signal NS is preferably flat across the preferred subband width.
  • the noise signal NS is provided as an input to a variable gain amplifier 68.
  • the gain of amplifier 68 is controlled by a noise factor, NF, provided thereto by noise factor controller 70.
  • the amplifier 68 multiplies NF and NS to produce an estimated noise signal, NE, that is thereby modulated in accordance with the estimated noise content of the error signal ERn.
  • the estimated noise signal, NE is provided as an input to variable gain amplifier 72.
  • the gain of amplifier 72 is controlled by the attenuation factor ATT in order to multiply NE and ATT to produce an output noise injection signal, NINJ.
  • the noise injection signal NINJ is thereby conversely modulated relative to the intermediate output signal, IOn.
  • the noise injection signal, NINJ provides a noise signal that is representative of the noise component of the error signal attenuated by amplifier 64.
  • the noise injection signal, NINJ is then added to the intermediate output signal, IOn (e.g. by summing amplifier 74) to produce the output channel signal, OCn, of the non-linear processor 36.
  • amplifier 72 varies the amplitude of NINJ in accordance with a sinusoidal function of the attenuation factor.
  • the gain produced by amplifier 62 is varied as a sinusoidal function of a DC level minus the attenuation factor.
  • the gain applied to the error signal by amplifier 62 will vary as the cosine of the attenuation factor.
  • the gain applied to the estimated noise signal by amplifier 62 will vary as the sine of the attenuation factor.
  • the sum of the square values of the noise content of the intermediate output signal and the noise injection signal will remain constant, which is the condition for maintaining a constant power level of the sum of two uncorrelated signals.
  • the noise content of the send-output channel signal SCn may be controlled, by the noise factor controller 70, on the basis of the relative values of SAVG, EAVG, and an estimate of the noise content.
  • An averaging filter 73 is connected to receive the estimated noise signal NE, and to provide a moving average of the absolute value thereof as an input signal, NAVG, to the noise factor controller.
  • the noise factor controller proceeds according to the flow diagram shown in FIG. 4.
  • the noise factor controller obtains the most current values of NAVG, EAVG, and SAVG. Then, the noise factor controller proceeds to step 102. In step 102, the noise factor controller determines whether the most current value of NAVG is greater than EAVG. If NAVG is greater than EAVG, then the noise factor controller proceeds to step 104. Otherwise, the noise factor controller proceeds to step 106.
  • step 104 the noise factor is reduced by a predetermined factor, G ⁇ 1, or by subtracting a predetermined decrement.
  • the noise factor will be reduced, in step 104, whenever NAVG exceeds EAVG. Such a reduction is preferably rapid, since the estimate of the noise content of the error signal should be kept below the average amplitude of the error signal.
  • execution returns to step 100.
  • the noise factor controller determines whether SAVG is below a predetermined threshold value H.
  • the predetermined value H is selected to be sufficiently low, for example -45 dbmO, such that if SAVG is less than H, it can be assumed that the send-input signal is predominantly low-amplitude background noise, and not speech.
  • step 106 it is preferable to also determine, in step 106, whether RAVG is also below a predetermined threshold, J, such as -45 dbmO, in order to avoid modulating the noise factor in response to variations in reflected far end speech.
  • a predetermined threshold J, such as -45 dbmO
  • other tests may be conducted in step 106 to determine whether the subband send-input channel signal SCn, is representative of speech or noise.
  • the noise factor controller may conduct an alternative statistical test to determine whether a statistical figure of merit, such as the variance of the send-input channel signal, or the error signal, is indicative of a speech or noise-dominated signal. If, in step 106, it is determined that the send-input signal is primarily dominated by noise, then the noise factor controller proceeds to step 108. Otherwise, the noise factor controller proceeds to step 110.
  • step 108 the noise factor, NF, is increased by a predetermined factor, I>1, or by a predetermined additive increment.
  • the incremental increase in the noise factor that is effected in step 108 is preferably lower in magnitude than the incremental decrease effected in step 104 (i.e. KG" 1 ), since it is clearly imperative to rapidly reduce the noise factor such that NAVG is reduced below EAVG, whereas any desired increase in the noise factor should be approached more conservatively and hence, slowly.
  • step 110 no change is effected in the noise factor, it having been already determined that NAVG does not exceed EAVG and that SAVG is not indicative of the send-input channel signal being dominated by noise.
  • execution returns to step 100.
  • the echo canceler 10 of FIG. 1 is implemented by a single digital signal processor having an arithmetic logic unit for computing successive values of the receive-input and send-input subband channel signals, and for performing the convolutions, non-linear processing, and other computational operations described hereinabove, on a time-shared, or time-division-multiplexed basis among the respective subbands.
  • the arithmetic logic unit is connected with a sufficient number of memory registers for storing a plurality of the successive subband signal values, the respective impulse coefficients, and the other required quantities for performing the various operations described hereinabove. Because the subband channel signals are preferably decimated, the rate at which the respective convolutions are performed may be reduced relative to the sample rate at which the send-input and receive-input signals are received, thus reducing the required calculation rate - relative to a broad-band, or single channel echo canceler.
  • the echo canceler 10 of FIG. 1 may be implemented using a plurality of digital signal processors operating in parallel, wherein each processor is configured for processing a subset of the subbands on a space-division multiplex basis.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Optical Communication System (AREA)

Abstract

An echo canceller (10) includes an analysis filter bank (24) for dividing a send-input signal (SI) and a receive-input signal (RI) into subband send-input signals (SC1-SC16) and subband receive signals (RC1-RC16). Each of the subband receive signals (RC1-RC16) is convolved with an impulse response function pertaining the echo path coupling the receive signal to the send-input signal within each subband, yielding estimated echo signals (EC1-EC16), which are then each subtracted from the corresponding subband send-input signal, to produce error signals (ER1-ER16). Residual echo components within the error signals are attenuated by a variable attenuator (36a-p), and a choice component is injected into each attenuated error signal to compensate for attenuation of background noise incidental to the variable attenuation of the error signals.

Description

SPECTRAL NOISE COMPENSATION FOR ECHO CANCELLATION
Field of the Invention
The present invention relates to an echo canceler having subband attenuation control for reducing residual echo, and having subband noise estimation and injection for providing spectrally-matched noise compensation.
Background of the Invention
Two-way telecommunication systems are often prone to the phenomenon of echo. Echo is a result of coupling between signals travelling in opposite directions within a telecommunication system. For example, reflections from a four-wire to two-wire hybrid are a well known source of echo in telephone networks. Other sources of echo include acoustic or electromagnetic coupling of received signals and transmitted signals within a terminal device, such as a telephone. Acoustic echo, for example, can result from the microphone of a telephone responding to audio signals emitted by the speaker. Acoustic echo can be particularly acute in an enclosed environment, such as in mobile cellular telephony.
Echo cancelers are commonly employed to substantially reduce transmission of echoes within telecommunication networks. A traditional echo canceler includes a transversal filter which is characterized by coefficients of the impulse response of the near-end terminal equipment. The transversal filter is connected to receive a near-end receive signal, and to produce an estimated echo signal. The estimated echo signal is subtracted from the send signal transmitted by the near-end terminal equipment. Echo cancelers have contributed substantially to the intelligibility of low-loss long distance, satellite and fiber optic telephone networks. Examples of such echo cancelers are described in United States Patent Nos. 4,064,379; 4,113,997; 4,321,686; 4,360,712; 4,377,793; and 4,600,815 to Horna, and in United States Patent Nos. 3,780,233; 3,789,233; 3,836,734; 3,894,200 to Campanella. Even the best echo cancelers are imperfect at entirely removing echo, due to the finite amount of time required to initially develop, and to subsequently update, the presumed impulse response of the near-end echo path. Additionally, the inherent quantization error of digital signals imposes a limit on the accuracy with which echo can be estimated and removed. Thus, a residual echo component, that is distinct from uncorrelated background noise, remains within an echo-canceled signal. The residual echo component is presumed to have a low amplitude. Hence, the traditional approach to reducing residual echo has been to employ a center clipper for blocking the low amplitude components of echo-canceled signals. Typically, the center clipper is selectively deactivated when the near-end send signal is large, in order to avoid zero-crossing distortion of transmitted speech. However, selective activation and de-activation of the center clipper also tends to undesirably modulate low-amplitude background noise components of the transmitted signal. Such modulation can be perceived at the far end as occasional disconnection of the communication channel. Additionally, selectively-activated center clippers can undesirably clip softly-spoken syllables. United States Patent Nos. 5,157,653 and 5,283,784 to Genter, describe an echo canceler wherein a variable attenuator is employed to attenuate the echo-canceled signal over a continuous range of attenuation. The attenuation is determined by an attenuation factor that is varied in response to comparison of relative levels of the receive signal, the send signal, and the echo-canceled signal, in order to attenuate residual echo. To reduce the perceptibility of the operation of the attenuator, changes in the attenuation factor are made gradually during finite intervals of time, rather than abruptly. To further reduce the perceptibility of variable attenuation for residual echo reduction, the aforementioned Genter patent discloses injection of a compensating noise component into the attenuated echo-canceled signal. The level of the injected noise component is determined on the basis of an estimated noise component of the send signal and the prevailing attenuation applied by the attenuator. As further described therein, the compensating noise component is derived from a noise source for providing a noise signal having a predetermined spectral characteristic, such as white noise or noise that is otherwise band shaped to approximate typical telephone circuit noise. Of course, "typical" telephone circuit noise can vary considerably, as can ambient acoustic noise in the vicinity of a telephone user. For example, telephone signals produced by a mobile user of a cellular radio telephone system may include noise that is spectrally distinct from noise within telephone signals produced by a stationary user of a twisted-pair local loop. Hence, even a slow transition from the actual background noise to an artificial injected noise may be distinctly perceptible and distracting to the far end listener. Thus, it would be desirable to provide an echo canceler wherein an injected noise component is more accurately related to the prevailing noise spectrum within the transmitted signal. Summary of the Invention
In accordance with one aspect of the present invention, an echo canceler is provided wherein a send-input signal having a finite bandwidth, is divided into a plurality of subband send-input signals for independent echo cancellation. The receive-input signal is also divided into subband receive-input signals. The subband receive-input channel signals are each convolved with a corresponding estimated impulse response pertaining to an echo path between the receive-input signal and the send-input signal within the corresponding subband, to produce respective estimated subband echo signals. Each of the subband echo signals is subtracted from the corresponding subband send-input channel signal to produce respective subband error signals. Residual echo is then reduced by variably attenuating the subband error signals on an independent basis in response to a comparison of the relative levels of the corresponding subband send-input signals, subband receive-input signals, and subband error signals.
In accordance with another aspect of the invention, noise components are added, or injected, into the variably-attenuated subband error signals in order to compensate for incidental attenuation of background noise within the respective attenuated error signals. The level of each of the injected noise components is independently controlled in proportion to the attenuation applied to the corresponding subband error signal. Each injected noise component is further controlled in proportion to a determined noise level within the corresponding subband send-input channel signal. The resulting noise component of the send-output signal is thereby spectrally matched to the noise component of the send-input signal.
According to yet another aspect of the invention. the computational complexity of the echo canceler is reduced by providing the subband send-input signals and the subband receive-input signals as decimated signals. Decimating the subband signals reduces the required bit rate for encoding the audio content thereof.
Other new and useful aspects of the invention, and advantages pertaining thereto, shall be made apparent hereby.
Brief Description of the Drawings The foregoing summary as well as the following detailed description of the preferred embodiments of the present invention will be better understood when read in conjunction with the appended drawings, in which:
FIG. 1 is a functional block diagram of an echo canceler according to the invention;
FIG. 2 is a functional block diagram of a non-linear processor employed within the echo canceler of FIG. 1;
FIG. 3 is a logical flow diagram of an attenuation control procedure executed within the echo canceler of FIG. 1; and FIG. 4 is a logical flow diagram of a noise injection control procedure executed within the echo canceler of FIG. 1.
Detailed Description of the Preferred Embodiments Referring now to FIG. 1, there is shown an echo canceler 10. The echo canceler 10 is connected within a telecommunication system between a near-end station 12 and a far-end station 14. The near-end station 12 may include a telephone, a hybrid, a codec, or other equipment, such as a central office associated with providing telephone service to a near-end user. The near-end station produces and transmits a signal that is provided as a send-input signal, SI, to terminal 18 of the echo canceler 10. The send-input signal, SI, is processed by the echo canceler 10 for removal of echo. The processed signal is provided as a send-output signal, SO, at terminal 21 for transmission to the far-end station 14. The far-end station 14 produces and transmits a signal that is received by the echo canceler 10 as a receive-input signal, RI, at terminal 20. The receive-input signal, RI, is provided as a receive-output signal, RO, at terminal 22 of the echo canceler 10 for transmission to the near-end station 12.
The receive-input signal, RI, is analyzed by a multi-channel filter bank 24. In the preferred embodiment, RI and SI are a digital telephone signals, each having a data rate of 64 Kb/s and an audio bandwidth of about 3,000 Hz, extending from about 300 Hz to about 3,300 Hz. The filter bank 24 includes bandpass filters 26a-p for dividing RI into 16 approximately 250 Hz - wide subband channel signals (the respective bands of the filters 26a-p being partially overlapping) . The filter bank 24 further includes decimation filters 28a-p, each connected to receive one of the subband channel signals from a corresponding one of band pass filters 26a-p, for effectively shifting the audio content of the subband channel signal into the baseband and reducing the data rate required to encode the audio content thereof. Each of the decimation filters reduces a subband input signal to an output signal having an audio bandwidth of between about 0-250 Hz. The filter bank 24 analyzes the receive-input signal, RI, into 16 decimated subband receive-input signals, RC1-RC16, which are then provided at the respective output terminals of the decimation filters 28a-p.
The signals RC1-RC16 are provided from filter bank 24 to respective convolvers 29a-p. Each of the convolvers comprises a memory for providing a shift register for storing a set of successive values of the corresponding receive channel signal, and for storing a set of echo path impulse response coefficients associated with the corresponding channel (i.e. the impulse response of the echo path between terminal 22 and terminal 18) . The convolvers 29a-p are each configured for convolving one of the signals RC1-RC16 with the stored impulse response coefficients. The convolvers 29a-p are preferably configured for adapting to changes in the respective subbands of the echo path by periodically updating the stored impulse response coefficients. Each of the resulting output signals, EC1-EC16, represents an estimated echo signal pertaining to the corresponding subband. Preferably, the convolutions represented by convolvers 29a-p, are performed by a single digital signal processor on a time-shared basis among the respective subband channels. A 16-channel decimated filter bank 30, similar in operation to filter bank 24, is connected with terminal 18 to receive the send-input signal, SI. The filter bank 30 analyzes SI into 16 decimated subband send-input signals SC1-SC16. The echo canceler then subtracts each of the estimated echo signals EC1-EC16 from the corresponding one of decimated subband send-input signals SC1-SC16, in order to produce respective error signals ER1-ER16. As represented in FIG. 1, each of the estimated echo signals EC1-EC16 is provided to an inverting input of a corresponding one of summing amplifiers 34a-p. Each of the signals SC1-SC16 is provided to a non-inverting input of a corresponding one of amplifiers 34a-p. Amplifiers 34a-p perform the indicated subtractions of the corresponding subband send-input signals and estimated echo signals, to provide error signals ER1-ER16 at the respective output terminals of the amplifiers 34a-p. The error signals ER1-ER16 are then subjected to further processing in order to attenuate residual echo components thereof. Such further processing includes independently attenuating each of the error signals on the basis of the relative strength of the respective error signals ER1-ER16, the corresponding subband send-input signals SC1-SC16, and the corresponding subband receive-input signals RC1-RC16. Additionally, such further processing preferably includes adding a compensating noise component to the attenuated error signals independently and in proportion to the degree of attenuation applied to each of the respective error signals. As represented in FIG. 1, such further processing is provided by non-linear processors 36a-p. Each non-linear processor 36a-p is connected to receive a corresponding one of the error signals ER1-ER16. The non-linear processors 36a-p selectively attenuate the error signals ER1-ER16, and inject compensating noise therein to provide respective output channel signals, OC1-OC16, at the output terminals of the respective non-linear processors 36a-p.
The output channel signals OC1-OC16, are then combined, or synthesized, to produce the send-output signal, SO, at terminal 21. For example, a synthesis filter bank 38 is connected to receive the signals OC1-OC16. The filter bank 38 includes interpolation filters 40a-p for interpolating each of the output channel signals 0C1-0C16, such that the audio spectrum of each output channel signal is, in effect, relocated about the center frequency of the corresponding bandpass filter of the send-input analysis filter bank 30. The output signals produced by the respective filters 42a-p are then combined, for example by summing amplifier 44, to provide the send-output signal SO at terminal 21.
The operations performed upon the error signals ER1-ER16 by the non-linear processors 36a-p are represented in greater detail in FIG. 2, in connection with a representative non-linear processor 36. The non-linear processor 36 receives a send-input subband signal, SCn; an error signal ERn; and a receive-input subband signal, RCn. Filters 56a-c are connected to receive the respective input signals, SCn, ERn and RCn, and are each responsive thereto for producing a statistical measure of each of the input signals in the form of a nonzero-mean signal. For example, the filters 56a-c may provide moving averages SAVG, EAVG and RAVG, of the absolute valueε of the respective input signals SCn, ERn, and RCn. In alternative embodiments, other nonzero-mean values, such as squared values, mean-squared values, root-mean-squared values, or logarithms thereof may be provided by the filters 56a-c in order to provide a comparison level in respect of each of the input signals SCn.
The average value signals, SAVG, EAVG, and RAVG, are provided to an attenuation factor controller 60 for determining an attenuation factor, ATT, to be applied to the error signal, ERn, in order to reduce residual echo. A preferred procedure executed by the attenuation factor controller 60 is illustrated in FIG. 3.
Beginning at step 80, the attenuation factor controller 60 obtains the most current values of EAVG, SAVG, and RAVG pertaining to one of the subband channels. Execution then proceeds to step 82. In step 82, the attenuation factor controller 60 determines whether the values of EAVG, RAVG, and SAVG are indicative of a condition wherein communication within the selected subband channel between the near-end station and the far-end station is dominated by signals produced at the near-end. For example, when EAVG is greater than a predetermined proportion of RAVG plus a relatively small constant level, D (i.e. when EAVG > A*RAVG, where A*RAVG is preferably 18 dB or less below RAVG and D is about -50 dBmO) , and when EAVG is greater than a predetermined proportion of SAVG (i.e. when EAVG > B*SAVG, where B<1 and B*SAVG is preferably below SAVG by about 12 dB or more) , then it may be assumed that the near-end station is producing a substantially larger send signal than the far-end station. If the conditions of step 82 are satisfied, then execution proceeds to step 84. Otherwise, execution proceeds to step 86.
In step 84, the attenuation factor is decremented by a predetermined amount. For example, the attenuation factor may be multiplied by a factor of C<1. Under the conditions for entry to step 84, the large near-end send signal will tend to mask any residual echo signal, even in the absence of applied attenuation. Therefore, the attenuation factor controller 60 operates to rapidly decrease the attenuation factor, ATT, to a predetermined minimum value, ATTmin. In alternative embodiments, wherein
EAVG, SAVG, and RAVG are logarithmic quantities, the attenuation factor may be reduced by subtracting a predetermined decrement value therefrom. The attenuation factor reduction performed in step 84 iε large enough that iterated execution of step 84 is sufficient to reduce the attenuation factor from a predetermined maximum value, ATT^ to ATTmin within less than 100 ms, and preferably about 2 ms. From step 84, the attenuation factor controller 60 returns to step 80.
In step 86, the attenuation factor controller 60 determines whether EAVG is less than a predetermined proportion of SAVG (i.e. when EAVG < B*SAVG) . When the condition defined in step 86 is satisfied, then a significant proportion of the send-input subband signal, SCn, is presumed to consist of echo that is being removed by the echo canceler. Under such a condition, the near-end station is relatively quiet, and the error signal consists of a relatively high proportion of residual echo. If the condition of step 86 is satisfied, then execution proceeds to step 88. Otherwise, execution proceeds to step 90.
In step 88, the attenuation factor controller 60 rapidly increases the attenuation factor, ATT toward a maximum level, ATT^,,., in order to reduce transmission of residual echo to the far-end station. Such an increase can be carried out by multiplying the attenuation factor by a predetermined constant, E>1, or by adding a predetermined increment, until the attenuation factor is greater than, or equal to, the maximum value ATT^. As can be appreciated, the attenuation factor will be increased, in step 88, whenever EAVG is less than a predetermined proportion of SAVG, preferably when EAVG is below SAVG by about 12 dB or more. Execution then returns to step 80. In step 90, none of the previously-defined conditions of step 82 or step 86 prevails. If step 90 is reached, then EAVG is not significantly higher than RAVG plus a small offset, and EAVG is within 12 dB of SAVG. In such a situation, EAVG is close enough to SAVG that relatively little echo is being subtracted. Additionally, EAVG is either very low relative to RAVG or both EAVG and RAVG are very low relative to the small offset, D, defined in step 82. In such circumstances, the attenuation factor controller 60 slowly reduces the attenuation factor toward a minimum value. The attenuation factor is reduced in step 90, by a decrement sufficient to reach ATTmin within about 1 to 5 seconds. If, in fact, a double-talk condition prevails, then some residual echo may be perceptible at the far end. However, since an attenuation factor is determined independently for each subband, there will be some bands in which the attenuation factor is maintained at a relatively high level due to relative spectral variations between the send-in and receive-in signals during double-talk. Additionally, even in a double-talk situation, it is unlikely that double-talk will prevail within a single subband for a significantly long period of time, since the near-end and far-end speech signals are presumably uncorrelated. Thus, any residual echo components that are transmitted to the far end during double-talk by the echo canceler of the present invention, are significantly less perceptible than when a single attenuation factor decision for the entire transmission band is made by previously-known echo cancelers. After step 90, the attenuation controller returns to step 80. Referring again to FIG.2 , the attenuation factor is converted to a gain signal, for example, by subtracting the attenuation factor from a constant value as shown in connection with summing amplifier 62. The gain signal is then provided as a control input into a variable gain amplifier 64. The error signal ERn is applied as an input signal to amplifier 64, and is multiplied by the applied gain to produce an attenuated error signal, shown as intermediate output signal IOn, at the output terminal of amplifier 64. In embodiments wherein the filters 56a-c each produce a nonzero-mean signal that is not directly proportional to the amplitude of the input signal, then conversion means may be provided for converting the attenuation factor to an appropriate linear or logarithmic scale for modulating the amplitude of the error signal. For example, if the respective SAVG, EAVG, and RAVG signals include moving average square values, then the square root of the attenuation factor may be determined and applied to amplifier 62. Preferably, as discussed further hereinbelow, the output of summing amplifier 62 is further varied as a sinusoidal function with respect to the attenuation factor .
The amplifier 64 amplifies the error signal inversely relative to the attenuation factor determined by the attenuation factor controller 60. Any noise component of the error signal will also be modulated according to adjustments made to the attenuation factor. For example, when the attenuation factor is at the maximum value, the noise component of the error signal, ERn, will be attenuated along with the residual echo. In order to prevent the far end listener from perceiving potentially distracting noise amplitude variations caused by residual echo elimination, a noise determination and injection system is provided for determining the noise content of the error signal, and for injecting a compensating noise component into the outbound signal. The compensating noise component is preferably directly proportional to a determined noise content of the error signal and is also controlled relative to the determined attenuation factor to maintain a constant noise level in the output signal as the attenuation factor is varied. In alternative embodiments wherein incidental noise modulation is deemed acceptable, the intermediate output signal, IOn, may be directly provided from the non-linear processor as the output channel signal for subsequent reconstruction and combination with similarly-processed signals to provide the send-output signal.
A noise source 66 is provided for producing a noise signal, NS. The noise source 56 may comprise a memory device for storing a series of pseudo-random numerical values that are cyclically retrieved from the memory device. The spectrum of the noise signal NS is preferably flat across the preferred subband width. The noise signal NS is provided as an input to a variable gain amplifier 68. The gain of amplifier 68 is controlled by a noise factor, NF, provided thereto by noise factor controller 70. The amplifier 68 multiplies NF and NS to produce an estimated noise signal, NE, that is thereby modulated in accordance with the estimated noise content of the error signal ERn. The estimated noise signal, NE, is provided as an input to variable gain amplifier 72. The gain of amplifier 72 is controlled by the attenuation factor ATT in order to multiply NE and ATT to produce an output noise injection signal, NINJ. The noise injection signal NINJ is thereby conversely modulated relative to the intermediate output signal, IOn. Hence, the noise injection signal, NINJ, provides a noise signal that is representative of the noise component of the error signal attenuated by amplifier 64. The noise injection signal, NINJ, is then added to the intermediate output signal, IOn (e.g. by summing amplifier 74) to produce the output channel signal, OCn, of the non-linear processor 36. Preferably, amplifier 72 varies the amplitude of NINJ in accordance with a sinusoidal function of the attenuation factor.
As has been mentioned hereinabove, the gain produced by amplifier 62 is varied as a sinusoidal function of a DC level minus the attenuation factor. Hence, if the attenuation factor is varied between O and 7-72, and if the DC level is maintained at π/2 , then the gain applied to the error signal by amplifier 62 will vary as the cosine of the attenuation factor. Additionally, the gain applied to the estimated noise signal by amplifier 62 will vary as the sine of the attenuation factor. Hence, the sum of the square values of the noise content of the intermediate output signal and the noise injection signal will remain constant, which is the condition for maintaining a constant power level of the sum of two uncorrelated signals.
The noise content of the send-output channel signal SCn, may be controlled, by the noise factor controller 70, on the basis of the relative values of SAVG, EAVG, and an estimate of the noise content. An averaging filter 73 is connected to receive the estimated noise signal NE, and to provide a moving average of the absolute value thereof as an input signal, NAVG, to the noise factor controller. In the preferred embodiment, the noise factor controller proceeds according to the flow diagram shown in FIG. 4.
Beginning at step 100, the noise factor controller obtains the most current values of NAVG, EAVG, and SAVG. Then, the noise factor controller proceeds to step 102. In step 102, the noise factor controller determines whether the most current value of NAVG is greater than EAVG. If NAVG is greater than EAVG, then the noise factor controller proceeds to step 104. Otherwise, the noise factor controller proceeds to step 106.
In step 104, the noise factor is reduced by a predetermined factor, G<1, or by subtracting a predetermined decrement. As can be appreciated, the noise factor will be reduced, in step 104, whenever NAVG exceeds EAVG. Such a reduction is preferably rapid, since the estimate of the noise content of the error signal should be kept below the average amplitude of the error signal. After step 104, execution returns to step 100. In step 106, the noise factor controller determines whether SAVG is below a predetermined threshold value H. The predetermined value H, is selected to be sufficiently low, for example -45 dbmO, such that if SAVG is less than H, it can be assumed that the send-input signal is predominantly low-amplitude background noise, and not speech. Additionally, it is preferable to also determine, in step 106, whether RAVG is also below a predetermined threshold, J, such as -45 dbmO, in order to avoid modulating the noise factor in response to variations in reflected far end speech. In alternative embodiments, other tests may be conducted in step 106 to determine whether the subband send-input channel signal SCn, is representative of speech or noise. For example, the noise factor controller may conduct an alternative statistical test to determine whether a statistical figure of merit, such as the variance of the send-input channel signal, or the error signal, is indicative of a speech or noise-dominated signal. If, in step 106, it is determined that the send-input signal is primarily dominated by noise, then the noise factor controller proceeds to step 108. Otherwise, the noise factor controller proceeds to step 110.
In step 108, the noise factor, NF, is increased by a predetermined factor, I>1, or by a predetermined additive increment. The incremental increase in the noise factor that is effected in step 108, is preferably lower in magnitude than the incremental decrease effected in step 104 (i.e. KG"1), since it is clearly imperative to rapidly reduce the noise factor such that NAVG is reduced below EAVG, whereas any desired increase in the noise factor should be approached more conservatively and hence, slowly. After step 108, execution returns to step 100.
In step 110, no change is effected in the noise factor, it having been already determined that NAVG does not exceed EAVG and that SAVG is not indicative of the send-input channel signal being dominated by noise. After step 110, execution returns to step 100. In the preferred embodiment, the echo canceler 10 of FIG. 1, is implemented by a single digital signal processor having an arithmetic logic unit for computing successive values of the receive-input and send-input subband channel signals, and for performing the convolutions, non-linear processing, and other computational operations described hereinabove, on a time-shared, or time-division-multiplexed basis among the respective subbands. The arithmetic logic unit is connected with a sufficient number of memory registers for storing a plurality of the successive subband signal values, the respective impulse coefficients, and the other required quantities for performing the various operations described hereinabove. Because the subband channel signals are preferably decimated, the rate at which the respective convolutions are performed may be reduced relative to the sample rate at which the send-input and receive-input signals are received, thus reducing the required calculation rate - relative to a broad-band, or single channel echo canceler.
In alternative embodiments, the echo canceler 10 of FIG. 1 may be implemented using a plurality of digital signal processors operating in parallel, wherein each processor is configured for processing a subset of the subbands on a space-division multiplex basis.
The terms and expressions which have been employed are used as terms of description and not of limitation. There is no intention in the use of such terms and expressions of excluding any equivalents of the features shown and described or portions thereof. It is recognized, however, that various modifications are possible within the scope of the invention as claimed.

Claims

That which is claimed is:
1. An echo canceler adapted to receive a send-input signal and a receive-input signal and for removing an echo component from the send-input signal, the echo component including at least a portion of the receive- input signal coupled to the send-input signal via an echo path, the echo canceler comprising: first filter means for dividing the send-input signal into a plurality of subband send-input signals; second filter means for dividing the receive- input signal into a plurality of subband receive-input signals; convolving means for convolving each of the subband receive-input signals with an impulse response of a corresponding subband of the echo path, thereby producing a plurality of estimated subband echo signals; first subtracting means for subtracting each of the estimated subband echo signals from a corresponding subband send-input signal, thereby producing a plurality of error signals; attenuation factor control means for generating a plurality of attenuation factors, each attenuation factor being determined on the basis of a comparison of corresponding comparison levels derived from at least two signals selected from the group consisting of (i) a subband send-input signal, (ii) a subband receive-input signal, and (iii) an error signal; variable attenuation means responsive to said attenuation factor control means for attenuating each of the error signals in accordance with a corresponding one of said attenuation factors, thereby producing a plurality of attenuated error signals; and combining means for combining said attenuated error signals to provide a send-output signal that is substantially free of the echo component.
2. The echo canceler of claim 1, comprising: noise estimation means for generating a plurality of subband noise factors, each noise factor being representative of a noise component of at least one of a subband send-input signal and an error signal; a noise source for producing a noise signal having a bandwidth commensurate with each of said subband send-input signals; noise modulation means for modulating said noise signal in accordance with each of said subband noise factors, thereby to provide a plurality of modulated subband noise signals; and noise injection means for combining each of said modulated subband noise signals with a corresponding attenuated error signal.
3. The echo canceler of claim 2 wherein said noise modulation means is further configured for modulating said noise signal in accordance with each of said attenuation factors.
4. An echo canceler adapted to receive a send-input signal and a receive-input signal and for removing an echo component from the send-input signal, the echo component including at least a portion of the receive-input signal coupled to the send-input signal via an echo path, the echo canceler comprising: first filter meanε for dividing the send-input signal into a plurality of subband send-input signals; second filter means for dividing the receive-input signal into a plurality of subband receive-input signals; convolving means for convolving each of the subband receive-input signals with an impulse response of a corresponding subband of the echo path, thereby producing a plurality of estimated subband echo signals; first subtracting means for subtracting each of the estimated subband echo signals from a corresponding subband send-input signal, thereby producing a plurality of subband error signals; variable attenuation means for attenuating each of the subband error signals in accordance with a subband attenuation factor, thereby producing a plurality of attenuated subband error signals; and combining means for combining said attenuated subband error signals to provide a send-output signal that is substantially free of the echo component.
5. The echo canceler of Claim 4 wherein said variable attenuation means comprises: attenuation factor control means for generating a plurality of subband attenuation factors, each attenuation factor being determined on the basis of a comparison of corresponding comparison values derived from at least two signals selected from the group consisting of a subband send-input signal, a subband receive-input signal, and a subband error signal.
6. The echo canceler of Claim 4 comprising noise injection means for injecting a εubband noise signal into a corresponding attenuated subband error signal in accordance with a corresponding subband noise factor.
7. A method of compensating for subband attenuation of a noise component of a telecommunication signal subjected to a subband process wherein subbands of the telecommunication signal are attenuated according to respective independent attenuation factors, the method comprising: receiving the telecommunication signal as a send- input signal at a send-input terminal; dividing the send-input signal into a plurality of subband signals; applying the independent attenuation factor to each of the subband signals, thereby providing processed subband signalε; generating a εubband noise signal that is proportional to the corresponding independent attenuation factor for each subband signal; combining the subband noise signals with the respective proceεεed εubband signals, thereby providing output subband signals; and combining the output subband signals to provide a send-output signal for transmission from a send-output terminal.
8. The method of claim 7, wherein the subband process comprises the step of canceling echo εignalε from the respective subbands.
9. The method of claim 7, comprising the step of estimating an estimated noise level within each of the subbands of the send-input signal, and wherein said generating step further comprises generating each subband noise signal in proportion to the corresponding estimated noise level.
10. The method of claim 9, wherein said estimating step comprises the steps of determining whether the corresponding subband signal is predominately speech or noise, and updating the estimated noise level when the subband signal is determined to be predominantly noise.
11. An apparatus for providing a noise component within a processed telecommunication signal, such that the noise component of the processed telecommunication signal is spectrally matched with a noise component of a corresponding unprocessed telecommunication signal, comprising an analysis filter for dividing the unprocessed telecommunication signal into a plurality of subband input signals; noise determining means for determining a noise level within each of the subband input signals; a signal processor including means for independently variably attenuating each of the subband input signals, thereby to provide procesεed subband signals; noise injection means for generating a plurality of subband noise signals such that each subband noise signal is modulated in proportion with the determined noise level and the variable attenuation of each of the subband input signals, and for combining each of the subband noise signals with the respective procesεed subband signals; and combining means for combining the processed subband signals to provide the processed telecommunication signal.
12. A spectral noise compensation method for a telecommunication signal processor configured to apply a variable attenuation to each of a plurality of subbands of a telecommunication signal, the method comprising: generating a noise signal having subband noise components, including the step of independently controlling levels of each noise component in proportion the variable attenuation applied to a corresponding subband portion of the telecommunication signal; injecting the noise signal into the telecommunication signal to provide a noise injected signal; and transmitting said noise injected signal toward a destination.
13. The method of claim 12, wherein said telecommunication signal has an original noise content having an original noise spectrum, and including the steps of: determining subband noise levels of the original noise content; and further controlling the level of each noise component in proportion to the respective determined subband noise levels, whereby the spectrum of the noise signal is matched to the original noise spectrum.
PCT/US1996/011271 1995-07-06 1996-07-03 Spectral noise compensation for echo cancellation WO1997002664A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
AU64515/96A AU697941B2 (en) 1995-07-06 1996-07-03 Spectral noise compensation for echo cancellation
EP96923639A EP0872028A4 (en) 1995-07-06 1996-07-03 Spectral noise compensation for echo cancellation
CA002226083A CA2226083C (en) 1995-07-06 1996-07-03 Spectral noise compensation for echo cancellation
JP9505297A JP2000502520A (en) 1995-07-06 1996-07-03 Spectral noise compensation method for echo cancellation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/498,632 US5561668A (en) 1995-07-06 1995-07-06 Echo canceler with subband attenuation and noise injection control
US08/498,632 1995-07-06

Publications (1)

Publication Number Publication Date
WO1997002664A1 true WO1997002664A1 (en) 1997-01-23

Family

ID=23981871

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1996/011271 WO1997002664A1 (en) 1995-07-06 1996-07-03 Spectral noise compensation for echo cancellation

Country Status (8)

Country Link
US (2) US5561668A (en)
EP (1) EP0872028A4 (en)
JP (1) JP2000502520A (en)
CN (1) CN1092870C (en)
AU (1) AU697941B2 (en)
CA (1) CA2226083C (en)
MX (1) MX9800175A (en)
WO (1) WO1997002664A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7443978B2 (en) 2003-09-04 2008-10-28 Kabushiki Kaisha Toshiba Method and apparatus for audio coding with noise suppression

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5561668A (en) * 1995-07-06 1996-10-01 Coherent Communications Systems Corp. Echo canceler with subband attenuation and noise injection control
AU702796B2 (en) * 1995-07-06 1999-03-04 Tellabs Operations, Inc. Spectral noise compensation for telecommunication signal processing
US6125179A (en) * 1995-12-13 2000-09-26 3Com Corporation Echo control device with quick response to sudden echo-path change
US5825754A (en) * 1995-12-28 1998-10-20 Vtel Corporation Filter and process for reducing noise in audio signals
FI106489B (en) * 1996-06-19 2001-02-15 Nokia Networks Oy Eco-muffler and non-linear processor for an eco extinguisher
JP3099870B2 (en) * 1996-07-23 2000-10-16 日本電気株式会社 Acoustic echo canceller
DE19639702C2 (en) * 1996-09-26 2000-11-16 Siemens Ag Method and arrangement for limiting residual echo
US6453288B1 (en) * 1996-11-07 2002-09-17 Matsushita Electric Industrial Co., Ltd. Method and apparatus for producing component of excitation vector
US6192087B1 (en) 1996-11-15 2001-02-20 Conexant Systems, Inc. Method and apparatus for spectral shaping in signal-point limited transmission systems
US6278744B1 (en) 1996-11-15 2001-08-21 Conexant Systems, Inc. System for controlling and shaping the spectrum and redundancy of signal-point limited transmission
US6160886A (en) * 1996-12-31 2000-12-12 Ericsson Inc. Methods and apparatus for improved echo suppression in communications systems
US6167133A (en) * 1997-04-02 2000-12-26 At&T Corporation Echo detection, tracking, cancellation and noise fill in real time in a communication system
US5970154A (en) * 1997-06-16 1999-10-19 Industrial Technology Research Institute Apparatus and method for echo cancellation
GB2343801B (en) * 1997-08-21 2001-09-12 Data Fusion Corp Method and apparatus for acquiring wide-band pseudorandom noise encoded waveforms
GB2330745B (en) 1997-10-24 2002-08-21 Mitel Corp Nonlinear processor for acoustic echo canceller
US6108343A (en) * 1997-12-19 2000-08-22 Nortel Networks Corporation Dynamically reconfigurable DSP architecture for multi-channel telephony
US6091813A (en) * 1998-06-23 2000-07-18 Noise Cancellation Technologies, Inc. Acoustic echo canceller
US6442275B1 (en) * 1998-09-17 2002-08-27 Lucent Technologies Inc. Echo canceler including subband echo suppressor
US6658107B1 (en) * 1998-10-23 2003-12-02 Telefonaktiebolaget Lm Ericsson (Publ) Methods and apparatus for providing echo suppression using frequency domain nonlinear processing
EP0999708A1 (en) * 1998-11-06 2000-05-10 TELEFONAKTIEBOLAGET L M ERICSSON (publ) Channel error correction apparatus and method
US6560332B1 (en) 1999-05-18 2003-05-06 Telefonaktiebolaget Lm Ericsson (Publ) Methods and apparatus for improving echo suppression in bi-directional communications systems
US6798881B2 (en) * 1999-06-07 2004-09-28 Acoustic Technologies, Inc. Noise reduction circuit for telephones
DE19935808A1 (en) * 1999-07-29 2001-02-08 Ericsson Telefon Ab L M Echo suppression device for suppressing echoes in a transmitter / receiver unit
WO2001033814A1 (en) 1999-11-03 2001-05-10 Tellabs Operations, Inc. Integrated voice processing system for packet networks
FR2802375B1 (en) * 1999-12-09 2002-09-20 France Telecom DEVICE FOR PROCESSING ECHO IN A TERMINAL-LEVEL COMMUNICATION SYSTEM
US6963642B1 (en) * 1999-12-30 2005-11-08 Acoustic Technology, Inc. Band-by-band full duplex communication
US6765971B1 (en) * 2000-08-08 2004-07-20 Hughes Electronics Corp. System method and computer program product for improved narrow band signal detection for echo cancellation
DE10055643A1 (en) * 2000-11-10 2002-05-29 Siemens Ag Method for determining setting parameters of a receiving unit, associated units and associated program
KR100477638B1 (en) * 2001-09-11 2005-03-23 삼성전자주식회사 2D/3D convertible display
JP3568922B2 (en) * 2001-09-20 2004-09-22 三菱電機株式会社 Echo processing device
FR2834563B1 (en) * 2002-01-08 2004-04-02 Thales Sa METHOD FOR SUPPRESSING PULSE RADIO-ELECTRIC SIGNALS AND DEVICE FOR IMPLEMENTING THE METHOD
US7177416B1 (en) * 2002-04-27 2007-02-13 Fortemedia, Inc. Channel control and post filter for acoustic echo cancellation
US6904146B2 (en) * 2002-05-03 2005-06-07 Acoustic Technology, Inc. Full duplex echo cancelling circuit
US6961423B2 (en) 2002-06-24 2005-11-01 Freescale Semiconductor, Inc. Method and apparatus for performing adaptive filtering
US7016488B2 (en) * 2002-06-24 2006-03-21 Freescale Semiconductor, Inc. Method and apparatus for non-linear processing of an audio signal
US7242762B2 (en) * 2002-06-24 2007-07-10 Freescale Semiconductor, Inc. Monitoring and control of an adaptive filter in a communication system
US7388954B2 (en) * 2002-06-24 2008-06-17 Freescale Semiconductor, Inc. Method and apparatus for tone indication
US7215765B2 (en) * 2002-06-24 2007-05-08 Freescale Semiconductor, Inc. Method and apparatus for pure delay estimation in a communication system
JP4161628B2 (en) 2002-07-19 2008-10-08 日本電気株式会社 Echo suppression method and apparatus
WO2005046076A1 (en) * 2003-11-11 2005-05-19 Mitsubishi Denki Kabushiki Kaisha Echo suppression device
CN1295678C (en) * 2004-05-18 2007-01-17 中国科学院声学研究所 Subband adaptive valley point noise reduction system and method
CN100444695C (en) * 2004-12-31 2008-12-17 北京中星微电子有限公司 A method for realizing crosstalk elimination and filter generation and playing device
US7724693B2 (en) * 2005-07-28 2010-05-25 Qnx Software Systems (Wavemakers), Inc. Network dependent signal processing
US7764783B1 (en) * 2005-08-15 2010-07-27 Fortemedia, Inc. Acoustic echo cancellation with oversampling
US8326614B2 (en) 2005-09-02 2012-12-04 Qnx Software Systems Limited Speech enhancement system
US7876996B1 (en) 2005-12-15 2011-01-25 Nvidia Corporation Method and system for time-shifting video
US8738382B1 (en) * 2005-12-16 2014-05-27 Nvidia Corporation Audio feedback time shift filter system and method
US8295475B2 (en) * 2006-01-13 2012-10-23 Microsoft Corporation Selective glitch detection, clock drift compensation, and anti-clipping in audio echo cancellation
US7831035B2 (en) * 2006-04-28 2010-11-09 Microsoft Corporation Integration of a microphone array with acoustic echo cancellation and center clipping
US7773743B2 (en) * 2006-04-28 2010-08-10 Microsoft Corporation Integration of a microphone array with acoustic echo cancellation and residual echo suppression
US8208621B1 (en) 2007-10-12 2012-06-26 Mediatek Inc. Systems and methods for acoustic echo cancellation
WO2009047858A1 (en) * 2007-10-12 2009-04-16 Fujitsu Limited Echo suppression system, echo suppression method, echo suppression program, echo suppression device, sound output device, audio system, navigation system, and moving vehicle
US8433061B2 (en) * 2007-12-10 2013-04-30 Microsoft Corporation Reducing echo
US8219387B2 (en) * 2007-12-10 2012-07-10 Microsoft Corporation Identifying far-end sound
US8744069B2 (en) * 2007-12-10 2014-06-03 Microsoft Corporation Removing near-end frequencies from far-end sound
US8380253B2 (en) * 2008-02-15 2013-02-19 Microsoft Corporation Voice switching for voice communication on computers
JP4631933B2 (en) * 2008-05-30 2011-02-16 日本電気株式会社 Echo suppression method
US8369251B2 (en) * 2008-06-20 2013-02-05 Microsoft Corporation Timestamp quality assessment for assuring acoustic echo canceller operability
US20100304679A1 (en) * 2009-05-28 2010-12-02 Hanks Zeng Method and System For Echo Estimation and Cancellation
CN103677090A (en) 2012-09-10 2014-03-26 康准电子科技(昆山)有限公司 Electronic device
CN107705799B (en) * 2017-11-24 2020-12-11 苏州狗尾草智能科技有限公司 Chat robot echo cancellation method and device
US10951859B2 (en) 2018-05-30 2021-03-16 Microsoft Technology Licensing, Llc Videoconferencing device and method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5274705A (en) * 1991-09-24 1993-12-28 Tellabs Inc. Nonlinear processor for an echo canceller and method
US5289539A (en) * 1990-09-12 1994-02-22 Nec Corporation Echo canceller using impulse response estimating method
US5315585A (en) * 1992-05-15 1994-05-24 Kokusai Denshin Denwa Co., Ltd Echo canceller using two residual echoes
US5477534A (en) * 1993-07-30 1995-12-19 Kyocera Corporation Acoustic echo canceller

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4644108A (en) * 1982-10-27 1987-02-17 International Business Machines Corporation Adaptive sub-band echo suppressor
FR2628918B1 (en) * 1988-03-15 1990-08-10 France Etat ECHO CANCELER WITH FREQUENCY SUBBAND FILTERING
US5285165A (en) * 1988-05-26 1994-02-08 Renfors Markku K Noise elimination method
US5001701A (en) * 1989-08-07 1991-03-19 At&T Bell Laboratories Subband echo canceler including real time allocation among the subbands
CA2036078C (en) * 1990-02-21 1994-07-26 Fumio Amano Sub-band acoustic echo canceller
US5157653A (en) * 1990-08-03 1992-10-20 Coherent Communications Systems Corp. Residual echo elimination with proportionate noise injection
JPH04123621A (en) * 1990-09-14 1992-04-23 Nippon Telegr & Teleph Corp <Ntt> Echo eraser
US5305307A (en) * 1991-01-04 1994-04-19 Picturetel Corporation Adaptive acoustic echo canceller having means for reducing or eliminating echo in a plurality of signal bandwidths
US5477535A (en) * 1991-11-04 1995-12-19 Nokia Telecommunications Oy Method of preventing a divergence of an adaptive echo canceller in a noisy signal environment
US5365583A (en) * 1992-07-02 1994-11-15 Polycom, Inc. Method for fail-safe operation in a speaker phone system
US5561668A (en) * 1995-07-06 1996-10-01 Coherent Communications Systems Corp. Echo canceler with subband attenuation and noise injection control

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5289539A (en) * 1990-09-12 1994-02-22 Nec Corporation Echo canceller using impulse response estimating method
US5274705A (en) * 1991-09-24 1993-12-28 Tellabs Inc. Nonlinear processor for an echo canceller and method
US5315585A (en) * 1992-05-15 1994-05-24 Kokusai Denshin Denwa Co., Ltd Echo canceller using two residual echoes
US5477534A (en) * 1993-07-30 1995-12-19 Kyocera Corporation Acoustic echo canceller

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP0872028A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7443978B2 (en) 2003-09-04 2008-10-28 Kabushiki Kaisha Toshiba Method and apparatus for audio coding with noise suppression

Also Published As

Publication number Publication date
CA2226083A1 (en) 1997-01-23
EP0872028A1 (en) 1998-10-21
AU697941B2 (en) 1998-10-22
MX9800175A (en) 1998-11-29
EP0872028A4 (en) 1999-07-28
US5721730A (en) 1998-02-24
JP2000502520A (en) 2000-02-29
CN1092870C (en) 2002-10-16
AU6451596A (en) 1997-02-05
CA2226083C (en) 2008-12-16
US5561668A (en) 1996-10-01
CN1194068A (en) 1998-09-23

Similar Documents

Publication Publication Date Title
AU697941B2 (en) Spectral noise compensation for echo cancellation
AU680981B2 (en) Method for determining the location of echo in an echo cancellar
CA2258618C (en) Echo suppressor and non-linear processor of echo canceller
US5283784A (en) Echo canceller processing techniques and processing
EP0366584B1 (en) Full-duplex digital speakerphone
EP1202469B1 (en) Echo canceler and echo path estimating method
US5896452A (en) Multi-channel echo canceler and method using convolution of two training signals
US5587998A (en) Method and apparatus for reducing residual far-end echo in voice communication networks
EP0853844B1 (en) Echo cancelling system for digital telephony applications
US6466666B1 (en) Method and apparatus for echo estimation and suppression
US7570608B2 (en) Echo canceller disabler for modulated data signals
AU702796B2 (en) Spectral noise compensation for telecommunication signal processing
MXPA98002468A (en) Echo cancelling system for digital telephony applications

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 96196559.2

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IL IS JP KE KG KP KR KZ LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG US UZ VN AM AZ BY KG KZ MD RU TJ TM

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE LS MW SD SZ UG AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
ENP Entry into the national phase

Ref document number: 2226083

Country of ref document: CA

Ref document number: 2226083

Country of ref document: CA

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: PA/a/1998/000175

Country of ref document: MX

WWE Wipo information: entry into national phase

Ref document number: 1996923639

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWP Wipo information: published in national office

Ref document number: 1996923639

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1996923639

Country of ref document: EP