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

Unified Diff: webrtc/media/engine/webrtcvideoengine2.cc

Issue 2740783006: Support removing b=AS bandwidth constraints. (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/media/engine/webrtcvideoengine2.cc
diff --git a/webrtc/media/engine/webrtcvideoengine2.cc b/webrtc/media/engine/webrtcvideoengine2.cc
index 6723b1b89fd466fa4b5332eabfd5c3f20215612a..89ea5ced54eefc270dd2d1ef304a52dfecce7200 100644
--- a/webrtc/media/engine/webrtcvideoengine2.cc
+++ b/webrtc/media/engine/webrtcvideoengine2.cc
@@ -715,8 +715,10 @@ bool WebRtcVideoChannel2::GetChangedSendParameters(
// Handle max bitrate.
if (params.max_bandwidth_bps != send_params_.max_bandwidth_bps &&
- params.max_bandwidth_bps >= 0) {
- // 0 uncaps max bitrate (-1).
+ params.max_bandwidth_bps >= -1) {
+ // 0 or -1 uncaps max bitrate.
+ // TODO(pbos): Reconsider whether 0 should be invalid or not. -1 is the
+ // auto-bitrate value.
Taylor Brandstetter 2017/03/09 23:48:38 The "correct" behavior for b=AS:0 may be "set bitr
pbos-webrtc 2017/03/10 18:52:09 TODO text updated.
changed_params->max_bandwidth_bps = rtc::Optional<int>(
params.max_bandwidth_bps == 0 ? -1 : params.max_bandwidth_bps);
}
@@ -762,7 +764,7 @@ bool WebRtcVideoChannel2::SetSendParameters(const VideoSendParameters& params) {
if (changed_params.codec || changed_params.max_bandwidth_bps) {
if (send_codec_) {
// TODO(holmer): Changing the codec parameters shouldn't necessarily mean
- // that we change the min/max of bandwidth estimation. Reevaluate this.
+ // that we change the min of bandwidth estimation. Reevaluate this.
bitrate_config_ = GetBitrateConfigForCodec(send_codec_->codec);
if (!changed_params.codec) {
// If the codec isn't changing, set the start bitrate to -1 which means
@@ -770,7 +772,7 @@ bool WebRtcVideoChannel2::SetSendParameters(const VideoSendParameters& params) {
bitrate_config_.start_bitrate_bps = -1;
}
}
- if (params.max_bandwidth_bps >= 0) {
+ if (params.max_bandwidth_bps >= -1) {
// Note that max_bandwidth_bps intentionally takes priority over the
// bitrate config for the codec. This allows FEC to be applied above the
// codec target bitrate.
@@ -778,6 +780,9 @@ bool WebRtcVideoChannel2::SetSendParameters(const VideoSendParameters& params) {
// WebRtcVideoChannel2 (in which case we're good), or per sender (SSRC),
// in which case this should not set a Call::BitrateConfig but rather
// reconfigure all senders.
+
+ // TODO(pbos): Consider whether 0 should be invalid or not.
+ // 0 or -1 uncaps max bitrate.
bitrate_config_.max_bitrate_bps =
params.max_bandwidth_bps == 0 ? -1 : params.max_bandwidth_bps;
}

Powered by Google App Engine
This is Rietveld 408576698