Reland "Add ability to set RTCP sender ssrc at construction time"

This is a reland of 94c58fd815f0c7c6429aa53a79621ea9ef39c770

Patch set 1 is the original CL.
Patch set 2 introduced a trivial fix. In RtcpSender::SetSSRC(), check
if either current SSRC is 0 or if the SSRC is identical to the current
one. If so, don't schedule an early report.
This prevents a regression in which audio jitter became too low(?)

Original change's description:
> Add ability to set RTCP sender ssrc at construction time
>
> Bug: webrtc:10774
> Change-Id: Iaf5857e24359e9795434bcd0cdbe1658a2f9f5d3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/144632
> Reviewed-by: Åsa Persson <asapersson@webrtc.org>
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28506}

Bug: webrtc:10774
Change-Id: I103dfa48719aa41d6ab633cdac8b3a5c46b54843
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/144565
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28520}
This commit is contained in:
Erik Språng
2019-07-09 20:06:30 +02:00
committed by Commit Bot
parent 4876cb21c8
commit 6f420e4248
6 changed files with 112 additions and 64 deletions

View File

@ -162,6 +162,7 @@ class RtpRtcpModule : public RtcpPacketTypeCounterObserver {
config.rtcp_packet_type_counter_observer = this;
config.rtt_stats = &rtt_stats_;
config.rtcp_report_interval_ms = rtcp_report_interval_ms_;
config.media_send_ssrc = kSenderSsrc;
impl_.reset(new ModuleRtpRtcpImpl(config));
impl_->SetRTCPStatus(RtcpMode::kCompound);