From aaf3cb3adb618a9f9b14931876b9050201396bee Mon Sep 17 00:00:00 2001 From: Ilya Nikolaevskiy Date: Thu, 7 Mar 2019 16:27:03 +0100 Subject: [PATCH] Tune vp9 screenshare bitrate and framerate of spatial layers VP9 screenshare is not used currently, and with these values according to local testing with screenshare_loopback, we get performance not worse than current vp8 settings for similar uplink and downlink values. Bug: webrtc:10257 Change-Id: Icabac04fbd3d616412bbae59291a1fc026d0a504 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/126226 Commit-Queue: Ilya Nikolaevskiy Reviewed-by: Johannes Kron Cr-Commit-Position: refs/heads/master@{#27023} --- modules/video_coding/codecs/vp9/svc_config.cc | 8 ++++---- modules/video_coding/codecs/vp9/svc_config_unittest.cc | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/modules/video_coding/codecs/vp9/svc_config.cc b/modules/video_coding/codecs/vp9/svc_config.cc index 138822ab92..a3bf56d90c 100644 --- a/modules/video_coding/codecs/vp9/svc_config.cc +++ b/modules/video_coding/codecs/vp9/svc_config.cc @@ -23,10 +23,10 @@ namespace { const size_t kMinVp9SvcBitrateKbps = 30; const size_t kMaxNumLayersForScreenSharing = 3; -const float kMaxScreenSharingLayerFramerateFps[] = {5.0, 5.0, 30.0}; -const size_t kMinScreenSharingLayerBitrateKbps[] = {30, 150, 500}; -const size_t kTargetScreenSharingLayerBitrateKbps[] = {150, 350, 1000}; -const size_t kMaxScreenSharingLayerBitrateKbps[] = {200, 500, 1000}; +const float kMaxScreenSharingLayerFramerateFps[] = {5.0, 10.0, 30.0}; +const size_t kMinScreenSharingLayerBitrateKbps[] = {30, 200, 500}; +const size_t kTargetScreenSharingLayerBitrateKbps[] = {150, 350, 950}; +const size_t kMaxScreenSharingLayerBitrateKbps[] = {250, 500, 950}; } // namespace diff --git a/modules/video_coding/codecs/vp9/svc_config_unittest.cc b/modules/video_coding/codecs/vp9/svc_config_unittest.cc index 05802eb5b0..489f1b0cd8 100644 --- a/modules/video_coding/codecs/vp9/svc_config_unittest.cc +++ b/modules/video_coding/codecs/vp9/svc_config_unittest.cc @@ -54,7 +54,7 @@ TEST(SvcConfig, ScreenSharing) { const SpatialLayer& layer = spatial_layers[i]; EXPECT_EQ(layer.width, 1920); EXPECT_EQ(layer.height, 1080); - EXPECT_EQ(layer.maxFramerate, (i < 2) ? 5 : 30); + EXPECT_EQ(layer.maxFramerate, (i < 1) ? 5 : (i < 2 ? 10 : 30)); EXPECT_EQ(layer.numberOfTemporalLayers, 1); EXPECT_LE(layer.minBitrate, layer.maxBitrate); EXPECT_LE(layer.minBitrate, layer.targetBitrate);