FIELD OF THE INVENTION
[0001] The present invention relates to the field of echo cancellation, and more particularly
to an electricity echo cancellation device and method applied in a terminal.
BACKGROUND
[0002] With the continuous development of the Internet and telecommunication technologies,
telecommunication applications over the Internet become more numerous. Recently, great
development of the Voice over IP (VOIP) technology has been achieved. However, compared
with the conventional telephone technologies, the VOIP technology has disadvantage
in its voice quality for a main reason of echoes.
[0003] According to the generation principles, echoes are classified into acoustic echo
and electricity echo. As shown in Fig.1, S
in represents a near-end input signal, S
out represents a near-end output signal, R
in represents a far-end input signal, and R
out represents a far-end output signal. Taking the near-end as an example, the generation
principle of electricity echoes is as follows. When the near-end input signal S
in is transmitted in the Public Switched Telephone Network (PSTN), a mixing converter
is needed to convert the two-line at the user end to the four-line in an exchanger.
During the conversion, a part of signals are leaked from a near-end transmitting path
to a near-end receiving path. This part of "leaked" signals is retransmitted to the
near-end, and thereby a near-end user hears his/her own voices. This is electricity
echo. Also taking the near-end as an example, the generation principle of acoustic
echoes is as follows. The acoustic echo is caused by voice coupling between a voice
playback device and a voice collection device. The far-end input voice signal R
in, after transmitted to the near-end, becomes the far-end output voice signal R
out. After the signal R
out is received by the near-end voice playback device, such as a speaker, and picked
up by the near-end voice collection device, such as a microphone, via various reflecting
paths or without any reflection, the signal R
out is retransmitted to the far-end, and thereby a far-end user hears his/her own voices.
This is acoustic echo.
[0004] Generally, typical echoes with a delay of 16∼20ms are called sidetone, which are
even desired by a user because the user may feel comfortable when hearing it in a
talking. However, echoes with a delay of more than 32ms would seriously influence
the quality of a talking. With the development of communication technologies, talking
distance supported by the VOIP technology is becoming longer and thus voice delay
increases greatly, so that echo phenomenon is becoming much more serious. Therefore,
echo cancellation becomes a problem to be overcome for the VOIP technology.
[0005] Presently, electricity echo cancellation is realized by an electricity echo canceller
deployed on network. Taking the near-end in Fig.1 as an example, the operation principle
of an electricity echo canceller is as follows. Because an electricity echo signal
r in the near-end is generated from the near-end input signal S
in with certain delay and returned to the near-end together with the far-end input signal
R
in through the far-end output signal R
out, when no voice signal is inputted in the far-end, that is, R
in is not a voice signal, an electricity echo delay M might be estimated according to
the correlation of the far-end output signals R
out and S
in. Then a near-end input signal S
in(n-M) at the time earlier than the current time n byM, i.e. the time(n-M), is selected
as an input signal of an adaptive filter, and an estimated electricity echo signal
r' is derived through filtering computation. Then the estimated electricity echo signal
r' is subtracted from the far-end input signal R
in, and thus the purpose of eliminating the electricity echo in the far-end output signal
is achieved. During the above process, the far-end output signal R
out should be used as a correction signal in order to continuously update coefficients
of the adaptive filter, so that the estimated electricity echo signal could approach
an actual electricity echo signal more exactly.
[0006] The principle of acoustic echo cancellation is similar to that of electricity echo
cancellation except that an acoustic echo canceller (AEC) is generally deployed in
a terminal.
[0007] European patent application
EP 0 986 190 A2 discloses estimation of the round-trip user-to-user delay in telephone connections.
Patent application
WO 01/45291 A1 discloses a method of echo removing using delay information.
US patent 6,724,736 B1 discloses a method of remote echo cancellation in a packet telephony system.
US patent 6,792,106 B1 disclosed an echo canceller and a method of echo cancellation using an NLMS algorithm.
[0008] The related art might bring about the following problems.
[0009] 1. It is difficult for the conventional electricity echo canceller to ensure the
electricity echo cancellation effect at the final user end on the whole. An electricity
echo canceller could only eliminate electricity echo signals on the network where
it is deployed. However, because an actual network is constructed by interconnecting
sub-networks based on various network technology, an electricity echo canceller deployed
in a certain sub-network could only eliminate electricity echo signals on this sub-network,
and could not ensure the electricity echo cancellation effect on the whole network.
[0010] 2. Influences of network transmission performance on the electricity echo cancellation
effect are not considered. For a voice transmission network, its transmission performance
may vary at different times due to various reasons, and thereby imposing influences
on echo signals, for example, distorting echo signals. The conventional electricity
echo cancellation method estimates an echo delay according to the correlation of media
signals only in terms of media transmission, with no concern of the problem of inaccurate
estimations on echo delay caused by influences of network transmission performance
on echo signals, and thereby the echo cancellation effect could not be ensured. Further,
because to estimate an electricity echo delay according to the correlation of media
signals incurs a large amount of calculations, an electricity echo canceller usually
needs to be realized with specific chips, and it is needed to deploy electricity echo
cancellers on network in a multi-point manner, and the cost is high.
[0011] 3. The electricity echo cancellation effect is restricted by hardware memory. During
eliminating electricity echoes, terminal input signals in a previous time period need
to be saved so as to serve as reference signals for estimating electricity echo signals.
Because of limited hardware memory, when transmission delay is long, a terminal input
signal corresponding to the current electricity echo signal might have been discarded
by the hardware memory, and thereby the electricity echo cancellation effect could
not be ensured.
SUMMARY
[0012] The present invention provides an electricity echo cancellation device and method
for ensuring the electricity echo cancellation effect on the whole and improving the
effectiveness of electricity echo cancellation.
[0013] Technical solutions of the present invention are implemented as follows.
[0014] An electricity echo cancellation device includes a network echo delay computation
module, an input buffer memory module and an adaptive filtering module. The electricity
echo cancellation device is applied at the terminal, The network echo delay computation
module configured to calculate a network echo delay according to a Real Time Control
Protocol (RTCP) packet transmitted from the network. The input buffer memory module
is configured to determine a terminal input signal to be adaptively filtered according
to information of the network echo delay most recently outputted from the network
echo delay computation module, and output the terminal input signal to the adaptive
filtering module. The adaptive filtering module is configured to calculate an electricity
echo signal and a network output signal. The adaptive filtering module includes: an
adaptive filter, configured to calculate the electricity echo signal according to
the terminal input signal outputted from the input buffer memory module and a filtering
coefficient maintained in the adaptive filter, output the electricity echo signal
to a subtracter, adjust the current filtering coefficient according to a network output
signal outputted from the subtracter.
The subtracter is configured to subtract the electricity echo signal outputted from
the adaptive filter from a network input signal from the network, and output the network
output signal derived through the subtraction to the terminal and the adaptive filter.
[0015] The current filtering coefficient is adjusted as

