| Index: media/cast/net/cast_transport_sender_impl.cc
|
| diff --git a/media/cast/net/cast_transport_sender_impl.cc b/media/cast/net/cast_transport_sender_impl.cc
|
| index 80672350c85c65d02f9dbe23a1ecb1eb206bfbfd..5f46089bd0a4c1c8132b4e50c021007aedb9d60b 100644
|
| --- a/media/cast/net/cast_transport_sender_impl.cc
|
| +++ b/media/cast/net/cast_transport_sender_impl.cc
|
| @@ -97,7 +97,8 @@ CastTransportSenderImpl::~CastTransportSenderImpl() {
|
| void CastTransportSenderImpl::InitializeAudio(
|
| const CastTransportRtpConfig& config,
|
| const RtcpCastMessageCallback& cast_message_cb,
|
| - const RtcpRttCallback& rtt_cb) {
|
| + const RtcpRttCallback& rtt_cb,
|
| + const RtcpPliCallback& pli_cb) {
|
| LOG_IF(WARNING, config.aes_key.empty() || config.aes_iv_mask.empty())
|
| << "Unsafe to send audio with encryption DISABLED.";
|
| if (!audio_encryptor_.Initialize(config.aes_key, config.aes_iv_mask)) {
|
| @@ -122,7 +123,7 @@ void CastTransportSenderImpl::InitializeAudio(
|
| weak_factory_.GetWeakPtr(), config.ssrc, cast_message_cb),
|
| rtt_cb, base::Bind(&CastTransportSenderImpl::OnReceivedLogMessage,
|
| weak_factory_.GetWeakPtr(), AUDIO_EVENT),
|
| - clock_, &pacer_, config.ssrc, config.feedback_ssrc));
|
| + pli_cb, clock_, &pacer_, config.ssrc, config.feedback_ssrc));
|
| pacer_.RegisterAudioSsrc(config.ssrc);
|
| valid_sender_ssrcs_.insert(config.feedback_ssrc);
|
| transport_client_->OnStatusChanged(TRANSPORT_AUDIO_INITIALIZED);
|
| @@ -131,7 +132,8 @@ void CastTransportSenderImpl::InitializeAudio(
|
| void CastTransportSenderImpl::InitializeVideo(
|
| const CastTransportRtpConfig& config,
|
| const RtcpCastMessageCallback& cast_message_cb,
|
| - const RtcpRttCallback& rtt_cb) {
|
| + const RtcpRttCallback& rtt_cb,
|
| + const RtcpPliCallback& pli_cb) {
|
| LOG_IF(WARNING, config.aes_key.empty() || config.aes_iv_mask.empty())
|
| << "Unsafe to send video with encryption DISABLED.";
|
| if (!video_encryptor_.Initialize(config.aes_key, config.aes_iv_mask)) {
|
| @@ -151,7 +153,7 @@ void CastTransportSenderImpl::InitializeVideo(
|
| weak_factory_.GetWeakPtr(), config.ssrc, cast_message_cb),
|
| rtt_cb, base::Bind(&CastTransportSenderImpl::OnReceivedLogMessage,
|
| weak_factory_.GetWeakPtr(), VIDEO_EVENT),
|
| - clock_, &pacer_, config.ssrc, config.feedback_ssrc));
|
| + pli_cb, clock_, &pacer_, config.ssrc, config.feedback_ssrc));
|
| pacer_.RegisterVideoSsrc(config.ssrc);
|
| valid_sender_ssrcs_.insert(config.feedback_ssrc);
|
| transport_client_->OnStatusChanged(TRANSPORT_VIDEO_INITIALIZED);
|
| @@ -449,6 +451,15 @@ void CastTransportSenderImpl::AddCastFeedback(
|
| rtcp_builder_at_rtp_receiver_->AddCast(cast_message, target_delay);
|
| }
|
|
|
| +void CastTransportSenderImpl::AddPli(const RtcpPliMessage& pli_message) {
|
| + if (!rtcp_builder_at_rtp_receiver_) {
|
| + VLOG(1) << "rtcp_builder_at_rtp_receiver_ is not initialized before "
|
| + "calling CastTransportSenderImpl::AddPli.";
|
| + return;
|
| + }
|
| + rtcp_builder_at_rtp_receiver_->AddPli(pli_message);
|
| +}
|
| +
|
| void CastTransportSenderImpl::AddRtcpEvents(
|
| const ReceiverRtcpEventSubscriber::RtcpEvents& rtcp_events) {
|
| if (!rtcp_builder_at_rtp_receiver_) {
|
|
|