Residual echo estimation for echo cancellation
Granted 22 Feb 2005 · 2 office actions
Assignee: Intel Corporation
Law firm: Law firm · Log in to unlock
Attorney: Attorney · Log in to unlock
Inventors: Michael E. Deisher · Examiner: F. W. Isen · AU 2644 · TC 2600
Life of the application
10 dated eventsAbstract
Real and imaginary components of the discrete Fourier transform (DFT) of the residual echo in an acoustic echo cancellation system are separately estimated using mapping functions derived without an assumption of statistical independence between separate components of a near-end microphone input signal. The residual echo estimator calculates the real and imaginary components using an approximation of the microphone input signal without the echo. A different approximation is used depending on whether the near-end talker and/or the far-end talker are talking.
Description
7 parts›FIELD
The present invention relates generally to echo cancellation systems, and more specifically to systems for reducing residual echo in echo cancellation systems.
›BACKGROUND OF THE INVENTION
In “speakerphone” applications, the “near-talker” is the person using the speakerphone, and the “far-talker” is the person on the far end of the telephone line. The far-talker's speech is broadcast (played through a speaker) into the room (or other acoustic enclosure) that houses the speakerphone and the near-talker. An echo is produced by the far-talker's speech propagating through the room and being subsequently received at the microphone. Acoustic echo cancelers (AEC) are used to cancel the echo received at the microphone. The acoustic echo canceler is typically an adaptive filter that models the various echo paths in the room. Extreme cases exist where the acoustic echo canceler briefly fails to cancel the echo, such as prolonged double-talk or rapid near-talker movement. In these cases, a far-talker might hear a short burst of his/her own voice as an echo.
Residual echo suppression techniques attempt to remove the echo that remains after acoustic echo cancellation, thereby preventing the far-talker from hearing such bursts while still allowing the near-talker's voice to pass through undisturbed. Residual echo suppression techniques have been the subject of research, and papers have been published describing the work. Examples include: S. Gustafsson, et al., “Combined Acoustic Echo Control and Noise Reduction for Hands-Free Telephony,” Signal Processing, Vol. 64, pp. 21-32, 1998, hereinafter referred to as “Gustafsson;” and V. Turbin, et al., “Using Psychoacoustic Criteria in Acoustic Echo Cancellation Algorithms,”. Proc. IWAENC'97, London, pp. 53-56, September 1997, hereinafter referred to as “Turbin.” Despite ongoing research, current residual echo suppression techniques are not completely effective in removing residual echo.
›BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows an acoustic echo cancellation system with residual echo estimation;
FIG. 2 shows a first portion of a cross-term calculator;
FIG. 3 shows a second portion of a cross-term calculator; and
FIG. 4 shows speech activity detectors in a speakerphone context.
›DESCRIPTION OF EMBODIMENTS · 1 of 4
In the following detailed description of the embodiments, reference is made to the accompanying drawings that show, by way of illustration, specific embodiments in which the invention may be practiced. In the drawings, like numerals describe substantially similar components throughout the several views. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. Other embodiments may be utilized and structural, logical, and electrical changes may be made without departing from the scope of the present invention. Moreover, it is to be understood that the various embodiments of the invention, although different, are not necessarily mutually exclusive. For example, a particular feature, structure, or characteristic described in one embodiment may be included within other embodiments. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims, along with the full scope of equivalents to which such claims are entitled.
The method and apparatus of the present invention provide a mechanism to estimate residual echo in an acoustic echo cancellation system. An adaptive filter produces an estimate of the echo, and subtracts the estimate of the echo from the microphone input signal. When the echo, and the estimate of the echo, do not closely match, an undesirable residual echo remains in the signal. The method and apparatus of the present invention provide a residual echo estimator that separately estimates real and imaginary components of the discrete Fourier transform (DFT) of the residual echo without assuming statistical independence between the various components of the microphone input signal. The residual echo estimator calculates the real and imaginary components using an approximation of the microphone input signal without the echo. A different approximation is used depending on whether the near-talker and/or the far-talker are talking.
FIG. 1 shows a speakerphone with echo cancellation and residual echo estimation. Speakerphone 102 includes adaptive filter 112 , residual echo estimator (REE) 116 , summer 124 , noise reduction (NR) circuit 120 , speaker 106 , and microphone 128 . Speakerphone 102 can include many other circuits such as processors, amplifiers, and the like. Many of these other circuits are omitted from FIG. 1 to more clearly show novel portions of the present invention. Speakerphone 102 includes speaker 106 that plays speech from the far-talker. Far-talker speech is received from the far end on node 104 , and is played through speaker 106 . Speech data on node 104 is also delayed by delay circuit 108 prior to being operated upon by adaptive filter 112 .
In some embodiments, speech data on node 104 is digital data. In these embodiments, a digital-to-analog (D/A) converter converts digital data to an analog waveform for play by speaker 106 . Also in these embodiments, delay circuit 108 can be a digital delay element such as a register file or shift register. In other embodiments, data on node 104 is analog data. In these embodiments, delay circuit 108 can be an analog delay element, such as a lumped or distributed analog delay line. Delay circuit 108 can be a fixed delay or a variable delay. In general, when the echo path is larger, the delay in delay circuit 108 is larger. For example, when speakerphone 102 is used in a car, the echo path is short and the delay of delay circuit 108 is short. Also for example, when speakerphone 102 is used in a large conference room, the echo path is longer, and the delay of delay circuit 108 is correspondingly longer.
In operation, speaker 106 plays the far-end speech into an acoustic environment. An echo signal y n from the acoustic enclosure is received at microphone 128 . The effect of the acoustic enclosure on the echo is represented by block 130 , which contains transfer function H 1 . That is to say, speech played from speaker 106 is operated upon by transfer function H 1 , and is then received at microphone 128 . In addition to echo signal y n , microphone 128 also receives near-end speech signal s n and near-end noise signal v n Near-end speech signal s n represents speech from near-talker 136 as modeled by transfer function H 2 , shown in block 132 , and noise signal v n represents noise 138 as modeled by transfer function H 3 , shown in block 134 . Microphone 128 , therefore, receives the sum of y n , s n , and v n . This is shown at node 126 as z n .
y n and v n , at least to some degree, represent undesirable components of z n . For example, y n is the echo caused by the coupling of speaker 106 and microphone 128 . When a large component of y n does not get canceled, and becomes part of the signal sent back to the far-end, the far-talker can hear his/her voice after undergoing a delay, and this can cause confusion during a phone call. Also for example, if v n is unduly large, then the far-talker hears a large amount of noise, and this can interrupt a phone conversation. In contrast to the above, the near-end speech signal is, in general, a desirable component of z n. When the near-end speech is faithfully transmitted to the far end, then effective communications can take place.
Adaptive filter 112 approximates the transfer function of the echo as Ĥ 1 , and generates an estimate ŷ n of the echo signal y n from the delayed far-end speech signal x n . Summer 124 subtracts ŷ n from z n to create e n on node 122 . Adaptive filter 112 can be any filter suitable for use in an adaptive echo cancellation system. Examples include, but are not limited to: S. Gay, S Tavathia, “The fast affine projection algorithm”, Proc. IEEE ICASSP, Detroit, USA, 1995. pp. 3023-3026; and G. Glentis, K. Berberidis, S. Theodoridis, “A unified view: Efficient least squares adaptive algorithms for FIR transversal filtering,” IEEE Signal Processing Magazine, vol. 16, pp. 13-41, July 1999.
z n , y n , and e n are input to residual echo estimator 116 to generate an estimate {circumflex over (r)} n of the residual echo. The residual echo estimate and e n are input to noise reduction (NR) circuit 120 to reduce the residual echo in e n . Ideally, ŷ n would match y n exactly and e n would contain only the near-end speech signal s n and perhaps some background noise v n . However, this is practically impossible and e n always contains some amount of residual echo r n =y n −ŷ n , i.e., e n =s n +v n +r n . When the far-talker is silent (x n =0), the input to the noise reduction algorithm is simply speech plus background noise. When the far-talker is active, the “noise” (or undesirable components) includes the background noise v n along with echo y n . Noise reduction circuit 120 uses a noise spectral estimator to track the near-stationary background noise. The quasi-stationary residual echo is estimated separately via the residual echo estimator (REE). NR is then applied using a composite “noise” estimate.
›DESCRIPTION OF EMBODIMENTS · 2 of 4
In some embodiments, noise reduction circuit 120 leaves a small amount of near-stationary background noise to mask residual echo. This can be accomplished using algorithms discussed in Turbin (see background, above).
Any of a large class of speech spectral estimators could be used to modify the noise power spectral estimate to include residual echo. Examples of suitable noise reduction algorithms and circuits can be found in: S. F. Boll, “Suppression of acoustic noise in speech using spectral subtraction,” IEEE Trans. Acoust. Speech Signal Process. ASSP-27 (April 1979) 113-120; and Y. Ephraim, D. Malah, “Speech enhancement using a minimum mean-square error short-time spectral amplitude estimator,” IEEE Trans. Acoust. Speech Signal Process. 32(6) (December 1984) 1109-1121.
Residual Echo Estimation
Prior work by Gustafsson (see background, above) assumes that the a priori residual echo statistics may be estimated via a real-valued deterministic mapping function F n applied to the adaptive filter output.
E { R n ( k ) 2 } = ( F n ( k ) 1 - F n ( k ) ) 2 · E { Y ^ n ( k ) 2 } ( 1 )
The mapping function is
F n ( k ) = E { Z n ( k ) 2 } - E { E n ( k ) 2 } - E { Y ^ n ( k ) 2 } E { Z n ( k ) 2 } - E { E n ( k ) 2 } + E { Y ^ n ( k ) 2 } ( 2 )
where capital letters represent the discrete Fourier transform (DFT) components of the corresponding variables represented by small letters. For example, E n (k) represents DFT components of e n .
Gustafsson omits details on estimation of E{|Z n (k)| 2 }, E{|E n (k)| 2 }, and E{|Ŷ n (k)| 2 } from their work cited above, but they are typically estimated using a “leaky average” of sample values. Experimental results obtained using Euclidean distances between the true and estimated residual echo power spectrum to measure the success of the estimator showed that instantaneous values give very good results. Also in Gustafsson, F n was divided into subbands and each F n (k) was replaced by the average value in its subband, although the number and width of the subbands were not discussed. Where E{|Ŷ n (k)| 2 } was too small, F n (k) was not included in the average. Experimental results indicate that low estimation error is achieved when the subband size is one DFT bin.
Equations (1) and (2), above, make two assumptions: that F n is real-valued, and that s n , v n , and y n are statistically independent. Experimental results using equations (1) and (2) for residual echo estimation yielded signal-to-noise ratios of the estimated residual echo power spectrum of, at best, about 2.0 dB. The derivation of equation (2) is now discussed, with the two assumptions in mind. The two assumptions are removed, and the results are then presented.
The SNR-like measurement was
1 N ∑ n = 0 N - 1 10 log 10 ∑ k = 0 K - 1 ( R ^ n ( k ) 2 ) 2 ∑ k = 0 K - 1 ( R ^ n ( k ) 2 - R n ( k ) 2 ) 2
The residual echo spectral components
R n ( k )= Y n ( k )− Ŷ n ( k ) (3)
are related to the echo Y n (k) by defining a real-valued transfer function F n such that
R n ( k )= F n ( k )· Y n ( k ) (4)
Assuming that the mapping function F n is real-valued, substituting (4) into (3) and yields
Ŷ n ( k )=[1− F n ( k )]· Y n (k) (5)
which leads to
E { Y n ( k ) 2 } = 1 ( 1 - F n ( k ) ) 2 E { Y ^ n ( k ) 2 } ( 6 )
Using the relationship of (4) in (6) yields
E { R n ( k ) 2 } = ( F n ( k ) 1 - F n ( k ) ) 2 · E { Y ^ n ( k ) 2 } ( 7 )
Assuming that s n , v n , and y n are statistically independent and zero mean, the following relationships hold true.
E{|Z n ( k )| 2 }=E{|S n ( k )| 2 }+E{|V n ( k )| 2 }+E{|Y n ( k )| 2 } (8a)
E{|E n ( k )| 2 }=E{|S n ( k )| 2 }+E{|V n ( k )| 2 }+E{|R n ( k )| 2 } (8b)
Subtracting (8b) from (8a) and substituting from (6) and (7) yields
E { Z n ( k ) 2 } - E { E n ( k ) 2 } = [ 1 ( 1 - F n ( k ) ) 2 - F n 2 ( k ) ( 1 - F n ( k ) ) 2 ] · E { Y ^ n ( k ) 2 } ( 9a )
(1 −F n ) k ) 2 ·( E{|Z n ( k )| 2 }−E{|E n ( k )| 2 })=(1 −F n 2 ( k )· E{|Ŷ n ( k )| 2 } (9b)
Solving the quadratic equation for F n (k) yields two solutions, F n (k)=1 and the more meaningful solution:
F n ( k ) = E { Z n ( k ) 2 } - E { E n ( k ) 2 } - E { Y ^ n ( k ) 2 } E { Z n ( k ) 2 } - E { E n ( k ) 2 } + E { Y ^ n ( k ) 2 } ( 10 )
Experimental results with s n =0 showed that the error in the deterministic mapping is due to the two assumptions in the derivation: that F is real-valued; and that s n , v n , and y n are statistically independent. Experimental results showed that a more accurate residual echo estimate was achieved with a non-real-valued mapping function F that had been derived without the assumption of statistical independence.
Removal of Assumption that F is Real-Valued
Letting F n (k)=F rn (k)+jF in (k), and carrying this definition through (4) and (5), into (6) and (7), and finally into (9) leads to a family of solutions to the quadratic equation. When F in (k) is forced to zero, the solution of (10) is realized. When F rn (k) is forced to zero, the solution is
F n ( k ) = E { Z n ( k ) 2 } - E { E n ( k ) 2 } - E { Y ^ n ( k ) 2 } E { Z n ( k ) 2 } - E { E n ( k ) 2 } - E { Y ^ n ( k ) 2 } ( 11 )
Experimental results showed that this choice was not necessarily better than that already proposed. Restructuring the problem, however, leads to an unambiguous mapping. Instead of (4), separate mapping functions can be used for the real and imaginary parts of R n (k).
R rn ( k )= F rn ( k )· Y rn ( k ) (12a)
R in ( k )= F in ( k )· Y in ( k ) (12b)
This leads to separate solutions for the real and imaginary parts. Equation (10) is replaced by two solutions of the form
F rn ( k ) = Z rn 2 ( k ) - E rn 2 ( k ) - Y ^ rn 2 ( k ) Z rn 2 ( k ) - E rn 2 ( k ) + Y ^ rn 2 ( k ) ( 13 )
This approach leads to a significant improvement in the experimental results. The residual echo estimate improved to 45 dB SNR (noise free case with no near talker). The numerically well-behaved formulation shown in (16), below, was also used to attain this result.
›DESCRIPTION OF EMBODIMENTS · 3 of 4
Removal of Assumption of Statistical Independence
Removing the statistical independence assumption turns equation (10) into the following:
F n ( k ) = Z n ( k ) 2 - E n ( k ) 2 - 2 Re { Y ^ n ( k ) ( S n ( k ) + V n ( k ) ) * } - Y ^ n ( k ) 2 Z n ( k ) 2 - E n ( k ) 2 - 2 Re { Y ^ n ( k ) ( S n ( k ) + V n ( k ) ) * } + Y ^ n ( k ) 2 ( 14 )
When combined with (13), this becomes two equations of the form
F rn ( k ) = Z rn 2 ( k ) - E rn 2 ( k ) - Y ^ rn ( k ) ( S rn ( k ) + V rn ( k ) ) - Y ^ rn 2 ( k ) Z rn 2 ( k ) - E rn 2 ( k ) - Y ^ rn ( k ) ( S rn ( k ) + V rn ( k ) ) + Y ^ rn 2 ( k ) ( 15 )
The cross-term depends on two unknowns, the speech and noise spectral components. The uncertainty in the calculation of the mapping function has been isolated to the cross-term estimate. Several choices were investigated for approximation of the cross-term including Z n (k)Ŷ n (k), Ŝ n−1 (k)Ŷ n (k), and 0.5[Z n (k)+Ŝ n−1 (k)]Ŷ n (k). Distortion of the near-end was measured as the Itakura-Saito distortion between ŝ n and s n . Far-end suppression was measured using the echo return loss enhancement (ERLE). Including a cross-term was found to measurably improve residual echo estimation during double-talk. However, the near-end was not free of distortion and some residual echo was still audible. Results (discussed below) are shown in Table 1.
Avoiding Numerical Sensitivity
Equation (7) is sensitive to values of F n (k) near one. The alternative formulation above also suffers from this problem. In one embodiment, this situation is avoided using
R rn 2 ( k ) = ( F rn ( k ) 1 - F rn ( k ) ) 2 Y ^ rn 2 ( k ) = ( Z rn 2 ( k ) - E rn 2 ( k ) - Y ^ rn ( k ) ( S rn ( k ) + V rn ( k ) ) - Y ^ rn 2 ( k ) ) 2 Y ^ rn 2 ( k ) ( 16 )
and set R n (k) to zero when Ŷ rn 2 (k) or Ŷ in 2 (k) is small (<10.0). This change substantially improved the experimental results. The residual echo estimate as calculated in (1) improved from approximately 2 dB to approximately 11.5 dB SNR (noise free case with no near talker) with this modification.
Sample Results for Simulated Near, Far, and Double Talk Scenarios with and without Noise for Various Cross-Terms.
Table 1 shows experimental results for simulations with and without near-end noise. Speech distortion during near-end single-talk was measured as the Itakura-Saito distortion ISD between ŝ n and s n . These results are shown in rows labeled “ISD-Near.” The clean signal s n was available since a room simulator was used to generate the microphone input z n . The Itakura-Saito distortion was also used to measure double-talk performance. These results are shown in rows labeled “ISD-DT.” An average ERLE was used to measure performance during far-end single-talk. These results are shown in rows labeled “ERLE-Far.” Instead of normalizing by the microphone input, the ERLE was normalized by the near-end signal, s n . In both noisy and noise-free cases, the residual echo was well suppressed (−23 dB ERLE) during far-end single-talk when the cross term is set to zero. The cross terms appear to be important when the near-end is active. In these cases, better performance was obtained using a guess at the cross term. During double-talk, substituting Ŷ n (k) [Z n (k)+Ŝ n−1 (k)]/2 for the cross term provided very good results (10-14× improvement in ISD). During near-end single-talk, using Ŷ n (k)Z n (k) in place of the cross term gave very good results when background noise was present (8× improvement in ISD). In both these cases, residual echo suppression was mild and distortion of the far-end was audible.
The results shown above in Table form are now shown in separate equations for each of the near-end single talk, far-end single talk, and double talk situations. For near-end single talk, the real and imaginary parts of the residual echo are estimated by a system using the following two equations.
R rn 2 ( k ) = ( Z rn 2 ( k ) - E rn 2 ( k ) - Y ^ rn ( k ) Z rn ( k ) - Y ^ rn 2 ( k ) ) 2 Y ^ rn 2 ( k )
R in 2 ( k ) = ( Z in 2 ( k ) - E in 2 ( k ) - Y ^ in ( k ) Z in ( k ) - Y ^ in 2 ( k ) ) 2 Y ^ in 2 ( k )
For far-end single talk, the real and imaginary parts of the residual echo are estimated by a system using the following two equations.
R rn 2 ( k ) = ( Z rn 2 ( k ) - E rn 2 ( k ) - Y ^ rn 2 ( k ) ) 2 Y ^ rn 2 ( k )
R in 2 ( k ) = ( Z in 2 ( k ) - E in 2 ( k ) - Y ^ in 2 ( k ) ) 2 Y ^ in 2 ( k )
And for double-talk, the real and imaginary parts of the residual echo are estimated by a system using the following two equations.
R rn 2 ( k ) = ( Z rn 2 ( k ) - E rn 2 ( k ) - Y ^ rn ( k ) ( Z rn ( k ) + S ^ r ( n - 1 ) ( k ) ) / 2 - Y ^ rn 2 ( k ) ) 2 Y ^ rn 2 ( k )
R in 2 ( k ) = ( Z in 2 ( k ) - E in 2 ( k ) - Y ^ in ( k ) ( Z in ( k ) + S ^ i ( n - 1 ) ( k ) ) / 2 - Y ^ in 2 ( k ) ) 2 Y ^ in 2 ( k )
A residual echo estimator capable of calculating the cross-terms as shown above is shown in, and described with reference to, the remaining figures.
FIG. 2 shows a block diagram of a first portion of a residual echo estimator. Circuit 200 generates the real part of spectral components of ŷ n , e n and z n . Signals ŷ n , e n and z n are shown on nodes 114 , 122 , and 126 , respectively, which are input to window functions 202 , 204 , and 206 respectively. The index “n” is the block index. Any suitable windowing function can be applied, including rectangular, Hamming, or Hann windows. In some embodiments, window functions 202 , 204 , and 206 are omitted.
In some embodiments, AEC and NR are performed in the time domain. In these embodiments, Fast Fourier Transform (FFT) blocks 208 , 210 , and 212 are used to generate frequency domain representations of the signals ŷ n , e n and z n for use in the residual echo estimator. In other embodiments, AEC and NR are performed in the frequency domain, and window blocks 202 , 204 , and 206 , as well as FFT blocks 208 , 210 , and 212 are not present.
›DESCRIPTION OF EMBODIMENTS · 4 of 4
FFT block 208 generates Ŷ rn (k) on node 220 , and provides the same to squaring function 214 which generates Ŷ rn 2 (k) on node 222 . FFT block 210 generates Ê rn (k) and squaring function 216 generates Ê rn 2 (k) on node 224 . FFT block 212 generates {circumflex over (Z)} rn (k) on node 232 , and provides the same to squaring function 218 which generates {circumflex over (Z)} rn 2 (k) on node 232 . Summer 226 receives Ŷ rn 2 (k), Ê rn 2 (k), and {circumflex over (Z)} rn 2 (k) on nodes 222 , 224 , and 230 , respectively, and produces {circumflex over (Z)} rn 2 (k)−Ê rn 2 (k)−Ŷ rn 2 (k) on node 228 .
Circuit 200 generates the real part of spectral components of ŷ n , e n and z n . A complete residual echo estimator includes another circuit corresponding to circuit 200 that generates the imaginary parts of the same spectral components.
FIG. 3 shows a block diagram of a second portion of a residual echo estimator. Circuit 300 receives signals on nodes 232 , 220 , 228 , and 222 , which correspond to like-numbered nodes in FIG. 2 . Circuit 300 also receives a signal on node 302 , which corresponds to the spectral components of a previous output from a noise reduction circuit, such as noise reduction circuit 120 (FIG. 1 ). Summer 304 and multipliers 303 and 305 produce Ŷ rn (k)[Z rn (k)+Ŝ r(n−1 )(k)]/2, which is used as the cross-term when a double-talk event is present. Multiplier 308 produces Ŷ(k)Z rn (k), which is used when there is near-end speech only. Multipliers 306 and 312 implement the switching between cross-terms when different speech activity is present.
In some embodiments (soft decision embodiments), the cross-terms produced on nodes 310 and 314 are produced in varying amplitudes, and are summed by summer 316 . As a result, the numerator produced on node 318 includes components of both types of cross-terms. In soft decision embodiments, multipliers 306 and 312 produce variable output values that are a function of both the spectral components and α and β, and the outputs are summed by summer 316 .
In other embodiments, (hard decision embodiments), α and β take on values of “1” or “0,” and multipliers 306 and 312 act as switches that either pass the input through, or do not pass the input through. For example, when α is a “1,” multiplier 306 acts as a switch and passes Ŷ rn (k)[Z rn (k)+Ŝ r(n−1) (k)]/2 to node 310 . In this case, multiplier 306 acts as a closed switch and multiplier 312 acts as an open switch. Also for example, when β is a “1,” multiplier 312 passes Ŷ rn 2 (k)Z rn (k) to node 314 . In this case, multiplier 312 acts as a closed switch and multiplier 306 acts as an open switch. The generation of α and β is discussed with reference to FIG. 4 .
Divider 320 divides the numerator on node 318 by Ŷ rn 2 (k) on node 222 to produce {circumflex over (R)} rn 2 (k) on node 322 . {circumflex over (R)} rn 2 (k) on node 322 represents the estimate of the square of the real part of the spectral component of the residual echo.
Summers 304 and 316 , and multipliers 306 , 308 , and 312 form a cross-term calculator that calculates the various cross-terms shown above in Table 1. One skilled in the art will understand that other embodiments can be used for cross-term calculators without departing from the scope of the present invention. For example, all or part of circuit 300 can be implemented in software. The software can be executed on general purpose computer, a digital signal processor (DSP), or other processor. Also for example, all or part of circuit 300 can be implemented in special purpose hardware, such as an application specific integrated circuit (ASIC).
FIG. 4 shows a block diagram of speech activity detectors in a speakerphone context. In this embodiment, a speakerphone is implemented in a computer 400 . Double talk detector 402 receives the far-end audio on node 104 , and also receives the near-end audio on node 126 captured by microphone 128 . In hard decision embodiments, double-talk detector 402 sets α equal to one when double-talk is active and sets α equal to zero otherwise. Speech activity detector 404 receives the near-end audio on node 126 and determines if speech signals are present at the microphone. AND gate 406 receives the output of speech activity detector 404 and the logical inverse of α on node 408 . Gate 406 generates variable β on node 410 . In hard decision embodiments, β is set to one if there is no double-talk but there is near-end speech activity. Otherwise β is set to zero. In soft decision embodiments, α and β take on real values between zero and one, inclusively. For example, in one embodiment, α takes on a value between zero and one, and β is generated by a multiplier rather than gate 406 . In such an embodiment, the multiplier generates β as β=(1−α)*(speech activity detector output).
It is to be understood that the above description is intended to be illustrative, and not restrictive. Many other embodiments will be apparent to those of skill in the art upon reading and understanding the above description. The scope of the invention should, therefore, be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.
›Tables in the description — 1
| No | Cross- | Cross-term = | |||
| AEC | NR | Cross- | term = | Ŷ n (k)[Z n (k) + | |
| Only | Only | term | Ŷ n (k)Z n (k) | Ŝ n−1 (k)]/2 | |
| No Noise | |||||
| ISD - DT | 9.795 | 9.207 | 4.425 | 1.001 | 0.956 |
| ISD - | 0.000 | 0.073 | 0.381 | 0.089 | 0.154 |
| Near | |||||
| ERLE - | 46.4 dB | 44.0 dB | −23.8 dB | 33.2 dB | 35.1 dB |
| Far | |||||
| Noise | |||||
| ISD - DT | 14.523 | 9.182 | 4.321 | 1.142 | 1.081 |
| ISD - | 1.219 | 0.124 | 0.456 | 0.156 | 0.220 |
| Near | |||||
| ERLE - | 53.6 dB | 46.9 dB | −22.7 dB | −1.9 dB | 43.0 dB |
| Far |
Claims as granted
27 claimsLog in to read the claims of this application.
Log in to unlockClassifications
9 codes- H04M9/08
Claim changes
SoonSee which claims were amended, added or cancelled during examination, with every added and removed word marked.
The published claims of this application are not paired with the granted ones in what we hold.
File wrapper
See the full prosecution history — every USPTO and applicant action on this file, in order.
Log in to unlockDocuments
Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.
Log in to unlockChain of title
See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.
Log in to unlock