where n is the current time, µ=0.5, K is the current network echo delay, e(n) is the
current filtering coefficient, e(n+1) is the adjusted filtering coefficient, Δ(n)
is the network output signal, x(n-K) is the terminal input signal at the time (n-K),
and P(n-K)=X
T(n-K)*X(n-K) where X
T(n-K) is the transposed vector of X(n-K).
[0016] The adaptive filtering module may further include a dual-ended voice detection module
which is configured to detect whether the current time is a dual-ended voice time
according to the network input signal from the network and the terminal input signal
from the input buffer memory module, and if the current time is a dual-ended voice
time, output a signal for interrupting coefficient adjustment to the adaptive filter.
The adaptive filter is further configured to interrupt the adjustment of the current
filtering coefficient after receiving a signal for interrupting coefficient adjustment
from the dual-ended voice detection module.
[0017] In accordance with an electricity echo cancellation method, a network echo delay
is calculated according to an RTCP packet when the RTCP packet arrives and the current
network echo delay is updated with the network echo delay. The method includes: determining
a terminal input signal to be adaptively filtered according to the current network
echo delay and an adaptive filtering algorithm; calculating an electricity echo signal
by performing adaptive filtering on the terminal input signal; and calculating the
difference between a network input signal and the electricity echo signal to obtain
a network output signal. The adaptive filtering algorithm includes: adjusting the
current filtering coefficient as

where n is the current time, µ=0.5, K is the current network echo delay, e(n) is the
current filtering coefficient, e(n + 1) is the adjusted filtering coefficient, Δ(n)
is the network output signal, x(n-K) is the terminal input signal at the time (n-K),
and P(n-K)=X
T(n-K)*X(n-K) where X
T(n-K) is the transposed vector of X(n-K).
[0018] Calculating the network echo delay according to the RTCP packet includes: subtracting,
from a Network Time Protocol (NTP) time at which the RTCP packet arrives, a time,
carried by the RTCP packet, at which a transmitted packet is most recently received,
and further subtracting a time interval between the time at which a transmitted packet
is most recently received and the time at which the RTCP packet is transmitted; and
dividing the resulting difference derived through the two subtractions by a sampling
time interval to obtain the network echo delay.
[0019] The electricity echo signal is calculated as r(n) =

