New issue
Advanced search Search tips

Issue 8243 link

Starred by 6 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
NextAction: ----
OS: All
Pri: ----
Type: Feature



Sign in to add a comment

Bitrate allocation strategy

Project Member Reported by alexnar...@webrtc.org, Sep 13 2017

Issue description

This feature allows applications to provide their own bitrate allocation strategies.

The strategy will be pluggable and will allow adjustment according to specific call configuration. Strategy updates during the call will be supported.



 
Project Member

Comment 1 by anatolid@webrtc.org, Oct 5 2017

[bulk-edit] Can the owner please assign Component to this issue?
Project Member

Comment 2 by alexnar...@webrtc.org, Oct 5 2017

Components: BWE
Project Member

Comment 3 by bugdroid1@chromium.org, Oct 13 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/b3944f021dcb42e47fe64667e5470d36fe28c30a

commit b3944f021dcb42e47fe64667e5470d36fe28c30a
Author: Alex Narest <alexnarest@webrtc.org>
Date: Fri Oct 13 13:47:07 2017

Media track ID visibility at BWE level

Track IDs are assigned by application during track creation. 
Track IDs are used by custom bitrate allocation strategies to identify tracks. 
Track ID can be empty, in that case bitrate allocation strategies will not be able to handle
these tracks specifically and will handle them as a default.

Bug: webrtc:8243
Change-Id: I89987e33328320bfd0539ad532342df6da144c98
Reviewed-on: https://webrtc-review.googlesource.com/4820
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20285}
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/audio/audio_send_stream.cc
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/call/audio_send_stream.h
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/call/bitrate_allocator.cc
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/call/bitrate_allocator.h
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/call/bitrate_allocator_unittest.cc
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/call/video_send_stream.h
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/examples/objc/AppRTCMobile/ARDAppClient.m
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/media/engine/webrtcvideoengine.cc
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/media/engine/webrtcvoiceengine.cc
[modify] https://crrev.com/b3944f021dcb42e47fe64667e5470d36fe28c30a/video/video_send_stream.cc

Project Member

Comment 4 by bugdroid1@chromium.org, Oct 17 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/54d1da13a584680ae80a1f229291e5bb7e76e6e1

commit 54d1da13a584680ae80a1f229291e5bb7e76e6e1
Author: Alex Narest <alexnarest@webrtc.org>
Date: Tue Oct 17 18:22:15 2017

BWE allocation strategy allows controlling of bitrate allocation with WEBRTC external logic.

This CL implements the main logic and IOS appRTC integration.

Unit tests and Android appRTC will be in separate CL.

Bug: webrtc:8243
Change-Id: If8e5195294046a47316e9fade1b0dfec211155e1
Reviewed-on: https://webrtc-review.googlesource.com/4860
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20329}
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/api/peerconnectioninterface.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/api/peerconnectionproxy.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/audio/audio_send_stream.cc
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/call/bitrate_allocator.cc
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/call/bitrate_allocator.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/call/call.cc
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/call/call.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/examples/BUILD.gn
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/examples/objc/AppRTCMobile/ARDAppClient.m
[add] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.h
[add] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.mm
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/media/engine/fakewebrtccall.cc
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/media/engine/fakewebrtccall.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/modules/pacing/paced_sender.cc
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/modules/pacing/paced_sender.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/modules/remote_bitrate_estimator/test/bbr_paced_sender.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/modules/rtp_rtcp/include/rtp_rtcp_defines.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/pc/peerconnection.cc
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/pc/peerconnection.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/rtc_base/BUILD.gn
[add] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/rtc_base/bitrateallocationstrategy.cc
[add] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/rtc_base/bitrateallocationstrategy.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/sdk/BUILD.gn
[add] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/sdk/objc/Framework/Classes/PeerConnection/RTCBitrateAllocationStrategy.mm
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/sdk/objc/Framework/Classes/PeerConnection/RTCConfiguration.mm
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnection.mm
[add] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/sdk/objc/Framework/Headers/WebRTC/RTCBitrateAllocationStrategy.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnection.h
[modify] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/voice_engine/channel.cc

Project Member

