Method and terminal for echo cancellation
Abstract
The present disclosure provides an echo cancellation method and a terminal and relates to the field of audio and video real-time communication technology. The echo cancellation method includes collecting, by a terminal, first-end audio data, the first-end data including a voice of a first-end user and an audio played by an audio playback device on the terminal. Then reference audio data corresponding to the first-end audio data is queried from a cache region, the cache region caches to-be-played audio data played on the audio playback device as the reference audio data. The reference audio data is then used to cancel the audio played by the audio playback device in the first-end audio data to determine the corrected audio data. Finally, the corrected audio data is sent to a second-end user terminal. Because the reference audio data is used to cancel the audio played on the audio playback device in the first-end audio data, the voice of the first-end user is left, the audio played on the audio playback device is prevented from interfering with the voice of the first-end user, thereby improving call quality between the first-end user and a second-end user.
Claims
exact text as granted — not AI-modified1 . An echo cancellation method, comprising:
collecting, by a terminal, first-end audio data, the first-end audio data comprising a voice of a first-end user and an audio played by an audio playback device of the terminal; querying, by the terminal, reference audio data corresponding to the first-end audio data from a cache region, wherein the cache region caches audio data on the audio playback device as the reference audio data; using, by the terminal, the reference audio data to cancel the audio played by the audio playback device in the first-end audio data, and determining corrected audio data; and sending, by the terminal, the corrected audio data to a second-end user terminal.
2 . The method according to claim 1 , wherein the audio data on the audio playback device includes to-be-played audio data on the audio playback device.
3 . The method according to claim 1 , wherein querying, by the terminal, the reference audio data corresponding to the first-end audio data from the cache region comprises:
determining, by the terminal, similarities between the first-end audio data and each reference audio data in the cache region; and determining, by the terminal, reference audio data with a highest similarity to the first-end audio data as the reference audio data corresponding to the first-end audio data.
4 . The method according to claim 1 , wherein before sending, by the terminal, the corrected audio data to a second-end user terminal, the method further comprises:
performing a gain processing on the corrected audio data by the terminal.
5 . The method according to claim 4 , wherein using, by the terminal, the reference audio data to cancel the audio played by the audio playback device in the first-end audio data, and determining the corrected audio data comprise:
inputting the reference audio data and the first-end audio data, by the terminal, to a linear adaptive filter, wherein the linear adaptive filter subtracts the reference audio data from the first-end audio data, and outputs the corrected audio data.
6 . The method according to claim 4 , wherein using, by the terminal, the reference audio data to cancel the audio played by the audio playback device in the first-end audio data, and determining the corrected audio data comprise:
inputting the reference audio data and the first-end audio data, by the terminal, to a linear adaptive filter, wherein the linear adaptive filter estimates an echo audio by using the reference audio data, subtracts the echo audio from the first-end audio data, and outputs the corrected audio data.
7 . The method according to claim 5 , wherein before inputting the reference audio data and the first-end audio data, by the terminal, to the linear adaptive filter, the method further comprises.
adjusting audio parameters of the reference audio data and audio parameters of the first-end audio data, by the terminal, to preset values that match the linear adaptive filter.
8 . The method according to claim 7 , further comprising:
when the terminal determines that an attenuation value of the first-end audio data compared to the corrected audio data is greater than a preset threshold, replacing, by the terminal, the corrected audio data with comfort noise.
9 . A terminal device, comprising:
a memory, storing computer programs; and a processor, coupled with the memory and, when the computer programs being executed, configured to:
collect first-end audio data with a voice of a first-end user and an audio played by an audio playback device on the terminal;
query reference audio data corresponding to the first-end audio data from a cache region, which caches audio data on the audio playback device as the reference audio data;
use the reference audio data to cancel the audio played by the audio playback device in the first-end audio data, and determine corrected audio data; and
send the corrected audio data to a second-end user terminal.
10 . The terminal device according to claim 9 , wherein the audio data on the audio playback device includes to-be-played audio data on the audio playback device.
11 . The terminal device according to claim 9 , wherein the processor is further configured to:
determine similarities between the first-end audio data and each reference audio data in the cache region; and determine reference audio data with a highest similarity to the first-end audio data as the reference audio data corresponding to the first-end audio data.
12 . The terminal device according to claim 9 , wherein the processor is further configured to:
perform a gain processing on the corrected audio data before the corrected audio data is sent to a second-end user terminal.
13 . The terminal device according to claim 12 , wherein the processor is further configured to:
input the reference audio data and the first-end audio data to a linear adaptive filter, wherein the linear adaptive filter subtracts the reference audio data from the first-end audio data, and outputs the corrected audio data.
14 . The terminal device according to claim 12 , wherein the processor is further configured to:
input the reference audio data and the first-end audio data to a linear adaptive filter, wherein the linear adaptive filter estimates an echo audio by using the reference audio data, subtracts the echo audio from the first-end audio data, and outputs the corrected audio data.
15 . The terminal device according to claim 13 , wherein the processor is further configured to:
before the reference audio data and the first-end audio data are input to a linear adaptive filter, adjust audio parameters of the reference audio data and audio parameters of the first-end audio data to preset values that match the linear adaptive filter.
16 . The terminal device according to claim 15 , wherein the processor is further configured to:
when an attenuation value of the first-end audio data compared to the corrected audio data is determined to be greater than a preset threshold, replace the corrected audio data with comfort noise.
17 . (canceled)
18 . A non-transitory computer-readable storage medium, containing computer programs executable by a terminal device, when the computer programs are executed, the terminal device is configured to perform a echo cancellation method, the method, comprising:
collecting first-end audio data, the first-end audio data comprising a voice of a first-end user and an audio played by an audio playback device of the terminal device; querying reference audio data corresponding to the first-end audio data from a cache region, wherein the cache region caches audio data on the audio playback device as the reference audio data; using the reference audio data to cancel the audio played by the audio playback device in the first-end audio data, and determining corrected audio data; and sending the corrected audio data to a second-end user terminal device.
19 . The storage medium according to claim 18 , wherein querying the reference audio data corresponding to the first-end audio data from the cache region comprises:
determining similarities between the first-end audio data and each reference audio data in the cache region; and determining reference audio data with a highest similarity to the first-end audio data as the reference audio data corresponding to the first-end audio data.
20 . The storage medium according to claim 18 , wherein before sending the corrected audio data to a second-end user terminal, the method further comprises:
performing a gain processing on the corrected audio data by the terminal.
21 . The storage medium according to claim 20 , wherein using, the reference audio data to cancel the audio played by the audio playback device in the first-end audio data, and determining the corrected audio data comprise one of following:
inputting the reference audio data and the first-end audio data to a linear adaptive filter, wherein the linear adaptive filter subtracts the reference audio data from the first-end audio data, and outputs the corrected audio data; and inputting the reference audio data and the first-end audio data to a linear adaptive filter, wherein the linear adaptive filter estimates an echo audio by using the reference audio data, subtracts the echo audio from the first-end audio data, and outputs the corrected audio data.Join the waitlist — get patent alerts
Track US2021321005A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.