where n is the current time, M is the total order of adaptive filtering, K is the
current network echo delay updated in step B, r(n) is the current electricity echo
signal, e(n)
m is the current filtering coefficient of the
mth order, and x(n-K-m) is the terminal input signal at the time (n-K-m).
[0020] The method further includes determining whether the current time is a dual-ended
voice time; and if the current time is a dual-ended voice time, maintaining the current
filtering coefficient unchanged, and if the current time is not a dual-ended voice
time, adjusting the current filtering coefficient according to the adaptive filtering
algorithm.
[0021] Determining whether the current time is a dual-ended voice time includes determining
whether the condition |Y
out(n)|-C*|max(|X(n)|,|X(n-1)|,...,|X(n-L+1)|) > 0 is met; and if the condition is met,
determining the current time is a dual-ended voice time, and if the condition is not
met, determining the current time is not a dual-ended voice time; where n is the current
time, C and L are constants determined experientially, Y
out (n) is the network output signal in step C, x(n) is the terminal input signal at
the current time, x(n-1) is the terminal input signal at the time (n-1), and x(n-L
+1) is the terminal input signal at the time (n-L+1).
[0022] Compared with the related art, the electricity echo cancellation device according
to the present invention is deployed at the terminal, thus ensuring the electricity
echo cancellation effect at the final user end on the whole, and improving the effectiveness
of electricity echo cancellation through adjusting a terminal input signal outputted
to an adaptive filtering module according to a network echo delay outputted from a
network echo delay computation module. The electricity echo cancellation method according
to the present invention includes calculating a network echo delay according to relevant
information of an RTCP packet transmitted from the network and dynamically adjusting
a terminal input signal to be adaptively filtered according to the network echo delay,
thus improving the effectiveness of echo cancellation. Meanwhile, method of the present
invention can be realized with software, thus avoiding influences of hardware memory
restricts on the echo cancellation effect. In addition, the present invention only
needs a single-point deployment, and thus the cost is saved.
BRIEF DESCRIPTION OF THE DRAWING(S)
[0023] Fig.1 is a conceptual graph of echo generation;
[0024] Fig.2 is a block diagram of the configuration of an electricity echo cancellation
device according to an embodiment of the present invention; and
[0025] Fig.3 is a flow chart of an electricity echo cancellation method according to an
embodiment of the present invention.
DETAILED DESCRIPTION
[0026] The present invention is further explained below by reference to the accompanying
drawings and detailed embodiments.
[0027] Fig.2 is a block diagram of the configuration of an electricity echo cancellation
device according to an embodiment of the present invention, which is deployed at the
terminal. As shown in Fig.2, the device mainly includes: an input buffer memory module
21, a network echo delay computation module 22 and an adaptive filtering module 23.
[0028] The input buffer memory module 21 is configured to: receive and save a terminal input
signal X(n); determine a terminal input signal to be adaptively filtered according
to a network echo delay K most recently outputted from the network echo delay computation
module 22; and output the terminal input signal to be adaptively filtered to the adaptive
filtering module 23.
[0029] Herein, n represents the current time.
[0030] Particularly, X(n-K) is used as a terminal input signal corresponding to the current
network input signal Y(n), and the terminal input signal to be adaptively filtered
is outputted to the adaptive filtering module 23 according to an adaptive filtering
algorithm's requirements. For example, if the Normalized Least Mean Square (NLMS)
algorithm is employed as the adaptive filtering algorithm, X(n-K), X(n-K-1), X(n-K-2)
,..., X(n-K-M+1) are outputted to the adaptive filtering module 23 as terminal input
signals to be adaptively filtered, where M is the filtering order of the adaptive
filtering module 23.
[0031] The network echo delay computation module 22 is configured to: receive a Real Time
Control Protocol (RTCP) packet from the network; calculate a network echo delay K
according to a Network Time Protocol (NTP) time A at which the RTCP packet arrives,
the time (LSR), carried by the RTCP packet, at which a transmitted packet (SR) is
most recently received, a time interval (DLSR) between the time at which SR is most
recently received and the transmitting time of the RTCP packet, and a sampling time
interval t; and output the network echo delay K to the input buffer memory module
21.
[0032] The adaptive filtering module 23 is configured to: calculate an electricity echo
signal r(n) according to the terminal input signal to be adaptively filtered, outputted
from the input buffer memory module 21 and the current filtering coefficient e(n)
maintained in the adaptive filtering module 23; subtract the electricity echo signal
r(n) from the network input signal Y(n) from the network and output a network output
signal Y
out(n) derived through the subtraction to the outside; and when the current time is not
a dual-ended voice time, adjust the current filtering coefficient e(n) according to
the network output signal Y
out (n) and the terminal input signal X(n).
[0033] Further, as shown in Fig.2, the adaptive filtering module 23 includes: an adaptive
filter 231, a subtracter 232 and a dual-ended voice detection module 233.
[0034] The adaptive filter 231 is configured to: calculate the electricity echo signal r(n)
according to the terminal input signal to be adaptively filtered, outputted from the
input buffer memory module 21 and the current filtering coefficient e(n) maintained
in the adaptive filter 231; output the electricity echo signal r(n) to the subtracter
232; adjust the current filtering coefficient e(n) according to the network output
signal Y
out(n) outputted from the subtracter 232 and the terminal input signal X(n); and interrupt
the adjustment of the current filtering coefficient e(n) after receiving a signal
for interrupting coefficient adjustment transmitted from the dual-ended voice detection
module 233.
[0035] The subtracter 232 is configured to: subtract the electricity echo signal r(n) outputted
from the adaptive filter 231 from the network input signal Y(n) from the network;
and output the network output signal Y
out(n) derived through the subtraction to the outside and the adaptive filter 231.
[0036] The dual-ended voice detection module 233 is configured to: detect whether the current
time is a dual-ended voice time according to the network input signal Y(n) from the
network and the terminal input signal from the input buffer memory module 21; and
if the current time is a dual-ended voice time, output a signal for interrupting coefficient
adjustment to the adaptive filter 231.
[0037] The terminal input signal outputted from the input buffer memory module 21 to the
dual-ended voice detection module 233 is determined according to the employed dual-ended
voice detection algorithm. For example, if the Geigel dual-ended voice detection algorithm
is employed, X(n), X(n-1),..., X(n-L+1) are needed to be outputted to the dual-ended
voice detection module 233, where L is a constant and might be determined experientially.
[0038] Fig.3 is a flow chart of an electricity echo cancellation method according to an
embodiment of the present invention. As shown in Fig.3, the method includes the following
steps.
[0039] Step 301: An RTCP packet is received.
[0040] Step 302: A network transmission delay De is calculated as De = A-LSR-DLSR according
to an NTP time A at which the RTCP packet arrives and LSR and DLSR carried by the
RTCP packet.
[0041] Step 303: A network echo delay k is calculated as k=De/t, and the current network
echo delay K is updated with k, i.e. K = k , where t is a sampling time interval.
[0042] Step 304: An electricity echo signal r(n) is calculated according to a filtering
coefficient e(n) at the current time and terminal input signals at the time (n-K)
and the time a certain period before the time (n-K).
[0043] Particularly,

