Allow extracting the linear AEC output

This CL enables extracting the linear AEC output,
allowing for more straightforward
testing/development.

Bug: b/140823178
Change-Id: I14f7934008d87066b35500466cb6e6d96f811688
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153672
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29789}
diff --git a/modules/audio_processing/aec3/echo_canceller3_unittest.cc b/modules/audio_processing/aec3/echo_canceller3_unittest.cc
index e7b9ddb..8d9199c 100644
--- a/modules/audio_processing/aec3/echo_canceller3_unittest.cc
+++ b/modules/audio_processing/aec3/echo_canceller3_unittest.cc
@@ -112,6 +112,7 @@
   void ProcessCapture(
       bool level_change,
       bool saturated_microphone_signal,
+      std::vector<std::vector<std::vector<float>>>* linear_output,
       std::vector<std::vector<std::vector<float>>>* capture_block) override {}
 
   void BufferRender(
@@ -137,6 +138,7 @@
   void ProcessCapture(
       bool level_change,
       bool saturated_microphone_signal,
+      std::vector<std::vector<std::vector<float>>>* linear_output,
       std::vector<std::vector<std::vector<float>>>* capture_block) override {
     std::vector<std::vector<std::vector<float>>> render_block =
         received_render_blocks_.front();
@@ -267,17 +269,17 @@
 
     switch (echo_path_change_test_variant) {
       case EchoPathChangeTestVariant::kNone:
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(false, _, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(false, _, _, _))
             .Times(kExpectedNumBlocksToProcess);
         break;
       case EchoPathChangeTestVariant::kOneSticky:
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(true, _, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(true, _, _, _))
             .Times(kExpectedNumBlocksToProcess);
         break;
       case EchoPathChangeTestVariant::kOneNonSticky:
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(true, _, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(true, _, _, _))
             .Times(kNumFullBlocksPerFrame);
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(false, _, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(false, _, _, _))
             .Times(kExpectedNumBlocksToProcess - kNumFullBlocksPerFrame);
         break;
     }
@@ -338,7 +340,7 @@
             new StrictMock<webrtc::test::MockBlockProcessor>());
     EXPECT_CALL(*block_processor_mock, BufferRender(_))
         .Times(kExpectedNumBlocksToProcess);
-    EXPECT_CALL(*block_processor_mock, ProcessCapture(_, _, _))
+    EXPECT_CALL(*block_processor_mock, ProcessCapture(_, _, _, _))
         .Times(kExpectedNumBlocksToProcess);
 
     switch (leakage_report_variant) {
@@ -429,21 +431,21 @@
 
     switch (saturation_variant) {
       case SaturationTestVariant::kNone:
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, false, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, false, _, _))
             .Times(kExpectedNumBlocksToProcess);
         break;
       case SaturationTestVariant::kOneNegative: {
         ::testing::InSequence s;
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, true, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, true, _, _))
             .Times(kNumFullBlocksPerFrame);
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, false, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, false, _, _))
             .Times(kExpectedNumBlocksToProcess - kNumFullBlocksPerFrame);
       } break;
       case SaturationTestVariant::kOnePositive: {
         ::testing::InSequence s;
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, true, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, true, _, _))
             .Times(kNumFullBlocksPerFrame);
-        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, false, _))
+        EXPECT_CALL(*block_processor_mock, ProcessCapture(_, false, _, _))
             .Times(kExpectedNumBlocksToProcess - kNumFullBlocksPerFrame);
       } break;
     }