Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(14)

Issue 2529073003: Fix perf regression in screenshare temporal layer bitrate allocation (Closed)

Created:
4 years ago by sprang_webrtc
Modified:
4 years ago
Reviewers:
danilchap
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com, zhengzhonghou_agora.io, video-team_agora.io, stefan-webrtc, mflodman
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Fix perf regression in screenshare temporal layer bitrate allocation A recent cl (https://codereview.webrtc.org/2510583002) introduced an issue where temporal layers may return incorrect bitrates, given that they are stateful and that the GetPreferredBitrateBps is called. The fix is to use a temporary simulcast rate allocator instance, without temporal layers, and get the preferred bitrate from that. Additionally, some regression in bitrate allocated stems from overly often reconfiguring the encoder, which yields suboptimal rate control. The fix here is to limit encoder updates to when values have actually changed. As a bonus, dchecks added by this cl found a bug in the (unused) RealtimeTemporalLayers implementation. Fixed that as well. BUG=webrtc:6301, chromium:666654 Committed: https://crrev.com/c7805dbd0ea99df91ed4c4a7fccbfeab5bafd6bc Cr-Commit-Position: refs/heads/master@{#15250}

Patch Set 1 #

Patch Set 2 : Fixed bug in (unused) RealtimeTemporalLayers #

Total comments: 4

Patch Set 3 : doh #

Patch Set 4 : Fixed incorrect test case #

Patch Set 5 : Addressed comments #

Patch Set 6 : Yet another failing test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+65 lines, -25 lines) Patch
M webrtc/modules/video_coding/codecs/vp8/realtime_temporal_layers.cc View 1 1 chunk +3 lines, -3 lines 0 comments Download
M webrtc/modules/video_coding/codecs/vp8/screenshare_layers.h View 1 chunk +1 line, -0 lines 0 comments Download
M webrtc/modules/video_coding/codecs/vp8/screenshare_layers.cc View 1 2 3 chunks +24 lines, -16 lines 0 comments Download
M webrtc/modules/video_coding/codecs/vp8/screenshare_layers_unittest.cc View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc View 1 2 3 4 5 2 chunks +17 lines, -6 lines 0 comments Download
M webrtc/modules/video_coding/utility/simulcast_rate_allocator_unittest.cc View 1 2 3 4 2 chunks +18 lines, -0 lines 0 comments Download

Messages

Total messages: 34 (26 generated)
sprang_webrtc
4 years ago (2016-11-25 14:03:57 UTC) #9
danilchap
https://codereview.webrtc.org/2529073003/diff/20001/webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc File webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc (right): https://codereview.webrtc.org/2529073003/diff/20001/webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc#newcode137 webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc:137: RTC_DCHECK_LE(tl_allocation_sum_kbps, target_bitrate_kbps); may be move this check after the ...
4 years ago (2016-11-25 14:40:31 UTC) #16
sprang_webrtc
https://codereview.webrtc.org/2529073003/diff/20001/webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc File webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc (right): https://codereview.webrtc.org/2529073003/diff/20001/webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc#newcode137 webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc:137: RTC_DCHECK_LE(tl_allocation_sum_kbps, target_bitrate_kbps); On 2016/11/25 14:40:31, danilchap wrote: > may ...
4 years ago (2016-11-25 14:46:37 UTC) #17
sprang_webrtc
...and another failing test fixed.
4 years ago (2016-11-25 15:04:37 UTC) #24
danilchap
lgtm
4 years ago (2016-11-25 16:07:15 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2529073003/100001
4 years ago (2016-11-25 16:08:08 UTC) #29
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years ago (2016-11-25 16:09:47 UTC) #32
commit-bot: I haz the power
4 years ago (2016-11-25 16:09:59 UTC) #34
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/c7805dbd0ea99df91ed4c4a7fccbfeab5bafd6bc
Cr-Commit-Position: refs/heads/master@{#15250}

Powered by Google App Engine
This is Rietveld 408576698