if the NLMS algorithm is employed, where n is the current time and n ≥ K + m, e(n)
m is the m
th order coefficient of the vector e(n)
m, M is the total order of adaptive filtering, and X(n-K-m) is the terminal input signal
at the time (n-K-m).
[0044] Step 305: The difference between a network input signal Y(n) and the electricity
echo signal r(n) is calculated to obtain a network output signal Y
out(n).
[0045] Step 306: It is determined whether the current time is a dual-ended voice time. If
the current time is a dual-ended voice time, step 307 is performed; and if the current
time is not a dual-ended voice time, step 308 is performed.
[0046] According to the Geigel dual-ended voice detection algorithm, if the condition |Y
out (n)|- C*max(|X(n)|,|X(n-1)|,...,|X(n-L+1)|)> 0 is met, the current time is determined
a dual-ended voice time; and if the condition is not met, the current time is not
determined a dual-ended voice time. C is a constant and usually C= 0.5, and L is a
constant and may be determined experimentally.
[0047] Step 307: The current filtering coefficient e(n) is maintained unchanged, i.e. e(n+1)
= e(n), and the process ends.
[0048] Step 308: The current filtering coefficient e(n) is adjusted as an adjusted filtering
coefficient e(n+1) according to an adaptive filtering algorithm.
[0049] Particularly, if the NLMS algorithm is employed, then

where, µ is a step factor, satisfying 0 < µ < 2 and usually µ = 0.5; Δ(n) is an error
signal and Δ(n)=Y(n)-r(n)=Y
out(n); and P(n-K) is a short-time average power of X(n-K) and P(n-K)=X
T(n-K)*X(n-K) where X
T(n-K) is the transposed vector of X(n-K).
[0050] Alternatively, r(n) and e(n+1) can also be calculated through the Least Mean Square
(LMS) algorithm, or the Recursive Least Square (RLS) algorithm, and so on.
The above steps 301∼303 could be performed before or after the steps 304∼308. The
steps 301∼303 would be performed if only an RTCP packet is received, and the steps
304∼308 would be performed if only a terminal input signal is received.
1. An electricity echo cancellation device, comprising a network echo delay computation
module (22), an input buffer memory module (21) and an adaptive filtering module (23),
wherein:
the network echo delay computation module (22) is configured to calculate a network
echo delay according to a Real Time Control Protocol, RTCP, packet transmitted from
the network;
the input buffer memory module (21) is configured to determine a terminal input signal
to be adaptively filtered according to the network echo delay most recently outputted
from the network echo delay computation module (22), and output the terminal input
signal to the adaptive filtering module (23); and
the adaptive filtering module (23) is configured to calculate an electricity echo
signal and a network output signal,
characterized in that the adaptive filtering module (23) comprises:
an adaptive filter (231), configured to calculate the electricity echo signal according
to the terminal input signal outputted from the input buffer memory module (21) and
a filtering coefficient maintained in the adaptive filter (231), output the electricity
echo signal to a subtracter (232), adjust the current filtering coefficient according
to a network output signal outputted from the subtracter (232); and
the subtracter (232) is configured to subtract the electricity echo signal outputted
from the adaptive filter (231) from a network input signal from the network, and output
the network output signal derived through the subtraction to the terminal and the
adaptive filter (231),
wherein the current filtering coefficient is adjusted as

