Add environment accessor to call

This will make it easier to propograte the clock where needed.

R=danilchap@webrtc.org, hta@webrtc.org

Bug: webrtc:42223992
Change-Id: I528d3e180aad884ebeca13768f41b17fa8e76c67
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/405520
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Auto-Submit: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#45409}
diff --git a/call/call.cc b/call/call.cc
index dc1e449..9a78aa6 100644
--- a/call/call.cc
+++ b/call/call.cc
@@ -283,6 +283,7 @@
   int FeedbackAccordingToTransportCcCount() override;
 
   const FieldTrialsView& trials() const override;
+  const Environment& env() const override;
 
   TaskQueueBase* network_thread() const override;
   TaskQueueBase* worker_thread() const override;
@@ -1188,6 +1189,10 @@
   return env_.field_trials();
 }
 
+const Environment& Call::env() const {
+  return env_;
+}
+
 TaskQueueBase* Call::network_thread() const {
   return network_thread_;
 }
diff --git a/call/call.h b/call/call.h
index 87e1884..08e883d 100644
--- a/call/call.h
+++ b/call/call.h
@@ -16,6 +16,7 @@
 
 #include "absl/strings/string_view.h"
 #include "api/adaptation/resource.h"
+#include "api/environment/environment.h"
 #include "api/fec_controller.h"
 #include "api/field_trials_view.h"
 #include "api/media_types.h"
@@ -157,7 +158,9 @@
   virtual int FeedbackAccordingToRfc8888Count() = 0;
   virtual int FeedbackAccordingToTransportCcCount() = 0;
 
+  // TODO(bugs.webrtc.org/440271885): Use env() instead.
   virtual const FieldTrialsView& trials() const = 0;
+  virtual const Environment& env() const = 0;
 
   virtual TaskQueueBase* network_thread() const = 0;
   virtual TaskQueueBase* worker_thread() const = 0;
diff --git a/media/engine/fake_webrtc_call.h b/media/engine/fake_webrtc_call.h
index c4265fc..2d6e668 100644
--- a/media/engine/fake_webrtc_call.h
+++ b/media/engine/fake_webrtc_call.h
@@ -433,6 +433,7 @@
   void SetClientBitratePreferences(
       const BitrateSettings& /* preferences */) override {}
   const FieldTrialsView& trials() const override { return env_.field_trials(); }
+  const Environment& env() const override { return env_; }
   void EnableSendCongestionControlFeedbackAccordingToRfc8888() override {}
   int FeedbackAccordingToRfc8888Count() { return 0; }
   int FeedbackAccordingToTransportCcCount() { return 0; }