Implement DefaultAudioQualityAnalyzer.

The DefaultAudioQualityAnalyzer will read stats reports (temporarily
using the old PeerConnectionInterface::GetStats) and for each audio
stream it will collect some NetEq related stats.

When DefaultAudioQualityAnalyzer::Stop is invoked by the framework,
it will report the following metrics:
- expand_rate
- accelerate_rate
- preemptive_rate
- speech_expand_rate
- preferred_buffer_size_ms

Bug: webrtc:10138
Change-Id: Ie493456fcb9ed86455b12dabdab98a317387ef46
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/125980
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27474}
diff --git a/api/test/audio_quality_analyzer_interface.h b/api/test/audio_quality_analyzer_interface.h
index 1f67ce6..88392d7 100644
--- a/api/test/audio_quality_analyzer_interface.h
+++ b/api/test/audio_quality_analyzer_interface.h
@@ -14,6 +14,7 @@
 #include <string>
 
 #include "api/test/stats_observer_interface.h"
+#include "api/test/track_id_stream_label_map.h"
 
 namespace webrtc {
 namespace webrtc_pc_e2e {
@@ -23,10 +24,18 @@
  public:
   ~AudioQualityAnalyzerInterface() override = default;
 
-  // Will be called by framework before test.
+  // Will be called by the framework before the test.
   // |test_case_name| is name of test case, that should be used to report all
   // audio metrics.
-  virtual void Start(std::string test_case_name) = 0;
+  // |analyzer_helper| is a pointer to a class that will allow track_id to
+  // stream_id matching. The caller is responsible for ensuring the
+  // AnalyzerHelper outlives the instance of the AudioQualityAnalyzerInterface.
+  virtual void Start(std::string test_case_name,
+                     TrackIdStreamLabelMap* analyzer_helper) = 0;
+
+  // Will be called by the framework at the end of the test. The analyzer
+  // has to finalize all its stats and it should report them.
+  virtual void Stop() = 0;
 };
 
 }  // namespace webrtc_pc_e2e