where n is the current time, µ=0.5, K is the current network echo delay, e(n) is
the current filtering coefficient, e(n+1) is the adjusted filtering coefficient, Δ(n)
is the network output signal, x(n-K) is the terminal input signal at the time (n-K),
and P(n-K)=XT(n-K)*X(n-K) where XT(n-K) is the transposed vector of X(n - K).
2. The device according to claim 1, wherein the adaptive filtering module (23) further
comprises:
a dual-ended voice detection module (233), configured to detect whether the current
time is a dual-ended voice time according to the network input signal from the network
and the terminal input signal from the input buffer memory module (21), and if the
current time is a dual-ended voice time, output the signal for interrupting coefficient
adjustment to the adaptive filter (231), and
wherein the adaptive filter (231) is further configured to interrupt the adjustment
of the current filtering coefficient after receiving a signal for interrupting coefficient
adjustment from the dual-ended voice detection module (233).
3. The device according to claim 2, wherein the terminal input signal outputted from
the input buffer memory module (21) to the dual-ended voice detection module (233)
is determined according to an employed dual-ended voice detection algorithm.
4. A terminal, comprising the electricity echo cancellation device according to any one
of the claims 1 to 3.
5. An electricity echo cancellation method, comprising:
calculating a network echo delay according to a Real Time Control Protocol, RTCP,
packet when the RTCP packet arrives;
updating the current network echo delay with the network echo delay;
determining a terminal input signal to be adaptively filtered according to the current
network echo delay and an adaptive filtering algorithm;
calculating an electricity echo signal by performing adaptive filtering on the terminal
input signal; and
calculating the difference between a network input signal and the electricity echo
signal to obtain a network output signal,
characterized in that the adaptive filtering algorithm comprises:
adjusting the current filtering coefficient as

where n is the current time, µ=0.5, K is the current network echo delay, e(n) is the
current filtering coefficient, e(n+1) is the adjusted filtering coefficient, Δ(n)
is the network output signal, x(n-K) is the terminal input signal at the time (n-K),
and P(n-K)=XT(n-K)*X(n-K) where XT(n-K) is the transposed vector of X(n-K).
6. The method according to claim 5, wherein calculating the network echo delay according
to the RTCP packet comprises:
subtracting, from a Network Time Protocol, NTP, time at which the RTCP packet arrives,
a time, carried by the RTCP packet, at which a transmitted packet is most recently
received, and further subtracting a time interval between the time at which a transmitted
packet is most recently received and the time at which the RTCP packet is transmitted;
and
dividing the resulting difference derived through the two subtractions by a sampling
time interval to obtain the network echo delay.
7. The method according to claim 5, wherein the electricity echo signal is calculated
as

where n is the current time, M is the total order of adaptive filtering, K is the
updated current network echo delay, r(n) is the current electricity echo signal, e(n)
m is the current filtering coefficient of the
mth order, and x(n-K-m) is the terminal input signal at the time (n-K-m).
8. The method according to claim 5, wherein the method further comprises:
determining whether the current time is a dual-ended voice time; and
if the current time is a dual-ended voice time, maintaining the current filtering
coefficient unchanged, and
if the current time is not a dual-ended voice time, adjusting the current filtering
coefficient according to the adaptive filtering algorithm.
9. The method according to claim 8, wherein determining whether the current time is a
dual-ended voice time comprises:
determining whether the condition |Yout(n)|-C*max(|X(n)|,|X(n-1)|....,|X(n-L+1)|)>0 is met; and
if the condition is met, determining the current time is a dual-ended voice time,
and
if the condition is not met, determining the current time is not a dual-ended voice
time;
where n is the current time, C and L are constants determined experientially, Yout(n) is the network output signal, x(n) is the terminal input signal at the current
time, x(n-1) is the terminal input signal at the time (n-1), and x(n-L+1) is the terminal
input signal at the time (n-L+1).
1. Elektrizitätsecho-Löscheinrichtung, umfassend ein Netzechoverzögerungs-Berechnungsmodul
(22), ein Eingangspuffer-Speichermodul (21) und ein adaptives Filterungsmodul (23),
wobei
das Netzechoverzögerungs-Berechnungsmodul (22) dafür ausgelegt ist, eine Netzechoverzögerung
gemäß einem von dem Netz gesendeten Paket des Real Time Control Protocol RTCP zu berechnen;
das Eingangspuffer-Speichermodul (21) dafür ausgelegt ist, ein adaptiv zu filterndes
Endgeräteeingangssignal gemäß der zuletzt von dem Netzechoverzögerungs-Berechnungsmodul
(22) ausgegebenen Netzechoverzögerung zu bestimmen und das Endgeräteeingangssignal
an das adaptive Filterungsmodul (23) auszugeben; und
das adaptive Filterungsmodul (23) dafür ausgelegt ist, ein Elektrizitätsechosignal
und ein Netzausgangssignal zu berechnen,
dadurch gekennzeichnet, dass das adaptive Filterungsmodul (23) Folgendes umfasst:
ein adaptives Filter (231), das dafür ausgelegt ist, das Elektrizitätsechosignal gemäß
dem von dem Eingangspuffer-Speichermodul (21) ausgegebenen Endgeräteeingangssignal
und einen in dem adaptiven Filter (231) geführten Filterungskoeffizienten zu berechnen,
das Elektrizitätsechosignal an einen Subtrahierer (232) auszugeben, den aktuellen
Filterungskoeffizienten gemäß einem von dem Subtrahierer (232) ausgegebenen Netzausgangssignal
zu justieren; und
der Subtrahierer (232) dafür ausgelegt ist, das von dem adaptiven Filter (231) ausgegebene
Elektrizitätsechosignal von einem Netzeingangssignal von dem Netz zu subtrahieren
und das durch die Subtraktion abgeleitete Netzausgangssignal an das Endgerät und das
adaptive Filter (231) auszugeben,
wobei der aktuelle Filterungskoeffizient folgendermaßen justiert wird:

