| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2  *  Copyright (c) 2012 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 710 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 721   // Metrics for rate control. | 721   // Metrics for rate control. | 
| 722   RateControlMetrics rc_metrics[1]; | 722   RateControlMetrics rc_metrics[1]; | 
| 723   SetRateControlMetrics(rc_metrics, 0, 0, 40, 20, 10, 20, 0, 1); | 723   SetRateControlMetrics(rc_metrics, 0, 0, 40, 20, 10, 20, 0, 1); | 
| 724   ProcessFramesAndVerify(quality_metrics, | 724   ProcessFramesAndVerify(quality_metrics, | 
| 725                          rate_profile, | 725                          rate_profile, | 
| 726                          process_settings, | 726                          process_settings, | 
| 727                          rc_metrics); | 727                          rc_metrics); | 
| 728 } | 728 } | 
| 729 | 729 | 
| 730 // Run with no packet loss, at low bitrate. | 730 // Run with no packet loss, at low bitrate. | 
| 731 // spatial_resize is on, so expect one resize during the sequence, | 731 // spatial_resize is on, and for this low bitrate expect two resizes during the | 
| 732 // resize happens on delta frame. Expect only one key frame (first frame). | 732 // sequence; first resize is 3/4, second is 1/2 (from original). | 
| 733 TEST_F(VideoProcessorIntegrationTest, | 733 // Resize happens on delta frame. Expect only one key frame (first frame). | 
| 734        DISABLED_ProcessNoLossSpatialResizeFrameDropVP9) { | 734 // Disable for msan, see | 
|  | 735 // https://code.google.com/p/webrtc/issues/detail?id=5110 for details. | 
|  | 736 #if !defined(MEMORY_SANITIZER) | 
|  | 737 TEST_F(VideoProcessorIntegrationTest, ProcessNoLossSpatialResizeFrameDropVP9) { | 
| 735   config_.networking_config.packet_loss_probability = 0; | 738   config_.networking_config.packet_loss_probability = 0; | 
| 736   // Bitrate and frame rate profile. | 739   // Bitrate and frame rate profile. | 
| 737   RateProfile rate_profile; | 740   RateProfile rate_profile; | 
| 738   SetRateProfilePars(&rate_profile, 0, 50, 30, 0); | 741   SetRateProfilePars(&rate_profile, 0, 50, 30, 0); | 
| 739   rate_profile.frame_index_rate_update[1] = kNbrFramesLong + 1; | 742   rate_profile.frame_index_rate_update[1] = kNbrFramesLong + 1; | 
| 740   rate_profile.num_frames = kNbrFramesLong; | 743   rate_profile.num_frames = kNbrFramesLong; | 
| 741   // Codec/network settings. | 744   // Codec/network settings. | 
| 742   CodecConfigPars process_settings; | 745   CodecConfigPars process_settings; | 
| 743   SetCodecParameters(&process_settings, kVideoCodecVP9, 0.0f, -1, | 746   SetCodecParameters(&process_settings, kVideoCodecVP9, 0.0f, -1, | 
| 744                      1, false, false, true, true); | 747                      1, false, false, true, true); | 
| 745   // Metrics for expected quality. | 748   // Metrics for expected quality. | 
| 746   QualityMetrics quality_metrics; | 749   QualityMetrics quality_metrics; | 
| 747   SetQualityMetrics(&quality_metrics, 25.0, 13.0, 0.70, 0.40); | 750   SetQualityMetrics(&quality_metrics, 25.0, 13.0, 0.70, 0.40); | 
| 748   // Metrics for rate control. | 751   // Metrics for rate control. | 
| 749   RateControlMetrics rc_metrics[1]; | 752   RateControlMetrics rc_metrics[1]; | 
| 750   SetRateControlMetrics(rc_metrics, 0, 170, 70, 120, 10, 80, 1, 1); | 753   SetRateControlMetrics(rc_metrics, 0, 180, 70, 130, 15, 80, 2, 1); | 
| 751   ProcessFramesAndVerify(quality_metrics, | 754   ProcessFramesAndVerify(quality_metrics, | 
| 752                          rate_profile, | 755                          rate_profile, | 
| 753                          process_settings, | 756                          process_settings, | 
| 754                          rc_metrics); | 757                          rc_metrics); | 
| 755 } | 758 } | 
|  | 759 #endif | 
| 756 | 760 | 
| 757 // TODO(marpan): Add temporal layer test for VP9, once changes are in | 761 // TODO(marpan): Add temporal layer test for VP9, once changes are in | 
| 758 // vp9 wrapper for this. | 762 // vp9 wrapper for this. | 
| 759 | 763 | 
| 760 // VP8: Run with no packet loss and fixed bitrate. Quality should be very high. | 764 // VP8: Run with no packet loss and fixed bitrate. Quality should be very high. | 
| 761 // One key frame (first frame only) in sequence. Setting |key_frame_interval| | 765 // One key frame (first frame only) in sequence. Setting |key_frame_interval| | 
| 762 // to -1 below means no periodic key frames in test. | 766 // to -1 below means no periodic key frames in test. | 
| 763 TEST_F(VideoProcessorIntegrationTest, ProcessZeroPacketLoss) { | 767 TEST_F(VideoProcessorIntegrationTest, ProcessZeroPacketLoss) { | 
| 764   // Bitrate and frame rate profile. | 768   // Bitrate and frame rate profile. | 
| 765   RateProfile rate_profile; | 769   RateProfile rate_profile; | 
| (...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 955   // Metrics for rate control. | 959   // Metrics for rate control. | 
| 956   RateControlMetrics rc_metrics[2]; | 960   RateControlMetrics rc_metrics[2]; | 
| 957   SetRateControlMetrics(rc_metrics, 0, 0, 20, 30, 10, 10, 0, 1); | 961   SetRateControlMetrics(rc_metrics, 0, 0, 20, 30, 10, 10, 0, 1); | 
| 958   SetRateControlMetrics(rc_metrics, 1, 0, 0, 30, 15, 10, 0, 0); | 962   SetRateControlMetrics(rc_metrics, 1, 0, 0, 30, 15, 10, 0, 0); | 
| 959   ProcessFramesAndVerify(quality_metrics, | 963   ProcessFramesAndVerify(quality_metrics, | 
| 960                          rate_profile, | 964                          rate_profile, | 
| 961                          process_settings, | 965                          process_settings, | 
| 962                          rc_metrics); | 966                          rc_metrics); | 
| 963 } | 967 } | 
| 964 }  // namespace webrtc | 968 }  // namespace webrtc | 
| OLD | NEW | 
|---|