Comment 5 by bugdroid1@chromium.org, Oct 17 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/39260c4a6b99d0dc45eadc7d750412e6454ae9cf

commit 39260c4a6b99d0dc45eadc7d750412e6454ae9cf
Author: Lu Liu <lliuu@webrtc.org>
Date: Tue Oct 17 19:59:04 2017

Revert "BWE allocation strategy allows controlling of bitrate allocation with WEBRTC external logic."

This reverts commit 54d1da13a584680ae80a1f229291e5bb7e76e6e1.

Reason for revert: Breaking tests

Original change's description:
> BWE allocation strategy allows controlling of bitrate allocation with WEBRTC external logic.
> 
> This CL implements the main logic and IOS appRTC integration.
> 
> Unit tests and Android appRTC will be in separate CL.
> 
> Bug: webrtc:8243
> Change-Id: If8e5195294046a47316e9fade1b0dfec211155e1
> Reviewed-on: https://webrtc-review.googlesource.com/4860
> Commit-Queue: Alex Narest <alexnarest@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20329}

TBR=deadbeef@webrtc.org,nisse@webrtc.org,stefan@webrtc.org,alexnarest@webrtc.org

Change-Id: I5be1da78f360f72be66f9d56dd6b88c1cc13e963
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8243
Reviewed-on: https://webrtc-review.googlesource.com/12560
Reviewed-by: Lu Liu <lliuu@webrtc.org>
Commit-Queue: Lu Liu <lliuu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20330}
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/api/peerconnectioninterface.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/api/peerconnectionproxy.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/audio/audio_send_stream.cc
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/call/bitrate_allocator.cc
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/call/bitrate_allocator.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/call/call.cc
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/call/call.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/examples/BUILD.gn
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/examples/objc/AppRTCMobile/ARDAppClient.m
[delete] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.h
[delete] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.mm
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/media/engine/fakewebrtccall.cc
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/media/engine/fakewebrtccall.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/modules/pacing/paced_sender.cc
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/modules/pacing/paced_sender.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/modules/remote_bitrate_estimator/test/bbr_paced_sender.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/modules/rtp_rtcp/include/rtp_rtcp_defines.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/pc/peerconnection.cc
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/pc/peerconnection.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/rtc_base/BUILD.gn
[delete] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/rtc_base/bitrateallocationstrategy.cc
[delete] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/rtc_base/bitrateallocationstrategy.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/sdk/BUILD.gn
[delete] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/sdk/objc/Framework/Classes/PeerConnection/RTCBitrateAllocationStrategy.mm
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/sdk/objc/Framework/Classes/PeerConnection/RTCConfiguration.mm
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnection.mm
[delete] https://crrev.com/54d1da13a584680ae80a1f229291e5bb7e76e6e1/sdk/objc/Framework/Headers/WebRTC/RTCBitrateAllocationStrategy.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnection.h
[modify] https://crrev.com/39260c4a6b99d0dc45eadc7d750412e6454ae9cf/voice_engine/channel.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Oct 19 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/a5fbc23379823d74b8cf4bc18887ff40237989e8

commit a5fbc23379823d74b8cf4bc18887ff40237989e8
Author: Alex Narest <alexnarest@webrtc.org>
Date: Thu Oct 19 09:30:00 2017

BWE allocation strategy

This is reland of https://webrtc-review.googlesource.com/c/src/+/4860 with the fixed RampUpTest test