wobei n die aktuelle Zeit, µ=0,5, K die aktuelle Netzechoverzögerung, e(n) der aktuelle
Filterungskoeffizient, e(n+1) der justierte Filterungskoeffizient, Δ(n) das Netzausgangssignal,
x(n-K) das Endgeräteeingangssignal zur Zeit (n-K) und P(n-K)=XT(n-K)*X(n-K) wobei XT(n-K) der transponierte Vektor von X(n-K) ist.
2. Einrichtung nach Anspruch 1, wobei das adaptive Filterungsmodul (23) ferner Folgendes
umfasst:
ein Dual-Ended-Sprachdetektionsmodul (233), das dafür ausgelegt ist, gemäß dem Netzeingangssignal
von dem Netz und dem Endgeräteeingangssignal von dem Eingangspuffer-Speichermodul
(21) zu detektieren, ob die aktuelle Zeit eine Dual-Ended-Sprachzeit ist, und das
Signal zur Unterbrechung der Koeffizientenjustierung an das adaptive Filter (231)
auszugeben, wenn die aktuelle Zeit eine Dual-Ended-Sprachzeit ist, und
wobei das adaptive Filter (231) ferner dafür ausgelegt ist, die Justierung des aktuellen
Filterungskoeffizienten nach dem Empfang eines Signals zur Unterbrechung der Koeffizientenjustierung
von dem Dual-Ended-Sprachdetektionsmodul (233) zu unterbrechen.
3. Einrichtung nach Anspruch 2, wobei das von dem Eingangspuffer-Speichermodul (21) an
das Dual-Ended-Sprachdetektionsmodul (233) ausgegebene Endgeräteeingangssignal gemäß
einem verwendeten Dual-Ended-Sprachdetektionsalgorithmus bestimmt wird.
4. Endgerät, das die Elektrizitätsecho-Löscheinrichtung nach einem der Ansprüche 1 bis
3 umfasst.
5. Elektrizitätsecho-Löschverfahren mit den folgenden Schritten:
Berechnen einer Netzechoverzögerung gemäß einem Paket des Real Time Control Protocol
RTCP, wenn das RTCP- Paket ankommt;
Aktualisieren der aktuellen Netzechoverzögerung mit der Netzechoverzögerung;
Bestimmen eines adaptiv zu filternden Endgeräteeingangssignals gemäß der aktuellen
Netzechoverzögerung und einem Algorithmus der adaptiven Filterung;
Berechnen eines Elektrizitätsechosignals durch Ausführen von adaptiver Filterung an
dem Endgeräteeingangssignal; und
Berechnen der Differenz zwischen einem Netzeingangssignal und dem Elektrizitätsechosignal,
um ein Netzausgangssignal zu erhalten,
dadurch gekennzeichnet, dass der Algorithmus der adaptiven Filterung Folgendes umfasst:
Justieren des aktuellen Filterungskoeffizienten als

wobei n die aktuelle Zeit, µ=0,5, K die aktuelle Netzechoverzögerung, e(n) der aktuelle
Filterungskoeffizient, e(n+1) der justierte Filterungskoeffizient, Δ(n) das Netzausgangssignal,
x(n-K) das Endgeräteeingangssignal zur Zeit (n-K) und P(n-K)=XT(n-K)*X(n-K), wobei
XT(n-K) der transponierte Vektor von X(n-K) ist.
6. Verfahren nach Anspruch 5, wobei das Berechnen der Netzechoverzögerung gemäß dem RTCP-Paket
Folgendes umfasst:
Subtrahieren einer durch das RTCP-Paket geführten Zeit, zu der ein gesendetes Paket
zuletzt empfangen wird, von einer Zeit des Network Time Protocol NTP, zu der das RTCP-Paket
ankommt, und ferner Subtrahieren eines Zeitintervalls zwischen der Zeit, zu der das
gesendete Paket zuletzt empfangen wird, und der Zeit, zu der das RTCP-Paket gesendet
wird; und
Dividieren der durch die beiden Subtraktionen abgeleiteten resultierenden Differenz
durch ein Abtastzeitintervall, um die Netzechoverzögerung zu erhalten.
7. Verfahren nach Anspruch 5, wobei das Elektrizitätsechosignal als

