| Index: webrtc/media/engine/webrtcvideoengine2.cc
|
| diff --git a/webrtc/media/engine/webrtcvideoengine2.cc b/webrtc/media/engine/webrtcvideoengine2.cc
|
| index b9dbd666848a8703e76dc4be1c5623c50ed91bd6..895f1271e2d0db0f641ed9766966bdbdf9f2cd01 100644
|
| --- a/webrtc/media/engine/webrtcvideoengine2.cc
|
| +++ b/webrtc/media/engine/webrtcvideoengine2.cc
|
| @@ -877,6 +877,7 @@ bool WebRtcVideoChannel2::SetSendParameters(const VideoSendParameters& params) {
|
| send_params_ = params;
|
| return true;
|
| }
|
| +
|
| webrtc::RtpParameters WebRtcVideoChannel2::GetRtpParameters(
|
| uint32_t ssrc) const {
|
| rtc::CritScope stream_lock(&stream_crit_);
|
| @@ -887,7 +888,13 @@ webrtc::RtpParameters WebRtcVideoChannel2::GetRtpParameters(
|
| return webrtc::RtpParameters();
|
| }
|
|
|
| - return it->second->GetRtpParameters();
|
| + webrtc::RtpParameters rtp_params = it->second->GetRtpParameters();
|
| + // Need to add the common list of codecs to the send stream-specific
|
| + // RTP parameters.
|
| + for (const VideoCodec& codec : send_params_.codecs) {
|
| + rtp_params.codecs.push_back(codec.ToCodecParameters());
|
| + }
|
| + return rtp_params;
|
| }
|
|
|
| bool WebRtcVideoChannel2::SetRtpParameters(
|
| @@ -902,6 +909,8 @@ bool WebRtcVideoChannel2::SetRtpParameters(
|
| return false;
|
| }
|
|
|
| + // TODO(deadbeef): Handle setting parameters with a list of codecs in a
|
| + // different order (which should change the send codec).
|
| return it->second->SetRtpParameters(parameters);
|
| }
|
|
|
| @@ -1840,6 +1849,8 @@ bool WebRtcVideoChannel2::WebRtcVideoSendStream::SetRtpParameters(
|
| pending_encoder_reconfiguration_ = true;
|
| }
|
| rtp_parameters_ = new_parameters;
|
| + // Codecs are currently handled at the WebRtcVideoChannel2 level.
|
| + rtp_parameters_.codecs.clear();
|
| // Encoding may have been activated/deactivated.
|
| UpdateSendState();
|
| return true;
|
|
|