Adaptive echo cancellation
First Claim
Patent Images
1. A system, comprising:
- a speaker;
a microphone that captures sound from an environment including the speaker and generates an input audio signal;
a first adaptive filter configured to dynamically update a plurality of first filter parameters and to produce a first estimated echo signal representing an echo component of an input audio signal, wherein the echo component is a result of audio propagating over one or more echo paths between the speaker and the microphone;
an adaptation controller configured to;
reset the first filter parameters to default;
determine that the first adaptive filter is converging;
determine that the one or more echo paths are stable;
determine that a near-end user voice is detected in the input audio signal;
stop the dynamically updating of the first filter;
a second adaptive filter configured toreceive the first filter parameters from the first adaptive filter, andproduce a second estimated echo signal representing the echo component of the input audio signal based at least in part on the first filter parameters;
an echo path change detection component configured to detect a change in the one or more echo paths based, at least in part, on one or more of a change in position of a user relative to the microphone, or a change in position of the speaker;
a parameter update controller configured to update second filter parameters from the first filter parameters under one or more specified conditions, wherein at least one of the one or more specified conditions is based, at least in part, on the change in the one or more echo paths; and
a subtraction component configured to subtract the second estimated echo signal from the input audio signal to produce an echo-suppressed audio signal.
2 Assignments
0 Petitions
Accused Products
Abstract
An audio-based system may perform echo cancellation using first and second adaptive filters. An adaptation controller may be configured to control whether and/or how the filter coefficients of the first adaptive filter are updated, based on detected filter divergence, echo path changes, and/or presence of near-end user voice. The parameters of the second adaptive filter may be copied from the first adaptive filter under certain conditions that indicate whether copying the parameters would be likely to improve echo suppression.
12 Citations
20 Claims
-
1. A system, comprising:
-
a speaker; a microphone that captures sound from an environment including the speaker and generates an input audio signal; a first adaptive filter configured to dynamically update a plurality of first filter parameters and to produce a first estimated echo signal representing an echo component of an input audio signal, wherein the echo component is a result of audio propagating over one or more echo paths between the speaker and the microphone; an adaptation controller configured to; reset the first filter parameters to default; determine that the first adaptive filter is converging; determine that the one or more echo paths are stable; determine that a near-end user voice is detected in the input audio signal; stop the dynamically updating of the first filter; a second adaptive filter configured to receive the first filter parameters from the first adaptive filter, and produce a second estimated echo signal representing the echo component of the input audio signal based at least in part on the first filter parameters; an echo path change detection component configured to detect a change in the one or more echo paths based, at least in part, on one or more of a change in position of a user relative to the microphone, or a change in position of the speaker; a parameter update controller configured to update second filter parameters from the first filter parameters under one or more specified conditions, wherein at least one of the one or more specified conditions is based, at least in part, on the change in the one or more echo paths; and a subtraction component configured to subtract the second estimated echo signal from the input audio signal to produce an echo-suppressed audio signal. - View Dependent Claims (2, 3, 4)
-
-
5. A method, comprising:
-
receiving an input audio signal having an echo component, wherein the echo component is a result of audio propagating over one or more echo paths between a speaker and a microphone; suppressing the echo component of the input audio signal to produce an echo-suppressed audio signal, wherein the suppressing is based at least in part on a plurality first filter parameters that are dynamically updated; detecting whether the first filter parameters are diverging; detecting whether a change has occurred in the one or more echo paths; detecting whether near-end audio is represented by the input audio signal; detecting that the first filter parameters are diverging; resetting the first filter; and determining that the one or more echo paths are stable based, at least in part, on one or more of a position of a user relative to the microphone, a change in position of the microphone, or a change in position of the speaker; stopping the dynamic updating of the first filter parameters. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system, comprising:
-
one or more processors; a microphone; a speaker; memory storing computer-executable instructions that, when executed by one or more processors, cause the one or more processors to perform acts comprising; estimating a first echo signal representing an echo component of an input audio signal by dynamically updating a plurality of first filter parameters and applying the first filter parameters to an audio reference signal, wherein the echo component is a result of audio propagating over an echo path between the speaker and the microphone; estimating a second echo signal representing the echo component of the input audio signal by applying a plurality of second filter parameters to the audio reference signal; and updating the second filter parameters from the first of filter parameters under one or more specified conditions, wherein at least one of the one or more specified conditions is based, at least in part, on a change in position of a user relative to the microphone, or a change in position of the speaker. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification