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

Side by Side Diff: webrtc/media/engine/webrtcvideoengine2.cc

Issue 2625633003: Let FlexfecReceiveStreamImpl send RTCP RRs. (Closed)
Patch Set: Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 2270 matching lines...) Expand 10 before | Expand all | Expand 10 after
2281 // should not be able to create a sender with the same SSRC as a receiver, but 2281 // should not be able to create a sender with the same SSRC as a receiver, but
2282 // right now this can't be done due to unittests depending on receiving what 2282 // right now this can't be done due to unittests depending on receiving what
2283 // they are sending from the same MediaChannel. 2283 // they are sending from the same MediaChannel.
2284 if (local_ssrc == config_.rtp.remote_ssrc) { 2284 if (local_ssrc == config_.rtp.remote_ssrc) {
2285 LOG(LS_INFO) << "Ignoring call to SetLocalSsrc because parameters are " 2285 LOG(LS_INFO) << "Ignoring call to SetLocalSsrc because parameters are "
2286 "unchanged; local_ssrc=" << local_ssrc; 2286 "unchanged; local_ssrc=" << local_ssrc;
2287 return; 2287 return;
2288 } 2288 }
2289 2289
2290 config_.rtp.local_ssrc = local_ssrc; 2290 config_.rtp.local_ssrc = local_ssrc;
2291 flexfec_config_.local_ssrc = local_ssrc;
2291 LOG(LS_INFO) 2292 LOG(LS_INFO)
2292 << "RecreateWebRtcStream (recv) because of SetLocalSsrc; local_ssrc=" 2293 << "RecreateWebRtcStream (recv) because of SetLocalSsrc; local_ssrc="
2293 << local_ssrc; 2294 << local_ssrc;
2294 RecreateWebRtcStream(); 2295 RecreateWebRtcStream();
2295 } 2296 }
2296 2297
2297 void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetFeedbackParameters( 2298 void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetFeedbackParameters(
2298 bool nack_enabled, 2299 bool nack_enabled,
2299 bool remb_enabled, 2300 bool remb_enabled,
2300 bool transport_cc_enabled, 2301 bool transport_cc_enabled,
2301 webrtc::RtcpMode rtcp_mode) { 2302 webrtc::RtcpMode rtcp_mode) {
2302 int nack_history_ms = nack_enabled ? kNackHistoryMs : 0; 2303 int nack_history_ms = nack_enabled ? kNackHistoryMs : 0;
2303 if (config_.rtp.nack.rtp_history_ms == nack_history_ms && 2304 if (config_.rtp.nack.rtp_history_ms == nack_history_ms &&
2304 config_.rtp.remb == remb_enabled && 2305 config_.rtp.remb == remb_enabled &&
2305 config_.rtp.transport_cc == transport_cc_enabled && 2306 config_.rtp.transport_cc == transport_cc_enabled &&
2306 config_.rtp.rtcp_mode == rtcp_mode) { 2307 config_.rtp.rtcp_mode == rtcp_mode) {
2307 LOG(LS_INFO) 2308 LOG(LS_INFO)
2308 << "Ignoring call to SetFeedbackParameters because parameters are " 2309 << "Ignoring call to SetFeedbackParameters because parameters are "
2309 "unchanged; nack=" 2310 "unchanged; nack="
2310 << nack_enabled << ", remb=" << remb_enabled 2311 << nack_enabled << ", remb=" << remb_enabled
2311 << ", transport_cc=" << transport_cc_enabled; 2312 << ", transport_cc=" << transport_cc_enabled;
2312 return; 2313 return;
2313 } 2314 }
2314 config_.rtp.remb = remb_enabled; 2315 config_.rtp.remb = remb_enabled;
2315 config_.rtp.nack.rtp_history_ms = nack_history_ms; 2316 config_.rtp.nack.rtp_history_ms = nack_history_ms;
2316 config_.rtp.transport_cc = transport_cc_enabled; 2317 config_.rtp.transport_cc = transport_cc_enabled;
2317 config_.rtp.rtcp_mode = rtcp_mode; 2318 config_.rtp.rtcp_mode = rtcp_mode;
2319 flexfec_config_.rtcp_mode = rtcp_mode;
2318 LOG(LS_INFO) 2320 LOG(LS_INFO)
2319 << "RecreateWebRtcStream (recv) because of SetFeedbackParameters; nack=" 2321 << "RecreateWebRtcStream (recv) because of SetFeedbackParameters; nack="
2320 << nack_enabled << ", remb=" << remb_enabled 2322 << nack_enabled << ", remb=" << remb_enabled
2321 << ", transport_cc=" << transport_cc_enabled; 2323 << ", transport_cc=" << transport_cc_enabled;
2322 RecreateWebRtcStream(); 2324 RecreateWebRtcStream();
2323 } 2325 }
2324 2326
2325 void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetRecvParameters( 2327 void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetRecvParameters(
2326 const ChangedRecvParameters& params) { 2328 const ChangedRecvParameters& params) {
2327 bool needs_recreation = false; 2329 bool needs_recreation = false;
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
2577 rtx_mapping[video_codecs[i].codec.id] != 2579 rtx_mapping[video_codecs[i].codec.id] !=
2578 ulpfec_config.red_payload_type) { 2580 ulpfec_config.red_payload_type) {
2579 video_codecs[i].rtx_payload_type = rtx_mapping[video_codecs[i].codec.id]; 2581 video_codecs[i].rtx_payload_type = rtx_mapping[video_codecs[i].codec.id];
2580 } 2582 }
2581 } 2583 }
2582 2584
2583 return video_codecs; 2585 return video_codecs;
2584 } 2586 }
2585 2587
2586 } // namespace cricket 2588 } // namespace cricket
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698