OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 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 #include <algorithm> | 10 #include <algorithm> |
(...skipping 13 matching lines...) Expand all Loading... |
24 #include "webrtc/common_video/include/frame_callback.h" | 24 #include "webrtc/common_video/include/frame_callback.h" |
25 #include "webrtc/modules/include/module_common_types.h" | 25 #include "webrtc/modules/include/module_common_types.h" |
26 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp.h" | 26 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp.h" |
27 #include "webrtc/modules/rtp_rtcp/source/byte_io.h" | 27 #include "webrtc/modules/rtp_rtcp/source/byte_io.h" |
28 #include "webrtc/modules/rtp_rtcp/source/rtcp_utility.h" | 28 #include "webrtc/modules/rtp_rtcp/source/rtcp_utility.h" |
29 #include "webrtc/modules/video_coding/codecs/h264/include/h264.h" | 29 #include "webrtc/modules/video_coding/codecs/h264/include/h264.h" |
30 #include "webrtc/modules/video_coding/codecs/vp8/include/vp8.h" | 30 #include "webrtc/modules/video_coding/codecs/vp8/include/vp8.h" |
31 #include "webrtc/modules/video_coding/codecs/vp9/include/vp9.h" | 31 #include "webrtc/modules/video_coding/codecs/vp9/include/vp9.h" |
32 #include "webrtc/modules/video_coding/include/video_coding_defines.h" | 32 #include "webrtc/modules/video_coding/include/video_coding_defines.h" |
33 #include "webrtc/system_wrappers/include/metrics.h" | 33 #include "webrtc/system_wrappers/include/metrics.h" |
| 34 #include "webrtc/system_wrappers/include/metrics_default.h" |
34 #include "webrtc/system_wrappers/include/sleep.h" | 35 #include "webrtc/system_wrappers/include/sleep.h" |
35 #include "webrtc/test/call_test.h" | 36 #include "webrtc/test/call_test.h" |
36 #include "webrtc/test/direct_transport.h" | 37 #include "webrtc/test/direct_transport.h" |
37 #include "webrtc/test/encoder_settings.h" | 38 #include "webrtc/test/encoder_settings.h" |
38 #include "webrtc/test/fake_decoder.h" | 39 #include "webrtc/test/fake_decoder.h" |
39 #include "webrtc/test/fake_encoder.h" | 40 #include "webrtc/test/fake_encoder.h" |
40 #include "webrtc/test/frame_generator.h" | 41 #include "webrtc/test/frame_generator.h" |
41 #include "webrtc/test/frame_generator_capturer.h" | 42 #include "webrtc/test/frame_generator_capturer.h" |
42 #include "webrtc/test/histogram.h" | |
43 #include "webrtc/test/null_transport.h" | 43 #include "webrtc/test/null_transport.h" |
44 #include "webrtc/test/rtcp_packet_parser.h" | 44 #include "webrtc/test/rtcp_packet_parser.h" |
45 #include "webrtc/test/rtp_rtcp_observer.h" | 45 #include "webrtc/test/rtp_rtcp_observer.h" |
46 #include "webrtc/test/testsupport/fileutils.h" | 46 #include "webrtc/test/testsupport/fileutils.h" |
47 #include "webrtc/test/testsupport/perf_test.h" | 47 #include "webrtc/test/testsupport/perf_test.h" |
48 #include "webrtc/video_encoder.h" | 48 #include "webrtc/video_encoder.h" |
49 | 49 |
50 namespace webrtc { | 50 namespace webrtc { |
51 | 51 |
52 static const int kSilenceTimeoutMs = 2000; | 52 static const int kSilenceTimeoutMs = 2000; |
(...skipping 1917 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1970 | 1970 |
1971 rtc::CriticalSection crit_; | 1971 rtc::CriticalSection crit_; |
1972 uint64_t sent_rtp_packets_; | 1972 uint64_t sent_rtp_packets_; |
1973 uint16_t dropped_rtp_packet_ GUARDED_BY(&crit_); | 1973 uint16_t dropped_rtp_packet_ GUARDED_BY(&crit_); |
1974 bool dropped_rtp_packet_requested_ GUARDED_BY(&crit_); | 1974 bool dropped_rtp_packet_requested_ GUARDED_BY(&crit_); |
1975 std::vector<VideoReceiveStream*> receive_streams_; | 1975 std::vector<VideoReceiveStream*> receive_streams_; |
1976 VideoSendStream* send_stream_; | 1976 VideoSendStream* send_stream_; |
1977 int64_t start_runtime_ms_; | 1977 int64_t start_runtime_ms_; |
1978 } test; | 1978 } test; |
1979 | 1979 |
1980 test::ClearHistograms(); | 1980 metrics::Reset(); |
1981 RunBaseTest(&test); | 1981 RunBaseTest(&test); |
1982 | 1982 |
1983 EXPECT_EQ(1, test::NumHistogramSamples( | 1983 EXPECT_EQ( |
1984 "WebRTC.Video.UniqueNackRequestsSentInPercent")); | 1984 1, metrics::NumSamples("WebRTC.Video.UniqueNackRequestsSentInPercent")); |
1985 EXPECT_EQ(1, test::NumHistogramSamples( | 1985 EXPECT_EQ(1, metrics::NumSamples( |
1986 "WebRTC.Video.UniqueNackRequestsReceivedInPercent")); | 1986 "WebRTC.Video.UniqueNackRequestsReceivedInPercent")); |
1987 EXPECT_GT(test::LastHistogramSample( | 1987 EXPECT_GT(metrics::MinSample("WebRTC.Video.NackPacketsSentPerMinute"), 0); |
1988 "WebRTC.Video.NackPacketsSentPerMinute"), 0); | |
1989 EXPECT_GT(test::LastHistogramSample( | |
1990 "WebRTC.Video.NackPacketsReceivedPerMinute"), 0); | |
1991 } | 1988 } |
1992 | 1989 |
1993 void EndToEndTest::VerifyHistogramStats(bool use_rtx, | 1990 void EndToEndTest::VerifyHistogramStats(bool use_rtx, |
1994 bool use_red, | 1991 bool use_red, |
1995 bool screenshare) { | 1992 bool screenshare) { |
1996 class StatsObserver : public test::EndToEndTest { | 1993 class StatsObserver : public test::EndToEndTest { |
1997 public: | 1994 public: |
1998 StatsObserver(bool use_rtx, bool use_red, bool screenshare) | 1995 StatsObserver(bool use_rtx, bool use_red, bool screenshare) |
1999 : EndToEndTest(kLongTimeoutMs), | 1996 : EndToEndTest(kLongTimeoutMs), |
2000 use_rtx_(use_rtx), | 1997 use_rtx_(use_rtx), |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2068 | 2065 |
2069 const bool use_rtx_; | 2066 const bool use_rtx_; |
2070 const bool use_red_; | 2067 const bool use_red_; |
2071 const bool screenshare_; | 2068 const bool screenshare_; |
2072 const std::unique_ptr<VideoEncoder> vp8_encoder_; | 2069 const std::unique_ptr<VideoEncoder> vp8_encoder_; |
2073 Call* sender_call_; | 2070 Call* sender_call_; |
2074 Call* receiver_call_; | 2071 Call* receiver_call_; |
2075 int64_t start_runtime_ms_; | 2072 int64_t start_runtime_ms_; |
2076 } test(use_rtx, use_red, screenshare); | 2073 } test(use_rtx, use_red, screenshare); |
2077 | 2074 |
2078 test::ClearHistograms(); | 2075 metrics::Reset(); |
2079 RunBaseTest(&test); | 2076 RunBaseTest(&test); |
2080 | 2077 |
2081 // Delete the call for Call stats to be reported. | 2078 // Delete the call for Call stats to be reported. |
2082 sender_call_.reset(); | 2079 sender_call_.reset(); |
2083 receiver_call_.reset(); | 2080 receiver_call_.reset(); |
2084 | 2081 |
2085 std::string video_prefix = | 2082 std::string video_prefix = |
2086 screenshare ? "WebRTC.Video.Screenshare." : "WebRTC.Video."; | 2083 screenshare ? "WebRTC.Video.Screenshare." : "WebRTC.Video."; |
2087 | 2084 |
2088 // Verify that stats have been updated once. | 2085 // Verify that stats have been updated once. |
| 2086 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Call.VideoBitrateReceivedInKbps")); |
| 2087 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Call.RtcpBitrateReceivedInBps")); |
| 2088 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Call.BitrateReceivedInKbps")); |
| 2089 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Call.EstimatedSendBitrateInKbps")); |
| 2090 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Call.PacerBitrateInKbps")); |
| 2091 |
| 2092 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.NackPacketsSentPerMinute")); |
| 2093 EXPECT_EQ(1, |
| 2094 metrics::NumSamples(video_prefix + "NackPacketsReceivedPerMinute")); |
| 2095 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.FirPacketsSentPerMinute")); |
| 2096 EXPECT_EQ(1, |
| 2097 metrics::NumSamples(video_prefix + "FirPacketsReceivedPerMinute")); |
| 2098 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.PliPacketsSentPerMinute")); |
| 2099 EXPECT_EQ(1, |
| 2100 metrics::NumSamples(video_prefix + "PliPacketsReceivedPerMinute")); |
| 2101 |
| 2102 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "KeyFramesSentInPermille")); |
| 2103 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.KeyFramesReceivedInPermille")); |
| 2104 |
| 2105 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "SentPacketsLostInPercent")); |
| 2106 EXPECT_EQ(1, |
| 2107 metrics::NumSamples("WebRTC.Video.ReceivedPacketsLostInPercent")); |
| 2108 |
| 2109 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "InputWidthInPixels")); |
| 2110 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "InputHeightInPixels")); |
| 2111 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "SentWidthInPixels")); |
| 2112 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "SentHeightInPixels")); |
| 2113 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.ReceivedWidthInPixels")); |
| 2114 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.ReceivedHeightInPixels")); |
| 2115 |
| 2116 EXPECT_EQ(1, metrics::NumEvents( |
| 2117 video_prefix + "InputWidthInPixels", |
| 2118 static_cast<int>(video_encoder_config_.streams[0].width))); |
| 2119 EXPECT_EQ(1, metrics::NumEvents( |
| 2120 video_prefix + "InputHeightInPixels", |
| 2121 static_cast<int>(video_encoder_config_.streams[0].height))); |
| 2122 EXPECT_EQ(1, metrics::NumEvents( |
| 2123 video_prefix + "SentWidthInPixels", |
| 2124 static_cast<int>(video_encoder_config_.streams[0].width))); |
| 2125 EXPECT_EQ(1, metrics::NumEvents( |
| 2126 video_prefix + "SentHeightInPixels", |
| 2127 static_cast<int>(video_encoder_config_.streams[0].height))); |
| 2128 EXPECT_EQ(1, metrics::NumEvents( |
| 2129 "WebRTC.Video.ReceivedWidthInPixels", |
| 2130 static_cast<int>(video_encoder_config_.streams[0].width))); |
| 2131 EXPECT_EQ(1, metrics::NumEvents( |
| 2132 "WebRTC.Video.ReceivedHeightInPixels", |
| 2133 static_cast<int>(video_encoder_config_.streams[0].height))); |
| 2134 |
| 2135 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "InputFramesPerSecond")); |
| 2136 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "SentFramesPerSecond")); |
| 2137 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.DecodedFramesPerSecond")); |
| 2138 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.RenderFramesPerSecond")); |
| 2139 |
| 2140 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.JitterBufferDelayInMs")); |
| 2141 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.TargetDelayInMs")); |
| 2142 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.CurrentDelayInMs")); |
| 2143 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.OnewayDelayInMs")); |
| 2144 |
| 2145 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.RenderSqrtPixelsPerSecond")); |
| 2146 |
| 2147 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "EncodeTimeInMs")); |
| 2148 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.DecodeTimeInMs")); |
| 2149 |
| 2150 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "BitrateSentInKbps")); |
| 2151 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.BitrateReceivedInKbps")); |
| 2152 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "MediaBitrateSentInKbps")); |
| 2153 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.MediaBitrateReceivedInKbps")); |
| 2154 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "PaddingBitrateSentInKbps")); |
| 2155 EXPECT_EQ(1, |
| 2156 metrics::NumSamples("WebRTC.Video.PaddingBitrateReceivedInKbps")); |
2089 EXPECT_EQ( | 2157 EXPECT_EQ( |
2090 1, test::NumHistogramSamples("WebRTC.Call.VideoBitrateReceivedInKbps")); | 2158 1, metrics::NumSamples(video_prefix + "RetransmittedBitrateSentInKbps")); |
2091 EXPECT_EQ(1, | 2159 EXPECT_EQ(1, metrics::NumSamples( |
2092 test::NumHistogramSamples("WebRTC.Call.RtcpBitrateReceivedInBps")); | 2160 "WebRTC.Video.RetransmittedBitrateReceivedInKbps")); |
2093 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Call.BitrateReceivedInKbps")); | |
2094 EXPECT_EQ( | |
2095 1, test::NumHistogramSamples("WebRTC.Call.EstimatedSendBitrateInKbps")); | |
2096 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Call.PacerBitrateInKbps")); | |
2097 | 2161 |
2098 EXPECT_EQ(1, test::NumHistogramSamples( | 2162 EXPECT_EQ(1, metrics::NumSamples("WebRTC.Video.SendDelayInMs")); |
2099 "WebRTC.Video.NackPacketsSentPerMinute")); | 2163 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "SendSideDelayInMs")); |
2100 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + | 2164 EXPECT_EQ(1, metrics::NumSamples(video_prefix + "SendSideDelayMaxInMs")); |
2101 "NackPacketsReceivedPerMinute")); | |
2102 EXPECT_EQ(1, test::NumHistogramSamples( | |
2103 "WebRTC.Video.FirPacketsSentPerMinute")); | |
2104 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + | |
2105 "FirPacketsReceivedPerMinute")); | |
2106 EXPECT_EQ(1, test::NumHistogramSamples( | |
2107 "WebRTC.Video.PliPacketsSentPerMinute")); | |
2108 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + | |
2109 "PliPacketsReceivedPerMinute")); | |
2110 | |
2111 EXPECT_EQ( | |
2112 1, test::NumHistogramSamples(video_prefix + "KeyFramesSentInPermille")); | |
2113 EXPECT_EQ(1, test::NumHistogramSamples( | |
2114 "WebRTC.Video.KeyFramesReceivedInPermille")); | |
2115 | |
2116 EXPECT_EQ( | |
2117 1, test::NumHistogramSamples(video_prefix + "SentPacketsLostInPercent")); | |
2118 EXPECT_EQ(1, test::NumHistogramSamples( | |
2119 "WebRTC.Video.ReceivedPacketsLostInPercent")); | |
2120 | |
2121 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + "InputWidthInPixels")); | |
2122 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + "InputHeightInPixels")); | |
2123 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + "SentWidthInPixels")); | |
2124 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + "SentHeightInPixels")); | |
2125 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Video.ReceivedWidthInPixels")); | |
2126 EXPECT_EQ(1, | |
2127 test::NumHistogramSamples("WebRTC.Video.ReceivedHeightInPixels")); | |
2128 | |
2129 EXPECT_EQ(static_cast<int>(video_encoder_config_.streams[0].width), | |
2130 test::LastHistogramSample(video_prefix + "InputWidthInPixels")); | |
2131 EXPECT_EQ(static_cast<int>(video_encoder_config_.streams[0].height), | |
2132 test::LastHistogramSample(video_prefix + "InputHeightInPixels")); | |
2133 EXPECT_EQ(static_cast<int>(video_encoder_config_.streams[0].width), | |
2134 test::LastHistogramSample(video_prefix + "SentWidthInPixels")); | |
2135 EXPECT_EQ(static_cast<int>(video_encoder_config_.streams[0].height), | |
2136 test::LastHistogramSample(video_prefix + "SentHeightInPixels")); | |
2137 EXPECT_EQ(static_cast<int>(video_encoder_config_.streams[0].width), | |
2138 test::LastHistogramSample("WebRTC.Video.ReceivedWidthInPixels")); | |
2139 EXPECT_EQ(static_cast<int>(video_encoder_config_.streams[0].height), | |
2140 test::LastHistogramSample("WebRTC.Video.ReceivedHeightInPixels")); | |
2141 | |
2142 EXPECT_EQ(1, | |
2143 test::NumHistogramSamples(video_prefix + "InputFramesPerSecond")); | |
2144 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + "SentFramesPerSecond")); | |
2145 EXPECT_EQ(1, test::NumHistogramSamples( | |
2146 "WebRTC.Video.DecodedFramesPerSecond")); | |
2147 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Video.RenderFramesPerSecond")); | |
2148 | |
2149 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Video.JitterBufferDelayInMs")); | |
2150 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Video.TargetDelayInMs")); | |
2151 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Video.CurrentDelayInMs")); | |
2152 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Video.OnewayDelayInMs")); | |
2153 EXPECT_EQ( | |
2154 1, test::NumHistogramSamples("WebRTC.Video.RenderSqrtPixelsPerSecond")); | |
2155 | |
2156 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + "EncodeTimeInMs")); | |
2157 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Video.DecodeTimeInMs")); | |
2158 | |
2159 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + "BitrateSentInKbps")); | |
2160 EXPECT_EQ(1, test::NumHistogramSamples( | |
2161 "WebRTC.Video.BitrateReceivedInKbps")); | |
2162 EXPECT_EQ(1, | |
2163 test::NumHistogramSamples(video_prefix + "MediaBitrateSentInKbps")); | |
2164 EXPECT_EQ(1, test::NumHistogramSamples( | |
2165 "WebRTC.Video.MediaBitrateReceivedInKbps")); | |
2166 EXPECT_EQ( | |
2167 1, test::NumHistogramSamples(video_prefix + "PaddingBitrateSentInKbps")); | |
2168 EXPECT_EQ(1, test::NumHistogramSamples( | |
2169 "WebRTC.Video.PaddingBitrateReceivedInKbps")); | |
2170 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + | |
2171 "RetransmittedBitrateSentInKbps")); | |
2172 EXPECT_EQ(1, test::NumHistogramSamples( | |
2173 "WebRTC.Video.RetransmittedBitrateReceivedInKbps")); | |
2174 | |
2175 EXPECT_EQ(1, test::NumHistogramSamples(video_prefix + "SendSideDelayInMs")); | |
2176 EXPECT_EQ(1, | |
2177 test::NumHistogramSamples(video_prefix + "SendSideDelayMaxInMs")); | |
2178 EXPECT_EQ(1, test::NumHistogramSamples("WebRTC.Video.SendDelayInMs")); | |
2179 | 2165 |
2180 int num_rtx_samples = use_rtx ? 1 : 0; | 2166 int num_rtx_samples = use_rtx ? 1 : 0; |
2181 EXPECT_EQ(num_rtx_samples, test::NumHistogramSamples( | 2167 EXPECT_EQ(num_rtx_samples, |
2182 "WebRTC.Video.RtxBitrateSentInKbps")); | 2168 metrics::NumSamples("WebRTC.Video.RtxBitrateSentInKbps")); |
2183 EXPECT_EQ(num_rtx_samples, test::NumHistogramSamples( | 2169 EXPECT_EQ(num_rtx_samples, |
2184 "WebRTC.Video.RtxBitrateReceivedInKbps")); | 2170 metrics::NumSamples("WebRTC.Video.RtxBitrateReceivedInKbps")); |
2185 | 2171 |
2186 int num_red_samples = use_red ? 1 : 0; | 2172 int num_red_samples = use_red ? 1 : 0; |
2187 EXPECT_EQ(num_red_samples, test::NumHistogramSamples( | 2173 EXPECT_EQ(num_red_samples, |
2188 "WebRTC.Video.FecBitrateSentInKbps")); | 2174 metrics::NumSamples("WebRTC.Video.FecBitrateSentInKbps")); |
2189 EXPECT_EQ(num_red_samples, test::NumHistogramSamples( | 2175 EXPECT_EQ(num_red_samples, |
2190 "WebRTC.Video.FecBitrateReceivedInKbps")); | 2176 metrics::NumSamples("WebRTC.Video.FecBitrateReceivedInKbps")); |
2191 EXPECT_EQ(num_red_samples, test::NumHistogramSamples( | 2177 EXPECT_EQ(num_red_samples, |
2192 "WebRTC.Video.ReceivedFecPacketsInPercent")); | 2178 metrics::NumSamples("WebRTC.Video.ReceivedFecPacketsInPercent")); |
2193 } | 2179 } |
2194 | 2180 |
2195 TEST_F(EndToEndTest, VerifyHistogramStatsWithRtx) { | 2181 TEST_F(EndToEndTest, VerifyHistogramStatsWithRtx) { |
2196 const bool kEnabledRtx = true; | 2182 const bool kEnabledRtx = true; |
2197 const bool kEnabledRed = false; | 2183 const bool kEnabledRed = false; |
2198 const bool kScreenshare = false; | 2184 const bool kScreenshare = false; |
2199 VerifyHistogramStats(kEnabledRtx, kEnabledRed, kScreenshare); | 2185 VerifyHistogramStats(kEnabledRtx, kEnabledRed, kScreenshare); |
2200 } | 2186 } |
2201 | 2187 |
2202 TEST_F(EndToEndTest, VerifyHistogramStatsWithRed) { | 2188 TEST_F(EndToEndTest, VerifyHistogramStatsWithRed) { |
(...skipping 1300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3503 private: | 3489 private: |
3504 bool video_observed_; | 3490 bool video_observed_; |
3505 bool audio_observed_; | 3491 bool audio_observed_; |
3506 SequenceNumberUnwrapper unwrapper_; | 3492 SequenceNumberUnwrapper unwrapper_; |
3507 std::set<int64_t> received_packet_ids_; | 3493 std::set<int64_t> received_packet_ids_; |
3508 } test; | 3494 } test; |
3509 | 3495 |
3510 RunBaseTest(&test); | 3496 RunBaseTest(&test); |
3511 } | 3497 } |
3512 } // namespace webrtc | 3498 } // namespace webrtc |
OLD | NEW |