Improvements for NetEqControllers

When creating a NetEqController it can be useful to have access to a
webrtc::Clock*. Also, NetEqControllers should have access to the
contents of the sync buffer when making decisions.

Bug: webrtc:11005
Change-Id: I7fdba75ce661b2ace52458620a8c1f3c990e5ac2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/167208
Commit-Queue: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30368}
diff --git a/api/neteq/neteq_controller.h b/api/neteq/neteq_controller.h
index dfd697b..1d47eac 100644
--- a/api/neteq/neteq_controller.h
+++ b/api/neteq/neteq_controller.h
@@ -20,6 +20,7 @@
 #include "absl/types/optional.h"
 #include "api/neteq/neteq.h"
 #include "api/neteq/tick_timer.h"
+#include "system_wrappers/include/clock.h"
 
 namespace webrtc {
 
@@ -67,6 +68,7 @@
     int max_packets_in_buffer;
     int base_min_delay_ms;
     TickTimer* tick_timer;
+    webrtc::Clock* clock = nullptr;
   };
 
   struct PacketInfo {
@@ -92,6 +94,7 @@
     bool play_dtmf;
     size_t generated_noise_samples;
     PacketBufferInfo packet_buffer_info;
+    size_t sync_buffer_samples;
   };
 
   virtual ~NetEqController() = default;