Chromium Code Reviews| Index: webrtc/call/call.h |
| diff --git a/webrtc/call/call.h b/webrtc/call/call.h |
| index ec73bf7714926b2a6b04210f3c66a881f9acbedf..ca6ce30c4e8d97527b7df338b25e07a9aa5ca7a6 100644 |
| --- a/webrtc/call/call.h |
| +++ b/webrtc/call/call.h |
| @@ -75,6 +75,14 @@ class Call { |
| int max_bitrate_bps = -1; |
| } bitrate_config; |
| + // TODO(zstein): Consider using PeerConnectionInterface::BitrateParameters |
| + // instead (and move BitrateParameters to base/ or api/). |
|
Taylor Brandstetter
2017/04/12 01:33:42
Just FYI, it would be api/ since it's used in the
Zach Stein
2017/04/13 00:26:36
Acknowledged.
|
| + struct BitrateConfigMask { |
| + rtc::Optional<int> min_bitrate_bps; |
| + rtc::Optional<int> start_bitrate_bps; |
| + rtc::Optional<int> max_bitrate_bps; |
| + }; |
| + |
| // AudioState which is possibly shared between multiple calls. |
| // TODO(solenberg): Change this to a shared_ptr once we can use C++11. |
| rtc::scoped_refptr<AudioState> audio_state; |
| @@ -136,14 +144,17 @@ class Call { |
| // pacing delay, etc. |
| virtual Stats GetStats() const = 0; |
| - // TODO(pbos): Like BitrateConfig above this is currently per-stream instead |
| - // of maximum for entire Call. This should be fixed along with the above. |
| - // Specifying a start bitrate (>0) will currently reset the current bitrate |
| - // estimate. This is due to how the 'x-google-start-bitrate' flag is currently |
| - // implemented. |
| + // Parameters set here are only used if they are not masked by |
| + // SetBitrateConfigMask. Specifying a start bitrate (>0) will currently reset |
| + // the current bitrate estimate. This is due to how the |
| + // 'x-google-start-bitrate' flag is currently implemented. |
| virtual void SetBitrateConfig( |
| const Config::BitrateConfig& bitrate_config) = 0; |
| + // Values set here are preferred to values set by SetBitrateConfig. |
| + virtual void SetBitrateConfigMask( |
|
Taylor Brandstetter
2017/04/12 01:33:42
Just an idea/bikeshed: calling these methods somet
Zach Stein
2017/04/13 00:26:36
It felt wrong to talk about SDP here, so I tried t
|
| + const Config::BitrateConfigMask& bitrate_mask) = 0; |
| + |
| // TODO(skvlad): When the unbundled case with multiple streams for the same |
| // media type going over different networks is supported, track the state |
| // for each stream separately. Right now it's global per media type. |