[cleanup] Return struct from VCMTiming::GetTimings

Cleans callers having to initialize TimeDeltas.

Change-Id: Ib00a59bedf05fb82c9fde1d9fdd1e341e2132cb8
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256360
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36292}
diff --git a/modules/video_coding/frame_buffer2.cc b/modules/video_coding/frame_buffer2.cc
index de23981..b4b9c11 100644
--- a/modules/video_coding/frame_buffer2.cc
+++ b/modules/video_coding/frame_buffer2.cc
@@ -596,17 +596,12 @@
   if (!stats_callback_)
     return;
 
-  TimeDelta max_decode = TimeDelta::Zero();
-  TimeDelta current_delay = TimeDelta::Zero();
-  TimeDelta target_delay = TimeDelta::Zero();
-  TimeDelta jitter_buffer = TimeDelta::Zero();
-  TimeDelta min_playout_delay = TimeDelta::Zero();
-  TimeDelta render_delay = TimeDelta::Zero();
-  if (timing_->GetTimings(&max_decode, &current_delay, &target_delay,
-                          &jitter_buffer, &min_playout_delay, &render_delay)) {
+  auto timings = timing_->GetTimings();
+  if (timings.num_decoded_frames > 0) {
     stats_callback_->OnFrameBufferTimingsUpdated(
-        max_decode.ms(), current_delay.ms(), target_delay.ms(),
-        jitter_buffer.ms(), min_playout_delay.ms(), render_delay.ms());
+        timings.max_decode_duration.ms(), timings.current_delay.ms(),
+        timings.target_delay.ms(), timings.jitter_buffer_delay.ms(),
+        timings.min_playout_delay.ms(), timings.render_delay.ms());
   }
 }