Bug: webrtc:8243
Change-Id: I4b90a449b00dd05feee974001e08fb40710b59ac
Reviewed-on: https://webrtc-review.googlesource.com/13124
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20345}
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/api/peerconnectioninterface.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/api/peerconnectionproxy.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/audio/audio_send_stream.cc
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/call/bitrate_allocator.cc
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/call/bitrate_allocator.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/call/call.cc
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/call/call.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/call/rampup_tests.cc
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/examples/BUILD.gn
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/examples/objc/AppRTCMobile/ARDAppClient.m
[add] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.h
[add] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.mm
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/media/engine/fakewebrtccall.cc
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/media/engine/fakewebrtccall.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/modules/pacing/paced_sender.cc
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/modules/pacing/paced_sender.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/modules/remote_bitrate_estimator/test/bbr_paced_sender.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/modules/rtp_rtcp/include/rtp_rtcp_defines.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/pc/peerconnection.cc
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/pc/peerconnection.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/rtc_base/BUILD.gn
[add] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/rtc_base/bitrateallocationstrategy.cc
[add] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/rtc_base/bitrateallocationstrategy.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/sdk/BUILD.gn
[add] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/sdk/objc/Framework/Classes/PeerConnection/RTCBitrateAllocationStrategy.mm
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/sdk/objc/Framework/Classes/PeerConnection/RTCConfiguration.mm
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnection.mm
[add] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/sdk/objc/Framework/Headers/WebRTC/RTCBitrateAllocationStrategy.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnection.h
[modify] https://crrev.com/a5fbc23379823d74b8cf4bc18887ff40237989e8/voice_engine/channel.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Oct 19 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/1c66f9fcd1cb74b375248212ebded8d679935cd9

commit 1c66f9fcd1cb74b375248212ebded8d679935cd9
Author: Alex Narest <alexnarest@webrtc.org>
Date: Thu Oct 19 11:45:11 2017

Fix chrome tests by making SetBitrateAllocationStrategy not pure virtual

Bug: webrtc:8243
Change-Id: I6fedf00d6735895771d460299458c5f8b6face8d
Reviewed-on: https://webrtc-review.googlesource.com/13760
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20351}
[modify] https://crrev.com/1c66f9fcd1cb74b375248212ebded8d679935cd9/api/peerconnectioninterface.h

Project Member

Comment 8 by bugdroid1@chromium.org, Oct 19 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce

commit dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce
Author: Alex Narest <alexnarest@webrtc.org>
Date: Thu Oct 19 15:34:52 2017

Revert "BWE allocation strategy"

This reverts commit a5fbc23379823d74b8cf4bc18887ff40237989e8.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> BWE allocation strategy
> 
> This is reland of https://webrtc-review.googlesource.com/c/src/+/4860 with the fixed RampUpTest test
> 
> Bug: webrtc:8243
> Change-Id: I4b90a449b00dd05feee974001e08fb40710b59ac
> Reviewed-on: https://webrtc-review.googlesource.com/13124
> Commit-Queue: Alex Narest <alexnarest@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20345}

TBR=stefan@webrtc.org,alexnarest@webrtc.org

Change-Id: I8ed12cd2115ef63204e384cc93c9f4473daa54d1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8243
Reviewed-on: https://webrtc-review.googlesource.com/14020
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Alex Narest <alexnarest@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20361}
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/api/peerconnectioninterface.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/api/peerconnectionproxy.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/audio/audio_send_stream.cc
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/call/bitrate_allocator.cc
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/call/bitrate_allocator.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/call/call.cc
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/call/call.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/call/rampup_tests.cc
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/examples/BUILD.gn
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/examples/objc/AppRTCMobile/ARDAppClient.m
[delete] https://crrev.com/44582878d34a0018776c4566cb7b395721c0a038/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.h
[delete] https://crrev.com/44582878d34a0018776c4566cb7b395721c0a038/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.mm
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/media/engine/fakewebrtccall.cc
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/media/engine/fakewebrtccall.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/modules/pacing/paced_sender.cc
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/modules/pacing/paced_sender.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/modules/remote_bitrate_estimator/test/bbr_paced_sender.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/modules/rtp_rtcp/include/rtp_rtcp_defines.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/pc/peerconnection.cc
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/pc/peerconnection.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/rtc_base/BUILD.gn
[delete] https://crrev.com/44582878d34a0018776c4566cb7b395721c0a038/rtc_base/bitrateallocationstrategy.cc
[delete] https://crrev.com/44582878d34a0018776c4566cb7b395721c0a038/rtc_base/bitrateallocationstrategy.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/sdk/BUILD.gn
[delete] https://crrev.com/44582878d34a0018776c4566cb7b395721c0a038/sdk/objc/Framework/Classes/PeerConnection/RTCBitrateAllocationStrategy.mm
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/sdk/objc/Framework/Classes/PeerConnection/RTCConfiguration.mm
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnection.mm
[delete] https://crrev.com/44582878d34a0018776c4566cb7b395721c0a038/sdk/objc/Framework/Headers/WebRTC/RTCBitrateAllocationStrategy.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnection.h
[modify] https://crrev.com/dc9ca9329b920dc3e5a0e9551582cfc22c0fa0ce/voice_engine/channel.cc

