Redesign of the render buffering in AEC3

This CL centralizes the render buffering in AEC3 so that all render
buffers are updated and synchronized/aligned with the render alignment
buffer.

Bug: webrtc:8597, chromium:790905
Change-Id: I8a94e5c1f27316b6100b420eec9652ea31c1a91d
Reviewed-on: https://webrtc-review.googlesource.com/25680
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20989}
This commit is contained in:
Per Åhgren
2017-12-01 23:01:44 +01:00
committed by Commit Bot
parent f388803265
commit 8ba5861f7e
55 changed files with 1213 additions and 804 deletions

View File

@ -34,8 +34,8 @@ TEST(FftData, TestOptimizations) {
std::array<float, kFftLengthBy2Plus1> spectrum;
std::array<float, kFftLengthBy2Plus1> spectrum_sse2;
x.Spectrum(Aec3Optimization::kNone, &spectrum);
x.Spectrum(Aec3Optimization::kSse2, &spectrum_sse2);
x.Spectrum(Aec3Optimization::kNone, spectrum);
x.Spectrum(Aec3Optimization::kSse2, spectrum_sse2);
EXPECT_EQ(spectrum, spectrum_sse2);
}
}
@ -102,7 +102,7 @@ TEST(FftData, Spectrum) {
}
std::array<float, kFftLengthBy2Plus1> spectrum;
x.Spectrum(Aec3Optimization::kNone, &spectrum);
x.Spectrum(Aec3Optimization::kNone, spectrum);
EXPECT_EQ(x.re[0] * x.re[0], spectrum[0]);
EXPECT_EQ(x.re[spectrum.size() - 1] * x.re[spectrum.size() - 1],