Avoid sending empty receiver reports with RtcpTransceiver

Bug: None
Change-Id: Ia017c2df285febefb72ba88ba43366455bde5a78
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222402
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34281}
This commit is contained in:
Danil Chapovalov
2021-06-14 16:56:02 +02:00
committed by WebRTC LUCI CQ
parent 8b6929081e
commit e5f1a3992e
2 changed files with 47 additions and 2 deletions

View File

@ -355,9 +355,12 @@ void RtcpTransceiverImpl::CreateCompoundPacket(PacketSender* sender) {
rtcp::ReceiverReport receiver_report;
receiver_report.SetSenderSsrc(sender_ssrc);
receiver_report.SetReportBlocks(CreateReportBlocks(now));
sender->AppendPacket(receiver_report);
if (config_.rtcp_mode == RtcpMode::kCompound ||
!receiver_report.report_blocks().empty()) {
sender->AppendPacket(receiver_report);
}
if (!config_.cname.empty()) {
if (!config_.cname.empty() && !sender->IsEmpty()) {
rtcp::Sdes sdes;
bool added = sdes.AddCName(config_.feedback_ssrc, config_.cname);
RTC_DCHECK(added) << "Failed to add cname " << config_.cname