Project Member

Comment 9 by bugdroid1@chromium.org, Oct 20 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/78609d5b6b54e998e6e15a065407a731a7e02a1c

commit 78609d5b6b54e998e6e15a065407a731a7e02a1c
Author: Alex Narest <alexnarest@webrtc.org>
Date: Fri Oct 20 10:16:15 2017

Reland of BWE allocation strategy

TBR=stefan@webrtc.org,alexnarest@webrtc.org

Bug: webrtc:8243
Change-Id: Ie68e4f414b2ac32ba4e64877cb250fabcb089a07
Reviewed-on: https://webrtc-review.googlesource.com/13940
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Alex Narest <alexnarest@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20369}
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/api/peerconnectioninterface.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/api/peerconnectionproxy.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/audio/audio_send_stream.cc
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/call/bitrate_allocator.cc
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/call/bitrate_allocator.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/call/call.cc
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/call/call.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/call/rampup_tests.cc
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/examples/BUILD.gn
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/examples/objc/AppRTCMobile/ARDAppClient.m
[add] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.h
[add] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.mm
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/media/engine/fakewebrtccall.cc
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/media/engine/fakewebrtccall.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/modules/pacing/paced_sender.cc
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/modules/pacing/paced_sender.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/modules/remote_bitrate_estimator/test/bbr_paced_sender.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/modules/rtp_rtcp/include/rtp_rtcp_defines.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/pc/peerconnection.cc
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/pc/peerconnection.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/rtc_base/BUILD.gn
[add] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/rtc_base/bitrateallocationstrategy.cc
[add] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/rtc_base/bitrateallocationstrategy.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/sdk/BUILD.gn
[add] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/sdk/objc/Framework/Classes/PeerConnection/RTCBitrateAllocationStrategy.mm
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/sdk/objc/Framework/Classes/PeerConnection/RTCConfiguration.mm
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnection.mm
[add] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/sdk/objc/Framework/Headers/WebRTC/RTCBitrateAllocationStrategy.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnection.h
[modify] https://crrev.com/78609d5b6b54e998e6e15a065407a731a7e02a1c/voice_engine/channel.cc

Project Member

Comment 10 by bugdroid1@chromium.org, Oct 27 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/293158b707590ae64230ef953f87efed9b65b86b

commit 293158b707590ae64230ef953f87efed9b65b86b
Author: Magnus Jedvert <magjed@webrtc.org>
Date: Fri Oct 27 12:33:24 2017

Revert ObjC API changes for BWE allocation strategy

The ObjC API (the files in sdk/objc/Framework/Headers/WebRTC/) needs to
be pure ObjC. The changes that are reverted here introduced C++ which
turns it into ObjC++.

We don't have a test protectcing this right now, but it's probably
something we should add to catch changes like this in the future.

TBR=alexnarest@webrtc.org,deadbeef@webrtc.org

Bug: webrtc:8243
Change-Id: Idea688f4014cd44c27cf2cb2a5ec8a9ea7da3c00
Reviewed-on: https://webrtc-review.googlesource.com/16429
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20463}
[modify] https://crrev.com/293158b707590ae64230ef953f87efed9b65b86b/examples/BUILD.gn
[modify] https://crrev.com/293158b707590ae64230ef953f87efed9b65b86b/examples/objc/AppRTCMobile/ARDAppClient.m
[delete] https://crrev.com/b0576ecc7121b9a31a70d25ec603b8a293f11310/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.h
[delete] https://crrev.com/b0576ecc7121b9a31a70d25ec603b8a293f11310/examples/objc/AppRTCMobile/ARDBitrateAllocationStrategy.mm
[modify] https://crrev.com/293158b707590ae64230ef953f87efed9b65b86b/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m
[modify] https://crrev.com/293158b707590ae64230ef953f87efed9b65b86b/sdk/BUILD.gn
[delete] https://crrev.com/b0576ecc7121b9a31a70d25ec603b8a293f11310/sdk/objc/Framework/Classes/PeerConnection/RTCBitrateAllocationStrategy.mm
[modify] https://crrev.com/293158b707590ae64230ef953f87efed9b65b86b/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnection.mm
[delete] https://crrev.com/b0576ecc7121b9a31a70d25ec603b8a293f11310/sdk/objc/Framework/Headers/WebRTC/RTCBitrateAllocationStrategy.h
[modify] https://crrev.com/293158b707590ae64230ef953f87efed9b65b86b/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnection.h

