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 <stdio.h> | 10 #include <stdio.h> |
11 | 11 |
12 #include "testing/gtest/include/gtest/gtest.h" | 12 #include "testing/gtest/include/gtest/gtest.h" |
13 #include "webrtc/video/video_quality_test.h" | 13 #include "webrtc/video/video_quality_test.h" |
14 | 14 |
15 namespace webrtc { | 15 namespace webrtc { |
16 | 16 |
17 static const int kFullStackTestDurationSecs = 60; | 17 static const int kFullStackTestDurationSecs = 60; |
18 | 18 |
19 class FullStackTest : public VideoQualityTest { | 19 class FullStackTest : public VideoQualityTest { |
20 public: | 20 public: |
21 void RunTest(const VideoQualityTest::Params ¶ms) { | 21 void RunTest(const VideoQualityTest::Params ¶ms) { |
22 RunWithAnalyzer(params); | 22 RunWithAnalyzer(params); |
23 } | 23 } |
| 24 |
| 25 void ForemanCifWithoutPacketLoss(const std::string& video_codec) { |
| 26 // TODO(pbos): Decide on psnr/ssim thresholds for foreman_cif. |
| 27 VideoQualityTest::Params foreman_cif = { |
| 28 {352, 288, 30, 700000, 700000, 700000, video_codec, 1}, |
| 29 {"foreman_cif"}, |
| 30 {}, |
| 31 {"foreman_cif_net_delay_0_0_plr_0_" + video_codec, 0.0, 0.0, |
| 32 kFullStackTestDurationSecs}}; |
| 33 RunTest(foreman_cif); |
| 34 } |
| 35 |
| 36 void ForemanCifPlr5(const std::string& video_codec) { |
| 37 VideoQualityTest::Params foreman_cif = { |
| 38 {352, 288, 30, 30000, 500000, 2000000, video_codec, 1}, |
| 39 {"foreman_cif"}, |
| 40 {}, |
| 41 {"foreman_cif_delay_50_0_plr_5_" + video_codec, 0.0, 0.0, |
| 42 kFullStackTestDurationSecs}}; |
| 43 foreman_cif.pipe.loss_percent = 5; |
| 44 foreman_cif.pipe.queue_delay_ms = 50; |
| 45 RunTest(foreman_cif); |
| 46 } |
24 }; | 47 }; |
25 | 48 |
26 // VideoQualityTest::Params params = { | 49 // VideoQualityTest::Params params = { |
27 // { ... }, // Common. | 50 // { ... }, // Common. |
28 // { ... }, // Video-specific settings. | 51 // { ... }, // Video-specific settings. |
29 // { ... }, // Screenshare-specific settings. | 52 // { ... }, // Screenshare-specific settings. |
30 // { ... }, // Analyzer settings. | 53 // { ... }, // Analyzer settings. |
31 // pipe, // FakeNetworkPipe::Config | 54 // pipe, // FakeNetworkPipe::Config |
32 // { ... }, // Spatial scalability. | 55 // { ... }, // Spatial scalability. |
33 // logs // bool | 56 // logs // bool |
34 // }; | 57 // }; |
35 | 58 |
| 59 TEST_F(FullStackTest, ForemanCifWithoutPacketLossVp9) { |
| 60 ForemanCifWithoutPacketLoss("VP9"); |
| 61 } |
| 62 |
| 63 TEST_F(FullStackTest, ForemanCifPlr5Vp9) { |
| 64 ForemanCifPlr5("VP9"); |
| 65 } |
| 66 |
36 TEST_F(FullStackTest, ParisQcifWithoutPacketLoss) { | 67 TEST_F(FullStackTest, ParisQcifWithoutPacketLoss) { |
37 VideoQualityTest::Params paris_qcif = { | 68 VideoQualityTest::Params paris_qcif = { |
38 {176, 144, 30, 300000, 300000, 300000, "VP8", 1}, | 69 {176, 144, 30, 300000, 300000, 300000, "VP8", 1}, |
39 {"paris_qcif"}, | 70 {"paris_qcif"}, |
40 {}, | 71 {}, |
41 {"net_delay_0_0_plr_0", 36.0, 0.96, kFullStackTestDurationSecs}}; | 72 {"net_delay_0_0_plr_0", 36.0, 0.96, kFullStackTestDurationSecs}}; |
42 RunTest(paris_qcif); | 73 RunTest(paris_qcif); |
43 } | 74 } |
44 | 75 |
45 TEST_F(FullStackTest, ForemanCifWithoutPacketLoss) { | 76 TEST_F(FullStackTest, ForemanCifWithoutPacketLoss) { |
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
174 {1850, 1110, 5, 50000, 200000, 2000000, "VP9", 1, 0, 400000}, | 205 {1850, 1110, 5, 50000, 200000, 2000000, "VP9", 1, 0, 400000}, |
175 {}, | 206 {}, |
176 {true, 10}, | 207 {true, 10}, |
177 {"screenshare_slides_vp9_2sl", 0.0, 0.0, kFullStackTestDurationSecs}, | 208 {"screenshare_slides_vp9_2sl", 0.0, 0.0, kFullStackTestDurationSecs}, |
178 {}, | 209 {}, |
179 false, | 210 false, |
180 {std::vector<VideoStream>(), 0, 2, 1}}; | 211 {std::vector<VideoStream>(), 0, 2, 1}}; |
181 RunTest(screenshare); | 212 RunTest(screenshare); |
182 } | 213 } |
183 } // namespace webrtc | 214 } // namespace webrtc |
OLD | NEW |