Added first version of the EchoControl interface, used for AEC abstraction.
Bug: webrtc:8346 Change-Id: I792a5f8eefb98388de199fea12c017759fdc6c1e Reviewed-on: https://webrtc-review.googlesource.com/6780 Reviewed-by: Per Åhgren <peah@webrtc.org> Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20174}
This commit is contained in:

committed by
Commit Bot

parent
07c5bfb4d6
commit
c522298e03
@ -939,6 +939,21 @@ class EchoControlMobile {
|
||||
virtual ~EchoControlMobile() {}
|
||||
};
|
||||
|
||||
// Interface for an acoustic echo cancellation (AEC) submodule.
|
||||
class EchoControl {
|
||||
public:
|
||||
// Analysis (not changing) of the render signal.
|
||||
virtual void AnalyzeRender(AudioBuffer* render) = 0;
|
||||
|
||||
// Analysis (not changing) of the capture signal.
|
||||
virtual void AnalyzeCapture(AudioBuffer* capture) = 0;
|
||||
|
||||
// Processes the capture signal in order to remove the echo.
|
||||
virtual void ProcessCapture(AudioBuffer* capture, bool echo_path_change) = 0;
|
||||
|
||||
virtual ~EchoControl() {}
|
||||
};
|
||||
|
||||
// The automatic gain control (AGC) component brings the signal to an
|
||||
// appropriate range. This is done by applying a digital gain directly and, in
|
||||
// the analog mode, prescribing an analog gain to be applied at the audio HAL.
|
||||
|
Reference in New Issue
Block a user