Project Member

Comment 11 by bugdroid1@chromium.org, Nov 1 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/0af86d1c43aadadf6ae44799a80739099248de03

commit 0af86d1c43aadadf6ae44799a80739099248de03
Author: Magnus Jedvert <magjed@webrtc.org>
Date: Wed Nov 01 15:21:06 2017

Reland ObjC API for BWE allocation strategy

Bug: webrtc:8243
Change-Id: Ib1b8349bffe98490ba5f1d12b18e848e89cdb9ce
Reviewed-on: https://webrtc-review.googlesource.com/16640
Reviewed-by: Alex Narest <alexnarest@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20534}
[modify] https://crrev.com/0af86d1c43aadadf6ae44799a80739099248de03/sdk/BUILD.gn
[add] https://crrev.com/0af86d1c43aadadf6ae44799a80739099248de03/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnection+Native.h
[modify] https://crrev.com/0af86d1c43aadadf6ae44799a80739099248de03/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnection.mm

Project Member

Comment 12 by bugdroid1@chromium.org, Nov 16 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/e0b2ff5ea4a1894086791dc70634383b8e85f089

commit e0b2ff5ea4a1894086791dc70634383b8e85f089
Author: Alex Narest <alexnarest@webrtc.org>
Date: Thu Nov 16 20:23:56 2017

Add kTransmissionMaxBitrateMultiplier logic to audio priority bitrate allocation strategy similarly to default bitrate allocation logic.

Bug: webrtc:8243
Change-Id: I128712ae96cc13ace0c6d2edf518eb59d30a4569
Reviewed-on: https://webrtc-review.googlesource.com/21983
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20722}
[modify] https://crrev.com/e0b2ff5ea4a1894086791dc70634383b8e85f089/call/bitrate_allocator.cc
[modify] https://crrev.com/e0b2ff5ea4a1894086791dc70634383b8e85f089/rtc_base/bitrateallocationstrategy.cc

Project Member

Comment 13 by bugdroid1@chromium.org, Nov 27 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/d0e196bd2632d514beb38ab0806b3e4498511ef5

commit d0e196bd2632d514beb38ab0806b3e4498511ef5
Author: Alex Narest <alexnarest@webrtc.org>
Date: Mon Nov 27 10:38:22 2017

Adding two tests: 
1. Bitrate allocation strategy unit test 
2. Perf test determining minimal supported bitrate with and without strategy

Bug: webrtc:8243
Change-Id: Idf675fbadddb66c77b2582052d6497971eb99ad6
Reviewed-on: https://webrtc-review.googlesource.com/4880
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20886}
[modify] https://crrev.com/d0e196bd2632d514beb38ab0806b3e4498511ef5/call/call_perf_tests.cc
[modify] https://crrev.com/d0e196bd2632d514beb38ab0806b3e4498511ef5/rtc_base/BUILD.gn
[add] https://crrev.com/d0e196bd2632d514beb38ab0806b3e4498511ef5/rtc_base/bitrateallocationstrategy_unittest.cc

Project Member

Comment 14 by anatolid@chromium.org, Dec 7 2017

Is this finished?
Experimentation is about to start
Project Member

Comment 16 by bugdroid1@chromium.org, Dec 7 2017

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/cedd351e738e0fa81a9141c8e094d05ac0645896

