Log average decoded and rendered framerate for a VideoReceiveStream.

Bug: webrtc:10655
Change-Id: I018b7c254a8e7db6b624c469df8289ed0f110f71
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/137516
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28019}
diff --git a/video/receive_statistics_proxy.cc b/video/receive_statistics_proxy.cc
index ba327cc..9be6933 100644
--- a/video/receive_statistics_proxy.cc
+++ b/video/receive_statistics_proxy.cc
@@ -179,10 +179,12 @@
         (clock_->TimeInMilliseconds() - *first_decoded_frame_time_ms_);
     if (elapsed_ms >=
         metrics::kMinRunTimeInSeconds * rtc::kNumMillisecsPerSec) {
-      RTC_HISTOGRAM_COUNTS_100(
-          "WebRTC.Video.DecodedFramesPerSecond",
-          static_cast<int>((stats_.frames_decoded * 1000.0f / elapsed_ms) +
-                           0.5f));
+      int decoded_fps = static_cast<int>(
+          (stats_.frames_decoded * 1000.0f / elapsed_ms) + 0.5f);
+      RTC_HISTOGRAM_COUNTS_100("WebRTC.Video.DecodedFramesPerSecond",
+                               decoded_fps);
+      log_stream << "WebRTC.Video.DecodedFramesPerSecond " << decoded_fps
+                 << '\n';
 
       const uint32_t frames_rendered = stats_.frames_rendered;
       if (frames_rendered > 0) {
@@ -202,8 +204,10 @@
   const int kMinRequiredSamples = 200;
   int samples = static_cast<int>(render_fps_tracker_.TotalSampleCount());
   if (samples >= kMinRequiredSamples) {
+    int rendered_fps = round(render_fps_tracker_.ComputeTotalRate());
     RTC_HISTOGRAM_COUNTS_100("WebRTC.Video.RenderFramesPerSecond",
-                             round(render_fps_tracker_.ComputeTotalRate()));
+                             rendered_fps);
+    log_stream << "WebRTC.Video.RenderFramesPerSecond " << rendered_fps << '\n';
     RTC_HISTOGRAM_COUNTS_100000(
         "WebRTC.Video.RenderSqrtPixelsPerSecond",
         round(render_pixel_tracker_.ComputeTotalRate()));