berechnet wird,
wobei n die aktuelle Zeit, M die Gesamtordnung der adaptiven Filterung, K die aktualisierte
aktuelle Netzechoverzögerung, r(n) das aktuelle Elektrizitätsechosignal, e(n)
m der aktuelle Filterungskoeffizient der
mten Ordnung und x(n-K-m) das Endgeräteeingangssignal zur Zeit (n-K-m) ist.
8. Verfahren nach Anspruch 5, wobei das Verfahren ferner die folgenden Schritte umfasst:
Bestimmen, ob die aktuelle Zeit eine Dual-Ended-Sprachzeit ist; und
wenn die aktuelle Zeit eine Dual-Ended-Sprachzeit ist, Unveränderthalten des aktuellen
Filterungskoeffizienten und
wenn die aktuelle Zeit keine Dual-Ended-Sprachzeit ist, Justieren des aktuellen Filterungskoeffizienten
gemäß dem Algorithmus der adaptiven Filterung.
9. Verfahren nach Anspruch 8, wobei das Bestimmen, ob die aktuelle Zeit eine Dual-Ended-Sprachzeit
ist, Folgendes umfasst:
Bestimmen, ob die Bedingung |Yout(n)|-C*max(|X(n)|,|X(n-1)|,...,|X(n-L+1|)>0 erfüllt ist; und
wenn die Bedingung erfüllt ist, Bestimmen, dass die aktuelle Zeit eine Dual-Ended-Sprachzeit
ist, und
wenn die Bedingung nicht erfüllt ist, Bestimmen, dass die aktuelle Zeit keine Dual-Ended-Sprachzeit
ist;
wobei n die aktuelle Zeit ist, C und L empirisch bestimmte Konstanten sind, Y
out(n) das Netzausgangssignal ist, x(n) das Endgeräteeingangssignal zur aktuellen Zeit
ist, x(n-1) das Endgeräteeingangssignal zur Zeit (n-1) ist und x(n-L+1) das Endgeräteeingangssignal
zur Zeit (n-L+1) ist.
1. Dispositif de suppression d'écho d'électricité, comprenant un module de calcul de
retard d'écho de réseau (22), un module de mémoire tampon d'entrée (21) et un module
de filtrage adaptatif (23):
le module de calcul de retard d'écho de réseau (22) étant configuré pour calculer
un retard d'écho de réseau en fonction d'un paquet de Protocole de Contrôle en Temps
Réel, RTCP, transmis par le réseau ;
le module de mémoire tampon d'entrée (21) étant configuré pour déterminer un signal
d'entrée de terminal à filtrer de manière adaptative en fonction du retard d'écho
de réseau produit en sortie le plus récemment par le module de calcul de retard d'écho
de réseau (22), et produire en sortie le signal d'entrée de terminal vers le module
de filtrage adaptatif (23) ; et
le module de filtrage adaptatif (23) étant configuré pour calculer un signal d'écho
d'électricité et un signal de sortie de réseau,
caractérisé en ce que le module de filtrage adaptatif (23) comprend :
un filtre adaptatif (231), configuré pour calculer le signal d'écho d'électricité
en fonction du signal d'entrée de terminal produit en sortie par le module de mémoire
tampon d'entrée (21) et d'un coefficient de filtrage maintenu dans le filtre adaptatif
(231), produire en sortie le signal d'écho d'électricité vers un soustracteur (232),
régler le coefficient de filtrage courant en fonction d'un signal de sortie de réseau
produit en sortie par le soustracteur (232) ; et
le soustracteur (232) est configuré pour soustraire le signal d'écho d'électricité
produit en sortie par le filtre adaptatif (231) d'un signal d'entrée de réseau provenant
du réseau, et produire en sortie le signal de sortie de réseau dérivé par la soustraction
vers le terminal et le filtre adaptatif (231),
le coefficient de filtrage courant étant réglé en

où n est le temps courant, µ = 0,5, K est le retard d'écho de réseau courant, e(n)
est le coefficient de filtrage courant, e(n+1) est le coefficient de filtrage réglé,
Δ(n) est le signal de sortie de réseau, X(n-K) est le signal d'entrée de terminal
au temps (n-K), et P(n-K) = XT(n-K)*X(n-K) où XT(n-K) est le vecteur transposé de X(n-K).
2. Dispositif selon la revendication 1, dans lequel le module de filtrage adaptatif (23)
comprend en outre :
un module de détection de voix aux deux extrémités (233), configuré pour détecter
si le temps courant est un temps de voix aux deux extrémités en fonction du signal
d'entrée de réseau provenant du réseau et du signal d'entrée de terminal provenant
du module de mémoire tampon d'entrée (21), et si le temps courant est un temps de
voix aux deux extrémités, produire en sortie le signal d'interruption du réglage de
coefficient vers le filtre adaptatif (231), et
dans lequel le filtre adaptatif (231) est configuré en outre pour interrompre le réglage
du coefficient de filtrage courant après avoir reçu un signal d'interruption du réglage
de coefficient depuis le module de détection de voix aux deux extrémités (233).
3. Dispositif selon la revendication 2, dans lequel le signal d'entrée de terminal produit
en sortie par le module de mémoire tampon d'entrée (21) vers le module de détection
de voix aux deux extrémités (233) est déterminé en fonction d'un algorithme de détection
de voix aux deux extrémités employé.
4. Terminal, comprenant le dispositif de suppression d'écho d'électricité selon l'une
quelconque des revendications 1 à 3.
5. Procédé de suppression d'écho d'électricité, comprenant :
le calcul d'un retard d'écho de réseau en fonction d'un paquet de Protocole de Contrôle
en Temps Réel, RTCP, quand le paquet RTCP arrive ;
l'actualisation du retard d'écho de réseau courant avec le retard d'écho de réseau
;
la détermination d'un signal d'entrée de terminal à filtrer de manière adaptative
en fonction du retard d'écho de réseau courant et d'un algorithme de filtrage adaptatif
;
le calcul d'un signal d'écho d'électricité en exécutant un filtrage adaptatif sur
le signal d'entrée de terminal ; et
le calcul de la différence entre un signal d'entrée de réseau et le signal d'écho
d'électricité pour obtenir un signal de sortie de réseau,
caractérisé en ce que l'algorithme de filtrage adaptatif comprend :
le réglage du coefficient de filtrage courant en

où n est le temps courant, µ = 0,5, K est le retard d'écho de réseau courant, e(n)
est le coefficient de filtrage courant, e(n+1) est le coefficient de filtrage réglé,
Δ(n) est le signal de sortie de réseau, X(n-K) est le signal d'entrée de terminal
au temps (n-K), et P(n-K) = XT(n-K)*X(n-K) où XT(n-K) est le vecteur transposé de X(n-K).
6. Procédé selon la revendication 5, dans lequel le calcul du retard d'écho de réseau
selon le paquet RTCP comprend :
la soustraction, d'un temps de Protocole de Temps de Réseau, NTP, auquel le paquet
RTCP arrive, d'un temps, porté par le paquet RTCP, auquel un paquet transmis est reçu
le plus récemment, et la soustraction supplémentaire d'un intervalle de temps entre
le temps auquel un paquet transmis est reçu le plus récemment et le temps auquel le
paquet RTCP est transmis ; et
la division de la différence résultante dérivée par les deux soustractions par un
intervalle de temps d'échantillonnage afin d'obtenir le retard d'écho de réseau.
7. Procédé selon la revendication 5, dans lequel le signal d'écho d'électricité est calculé
selon

où n est le temps courant, M est l'ordre total de filtrage adaptatif, K est le retard
d'écho de réseau courant actualisé, r(n) est le signal d'écho d'électricité courant,
e(n)
m est le coefficient de filtrage courant du m
ième ordre, et x(n-K-m) est le signal d'entrée de terminal au temps (n-K-m).
8. Procédé selon la revendication 5, dans lequel le procédé comprend en outre :
la détermination si le temps courant est un temps de voix aux deux extrémités; et
si le temps courant est un temps de voix aux deux extrémités, le maintien tel quel
du coefficient de filtrage courant ; et
si le temps courant n'est pas un temps de voix aux deux extrémités, le réglage du
coefficient de filtrage courant en fonction de l'algorithme de filtrage adaptatif.
9. Procédé selon la revendication 8, dans lequel la détermination si le temps courant
est un temps de voix aux deux extrémités comprend :
la détermination si la condition |Ysortie(n)|-C*max(|X(n)|, |X(n-1)|, ..., |X(n-L+1|) > 0 est satisfaite ou non ; et
si la condition est satisfaite, la détermination que le temps courant est un temps
de voix aux deux extrémités ; et
si la condition n'est pas satisfaite, la détermination que le temps courant n'est
pas un temps de voix aux deux extrémités ;
où n est le temps courant, C et L sont des constantes déterminées par expérience,
Ysortie(n) est le signal de sortie de réseau, x(n) est le signal d'entrée de terminal au
temps courant, x(n-1) est le signal d'entrée de terminal au temps (n-1), et x(n-L+1)
est le signal d'entrée de terminal au temps (n-L+1).