Full-duplex digital speakerphone
First Claim
1. A speakerphone including a transmit signal path having an output coupled to a communications link, the speakerphone further including a receive signal path having an input coupled to the communications link and an output coupled to a loudspeaker means, the speakerphone comprising:
- means for generating a transmit path signal, the transmit path signal including a first echo signal component;
means for converting the transmit path signal to a digital transmit signal expressed by a plurality of bits, the digital transmit signal including a first digital quantization error signal;
first adaptive filter means having an input coupled to the receive signal path and an output coupled to the transmit signal path for cancelling most of the first echo signal component;
means for coupling the receive signal path to the communications link and generating a receive path signal including a second echo signal component;
means for converting the receive path signal to a digital receive signal expressed by a plurality of bits, the digital receive signal including a second digital quantization error signal;
second adaptive filter means having an input coupled to the transmit signal path and an output coupled to the receive signal path for cancelling most of the second echo signal component;
the speakerphone further comprisingfirst means for selectively suppressing the first digital quantization error signal, said first selective suppression means being serially coupled within the transmit signal path and having an input coupled to the transmit signal path at a point after the output of said first adaptive filter means; and
second means for selectively suppressing the second digital quantization error signal, said second selective suppression means being serially coupled within the receive signal path and having an input coupled to the receive signal path at a point after the output of said second adaptive filter means.
3 Assignments
0 Petitions
Accused Products
Abstract
A full-duplex digital speakerphone 10 includes a transmit signal path having an output coupled to a telephone trunk and a receive signal path having an input coupled to the telephone trunk and an output coupled to a loudspeaker. The speakerphone further includes a room echo cancellation adaptive filter 56 and a trunk echo cancellation adaptive filter 66. Serially coupled within the transmit signal path is a selective suppression block 50 for suppressing a component of a Mu-Law or an A-Law quantization error signal. A second selective suppression block 52 is serially coupled within the receive signal path. Suppression of non-linearities due to Mu-Law or A-Law signal conversion is also accommodated by providing a non-linear signal processing block 40 at an input to an adaptive filter and an optional non-linear signal processing block at an output of the adaptive filter. Each of the blocks emulates and compensates for signal converter non-linearity. The speakerphone facilitates adaptive filter coefficient initialization by beginning a call in a half-duplex mode and switching to full-duplex when filter coefficients are adapted. The speakerphone also has a variable adaptation step size which is a function of a short-term estimate of signal power within the associated transmit or receive signal paths.
102 Citations
25 Claims
-
1. A speakerphone including a transmit signal path having an output coupled to a communications link, the speakerphone further including a receive signal path having an input coupled to the communications link and an output coupled to a loudspeaker means, the speakerphone comprising:
-
means for generating a transmit path signal, the transmit path signal including a first echo signal component; means for converting the transmit path signal to a digital transmit signal expressed by a plurality of bits, the digital transmit signal including a first digital quantization error signal; first adaptive filter means having an input coupled to the receive signal path and an output coupled to the transmit signal path for cancelling most of the first echo signal component; means for coupling the receive signal path to the communications link and generating a receive path signal including a second echo signal component; means for converting the receive path signal to a digital receive signal expressed by a plurality of bits, the digital receive signal including a second digital quantization error signal; second adaptive filter means having an input coupled to the transmit signal path and an output coupled to the receive signal path for cancelling most of the second echo signal component; the speakerphone further comprising first means for selectively suppressing the first digital quantization error signal, said first selective suppression means being serially coupled within the transmit signal path and having an input coupled to the transmit signal path at a point after the output of said first adaptive filter means; and second means for selectively suppressing the second digital quantization error signal, said second selective suppression means being serially coupled within the receive signal path and having an input coupled to the receive signal path at a point after the output of said second adaptive filter means. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of operating a speakerphone, the speakerphone comprising a first echo cancellation adaptive filter having an input coupled to a receive signal path and an output coupled to a transmit signal path, the speakerphone further comprising a second echo cancellation adaptive filter having an input coupled to the transmit signal path and an output coupled to the receive signal path, the method comprising the steps of:
-
converting a transmit signal path input signal to a digital representation of the transmit signal path input signal, the digital representation including the first echo noise component and also a first quantization error component; converting a receive signal path input signal to a digital representation of the receive signal path input signal, the digital representation including the second echo noise component and also a second quantization error component; cancelling at least a portion of the first echo noise component and the second echo noise component with the adaptive filters, the step of cancelling including the steps of, for each of the adaptive fillers, generating an adaptive filler output error signal E(n) having a magnitude which is a function of the input signal, a reference input signal and a magnitude of adaptive filter coefficients; and adapting the magnitude of the adaptive filter coefficients as a function of an adaptation step size Beta, wherein Beta is a function of a constant Beta0 which is divided by a signal power estimate Ps(n), the step of cancelling further comprising the steps of, suppressing the first quantization error component of the digital representation of the transmit signal path signal; and suppressing the second quantization error component of the digital representation of the receive signal path signal. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
10. A method as set forth in claim 8 and further comprising a step of determining a state of the speakerphone to be a CALLER state, a USER state, an IDLE state or an OTHER state in accordance with the state of a plurality of binary variables.
-
11. A method as set forth in claim 10 wherein the plurality of binary variables are b0, b1, b2 and b3, wherein when b2 and b3 are both equal to zero the speakerphone is determined to be in the IDLE state, when b0 and b2 are both equal to one, the speakerphone is determined to be in the CALLER state and when b1 and b3 are both equal to one the speakerphone is determined to be in the USER state, and wherein the state of each of the binary variables is determined in accordance with the following relationships:
-
space="preserve" listing-type="equation">b3=1 if K1*Sx-Nx-K2>
0, otherwise b3=0,
space="preserve" listing-type="equation">b2=1 if K1*Sr-Nr-K2>
0, otherwise b2=0,
space="preserve" listing-type="equation">b1=1 if SPx*VOLx>
K3*SPr , otherwise b1=0, and
space="preserve" listing-type="equation">b0=1 if SPr*VOLr>
K3*SPx , otherwise b0=0where K1 and K2 are constants that define a threshold above which a signal is considered to be speech, K3 defines a ratio of transmit and receive speech levels to distinguish between the USER and the CALLER states, VOLx and VOLr are transmit and receive volume levels, respectively, and wherein
space="preserve" listing-type="equation">Sx=Transmit Channel total signal amplitude estimate,
space="preserve" listing-type="equation">Sr=Receive Channel total signal amplitude estimate,
space="preserve" listing-type="equation">Nx=Transmit Channel Noise amplitude estimate,
space="preserve" listing-type="equation">Nr=Receive Channel Noise amplitude estimate,
space="preserve" listing-type="equation">SPx=Transmit Channel Speech signal amplitude estimate, and
space="preserve" listing-type="equation">SPr=Receive Channel Speech signal amplitude estimate.
-
-
12. A method as set forth in claim 11 wherein for all other combinations of b0, b1, b2 and b3 except b1=l, b2=1, b3=0 and b0=1, b2=0, b3=1 and b0=b1=b2=b3=1 the speakerphone is determined to be in the OTHER state.
-
13. A method as set forth in claim 11 wherein VOLx and VOLr each varies within a range of approximately +12 dB to approximately -24 dB.
-
14. A method as set forth in claim 10 wherein when the speakerphone is determined to be in the CALLER state only the adaptation of the first echo cancellation filter is enabled, when the speakerphone is determined to be in the USER state only the adaptation of the second echo cancellation filter is enabled, when the speakerphone is determined to be in the IDLE state neither the adaptation of the first or the second echo cancellation filters are enabled and when the speakerphone is determined to be in the OTHER state the adaptation of both the first and the second echo cancellations filters are enabled.
-
15. A method as set forth in claim 8 wherein the steps of generating an output error signal and adapting are accomplished while operating the speakerphone in a half-duplex mode of operation when a call is first initiated.
-
16. A method as set forth in claim 15 and further comprising the steps of:
-
determining a time when the magnitude of the filter coefficients have a value which indicates that the first echo cancellation adaptive filter and the second echo cancellation adaptive filter are initialized; and switching the speakerphone to a full-duplex mode of operation.
-
-
17. A method as set forth in claim 8 wherein the steps of suppressing are each accomplished by:
-
comparing the output of each of the echo cancellation adaptive filters to a threshold to determine if the output has a component which is greater than or less than a current quantization step size; and if the output is determined to have a component which is less than a predetermined number of quantization steps further includes a step removing the component.
-
-
18. A method as set forth in claim 8 wherein the steps of suppressing each include a step of emulating a nonlinear effect associated with each of the steps of converting.
-
19. A method as set forth in claim 8 and further comprising a step of detecting a diverging condition within the adaptive filters, the step of detecting including a step of identifying a signal power which continuously exceeds a predetermined threshold value for a predetermined interval of time.
-
20. A method as set forth in claim 19 wherein the predetermined threshold value is approximately one half of a full scale signal power and wherein the predetermined interval of time is approximately 250 milliseconds.
-
21. A method as set forth in claim 20 and further comprising a step of reinitializing the adaptive filters when a diverging condition is detected.
-
22. A method as set forth in claim 8 wherein the steps of converting are accomplished in a repetitive manner at a rate related to a predetermined signal sample rate and wherein the step of adapting is accomplished at a rate which is less than the signal sample rate.
-
23. A method as set forth in claim 8 wherein the step of cancelling comprises the initial steps of, when a call is first initated;
-
determining when a predetermined number of transitions of the receive signal path signal have occurred; and enabling the adaptation of adaptive filter coefficients.
-
-
-
24. In a speakerphone including a transmit signal path having an output coupled to a communications link, the speakerphone further including a receive signal path having an input coupled to the communications link and an output coupled to a loudspeaker means, a method of operating the speakerphone comprising the steps of:
-
generating a transmit path signal, the transmit path signal including a first echo signal component; converting the transmit path signal to a digital transmit signal expressed by a plurality of bits, the digital transmit signal including a first digital quantization error signal; cancelling most of the first echo signal component by adaptively filtering the transmit path signal; generating a receive path signal, the receive path signal including a second echo signal component; converting the receive path signal to a digital receive signal expressed by a plurality of bits, the digital receive signal including a second digital quantization error signal; cancelling most of the second echo signal component by adaptively filtering the receive path signal; selectively suppressing the first digital quantization error signal with a first selective suppression means which is coupled to the transmit signal path; and selectively suppressing the second digital quantization error signal with a second selective suppression means which is coupled to the receive signal path. - View Dependent Claims (25)
-
Specification