commit cedd351e738e0fa81a9141c8e094d05ac0645896
Author: Alex Narest <alexnarest@webrtc.org>
Date: Thu Dec 07 20:46:38 2017

Do not add audio bitrate observer if TWCC sending is not supported

Bug: webrtc:8243
Change-Id: Ida076dca72a6894053bdd0884f818ab3eaf5128a
Reviewed-on: https://webrtc-review.googlesource.com/30840
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21149}
[modify] https://crrev.com/cedd351e738e0fa81a9141c8e094d05ac0645896/audio/BUILD.gn
[modify] https://crrev.com/cedd351e738e0fa81a9141c8e094d05ac0645896/audio/audio_send_stream.cc
[modify] https://crrev.com/cedd351e738e0fa81a9141c8e094d05ac0645896/audio/audio_send_stream.h

Project Member

Comment 17 by anatolid@webrtc.org, Jan 15 2018

Assuming this will continue into M66?
Project Member

Comment 18 by alexnar...@webrtc.org, Jan 15 2018

Experimentation is not finished yet.
Project Member

Comment 19 by bugdroid1@chromium.org, Jun 12

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/867e510ef51725eb01a0eff56e0b3ce23772f91d

commit 867e510ef51725eb01a0eff56e0b3ce23772f91d
Author: Alex Narest <alexnarest@webrtc.org>
Date: Tue Jun 12 16:01:20 2018

Enable send side audio TWCC only if WebRTC-Audio-ForceNoTWCC is not enabled.

This will avoid enabling TWCC for calls having WebRTC-Audio-SendSideBwe enabled on one side of the call but not on the other.

Currently the side supporting audio BWE indicates TWCC extension in SDP but the side that does not support will not. As the result the not supporting side will send TWCC but will not use it and the side supporting audio BWE will not send TWCC.

Bug: webrtc:8243
Change-Id: I4d59e78998982051004b8ad86c24b9be34fc095f
Reviewed-on: https://webrtc-review.googlesource.com/82803
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23583}
[modify] https://crrev.com/867e510ef51725eb01a0eff56e0b3ce23772f91d/audio/audio_send_stream.cc

Project Member

Comment 20 by bugdroid1@chromium.org, Jun 13

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/789221f1101afa33bb0f232823e6176b3b8c4ee8

commit 789221f1101afa33bb0f232823e6176b3b8c4ee8
Author: Alex Narest <alexnarest@webrtc.org>
Date: Wed Jun 13 12:30:59 2018

Adding WebRTC-Audio-ForceNoTWCC field trial

Bug: webrtc:8243
Change-Id: I74864b8e67cd9c62c5fe26a03efdcdca01d2a93f
Reviewed-on: https://webrtc-review.googlesource.com/83323
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23596}
[modify] https://crrev.com/789221f1101afa33bb0f232823e6176b3b8c4ee8/sdk/objc/Framework/Classes/Common/RTCFieldTrials.mm
[modify] https://crrev.com/789221f1101afa33bb0f232823e6176b3b8c4ee8/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h

Project Member

Comment 21 by bugdroid1@chromium.org, Jun 27

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/bcf91808a2205e72e9a669ff80f6fe9c15f6d349

commit bcf91808a2205e72e9a669ff80f6fe9c15f6d349
Author: Alex Narest <alexnarest@webrtc.org>
Date: Wed Jun 27 10:33:40 2018

Allows audio bitrate allocation in video calls without enabling TWCC (Transport Wide Congestion Control as defined at https://tools.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01.html) for audio stream.

This will allow experimenting with audio bitrate allocation in video calls without increasing transport overhead.

Bug: webrtc:8243
Change-Id: If961780921d53bdce95b68c26641df6875509c1f
Reviewed-on: https://webrtc-review.googlesource.com/84501
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23755}
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/audio/audio_send_stream.cc
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/call/rtp_transport_controller_send.cc
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/call/rtp_transport_controller_send.h
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/call/rtp_transport_controller_send_interface.h
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/call/test/mock_rtp_transport_controller_send.h
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/media/engine/webrtcvoiceengine.cc
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/modules/congestion_controller/goog_cc/acknowledged_bitrate_estimator.cc
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/modules/congestion_controller/goog_cc/acknowledged_bitrate_estimator.h
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/modules/congestion_controller/include/send_side_congestion_controller.h
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/modules/congestion_controller/include/send_side_congestion_controller_interface.h
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/modules/congestion_controller/rtp/include/send_side_congestion_controller.h
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/modules/congestion_controller/rtp/send_side_congestion_controller.cc
[modify] https://crrev.com/bcf91808a2205e72e9a669ff80f6fe9c15f6d349/modules/congestion_controller/send_side_congestion_controller.cc

