Do not register receiver for REMB until it starts receiving
which avoids associating a REMB sender with a inactive m-line. BUG=webrtc:15759,webrtc:11013 Change-Id: I391614856323637522720b5022ca176077f14ec7 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/335281 Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Reviewed-by: Harald Alvestrand <hta@webrtc.org> Commit-Queue: Philipp Hancke <phancke@microsoft.com> Cr-Commit-Position: refs/heads/main@{#41641}
This commit is contained in:
parent
c4dd03dfcb
commit
3cbe63eac1
@ -296,9 +296,12 @@ RtpVideoStreamReceiver2::RtpVideoStreamReceiver2(
|
|||||||
frames_decryptable_(false),
|
frames_decryptable_(false),
|
||||||
absolute_capture_time_interpolator_(clock) {
|
absolute_capture_time_interpolator_(clock) {
|
||||||
packet_sequence_checker_.Detach();
|
packet_sequence_checker_.Detach();
|
||||||
constexpr bool remb_candidate = true;
|
if (packet_router_) {
|
||||||
if (packet_router_)
|
// Do not register as REMB candidate, this is only done when starting to
|
||||||
packet_router_->AddReceiveRtpModule(rtp_rtcp_.get(), remb_candidate);
|
// receive.
|
||||||
|
packet_router_->AddReceiveRtpModule(rtp_rtcp_.get(),
|
||||||
|
/*remb_candidate=*/false);
|
||||||
|
}
|
||||||
|
|
||||||
RTC_DCHECK(config_.rtp.rtcp_mode != RtcpMode::kOff)
|
RTC_DCHECK(config_.rtp.rtcp_mode != RtcpMode::kOff)
|
||||||
<< "A stream should not be configured with RTCP disabled. This value is "
|
<< "A stream should not be configured with RTCP disabled. This value is "
|
||||||
@ -1251,11 +1254,23 @@ void RtpVideoStreamReceiver2::SignalNetworkState(NetworkState state) {
|
|||||||
|
|
||||||
void RtpVideoStreamReceiver2::StartReceive() {
|
void RtpVideoStreamReceiver2::StartReceive() {
|
||||||
RTC_DCHECK_RUN_ON(&packet_sequence_checker_);
|
RTC_DCHECK_RUN_ON(&packet_sequence_checker_);
|
||||||
|
if (!receiving_ && packet_router_) {
|
||||||
|
// Change REMB candidate egibility.
|
||||||
|
packet_router_->RemoveReceiveRtpModule(rtp_rtcp_.get());
|
||||||
|
packet_router_->AddReceiveRtpModule(rtp_rtcp_.get(),
|
||||||
|
/*remb_candidate=*/true);
|
||||||
|
}
|
||||||
receiving_ = true;
|
receiving_ = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void RtpVideoStreamReceiver2::StopReceive() {
|
void RtpVideoStreamReceiver2::StopReceive() {
|
||||||
RTC_DCHECK_RUN_ON(&packet_sequence_checker_);
|
RTC_DCHECK_RUN_ON(&packet_sequence_checker_);
|
||||||
|
if (receiving_ && packet_router_) {
|
||||||
|
// Change REMB candidate egibility.
|
||||||
|
packet_router_->RemoveReceiveRtpModule(rtp_rtcp_.get());
|
||||||
|
packet_router_->AddReceiveRtpModule(rtp_rtcp_.get(),
|
||||||
|
/*remb_candidate=*/false);
|
||||||
|
}
|
||||||
receiving_ = false;
|
receiving_ = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user