Chromium Code Reviews| Index: webrtc/media/engine/webrtcvideoengine2.cc |
| diff --git a/webrtc/media/engine/webrtcvideoengine2.cc b/webrtc/media/engine/webrtcvideoengine2.cc |
| index 4301bd0a9369634604331c1dc307ff049f06495b..c6c522a99ed84708d1c013c139f7fefc98d78547 100644 |
| --- a/webrtc/media/engine/webrtcvideoengine2.cc |
| +++ b/webrtc/media/engine/webrtcvideoengine2.cc |
| @@ -1224,18 +1224,20 @@ void WebRtcVideoChannel2::ConfigureReceiverRtp( |
| config->rtp.transport_cc = |
| send_codec_ ? HasTransportCc(send_codec_->codec) : false; |
| + sp.GetFidSsrc(ssrc, &config->rtp.rtx_ssrc); |
| + |
| + config->rtp.extensions = recv_rtp_extensions_; |
| + |
| // TODO(brandtr): Generalize when we add support for multistream protection. |
| if (sp.GetFecFrSsrc(ssrc, &flexfec_config->remote_ssrc)) { |
| flexfec_config->protected_media_ssrcs = {ssrc}; |
| flexfec_config->local_ssrc = config->rtp.local_ssrc; |
| flexfec_config->rtcp_mode = config->rtp.rtcp_mode; |
| + // TODO(brandtr): We should be spec-compliant and set |transport_cc| here |
| + // based on the rtcp-fb for the FlexFEC codec, not the media codec. |
| flexfec_config->transport_cc = config->rtp.transport_cc; |
| flexfec_config->rtp_header_extensions = config->rtp.extensions; |
|
brandtr
2017/02/01 10:11:40
Note how this assignment is affected by the move o
|
| } |
| - |
| - sp.GetFidSsrc(ssrc, &config->rtp.rtx_ssrc); |
| - |
| - config->rtp.extensions = recv_rtp_extensions_; |
| } |
| bool WebRtcVideoChannel2::RemoveRecvStream(uint32_t ssrc) { |
| @@ -2250,7 +2252,10 @@ void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetFeedbackParameters( |
| config_.rtp.nack.rtp_history_ms = nack_history_ms; |
| config_.rtp.transport_cc = transport_cc_enabled; |
| config_.rtp.rtcp_mode = rtcp_mode; |
| - flexfec_config_.rtcp_mode = rtcp_mode; |
| + // TODO(brandtr): We should be spec-compliant and set |transport_cc| here |
| + // based on the rtcp-fb for the FlexFEC codec, not the media codec. |
| + flexfec_config_.transport_cc = config_.rtp.transport_cc; |
| + flexfec_config_.rtcp_mode = config_.rtp.rtcp_mode; |
| LOG(LS_INFO) |
| << "RecreateWebRtcStream (recv) because of SetFeedbackParameters; nack=" |
| << nack_enabled << ", remb=" << remb_enabled |
| @@ -2268,6 +2273,7 @@ void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetRecvParameters( |
| } |
| if (params.rtp_header_extensions) { |
| config_.rtp.extensions = *params.rtp_header_extensions; |
| + flexfec_config_.rtp_header_extensions = *params.rtp_header_extensions; |
| needs_recreation = true; |
| } |
| if (needs_recreation) { |