| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  Copyright 2016 The WebRTC project authors. All Rights Reserved. | 2  *  Copyright 2016 The WebRTC project authors. All Rights Reserved. | 
| 3  * | 3  * | 
| 4  *  Use of this source code is governed by a BSD-style license | 4  *  Use of this source code is governed by a BSD-style license | 
| 5  *  that can be found in the LICENSE file in the root of the source | 5  *  that can be found in the LICENSE file in the root of the source | 
| 6  *  tree. An additional intellectual property rights grant can be found | 6  *  tree. An additional intellectual property rights grant can be found | 
| 7  *  in the file PATENTS.  All contributing project authors may | 7  *  in the file PATENTS.  All contributing project authors may | 
| 8  *  be found in the AUTHORS file in the root of the source tree. | 8  *  be found in the AUTHORS file in the root of the source tree. | 
| 9  */ | 9  */ | 
| 10 | 10 | 
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 47   } | 47   } | 
| 48 | 48 | 
| 49   SimulatedClock fake_clock_; | 49   SimulatedClock fake_clock_; | 
| 50   const VideoReceiveStream::Config config_; | 50   const VideoReceiveStream::Config config_; | 
| 51   std::unique_ptr<ReceiveStatisticsProxy> statistics_proxy_; | 51   std::unique_ptr<ReceiveStatisticsProxy> statistics_proxy_; | 
| 52 }; | 52 }; | 
| 53 | 53 | 
| 54 TEST_F(ReceiveStatisticsProxyTest, OnDecodedFrameIncreasesFramesDecoded) { | 54 TEST_F(ReceiveStatisticsProxyTest, OnDecodedFrameIncreasesFramesDecoded) { | 
| 55   EXPECT_EQ(0u, statistics_proxy_->GetStats().frames_decoded); | 55   EXPECT_EQ(0u, statistics_proxy_->GetStats().frames_decoded); | 
| 56   for (uint32_t i = 1; i <= 3; ++i) { | 56   for (uint32_t i = 1; i <= 3; ++i) { | 
| 57     statistics_proxy_->OnDecodedFrame(rtc::Optional<uint8_t>()); | 57     statistics_proxy_->OnDecodedFrame(); | 
| 58     EXPECT_EQ(i, statistics_proxy_->GetStats().frames_decoded); | 58     EXPECT_EQ(i, statistics_proxy_->GetStats().frames_decoded); | 
| 59   } | 59   } | 
| 60 } | 60 } | 
| 61 | 61 | 
| 62 TEST_F(ReceiveStatisticsProxyTest, OnDecodedFrameWithQpResetsFramesDecoded) { |  | 
| 63   EXPECT_EQ(0u, statistics_proxy_->GetStats().frames_decoded); |  | 
| 64   for (uint32_t i = 1; i <= 3; ++i) { |  | 
| 65     statistics_proxy_->OnDecodedFrame(rtc::Optional<uint8_t>()); |  | 
| 66     EXPECT_EQ(i, statistics_proxy_->GetStats().frames_decoded); |  | 
| 67   } |  | 
| 68   statistics_proxy_->OnDecodedFrame(rtc::Optional<uint8_t>(1u)); |  | 
| 69   EXPECT_EQ(1u, statistics_proxy_->GetStats().frames_decoded); |  | 
| 70 } |  | 
| 71 |  | 
| 72 TEST_F(ReceiveStatisticsProxyTest, OnDecodedFrameIncreasesQpSum) { |  | 
| 73   EXPECT_EQ(rtc::Optional<uint64_t>(), statistics_proxy_->GetStats().qp_sum); |  | 
| 74   statistics_proxy_->OnDecodedFrame(rtc::Optional<uint8_t>(3u)); |  | 
| 75   EXPECT_EQ(rtc::Optional<uint64_t>(3u), statistics_proxy_->GetStats().qp_sum); |  | 
| 76   statistics_proxy_->OnDecodedFrame(rtc::Optional<uint8_t>(127u)); |  | 
| 77   EXPECT_EQ(rtc::Optional<uint64_t>(130u), |  | 
| 78             statistics_proxy_->GetStats().qp_sum); |  | 
| 79 } |  | 
| 80 |  | 
| 81 TEST_F(ReceiveStatisticsProxyTest, OnDecodedFrameWithoutQpQpSumWontExist) { |  | 
| 82   EXPECT_EQ(rtc::Optional<uint64_t>(), statistics_proxy_->GetStats().qp_sum); |  | 
| 83   statistics_proxy_->OnDecodedFrame(rtc::Optional<uint8_t>()); |  | 
| 84   EXPECT_EQ(rtc::Optional<uint64_t>(), statistics_proxy_->GetStats().qp_sum); |  | 
| 85 } |  | 
| 86 |  | 
| 87 TEST_F(ReceiveStatisticsProxyTest, OnDecodedFrameWithoutQpResetsQpSum) { |  | 
| 88   EXPECT_EQ(rtc::Optional<uint64_t>(), statistics_proxy_->GetStats().qp_sum); |  | 
| 89   statistics_proxy_->OnDecodedFrame(rtc::Optional<uint8_t>(3u)); |  | 
| 90   EXPECT_EQ(rtc::Optional<uint64_t>(3u), statistics_proxy_->GetStats().qp_sum); |  | 
| 91   statistics_proxy_->OnDecodedFrame(rtc::Optional<uint8_t>()); |  | 
| 92   EXPECT_EQ(rtc::Optional<uint64_t>(), statistics_proxy_->GetStats().qp_sum); |  | 
| 93 } |  | 
| 94 |  | 
| 95 TEST_F(ReceiveStatisticsProxyTest, OnRenderedFrameIncreasesFramesRendered) { | 62 TEST_F(ReceiveStatisticsProxyTest, OnRenderedFrameIncreasesFramesRendered) { | 
| 96   EXPECT_EQ(0u, statistics_proxy_->GetStats().frames_rendered); | 63   EXPECT_EQ(0u, statistics_proxy_->GetStats().frames_rendered); | 
| 97   webrtc::VideoFrame frame( | 64   webrtc::VideoFrame frame( | 
| 98       webrtc::I420Buffer::Create(1, 1), 0, 0, webrtc::kVideoRotation_0); | 65       webrtc::I420Buffer::Create(1, 1), 0, 0, webrtc::kVideoRotation_0); | 
| 99   for (uint32_t i = 1; i <= 3; ++i) { | 66   for (uint32_t i = 1; i <= 3; ++i) { | 
| 100     statistics_proxy_->OnRenderedFrame(frame); | 67     statistics_proxy_->OnRenderedFrame(frame); | 
| 101     EXPECT_EQ(i, statistics_proxy_->GetStats().frames_rendered); | 68     EXPECT_EQ(i, statistics_proxy_->GetStats().frames_rendered); | 
| 102   } | 69   } | 
| 103 } | 70 } | 
| 104 | 71 | 
| (...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 389   codec_info.codecType = kVideoCodecVP8; | 356   codec_info.codecType = kVideoCodecVP8; | 
| 390 | 357 | 
| 391   for (int i = 0; i < kMinRequiredSamples; ++i) | 358   for (int i = 0; i < kMinRequiredSamples; ++i) | 
| 392     statistics_proxy_->OnPreDecode(encoded_image, &codec_info); | 359     statistics_proxy_->OnPreDecode(encoded_image, &codec_info); | 
| 393 | 360 | 
| 394   statistics_proxy_.reset(); | 361   statistics_proxy_.reset(); | 
| 395   EXPECT_EQ(0, metrics::NumSamples("WebRTC.Video.Decoded.Vp8.Qp")); | 362   EXPECT_EQ(0, metrics::NumSamples("WebRTC.Video.Decoded.Vp8.Qp")); | 
| 396 } | 363 } | 
| 397 | 364 | 
| 398 }  // namespace webrtc | 365 }  // namespace webrtc | 
| OLD | NEW | 
|---|