Project Member

Comment 22 by bugdroid1@chromium.org, Jun 28

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/0bd7bf0de3f9eb768c1118877576d70ea4a9cbb6

commit 0bd7bf0de3f9eb768c1118877576d70ea4a9cbb6
Author: Alex Narest <alexnarest@webrtc.org>
Date: Thu Jun 28 09:51:00 2018

Adding ABWENoTWCC field trial

Bug: webrtc:8243
Change-Id: I80c598f6cf42c831e73ca98f68e726cf892549ce
Reviewed-on: https://webrtc-review.googlesource.com/85980
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23764}
[modify] https://crrev.com/0bd7bf0de3f9eb768c1118877576d70ea4a9cbb6/sdk/objc/Framework/Classes/Common/RTCFieldTrials.mm
[modify] https://crrev.com/0bd7bf0de3f9eb768c1118877576d70ea4a9cbb6/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h

Project Member

Comment 23 by bugdroid1@chromium.org, Jul 13

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/bbbe4e1a15edbbfe99bb13f69593414865f720f2

commit bbbe4e1a15edbbfe99bb13f69593414865f720f2
Author: Alex Narest <alexnarest@webrtc.org>
Date: Fri Jul 13 09:06:06 2018

Better handle target audio bitrate allocation.

Do not update target audio bitrate if WebRTC-Audio-SendSideBwe-For-Video is enabled but other side does not support TWCC

Bug: webrtc:8243
Change-Id: I6c3c4f223dc5168d726996324717d7ba9ec96e6c
Reviewed-on: https://webrtc-review.googlesource.com/88440
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23963}
[modify] https://crrev.com/bbbe4e1a15edbbfe99bb13f69593414865f720f2/audio/audio_send_stream.cc

Project Member

Comment 24 by bugdroid1@chromium.org, Oct 1

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/35fa28022941f66fb267371995fd39b641da04ef

commit 35fa28022941f66fb267371995fd39b641da04ef
Author: Sebastian Jansson <srte@webrtc.org>
Date: Mon Oct 01 07:48:02 2018

Adds allocated rate without feedback to new congestion controller.

When bitrate is allocated to streams that does not have packet feedback,
the allocated bitrate should be included in the estimate. This was
previously only implemented for the old congestion controller and not
for the new task queue based version.

To make the behavior more robust, the responsibility for tracking this
is moved to BitrateAllocator where it's handled consistently for
multiple streams without feedback.

Bug: webrtc:9586, webrtc:8243
Change-Id: I8af7fec23e1bdc08cc61cf1b4ff10461c3711fb0
Reviewed-on: https://webrtc-review.googlesource.com/102681
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24905}
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/api/transport/network_types.h
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/audio/audio_send_stream.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/audio/audio_send_stream_unittest.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/call/bitrate_allocator.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/call/bitrate_allocator.h
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/call/bitrate_allocator_unittest.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/call/call.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/call/rtp_transport_controller_send.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/modules/congestion_controller/bbr/bbr_network_controller.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/modules/congestion_controller/goog_cc/goog_cc_network_control.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/modules/congestion_controller/pcc/pcc_network_controller.cc
[modify] https://crrev.com/35fa28022941f66fb267371995fd39b641da04ef/modules/congestion_controller/rtp/send_side_congestion_controller.cc

Project Member

Comment 25 by anatolid@webrtc.org, Oct 12

Assuming this is not finished yet and the work will continue in this issue?
Project Member

Comment 26 by alexnar...@webrtc.org, Oct 12

Owner: crodbro@webrtc.org

Sign in to add a comment