CN109361828B - Echo cancellation method and device, electronic equipment and storage medium - Google Patents

Echo cancellation method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN109361828B
CN109361828B CN201811541325.5A CN201811541325A CN109361828B CN 109361828 B CN109361828 B CN 109361828B CN 201811541325 A CN201811541325 A CN 201811541325A CN 109361828 B CN109361828 B CN 109361828B
Authority
CN
China
Prior art keywords
delay information
current
end signal
information
far
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811541325.5A
Other languages
Chinese (zh)
Other versions
CN109361828A (en
Inventor
张晨
董培
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN201811541325.5A priority Critical patent/CN109361828B/en
Publication of CN109361828A publication Critical patent/CN109361828A/en
Application granted granted Critical
Publication of CN109361828B publication Critical patent/CN109361828B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • H04M9/082Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L2021/02082Noise filtering the noise being echo, reverberation of the speech

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Abstract

The embodiment of the disclosure provides an echo cancellation method, an echo cancellation device, an electronic device and a storage medium, wherein the method comprises the following steps: obtaining current delay information between a far-end signal and a near-end signal, and obtaining a plurality of delay information before the current delay information; determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information; determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and current jitter information; aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets the preset delay jitter resisting condition; and inputting the aligned signals into a target adaptive filter to perform echo cancellation on the near-end signals, so as to reduce the frequency of resetting the adaptive filter, reduce the condition of poor echo cancellation effect in the reconvergence process of the adaptive filter and improve the call quality.

Description

Echo cancellation method and device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of audio processing technologies, and in particular, to an echo cancellation method and apparatus, an electronic device, and a storage medium.
Background
The sound reproduction of the near-end voice communication equipment, namely, a far-end signal emitted by a loudspeaker of the near-end voice communication equipment is collected by a microphone of the near-end voice communication equipment again to obtain a near-end signal; the near-end signal is transmitted back to the far-end voice communication equipment, so that a caller of the far-end voice communication equipment hears own voice, namely, a call echo is generated, and the call echo seriously interferes with normal call. In order to ensure the call effect, the call echo needs to be cancelled. The basic principle of call echo cancellation is based on adaptive filtering technology, and far-end signal components doped in the far-end signal are cancelled from a near-end signal by using the far-end signal.
In the related art, the procedure of call echo cancellation generally includes: estimating feedback delay information between a far-end signal and a near-end signal by adopting a dynamic estimation feedback delay algorithm, aligning the far-end signal and the near-end signal according to the estimated feedback delay information, and inputting the far-end signal and the near-end signal obtained after alignment into an adaptive filter to perform echo cancellation to obtain the near-end signal with echo cancelled, wherein the cancelled echo is as follows: a far-end signal component doped in the near-end signal.
However, the feedback delay information between the far-end signal and the near-end signal may change at any time, and in the related art, if the feedback delay information between the far-end signal and the near-end signal changes, it is necessary to realign the far-end signal and the near-end signal and reset the adaptive filter so that the adaptive filter is re-converged. The resulting realigned far-end and near-end signals are then input into the reset adaptive filter for echo cancellation. When the feedback delay information between the far-end signal and the near-end signal frequently changes, the far-end signal and the near-end signal are frequently realigned, and the adaptive filter is reset, so that the echo cancellation effect is poor in the process of reconvergence of the adaptive filter, and even obvious echoes are heard.
Disclosure of Invention
In order to overcome the problems that the effect of echo cancellation is deteriorated in the process of reconvergence of an adaptive filter and even obvious echo is heard due to frequent resetting of the adaptive filter when feedback delay information between a far-end signal and a near-end signal frequently changes in the related art, the present disclosure provides an echo cancellation method, an echo cancellation device, an electronic device, and a storage medium.
According to a first aspect of embodiments of the present disclosure, there is provided an echo cancellation method, the method including:
obtaining current delay information between a far-end signal and a near-end signal, and obtaining a plurality of delay information before the current delay information;
determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information;
determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and the current jitter information;
aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets a preset delay jitter resisting condition;
inputting the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal.
Optionally, the preset delay jitter tolerance condition is: and on the premise that the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not zero, the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information.
Optionally, the step of determining current aligned delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information, and the current jitter information includes:
if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information, obtaining pre-stored historical alignment delay information corresponding to the far-end signal and the near-end signal;
determining the historical alignment delay information as current alignment delay information corresponding to the far-end signal and the near-end signal;
and if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal, wherein if the current jitter information is greater than a preset value, the target value is the preset value, and if the current jitter information is not greater than the preset value, the target value is the current jitter information.
Optionally, after the step of determining the difference between the current delay information and the target value as the current aligned delay information corresponding to the far-end signal and the near-end signal, the method further includes:
and replacing the pre-stored historical alignment delay information with the current alignment delay information.
Optionally, the method further comprises:
resetting the target adaptive filter when the current delay information does not meet the preset delay jitter resisting condition;
aligning the far-end signal and the near-end signal according to the current alignment delay information; and inputting the aligned far-end signal and the near-end signal into a reset adaptive filter to perform echo cancellation on the near-end signal.
Optionally, the step of determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information includes:
calculating to obtain standard deviations between the current delay information and a plurality of delay information before the current delay information;
and taking the standard deviation obtained by calculation as the current jitter information corresponding to the far-end signal and the near-end signal.
Optionally, after the step of inputting the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal, the method further includes:
modifying a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information and the current jitter information;
and performing residual echo cancellation on the signal output by the target adaptive filter by using the residual echo canceller after modifying the residual echo cancellation coefficient to obtain a near-end signal after echo cancellation.
Optionally, the step of modifying a residual echo cancellation coefficient of the residual echo canceller according to the current delay information, the previous delay information, and the current jitter information includes:
calculating an absolute value of a difference value between the current delay information and the previous delay information as a first absolute value;
calculating a difference value between the current jitter information and the first absolute value as a first difference value;
modifying a residual echo cancellation coefficient of a residual echo canceller based on the first difference.
According to a second aspect of the embodiments of the present disclosure, there is provided an echo cancellation device, the device including:
a first obtaining module configured to obtain current delay information between a far-end signal and a near-end signal, and obtain a plurality of delay information before the current delay information;
a first determining module, configured to determine current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information;
a second determining module, configured to determine current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information, and the current jitter information;
an alignment module configured to determine that the current delay information meets a preset delay-resistant jitter condition when the current delay information meets the preset delay-resistant jitter condition, and align the far-end signal and the near-end signal according to the current alignment delay information;
an input module configured to input the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal.
Optionally, the preset anti-delay information jitter condition is: the preset delay jitter resisting condition is as follows: and on the premise that the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not zero, the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information.
Optionally, the second determining module is configured to obtain pre-stored historical alignment delay information corresponding to the far-end signal and the near-end signal if an absolute value of a difference between the current delay information and previous delay information of the current delay information is smaller than the current jitter information;
determining the historical alignment delay information as current alignment delay information corresponding to the far-end signal and the near-end signal;
and if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal, wherein if the current jitter information is greater than a preset value, the target value is the preset value, and if the current jitter information is not greater than the preset value, the target value is the current jitter information.
Optionally, the apparatus further comprises:
a replacing module configured to replace the pre-stored historical alignment delay information with the current alignment delay information after determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal.
Optionally, the apparatus further comprises:
a reset module configured to reset the target adaptive filter when the current delay information does not meet the preset delay jitter resistant condition;
an alignment input module configured to align the far-end signal and the near-end signal according to the current alignment delay information; and inputting the aligned far-end signal and the near-end signal into a reset adaptive filter to perform echo cancellation on the near-end signal.
Optionally, the first determining module is configured to calculate a standard deviation between the current delay information and a plurality of delay information before the current delay information;
and taking the standard deviation obtained by calculation as the current jitter information corresponding to the far-end signal and the near-end signal.
Optionally, the apparatus further comprises:
a modification module configured to modify a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information, and the current jitter information after the aligned far-end signal and near-end signal are input to a target adaptive filter to perform echo cancellation on the near-end signal;
and the elimination module is used for utilizing the residual echo eliminator after the residual echo elimination coefficient is modified to eliminate the residual echo of the signal output by the target self-adaptive filter so as to obtain a near-end signal after the echo is eliminated.
Optionally, the modifying module is configured to calculate an absolute value of a difference between the current delay information and the previous delay information as a first absolute value;
calculating a difference value between the current jitter information and the first absolute value as a first difference value;
modifying a residual echo cancellation coefficient of a residual echo canceller based on the first difference.
According to a third aspect of the embodiments of the present disclosure, there is provided an electronic apparatus including: a processor and a memory; a memory configured to store a computer program; wherein the processor is configured to implement any of the above-mentioned echo cancellation method steps provided by the embodiments of the present disclosure when executing the computer program stored in the memory.
According to a fourth aspect of embodiments of the present disclosure, there is provided a non-transitory computer-readable storage medium, wherein instructions, when executed by a processor of an electronic device, enable the electronic device to perform any of the echo cancellation method steps provided by the present disclosure.
According to a fifth aspect of embodiments of the present disclosure, there is provided a computer program product which, when run on a computer, causes the computer to perform the steps of the echo cancellation method of implementing any of the above provided by the present disclosure.
According to the technical scheme provided by the embodiment of the disclosure, current delay information between a far-end signal and a near-end signal is obtained, and a plurality of pieces of delay information before the current delay information are obtained; determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information; determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and current jitter information; aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets the preset delay jitter resisting condition; and inputting the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal.
The technical scheme provided by the embodiment of the disclosure can have the following beneficial effects: and determining more accurate current alignment delay information corresponding to the far-end signal and the near-end signal which are more in line with the actual situation through the current delay information, the previous delay information and the current jitter information. And when the current delay information is determined to accord with the preset delay jitter resisting condition, namely when the current delay information is determined to be in an acceptable jitter range, the adaptive filter is not reset, and echo cancellation is directly carried out on the aligned far-end signal and near-end signal based on the converged target adaptive filter so as to carry out echo cancellation on the near-end signal. The frequency of resetting the self-adaptive filter is reduced, and the situation that the echo cancellation effect is poor in the process of re-convergence of the self-adaptive filter is reduced. To a certain extent, the conversation quality of the equipment under the condition that the feedback delay information between the far-end signal and the near-end signal changes frequently is improved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description, serve to explain the principles of the invention.
Fig. 1 is a flow chart illustrating an echo cancellation method according to an exemplary embodiment.
Fig. 2 is another flow chart illustrating an echo cancellation method according to an example embodiment.
Fig. 3 is another flow chart illustrating an echo cancellation method according to an example embodiment.
Fig. 4 is a block diagram illustrating an echo cancellation device according to an exemplary embodiment.
FIG. 5 is a block diagram illustrating an electronic device in accordance with an example embodiment.
Fig. 6 is a block diagram illustrating an apparatus for echo cancellation according to an example embodiment.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the invention, as detailed in the appended claims.
Fig. 1 is a flow chart illustrating an echo cancellation method according to an exemplary embodiment, where, as shown in fig. 1, the echo cancellation method may include the following steps:
s101: current delay information between the far-end signal and the near-end signal is obtained, and a plurality of pieces of delay information before the current delay information are obtained.
In the embodiment of the present disclosure, the echo cancellation method may be applied to any type of electronic device that can support a voice call function, and the electronic device may be a terminal or a server.
In one implementation, the electronic device may perform the echo cancellation procedure provided by the embodiments of the present disclosure for the far-end signal and the near-end signal periodically or aperiodically. In one case, the echo cancellation procedure provided by the embodiment of the present disclosure may be performed once for the far-end signal and the near-end signal every preset time interval p.
In this step, any method that can achieve estimation to obtain the delay information between the far-end signal and the near-end signal may be adopted to obtain the current delay information between the far-end signal and the near-end signal. The current delay information may refer to: the latest delay information is estimated for the far-end signal and the near-end signal. For example: a dynamic estimation feedback delay algorithm, a webrtc echo delay estimation method, and the like can be adopted.
In one implementation, the above process of obtaining the current delay information between the far-end signal and the near-end signal may be: when the period arrives, obtaining a far-end signal and a near-end signal; the far-end signal and the near-end signal are respectively subjected to Fast Fourier Transform (FFT) conversion to obtain a current frequency domain power spectrum of the far-end signal and a current frequency domain power spectrum of the near-end signal. Wherein the current frequency domain power spectrum of the far-end signal comprises different frequency domain sub-bands, and the current frequency domain power spectrum of the near-end signal comprises different frequency domain sub-bands. In one case, the current frequency-domain power spectrum corresponding to the far-end signal contains 32 frequency-domain subbands, and the current frequency-domain power spectrum corresponding to the near-end signal contains 32 frequency-domain subbands.
In order to ensure the safety of the signal, the far-end signal and the near-end signal may be windowed signals, and the window may include a hanning window and the like.
The frequency domains of different frequency domain sub-bands included in the current frequency domain power spectrum are preset, and the frequency domains of different frequency domain sub-bands included in the history frequency domain power spectrum mentioned later are also preset. The frequency domain of each frequency domain sub-band included in the current frequency domain power spectrum of the far-end signal is respectively the same as the frequency domain of each frequency domain sub-band included in the first historical frequency domain power spectrum, and the frequency domain of each frequency domain sub-band included in the current frequency domain power spectrum of the near-end signal is respectively the same as the frequency domain of each frequency domain sub-band included in the second historical frequency domain power spectrum.
Acquiring first energy thresholds corresponding to different frequency domain sub-bands contained in a current frequency domain power spectrum of a far-end signal, and judging whether an energy value corresponding to each frequency domain sub-band contained in the current frequency domain power spectrum of the far-end signal is not lower than the corresponding first energy threshold or not; if not, setting the energy value corresponding to the frequency domain sub-band as a first numerical value; if the energy value is lower than the first value, setting the energy value corresponding to the frequency domain sub-band as a second value. The first energy threshold is a preset energy threshold.
Obtaining second energy thresholds corresponding to different frequency domain sub-bands contained in the current frequency domain power spectrum of the near-end signal, and judging whether the energy value corresponding to each frequency domain sub-band is not lower than the corresponding second energy threshold or not aiming at each frequency domain sub-band contained in the current frequency domain power spectrum of the near-end signal; if not, setting the energy value corresponding to the frequency domain sub-band as a first numerical value; if the energy value is lower than the first value, setting the energy value corresponding to the frequency domain sub-band as a second value. The second energy threshold is a preset energy threshold.
The first numerical value and the second numerical value may be any numerical values, and they may be different from each other. In one case, the first value may take on 1 and the second value may take on 0.
Obtaining a first preset number of first historical frequency domain power spectrums of the far-end signal, wherein each first historical frequency domain power spectrum comprises frequency domain sub-bands of which the corresponding energy values are set to be first numerical values or second numerical values. The first preset number of first historical frequency domain power spectrums are as follows: and the corresponding generation time is closest to the generation time corresponding to the current frequency domain power spectrum of the far-end signal. In one case, the first predetermined number may be 74. Each first historical frequency domain power spectrum comprises 32 frequency domain sub-bands with energy values of a first value or a second value.
And obtaining a second preset number of second historical frequency domain power spectrums of the near-end signal, wherein each second historical frequency domain power spectrum comprises frequency domain sub-bands of which the corresponding energy values are set to be the first numerical values or the second numerical values. The second preset number of second historical frequency domain power spectrums are as follows: and the corresponding generation time is the second preset number of historical frequency domain power spectrums with the generation time closest to the generation time corresponding to the current frequency domain power spectrum of the near-end signal. In one case, the second predetermined number may be 15. Each second historical frequency-domain power spectrum includes 32 frequency-domain sub-bands with energy values of the first or second values.
Sequencing a first preset number of first historical frequency domain power spectrums and the current frequency domain power spectrums of the far-end signals according to the sequence of the corresponding generation time to generate a first sequencing sequence; and sorting a second preset number of second historical frequency domain power spectrums and the current frequency domain power spectrums of the near-end signals according to the sequence of the corresponding generation time to generate a second sorting sequence. The generation time corresponding to the position in the first sorting order and the position in the second sorting order may be earlier, or the generation time corresponding to the position in the first sorting order and the position in the second sorting order may be later.
Selecting the first 16 frequency domain power spectrums from the first sequencing sequence, and performing exclusive OR on the selected frequency domain power spectrums and the 16 frequency domain power spectrums in the second sequencing sequence according to bits to obtain an exclusive OR result; selecting the last 16 frequency domain power spectrums in the first 17 frequency domain power spectrums from the first sequencing sequence, and further performing exclusive OR on the selected power spectrums and the 16 frequency domain power spectrums in the second sequencing sequence according to bits to obtain an exclusive OR result; selecting the last 16 frequency domain power spectrums in the first 18 frequency domain power spectrums from the first sequencing sequence, and further performing exclusive OR on the selected power spectrums and the 16 frequency domain power spectrums in the second sequencing sequence according to bits to obtain an exclusive OR result; by analogy, 60 groups of exclusive or results are obtained; and counting the number of 1 in the XOR result aiming at each group of XOR results, determining the XOR result with the maximum number of 1, and determining a group of frequency domain power spectrums corresponding to the target XOR result as a target frequency domain power spectrum group as the target XOR result. And calculating to obtain the latest delay information between the near-end signal and the far-end signal based on the generation time corresponding to the frequency domain power spectrum in the determined target frequency domain power spectrum group and the generation time corresponding to the current frequency domain power spectrum of the near-end signal. In one case, the latest calculated delay information is directly determined as the current delay information between the near-end signal and the far-end signal.
According to one implementation mode, a frequency domain power spectrum with the largest number of 1 in an exclusive or result between the frequency domain power spectrum and a current frequency domain power spectrum of a near-end signal is determined from a target frequency domain power spectrum group to serve as a target frequency domain power spectrum, and a difference value between the generation time of the target frequency domain power spectrum and the generation time of the current frequency domain power spectrum of the near-end signal is determined to be latest delay information between a far-end signal and the near-end signal.
In another implementation, after obtaining the latest delay information between the near-end signal and the far-end signal, the magnitude of the latest delay information and a preset delay threshold is first determined, if the latest delay information is not greater than the preset delay threshold, the latest delay information is determined to be reliable, the latest delay information is determined to be the current delay information, and the pre-stored current delay information is updated to be the latest delay information. Wherein the previous delay information is: the pre-stored current delay information.
If the latest delay information is larger than a preset delay threshold value, the latest delay information is determined to be unreliable, at this time, the difference between the latest delay information and the previous delay information is continuously determined, if the difference is smaller, for example, the absolute value of the difference between the latest delay information and the previous delay information is not larger than the preset delay threshold value, the latest delay information is determined to be reliable, the latest delay information is determined to be current delay information, and the pre-stored current delay information is updated to be the latest delay information. If the difference is large, for example, the absolute value of the difference between the latest delay information and the previous delay information is greater than a preset delay threshold, recording the latest delay information, continuing to calculate the delay information between the far-end signal and the near-end signal, and when the absolute value of the difference between the delay information calculated in a plurality of cycles and the latest delay information is not greater than the preset difference after the plurality of cycles are calculated, considering the latest delay information to be reliable, at this time, determining the latest delay information as the current delay information, and updating the pre-stored current delay information into the latest delay information.
If the calculated latest delay information is lower than the initial preset value, the calculated latest delay information is directly determined as the current delay information, and the preset delay threshold value is unchanged, that is, the value is still the initial preset value. If the calculated latest delay is higher than the initial preset value, for example, the calculated latest delay is 30 milliseconds, the next latest delay is continuously calculated, after a plurality of cycles, if the absolute value of the difference between the delay information calculated by the plurality of cycles and the latest delay information is not greater than a preset difference, the latest delay is considered to be reliable, the 30 milliseconds are determined as the current delay information, and meanwhile, the value of the preset delay threshold value is increased from the initial preset value to a certain value, for example, the value of the preset delay threshold value is increased by 2 milliseconds, that is, the value of the preset delay threshold value is set to 19 milliseconds.
The plurality of delay information before the current delay information may be pre-stored in an external storage device connected to or local to the electronic device, and the electronic device may directly obtain the plurality of delay information before the current delay information from corresponding storage locations. The plurality of delay information before the current delay information is: a plurality of delay information preceding the current delay information between the far-end signal and the near-end signal.
S102: and determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information.
Wherein, the plurality of delay information before the current delay information refers to: and the corresponding generation time is the closest to the generation time corresponding to the current delay information.
In the embodiment of the present disclosure, the current jitter information corresponding to the far-end signal and the near-end signal may be determined according to the difference between the current delay information and a plurality of delay information before the current delay information. Wherein the current jitter information can be represented by numerical values. The larger the value of the jitter information is, the more serious the jitter condition of the delay information between the far-end signal and the near-end signal is, namely the jitter fluctuation is larger; the smaller the value of the jitter information, the lighter the jitter condition of the delay information between the far-end signal and the near-end signal is, i.e. the smaller the jitter fluctuation is.
In one implementation, jitter information corresponding to the far-end signal and the near-end signal may be identified by an average of a plurality of delay information between the far-end signal and the near-end signal. That is, the average value between the calculated current delay information and the plurality of delay information before the current delay information is used as the current jitter information corresponding to the far-end signal and the near-end signal. The jitter information corresponding to the far-end signal and the near-end signal can also be identified by the difference value of the numerical maximum delay information and the numerical minimum delay information in the plurality of delay information between the far-end signal and the near-end signal. Namely, the difference value between the maximum delay information and the minimum delay information in the current delay information and the plurality of delay information before the current delay information is used as the current jitter information corresponding to the far-end signal and the near-end signal. Etc., as may be desired.
In another implementation, the jitter of the delay information between the far-end signal and the near-end signal is better characterized. The jitter information corresponding to the far-end signal and the near-end signal may be identified by a standard deviation, i.e., a variance, of a plurality of delay information between the far-end signal and the near-end signal. The step of determining the current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information may include:
calculating to obtain standard deviations between the current delay information and a plurality of delay information before the current delay information;
and taking the standard deviation obtained by calculation as the current jitter information corresponding to the far-end signal and the near-end signal.
In one case, the current jitter ranges corresponding to the far-end signal and the near-end signal may also be determined according to the determined current jitter information corresponding to the far-end signal and the near-end signal. The upper limit value of the current jitter range may be: the sum of the current delay information and the current jitter information may be expressed as: t _ delay + T _ jitter; the lower limit of the jitter range may be: the difference between the current delay information and the current jitter information may be expressed as: t _ delay-T _ jitter, where T _ delay represents current delay information and T _ jitter represents current jitter information.
In one case, the current jitter information is equal to the current delay information when the current delay information is the first delay information estimated for the far-end signal and the near-end signal.
S103: and determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and the current jitter information.
It can be understood that, according to the current delay information, the previous delay information of the current delay information, and the current jitter information, the current alignment delay information corresponding to the far-end signal and the near-end signal is determined, so that the alignment delay information which has higher accuracy and better accords with the actual situation can be determined, and further, the far-end signal and the near-end signal can be aligned better. The process of determining the current alignment delay information will be described in detail later.
S104: and aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets the preset delay jitter resisting condition.
S105: and inputting the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal.
In one implementation, whether delay information jitter occurs may be determined based on previous delay information and current delay information, where the occurrence of delay information jitter may be determined when a difference between the current delay information and the current delay information is not zero; when the difference between the previous delay information and the current delay information is zero, it may be determined that no jitter of the delay information occurs. If the fact that the delay information shakes is determined to occur based on the previous delay information and the current delay information, whether the absolute value of the difference value between the current delay information and the previous delay information is smaller than the current shaking information or not is further determined, if the fact that the absolute value of the difference value between the current delay information and the previous delay information is smaller than the current shaking information is determined, the fact that the current delay information meets the preset delay shaking resisting condition is determined, at the moment, the self-adaptive filter is not reset, and the far-end signal and the near-end signal are aligned directly according to the current aligned delay information; and then inputting the aligned far-end signal and near-end signal into the target adaptive filter which is not reset so as to perform echo cancellation on the near-end signal. Wherein, the non-reset means that the current process is not reset.
In one implementation, the preset delay jitter immunity condition may be: on the premise that the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not zero, the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information. That is, the preset anti-jitter condition of the delay information can represent that the current delay information has jitter of the delay information relative to the previous realization, and the jitter of the delay information does not exceed the current jitter information, that is, the jitter is in the anti-jitter range.
In one case, if it is determined that no jitter of the delay information occurs based on the previous delay information and the current delay information, the process may be ended without realigning the far-end signal and the near-end signal, and the aligned far-end signal and near-end signal are directly input to the target adaptive filter that is not reset, so as to perform echo cancellation on the near-end signal.
In an implementation manner, the echo cancellation procedure provided by the embodiment of the present disclosure may be executed once every preset time interval when it is detected that the electronic device performs a voice call, so as to achieve better cancellation of an echo in a voice call process in time.
In the embodiment of the disclosure, the more accurate current alignment delay information corresponding to the far-end signal and the near-end signal, which better conforms to the actual situation, is determined according to the current delay information, the previous delay information and the current jitter information. And when the current delay information is determined to accord with the preset delay jitter resisting condition, namely when the current delay information is determined to be in an acceptable jitter range, the adaptive filter is not reset, and echo cancellation is directly carried out on the aligned far-end signal and near-end signal based on the converged target adaptive filter, so that the near-end signal after echo cancellation is obtained. The frequency of resetting the self-adaptive filter is reduced, the situation that the echo cancellation effect is poor due to the fact that the self-adaptive filter is in the process of re-convergence is further reduced, and the conversation quality under the situation that feedback delay information between a far-end signal and a near-end signal changes frequently is improved to a certain extent.
In one implementation, the step of determining current aligned delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information, and current jitter information may include:
if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information, obtaining the historical alignment delay information corresponding to the pre-stored far-end signal and near-end signal;
determining historical alignment delay information as current alignment delay information corresponding to a far-end signal and a near-end signal;
and if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, determining the difference between the current delay information and the target value as the current aligned delay information corresponding to the far-end signal and the near-end signal, wherein if the current jitter information is greater than a preset value, the target value is a preset value, and if the current jitter information is not greater than the preset value, the target value is the current jitter information.
In the embodiment of the present disclosure, an absolute value of a difference between current delay information and previous delay information of the current delay information may be first calculated, and whether the absolute value is smaller than the current jitter information may be determined; if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information, that is, abs (T _ delay-T _ delay') < T _ jitter, it may be determined that the toggling between the current delay information and the previous delay information of the current delay information is not large, and at this time, the history alignment delay information corresponding to the pre-stored far-end signal and near-end signal may be obtained, and the history alignment delay information may be determined as the current alignment delay information corresponding to the far-end signal and the near-end signal. If the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, that is, abs (T _ delay-T _ delay') > < T _ jitter, it may be determined that the toggling between the current delay information and the previous delay information of the current delay information is large, and at this time, the current alignment delay information corresponding to the far-end signal and the near-end signal may be determined based on the following formula:
T_align=T_delay-MIN(T_jitter,T0)。
wherein abs (.) represents the absolute value, T _ delay represents the current delay information, T _ delay' represents the previous delay information of the current delay information, T _ jitter represents the current jitter information, T _ align represents the current alignment delay information MIN (.) represents the minimum value, and T0 represents the preset value.
In a case where the predetermined value T0 is a small positive number, for example, not greater than the first threshold, T0 can avoid that the delay information between the far-end signal and the near-end signal is shifted too much beyond the coverage length of the adaptive filter when the current jitter information T _ jitter is too large.
The pre-stored information may be the information that exists when the current delay information between the far-end signal and the near-end signal is obtained, that is, the information that exists when the current delay information between the far-end signal and the near-end signal is obtained is stored in a storage device that is local to the electronic device or connected to the electronic device.
In one implementation, to ensure echo cancellation effects. After the step of determining the difference between the current delay information and the target value as the current aligned delay information corresponding to the far-end signal and the near-end signal, the method may further include:
and replacing the pre-stored historical alignment delay information with the current alignment delay information.
In one case, after replacing the pre-stored historical alignment delay information with the current alignment delay information, the previous delay information of the pre-stored current delay information may be replaced with the current delay information, and the previous second delay information of the pre-stored current delay information may be replaced with the previous delay information of the current delay information, and so on. For example, it can be expressed as: t _ align' ═ T _ align; t _ delay ═ T _ delay.
In one implementation, as shown in fig. 2, fig. 2 is another flowchart of an echo cancellation method according to an exemplary embodiment, wherein the method may include the following steps:
s201: current delay information between a far-end signal and a near-end signal and a plurality of delay information before the current delay information are obtained.
S202: and determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information.
S203: and determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and the current jitter information.
S204: and aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets the preset delay jitter resisting condition.
S205: and inputting the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal.
Wherein S201 is the same as S101 shown in fig. 1, S202 is the same as S102 shown in fig. 1, S203 is the same as S103 shown in fig. 1, S204 is the same as S104 shown in fig. 1, and S205 is the same as S105 shown in fig. 1.
S206: when the current delay information does not accord with the preset delay jitter resisting condition, resetting the target self-adaptive filter;
s207: and aligning the far-end signal and the near-end signal according to the current alignment delay information.
S208: and inputting the aligned far-end signal and near-end signal into the reset adaptive filter to perform echo cancellation on the near-end signal.
In an optional embodiment of the present disclosure, when the current delay information does not meet the preset delay jitter tolerance condition, it may be determined that the jitter of the current delay information relative to the previous delay information is shifted more, and the target adaptive filter needs to be reset. At this time, the target adaptive filter may be reset, and the far-end signal and the near-end signal will be aligned according to the current alignment delay information; and inputting the aligned far-end signal and near-end signal into the reset adaptive filter to perform echo cancellation on the near-end signal. To obtain a near-end signal with better echo cancellation effect.
The process of resetting the target adaptive filter may be: initializing parameters of the target adaptive filter, for example, setting the parameters to 0, training the target adaptive filter by using a far-end signal and a near-end signal obtained after alignment according to the current alignment delay information until the target adaptive filter is converged again, and obtaining the target adaptive filter after the target adaptive filter is reset. It is to be understood that any way of training the adaptive filter may be adopted, and the disclosed embodiments are not limited to the way of training the adaptive filter.
It is understood that the far-end signal component doped in the near-end signal may include linear and nonlinear signals, and the linear signal in the far-end signal component doped in the near-end signal may be generally filtered out by the adaptive filter. In order to ensure the echo cancellation effect, after inputting the aligned far-end signal and near-end signal into the target adaptive filter and performing echo cancellation on the near-end signal, it is necessary to further perform cancellation on a nonlinear signal in the far-end signal component doped in the near-end signal. In one implementation, as shown in fig. 3, fig. 3 is another flowchart of an echo cancellation method according to an exemplary embodiment, wherein the method may include the following steps:
s301: current delay information between a far-end signal and a near-end signal and a plurality of delay information before the current delay information are obtained.
S302: and determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information.
S303: and determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and the current jitter information.
S304: and aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets the preset delay jitter resisting condition.
S305: and inputting the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal.
Wherein S301 is the same as S101 shown in fig. 1, S302 is the same as S102 shown in fig. 1, S303 is the same as S103 shown in fig. 1, S304 is the same as S104 shown in fig. 1, and S305 is the same as S105 shown in fig. 1.
S306: and modifying the residual echo cancellation coefficient of the residual echo canceller according to the current delay information, the previous delay information and the current jitter information.
S307: and performing residual echo cancellation on the signal output by the target self-adaptive filter by using the residual echo canceller after modifying the residual echo cancellation coefficient to obtain a near-end signal after echo cancellation.
In one implementation of the present disclosure, the signal output by the adaptive filter may be subjected to nonlinear signal cancellation by a residual echo canceller. When the current delay information meets the preset delay jitter resisting condition, before the signal output by the adaptive filter is subjected to nonlinear signal cancellation, the residual echo cancellation coefficient of the residual echo canceller needs to be modified according to the current delay information, the previous delay information and the current jitter information, and then the residual echo canceller after the residual echo cancellation coefficient is modified is used for performing residual echo cancellation on the signal output by the target adaptive filter, so as to obtain a near-end signal after echo cancellation. Wherein, the residual echo cancellation coefficient of the modified residual echo canceller is: and increasing the residual echo cancellation coefficient of the residual echo canceller.
In one implementation, the step of modifying the residual echo cancellation coefficient of the residual echo canceller according to the current delay information, the previous delay information, and the current jitter information may include:
calculating an absolute value of a difference value between the current delay information and the previous delay information as a first absolute value;
calculating a difference value between the current jitter information and the first absolute value as a first difference value;
based on the first difference, a residual echo cancellation coefficient of the residual echo canceller is modified.
In an implementation manner, correspondence between different difference values and preset estimation coefficients may be prestored, where the larger the value is, the larger the corresponding preset estimation coefficient is, the preset estimation coefficient may be set to have a value range of [1, 5], a preset estimation coefficient matching the first difference value is determined from the prestored correspondence, and then a product of the residual echo cancellation coefficient and the determined preset estimation coefficient matching the first difference value is used as a modification target coefficient, and the residual echo cancellation coefficient of the residual echo canceller is modified to the target coefficient.
In one case, the residual echo canceller cancels the residual echo of the signal output from the adaptive filter by using a NLP (Non Linear Processor).
In one implementation, S205 may be executed in parallel with S204 when it is determined that the current delay information meets the preset delay information jitter tolerance condition, or may be executed before S204. The flowchart shown in fig. 2 is merely an example, and does not limit the order of steps in the embodiments of the present disclosure.
In another implementation mode, when the current delay information does not accord with the preset delay jitter resisting condition, the target self-adaptive filter is reset; aligning the far-end signal and the near-end signal according to the current alignment delay information; inputting the aligned far-end signal and near-end signal into the reset adaptive filter to perform echo cancellation on the near-end signal; subsequently, the signal output by the adaptive filter can be directly input into the residual echo canceller without modifying the coefficient, so as to obtain the near-end signal after echo cancellation. Wherein, the unmodified coefficient refers to the residual echo cancellation coefficient of the residual echo canceller unmodified in the current process.
In accordance with the above method embodiments, the present disclosure provides an echo cancellation device, and fig. 4 is a block diagram of an echo cancellation device according to an exemplary embodiment. Referring to fig. 4, the apparatus includes:
a first obtaining module 410 configured to obtain current delay information between a far-end signal and a near-end signal, and obtain a plurality of delay information before the current delay information;
a first determining module 420, configured to determine current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information;
a second determining module 430, configured to determine current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information, and the current jitter information;
an alignment module 440 configured to align the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets a preset delay jitter tolerance condition;
an input module 450 configured to input the aligned signals to a target adaptive filter for echo cancellation of the near-end signal.
In the embodiment of the disclosure, the more accurate current alignment delay information corresponding to the far-end signal and the near-end signal, which better conforms to the actual situation, is determined according to the current delay information, the previous delay information and the current jitter information. And when the current delay information is determined to accord with the preset delay jitter resisting condition, namely when the current delay information is determined to be in an acceptable jitter range, the adaptive filter is not reset, and echo cancellation is directly carried out on the aligned far-end signal and near-end signal based on the converged target adaptive filter, so that the near-end signal after echo cancellation is obtained. The frequency of resetting the self-adaptive filter is reduced, the situation that the echo cancellation effect is poor due to the fact that the self-adaptive filter is in the process of re-convergence is further reduced, and the conversation quality under the situation that feedback delay information between a far-end signal and a near-end signal changes frequently is improved to a certain extent.
In one implementation, the preset delay jitter immunity condition is: and on the premise that the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not zero, the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information.
In one implementation, the second determining module 430 is configured to obtain pre-stored historical alignment delay information corresponding to the far-end signal and the near-end signal if an absolute value of a difference between the current delay information and previous delay information of the current delay information is smaller than the current jitter information;
determining the historical alignment delay information as current alignment delay information corresponding to the far-end signal and the near-end signal;
and if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal, wherein if the current jitter information is greater than a preset value, the target value is the preset value, and if the current jitter information is not greater than the preset value, the target value is the current jitter information.
In one implementation, the apparatus further comprises:
a replacing module configured to replace the pre-stored historical alignment delay information with the current alignment delay information after determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal.
In one implementation, the apparatus further comprises:
a reset module configured to reset the target adaptive filter when the current delay information does not meet the preset delay jitter resistant condition;
an alignment input module configured to align the far-end signal and the near-end signal according to the current alignment delay information; and inputting the aligned far-end signal and the near-end signal into a reset adaptive filter to perform echo cancellation on the near-end signal.
In one implementation, the first determining module 420 is configured to calculate a standard deviation between the current delay information and a plurality of delay information before the current delay information;
and taking the standard deviation obtained by calculation as the current jitter information corresponding to the far-end signal and the near-end signal.
In one implementation, the apparatus further comprises:
a modification module configured to modify a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information, and the current jitter information after the aligned signals are input to a target adaptive filter to perform echo cancellation on the near-end signal;
and the elimination module is used for utilizing the residual echo eliminator after the residual echo elimination coefficient is modified to eliminate the residual echo of the signal output by the target self-adaptive filter so as to obtain a near-end signal after the echo is eliminated.
In one implementation, the modifying module is configured to calculate an absolute value of a difference between the current delay information and the previous delay information as a first absolute value;
calculating a difference value between the current jitter information and the first absolute value as a first difference value;
modifying a residual echo cancellation coefficient of a residual echo canceller based on the first difference.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
Corresponding to the above method embodiment, an embodiment of the present disclosure provides an electronic device, as shown in fig. 5, including: a processor 510 and a memory 520; a memory 520 configured to store a computer program; wherein the processor 510 is configured to execute the computer program stored in the memory to implement any of the echo cancellation method steps provided in the embodiments of the present disclosure.
In the embodiment of the disclosure, the more accurate current alignment delay information corresponding to the far-end signal and the near-end signal, which better conforms to the actual situation, is determined according to the current delay information, the previous delay information and the current jitter information. And when the current delay information is determined to accord with the preset delay jitter resisting condition, namely when the current delay information is determined to be in an acceptable jitter range, the adaptive filter is not reset, and echo cancellation is directly carried out on the aligned far-end signal and near-end signal based on the converged target adaptive filter, so that the near-end signal after echo cancellation is obtained. The frequency of resetting the self-adaptive filter is reduced, the situation that the echo cancellation effect is poor due to the fact that the self-adaptive filter is in the process of re-convergence is further reduced, and the conversation quality under the situation that feedback delay information between a far-end signal and a near-end signal changes frequently is improved to a certain extent.
Fig. 6 is a block diagram illustrating an apparatus 800 for echo cancellation according to an example embodiment. For example, the apparatus 800 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, an exercise device, a personal digital assistant, and the like.
Referring to fig. 6, the apparatus 800 may include one or more of the following components: a processing component 802, a memory 804, a power component 806, a multimedia component 808, an audio component 810, an input/output (I/O) interface 812, a sensor component 814, and a communication component 816.
The processing component 802 generally controls overall operation of the device 800, such as operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing components 802 may include one or more processors 820 to execute instructions to perform all or a portion of the steps of the methods described above. Further, the processing component 802 can include one or more modules that facilitate interaction between the processing component 802 and other components. For example, the processing component 802 can include a multimedia module to facilitate interaction between the multimedia component 808 and the processing component 802.
The memory 804 is configured to store various types of data to support operation at the device 800. Examples of such data include instructions for any application or method operating on device 800, contact data, phonebook data, messages, pictures, videos, and so forth. The memory 804 may be implemented by any type or combination of volatile or non-volatile memory devices such as Static Random Access Memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic or optical disks.
Power components 806 provide power to the various components of device 800. The power components 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the apparatus 800.
The multimedia component 808 includes a screen that provides an output interface between the device 800 and a user. In some embodiments, the screen may include a Liquid Crystal Display (LCD) and a Touch Panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 808 includes a front facing camera and/or a rear facing camera. The front-facing camera and/or the rear-facing camera may receive external multimedia data when the device 800 is in an operating mode, such as a shooting mode or a video mode. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
The audio component 810 is configured to output and/or input audio signals. For example, the audio component 810 includes a Microphone (MIC) configured to receive external audio signals when the apparatus 800 is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signals may further be stored in the memory 804 or transmitted via the communication component 816. In some embodiments, audio component 810 also includes a speaker for outputting audio signals.
The I/O interface 812 provides an interface between the processing component 802 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to: a home button, a volume button, a start button, and a lock button.
The sensor assembly 814 includes one or more sensors for providing various aspects of state assessment for the device 800. For example, the sensor assembly 814 may detect the open/closed state of the device 800, the relative positioning of the components, such as a display and keypad of the apparatus 800, the sensor assembly 814 may also detect a change in position of the apparatus 800 or a component of the apparatus 800, the presence or absence of user contact with the apparatus 800, orientation or acceleration/deceleration of the apparatus 800, and a change in temperature of the apparatus 800. Sensor assembly 814 may include a proximity sensor configured to detect the presence of a nearby object without any physical contact. The sensor assembly 814 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 814 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
The communication component 816 is configured to facilitate communications between the apparatus 800 and other devices in a wired or wireless manner. The apparatus 800 may access a wireless network based on a communication standard, such as WiFi, an operator network (such as 2G, 3G, 4G, or 5G), or a combination thereof. In an exemplary embodiment, the communication component 816 receives a broadcast signal or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 816 further includes a Near Field Communication (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on Radio Frequency Identification (RFID) technology, infrared data association (IrDA) technology, Ultra Wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
In an exemplary embodiment, the apparatus 800 may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, micro-controllers, microprocessors or other electronic components for performing an echo cancellation method, the method comprising:
obtaining current delay information between a far-end signal and a near-end signal, and obtaining a plurality of delay information before the current delay information;
determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information;
determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and the current jitter information;
aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets a preset delay jitter resisting condition; and inputting the aligned signals into a target adaptive filter to perform echo cancellation on the near-end signal.
In the embodiment of the disclosure, the more accurate current alignment delay information corresponding to the far-end signal and the near-end signal, which better conforms to the actual situation, is determined according to the current delay information, the previous delay information and the current jitter information. And when the current delay information is determined to accord with the preset delay jitter resisting condition, namely when the current delay information is determined to be in an acceptable jitter range, the adaptive filter is not reset, and echo cancellation is directly carried out on the aligned far-end signal and near-end signal based on the converged target adaptive filter, so that the near-end signal after echo cancellation is obtained. The frequency of resetting the self-adaptive filter is reduced, the situation that the echo cancellation effect is poor due to the fact that the self-adaptive filter is in the process of re-convergence is further reduced, and the conversation quality under the situation that feedback delay information between a far-end signal and a near-end signal changes frequently is improved to a certain extent.
In one implementation, the preset delay jitter immunity condition is: and on the premise that the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not zero, the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information.
In one implementation, the step of determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information, and the current jitter information includes:
if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information, obtaining pre-stored historical alignment delay information corresponding to the far-end signal and the near-end signal;
determining the historical alignment delay information as current alignment delay information corresponding to the far-end signal and the near-end signal;
and if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal, wherein if the current jitter information is greater than a preset value, the target value is the preset value, and if the current jitter information is not greater than the preset value, the target value is the current jitter information.
In one implementation, after the step of determining the difference between the current delay information and a target value as the current aligned delay information corresponding to the far-end signal and the near-end signal, the method further includes:
and replacing the pre-stored historical alignment delay information with the current alignment delay information.
In one implementation, the method further comprises:
resetting the target adaptive filter when the current delay information does not meet the preset delay jitter resisting condition;
aligning the far-end signal and the near-end signal according to the current alignment delay information; and inputting the aligned far-end information and the near-end signal into a reset adaptive filter to perform echo cancellation on the near-end signal.
In one implementation, the step of determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information includes:
calculating to obtain standard deviations between the current delay information and a plurality of delay information before the current delay information;
and taking the standard deviation obtained by calculation as the current jitter information corresponding to the far-end signal and the near-end signal.
In one implementation, after the step of inputting the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal, the method further includes:
modifying a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information and the current jitter information;
and performing residual echo cancellation on the signal output by the target adaptive filter by using the residual echo canceller after modifying the residual echo cancellation coefficient to obtain a near-end signal after echo cancellation.
In one implementation, the step of modifying a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information, and the current jitter information includes:
calculating an absolute value of a difference value between the current delay information and the previous delay information as a first absolute value;
calculating a difference value between the current jitter information and the first absolute value as a first difference value;
modifying a residual echo cancellation coefficient of a residual echo canceller based on the first difference.
In an exemplary embodiment, there is also provided a non-transitory computer-readable storage medium, such as the memory 804, including instructions executable by the processor 820 of the apparatus 800 to perform the echo cancellation method described above, corresponding to the above method embodiments, the method comprising:
obtaining current delay information between a far-end signal and a near-end signal, and obtaining a plurality of delay information before the current delay information;
determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information;
determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and the current jitter information;
aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets a preset delay jitter resisting condition; and inputting the aligned far-end information and the aligned near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal.
In the embodiment of the disclosure, the more accurate current alignment delay information corresponding to the far-end signal and the near-end signal, which better conforms to the actual situation, is determined according to the current delay information, the previous delay information and the current jitter information. And when the current delay information is determined to accord with the preset delay jitter resisting condition, namely when the current delay information is determined to be in an acceptable jitter range, the adaptive filter is not reset, and echo cancellation is directly carried out on the aligned far-end signal and near-end signal based on the converged target adaptive filter, so that the near-end signal after echo cancellation is obtained. The frequency of resetting the self-adaptive filter is reduced, the situation that the echo cancellation effect is poor due to the fact that the self-adaptive filter is in the process of re-convergence is further reduced, and the conversation quality under the situation that feedback delay information between a far-end signal and a near-end signal changes frequently is improved to a certain extent.
In one implementation, the preset delay jitter immunity condition is: and on the premise that the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not zero, the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information.
In one implementation, the step of determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information, and the current jitter information includes:
if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information, obtaining pre-stored historical alignment delay information corresponding to the far-end signal and the near-end signal;
determining the historical alignment delay information as current alignment delay information corresponding to the far-end signal and the near-end signal;
and if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal, wherein if the current jitter information is greater than a preset value, the target value is the preset value, and if the current jitter information is not greater than the preset value, the target value is the current jitter information.
In one implementation, after the step of determining the difference between the current delay information and a target value as the current aligned delay information corresponding to the far-end signal and the near-end signal, the method further includes:
and replacing the pre-stored historical alignment delay information with the current alignment delay information.
In one implementation, the method further comprises:
resetting the target adaptive filter when the current delay information does not meet the preset delay jitter resisting condition;
aligning the far-end signal and the near-end signal according to the current alignment delay information; and inputting the aligned signals into a reset adaptive filter to perform echo cancellation on the near-end signal.
In one implementation, the step of determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information includes:
calculating to obtain standard deviations between the current delay information and a plurality of delay information before the current delay information;
and taking the standard deviation obtained by calculation as the current jitter information corresponding to the far-end signal and the near-end signal.
In one implementation, after the step of inputting the aligned far-end information and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal, the method further includes:
modifying a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information and the current jitter information;
and performing residual echo cancellation on the signal output by the target adaptive filter by using the residual echo canceller after modifying the residual echo cancellation coefficient to obtain a near-end signal after echo cancellation.
In one implementation, the step of modifying a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information, and the current jitter information includes:
calculating an absolute value of a difference value between the current delay information and the previous delay information as a first absolute value;
calculating a difference value between the current jitter information and the first absolute value as a first difference value;
modifying a residual echo cancellation coefficient of a residual echo canceller based on the first difference.
For example, the non-transitory computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
Corresponding to the above method embodiments, the present disclosure provides a computer program product, which when run on a computer, causes the computer to perform the steps of implementing any of the above echo cancellation methods provided by the present disclosure.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.
It will be understood that the invention is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the invention is limited only by the appended claims.

Claims (14)

1. A method of echo cancellation, the method comprising:
obtaining current delay information between a far-end signal and a near-end signal, and obtaining a plurality of delay information before the current delay information;
determining current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information;
determining current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information and the current jitter information;
aligning the far-end signal and the near-end signal according to the current alignment delay information when the current delay information meets a preset delay jitter resisting condition; the preset delay jitter resisting condition is as follows: on the premise that the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not zero, the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information;
inputting the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal;
the step of determining the current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, the previous delay information of the current delay information, and the current jitter information includes:
if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information, obtaining pre-stored historical alignment delay information corresponding to the far-end signal and the near-end signal;
determining the historical alignment delay information as current alignment delay information corresponding to the far-end signal and the near-end signal;
and if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal, wherein if the current jitter information is greater than a preset value, the target value is the preset value, and if the current jitter information is not greater than the preset value, the target value is the current jitter information.
2. The method of claim 1, wherein after the step of determining the difference between the current delay information and a target value as current aligned delay information corresponding to the far-end signal and the near-end signal, the method further comprises:
and replacing the pre-stored historical alignment delay information with the current alignment delay information.
3. The method of claim 1, further comprising:
resetting the target adaptive filter when the current delay information does not meet the preset delay jitter resisting condition;
aligning the far-end signal and the near-end signal according to the current alignment delay information; and inputting the aligned far-end signal and the near-end signal into a reset adaptive filter to perform echo cancellation on the near-end signal.
4. The method of claim 1, wherein the step of determining the current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information comprises:
calculating to obtain standard deviations between the current delay information and a plurality of delay information before the current delay information;
and taking the standard deviation obtained by calculation as the current jitter information corresponding to the far-end signal and the near-end signal.
5. The method according to any of claims 1-4, wherein after the step of inputting the aligned far-end signal and near-end signal into a target adaptive filter for echo cancellation of the near-end signal, the method further comprises:
modifying a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information and the current jitter information;
and performing residual echo cancellation on the signal output by the target adaptive filter by using the residual echo canceller after modifying the residual echo cancellation coefficient to obtain a near-end signal after echo cancellation.
6. The method of claim 5, wherein the step of modifying residual echo cancellation coefficients of a residual echo canceller based on the current delay information, the previous delay information, and the current jitter information comprises:
calculating an absolute value of a difference value between the current delay information and the previous delay information as a first absolute value;
calculating a difference value between the current jitter information and the first absolute value as a first difference value;
modifying a residual echo cancellation coefficient of a residual echo canceller based on the first difference.
7. An echo cancellation device, characterized in that the device comprises:
a first obtaining module configured to obtain current delay information between a far-end signal and a near-end signal, and obtain a plurality of delay information before the current delay information;
a first determining module, configured to determine current jitter information corresponding to the far-end signal and the near-end signal according to the current delay information and a plurality of delay information before the current delay information;
a second determining module, configured to determine current alignment delay information corresponding to the far-end signal and the near-end signal according to the current delay information, previous delay information of the current delay information, and the current jitter information;
an alignment module configured to determine that the current delay information meets a preset delay-resistant jitter condition when the current delay information meets the preset delay-resistant jitter condition, and align the far-end signal and the near-end signal according to the current alignment delay information; the preset delay jitter resisting condition is as follows: on the premise that the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not zero, the absolute value of the difference between the current delay information and the previous delay information of the current delay information is smaller than the current jitter information;
an input module configured to input the aligned far-end signal and near-end signal into a target adaptive filter to perform echo cancellation on the near-end signal;
the second determining module is configured to obtain pre-stored historical alignment delay information corresponding to the far-end signal and the near-end signal if an absolute value of a difference between the current delay information and previous delay information of the current delay information is smaller than the current jitter information; determining the historical alignment delay information as current alignment delay information corresponding to the far-end signal and the near-end signal; and if the absolute value of the difference between the current delay information and the previous delay information of the current delay information is not less than the current jitter information, determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal, wherein if the current jitter information is greater than a preset value, the target value is the preset value, and if the current jitter information is not greater than the preset value, the target value is the current jitter information.
8. The apparatus of claim 7, further comprising:
a replacing module configured to replace the pre-stored historical alignment delay information with the current alignment delay information after determining the difference between the current delay information and a target value as the current alignment delay information corresponding to the far-end signal and the near-end signal.
9. The apparatus of claim 7, further comprising:
a reset module configured to reset the target adaptive filter when the current delay information does not meet the preset delay jitter resistant condition;
an alignment input module configured to align the far-end signal and the near-end signal according to the current alignment delay information; and inputting the aligned far-end signal and the near-end signal into a reset adaptive filter to perform echo cancellation on the near-end signal.
10. The apparatus of claim 7, wherein the first determining module is configured to calculate a standard deviation between the current delay information and a plurality of delay information before the current delay information;
and taking the standard deviation obtained by calculation as the current jitter information corresponding to the far-end signal and the near-end signal.
11. The apparatus according to any one of claims 7-10, further comprising:
a modification module configured to modify a residual echo cancellation coefficient of a residual echo canceller according to the current delay information, the previous delay information, and the current jitter information after the aligned far-end signal and near-end signal are input to a target adaptive filter to perform echo cancellation on the near-end signal;
and the elimination module is used for utilizing the residual echo eliminator after the residual echo elimination coefficient is modified to eliminate the residual echo of the signal output by the target self-adaptive filter so as to obtain a near-end signal after the echo is eliminated.
12. The apparatus of claim 11, wherein the modifying module is configured to calculate an absolute value of a difference between the current delay information and the previous delay information as a first absolute value;
calculating a difference value between the current jitter information and the first absolute value as a first difference value;
modifying a residual echo cancellation coefficient of a residual echo canceller based on the first difference.
13. An electronic device, comprising:
a processor and a memory;
a memory configured to store a computer program;
wherein the processor is configured to carry out the steps of the echo cancellation method of any one of claims 1-6 when executing the computer program stored on the memory.
14. A non-transitory computer readable storage medium, wherein instructions in the storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the echo cancellation method steps of any of claims 1-6.
CN201811541325.5A 2018-12-17 2018-12-17 Echo cancellation method and device, electronic equipment and storage medium Active CN109361828B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811541325.5A CN109361828B (en) 2018-12-17 2018-12-17 Echo cancellation method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811541325.5A CN109361828B (en) 2018-12-17 2018-12-17 Echo cancellation method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN109361828A CN109361828A (en) 2019-02-19
CN109361828B true CN109361828B (en) 2021-02-12

Family

ID=65329082

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811541325.5A Active CN109361828B (en) 2018-12-17 2018-12-17 Echo cancellation method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN109361828B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109979479B (en) * 2019-04-15 2021-11-23 苏州麦迪斯顿医疗科技股份有限公司 Echo cancellation method, device, equipment and storage medium
CN110138650A (en) * 2019-05-14 2019-08-16 北京达佳互联信息技术有限公司 Sound quality optimization method, device and the equipment of instant messaging
CN110138990A (en) * 2019-05-14 2019-08-16 浙江工业大学 A method of eliminating mobile device voip phone echo
CN113067955B (en) * 2019-12-13 2024-03-08 瑞昱半导体股份有限公司 Communication device and echo cancellation method
CN111246036A (en) * 2020-02-17 2020-06-05 上海推乐信息技术服务有限公司 Echo estimation method and device
CN113630200B (en) * 2020-05-06 2023-10-10 广州海格通信集团股份有限公司 Communication interference data identification method, device, wireless communication equipment and storage medium
CN111951819B (en) * 2020-08-20 2024-04-09 北京字节跳动网络技术有限公司 Echo cancellation method, device and storage medium
CN112397082B (en) * 2020-11-17 2024-05-14 北京达佳互联信息技术有限公司 Method, device, electronic equipment and storage medium for estimating echo delay
CN112489670B (en) * 2020-12-01 2023-08-18 广州华多网络科技有限公司 Time delay estimation method, device, terminal equipment and computer readable storage medium
CN113241086B (en) * 2021-05-14 2023-05-30 北京达佳互联信息技术有限公司 Audio processing method, device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010530718A (en) * 2007-06-21 2010-09-09 ボーズ・コーポレーション Sound identification method and apparatus
CN106847299A (en) * 2017-02-24 2017-06-13 喜大(上海)网络科技有限公司 The method of estimation and device of time delay
CN107592430A (en) * 2016-07-07 2018-01-16 腾讯科技(深圳)有限公司 The method and terminal device of a kind of echo cancellor
CN107610713A (en) * 2017-10-23 2018-01-19 科大讯飞股份有限公司 Echo cancel method and device based on time delay estimation
CN108269580A (en) * 2016-12-30 2018-07-10 中国电信股份有限公司 Echo cancel method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10115403B2 (en) * 2015-12-18 2018-10-30 Qualcomm Incorporated Encoding of multiple audio signals

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010530718A (en) * 2007-06-21 2010-09-09 ボーズ・コーポレーション Sound identification method and apparatus
CN107592430A (en) * 2016-07-07 2018-01-16 腾讯科技(深圳)有限公司 The method and terminal device of a kind of echo cancellor
CN108269580A (en) * 2016-12-30 2018-07-10 中国电信股份有限公司 Echo cancel method and device
CN106847299A (en) * 2017-02-24 2017-06-13 喜大(上海)网络科技有限公司 The method of estimation and device of time delay
CN107610713A (en) * 2017-10-23 2018-01-19 科大讯飞股份有限公司 Echo cancel method and device based on time delay estimation

Also Published As

Publication number Publication date
CN109361828A (en) 2019-02-19

Similar Documents

Publication Publication Date Title
CN109361828B (en) Echo cancellation method and device, electronic equipment and storage medium
US11587574B2 (en) Voice processing method, apparatus, electronic device, and storage medium
CN111128221B (en) Audio signal processing method and device, terminal and storage medium
CN111883164B (en) Model training method and device, electronic equipment and storage medium
CN109308905B (en) Audio data processing method and device, electronic equipment and storage medium
CN111968662A (en) Audio signal processing method and device and storage medium
CN112037825B (en) Audio signal processing method and device and storage medium
CN111986693A (en) Audio signal processing method and device, terminal equipment and storage medium
JP2022528683A (en) Voice call methods and their devices, electronic devices and computer programs
CN109256145B (en) Terminal-based audio processing method and device, terminal and readable storage medium
CN106791245B (en) Method and device for determining filter coefficients
CN110392334B (en) Microphone array audio signal self-adaptive processing method, device and medium
CN111292761B (en) Voice enhancement method and device
CN112447184A (en) Voice signal processing method and device, electronic equipment and storage medium
CN111989934B (en) Echo cancellation device, echo cancellation method, signal processing chip, and electronic apparatus
CN112201267A (en) Audio processing method and device, electronic equipment and storage medium
CN109309764B (en) Audio data processing method and device, electronic equipment and storage medium
CN113489854B (en) Sound processing method, device, electronic equipment and storage medium
CN111294473B (en) Signal processing method and device
CN112217948B (en) Echo processing method, device, equipment and storage medium for voice call
CN115278441A (en) Voice detection method, device, earphone and storage medium
CN110580910A (en) Audio processing method, device and equipment and readable storage medium
CN113938557B (en) Self-adaptive method, device and medium for intelligent terminal
CN113810828A (en) Audio signal processing method and device, readable storage medium and earphone
CN114040285A (en) Method and device for generating parameters of feedforward filter of earphone, earphone and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant