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

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

Issue 1695663003: Drop VideoOptions from VideoSendParameters. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 10 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 0dd8938dc3451758fb0441cb4df457baa6832abe..26d7b70a76c77b351e184a0ad19fe8ca9c45e367 100644
--- a/webrtc/media/engine/webrtcvideoengine2.cc
+++ b/webrtc/media/engine/webrtcvideoengine2.cc
@@ -733,15 +733,6 @@ bool WebRtcVideoChannel2::GetChangedSendParameters(
params.max_bandwidth_bps == 0 ? -1 : params.max_bandwidth_bps);
}
- // Handle options.
- // TODO(pbos): Require VideoSendParameters to contain a full set of options
- // and check if params.options != options_ instead of applying a delta.
- VideoOptions new_options = options_;
- new_options.SetAll(params.options);
- if (!(new_options == options_)) {
- changed_params->options = rtc::Optional<VideoOptions>(new_options);
- }
-
// Handle RTCP mode.
if (params.rtcp.reduced_size != send_params_.rtcp.reduced_size) {
changed_params->rtcp_mode = rtc::Optional<webrtc::RtcpMode>(
@@ -800,9 +791,6 @@ bool WebRtcVideoChannel2::SetSendParameters(const VideoSendParameters& params) {
call_->SetBitrateConfig(bitrate_config_);
}
- if (changed_params.options)
- options_.SetAll(*changed_params.options);
-
{
rtc::CritScope stream_lock(&stream_crit_);
for (auto& kv : send_streams_) {
@@ -950,9 +938,7 @@ bool WebRtcVideoChannel2::SetVideoSend(uint32_t ssrc, bool enable,
return false;
}
if (enable && options) {
- VideoSendParameters new_params = send_params_;
- new_params.options.SetAll(*options);
- SetSendParameters(send_params_);
+ SetOptions(ssrc, *options);
}
return true;
}
@@ -1376,10 +1362,15 @@ bool WebRtcVideoChannel2::MuteStream(uint32_t ssrc, bool mute) {
}
// TODO(pbos): Remove SetOptions in favor of SetSendParameters.
-void WebRtcVideoChannel2::SetOptions(const VideoOptions& options) {
- VideoSendParameters new_params = send_params_;
- new_params.options.SetAll(options);
- SetSendParameters(send_params_);
+void WebRtcVideoChannel2::SetOptions(uint32_t ssrc,
+ const VideoOptions& options) {
+ LOG(LS_INFO) << "SetOptions: ssrc " << ssrc << ": " << options.ToString();
+
+ rtc::CritScope stream_lock(&stream_crit_);
+ if (send_streams_.find(ssrc) == send_streams_.end()) {
+ return;
+ }
+ send_streams_[ssrc]->SetOptions(options);
}
void WebRtcVideoChannel2::SetInterface(NetworkInterface* iface) {
@@ -1794,17 +1785,8 @@ void WebRtcVideoChannel2::WebRtcVideoSendStream::SetSendParameters(
}
// Set codecs and options.
if (params.codec) {
- SetCodecAndOptions(*params.codec,
- params.options ? *params.options : parameters_.options);
+ SetCodecAndOptions(*params.codec, parameters_.options);
return;
- } else if (params.options) {
- // Reconfigure if codecs are already set.
- if (parameters_.codec_settings) {
- SetCodecAndOptions(*parameters_.codec_settings, *params.options);
- return;
- } else {
- parameters_.options = *params.options;
- }
}
if (recreate_stream) {
LOG(LS_INFO) << "RecreateWebRtcStream (send) because of SetSendParameters";

Powered by Google App Engine
This is Rietveld 408576698