Remove last traces of deferred sequencing.
Bug: webrtc:11340 Change-Id: I761be67d42959192355f9f6f54ed1f735da1fe96 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228646 Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Reviewed-by: Per Åhgren <peah@webrtc.org> Commit-Queue: Erik Språng <sprang@webrtc.org> Cr-Commit-Position: refs/heads/master@{#34770}
This commit is contained in:

committed by
WebRTC LUCI CQ

parent
ffce8e3ea0
commit
ac09f0dc92
@ -502,8 +502,6 @@ ChannelSend::ChannelSend(
|
|||||||
configuration.rtcp_packet_type_counter_observer = this;
|
configuration.rtcp_packet_type_counter_observer = this;
|
||||||
|
|
||||||
configuration.local_media_ssrc = ssrc;
|
configuration.local_media_ssrc = ssrc;
|
||||||
configuration.use_deferred_sequencing =
|
|
||||||
!field_trial::IsDisabled("WebRTC-Audio-DeferredSequencing");
|
|
||||||
|
|
||||||
rtp_rtcp_ = ModuleRtpRtcpImpl2::Create(configuration);
|
rtp_rtcp_ = ModuleRtpRtcpImpl2::Create(configuration);
|
||||||
rtp_rtcp_->SetSendingMediaStatus(false);
|
rtp_rtcp_->SetSendingMediaStatus(false);
|
||||||
|
@ -231,8 +231,6 @@ std::vector<RtpStreamSender> CreateRtpStreamSenders(
|
|||||||
crypto_options.sframe.require_frame_encryption;
|
crypto_options.sframe.require_frame_encryption;
|
||||||
configuration.extmap_allow_mixed = rtp_config.extmap_allow_mixed;
|
configuration.extmap_allow_mixed = rtp_config.extmap_allow_mixed;
|
||||||
configuration.rtcp_report_interval_ms = rtcp_report_interval_ms;
|
configuration.rtcp_report_interval_ms = rtcp_report_interval_ms;
|
||||||
configuration.use_deferred_sequencing = !absl::StartsWith(
|
|
||||||
trials.Lookup("WebRTC-Video-DeferredSequencing"), "Disabled");
|
|
||||||
configuration.field_trials = &trials;
|
configuration.field_trials = &trials;
|
||||||
|
|
||||||
std::vector<RtpStreamSender> rtp_streams;
|
std::vector<RtpStreamSender> rtp_streams;
|
||||||
|
@ -146,10 +146,6 @@ class RtpRtcpInterface : public RtcpFeedbackSenderInterface {
|
|||||||
// https://tools.ietf.org/html/rfc3611#section-4.4 and #section-4.5
|
// https://tools.ietf.org/html/rfc3611#section-4.4 and #section-4.5
|
||||||
bool non_sender_rtt_measurement = false;
|
bool non_sender_rtt_measurement = false;
|
||||||
|
|
||||||
// If true, sequence numbers are not assigned until after the pacer stage,
|
|
||||||
// in RtpSenderEgress.
|
|
||||||
bool use_deferred_sequencing = false;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
RTC_DISALLOW_COPY_AND_ASSIGN(Configuration);
|
RTC_DISALLOW_COPY_AND_ASSIGN(Configuration);
|
||||||
};
|
};
|
||||||
|
@ -86,7 +86,6 @@ RtpSenderEgress::RtpSenderEgress(const RtpRtcpInterface::Configuration& config,
|
|||||||
!IsTrialSetTo(config.field_trials,
|
!IsTrialSetTo(config.field_trials,
|
||||||
"WebRTC-SendSideBwe-WithOverhead",
|
"WebRTC-SendSideBwe-WithOverhead",
|
||||||
"Disabled")),
|
"Disabled")),
|
||||||
deferred_sequencing_(config.use_deferred_sequencing),
|
|
||||||
clock_(config.clock),
|
clock_(config.clock),
|
||||||
packet_history_(packet_history),
|
packet_history_(packet_history),
|
||||||
transport_(config.outgoing_transport),
|
transport_(config.outgoing_transport),
|
||||||
@ -134,9 +133,6 @@ void RtpSenderEgress::SendPacket(RtpPacketToSend* packet,
|
|||||||
RTC_DCHECK_RUN_ON(&pacer_checker_);
|
RTC_DCHECK_RUN_ON(&pacer_checker_);
|
||||||
RTC_DCHECK(packet);
|
RTC_DCHECK(packet);
|
||||||
|
|
||||||
if (deferred_sequencing_) {
|
|
||||||
// Strict increasing of sequence numbers can only be guaranteed with
|
|
||||||
// deferred sequencing due to raciness with the pacer.
|
|
||||||
if (packet->Ssrc() == ssrc_ &&
|
if (packet->Ssrc() == ssrc_ &&
|
||||||
packet->packet_type() != RtpPacketMediaType::kRetransmission) {
|
packet->packet_type() != RtpPacketMediaType::kRetransmission) {
|
||||||
if (last_sent_seq_.has_value()) {
|
if (last_sent_seq_.has_value()) {
|
||||||
@ -151,7 +147,6 @@ void RtpSenderEgress::SendPacket(RtpPacketToSend* packet,
|
|||||||
}
|
}
|
||||||
last_sent_rtx_seq_ = packet->SequenceNumber();
|
last_sent_rtx_seq_ = packet->SequenceNumber();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
RTC_DCHECK(packet->packet_type().has_value());
|
RTC_DCHECK(packet->packet_type().has_value());
|
||||||
RTC_DCHECK(HasCorrectSsrc(*packet));
|
RTC_DCHECK(HasCorrectSsrc(*packet));
|
||||||
|
@ -134,7 +134,6 @@ class RtpSenderEgress {
|
|||||||
const absl::optional<uint32_t> flexfec_ssrc_;
|
const absl::optional<uint32_t> flexfec_ssrc_;
|
||||||
const bool populate_network2_timestamp_;
|
const bool populate_network2_timestamp_;
|
||||||
const bool send_side_bwe_with_overhead_;
|
const bool send_side_bwe_with_overhead_;
|
||||||
const bool deferred_sequencing_;
|
|
||||||
Clock* const clock_;
|
Clock* const clock_;
|
||||||
RtpPacketHistory* const packet_history_;
|
RtpPacketHistory* const packet_history_;
|
||||||
Transport* const transport_;
|
Transport* const transport_;
|
||||||
|
@ -587,6 +587,7 @@ TEST_P(RtpSenderEgressTest, StreamDataCountersCallbacks) {
|
|||||||
// Send a media packet.
|
// Send a media packet.
|
||||||
std::unique_ptr<RtpPacketToSend> media_packet = BuildRtpPacket();
|
std::unique_ptr<RtpPacketToSend> media_packet = BuildRtpPacket();
|
||||||
media_packet->SetPayloadSize(6);
|
media_packet->SetPayloadSize(6);
|
||||||
|
media_packet->SetSequenceNumber(kStartSequenceNumber);
|
||||||
expected_transmitted_counter.packets += 1;
|
expected_transmitted_counter.packets += 1;
|
||||||
expected_transmitted_counter.payload_bytes += media_packet->payload_size();
|
expected_transmitted_counter.payload_bytes += media_packet->payload_size();
|
||||||
expected_transmitted_counter.header_bytes += media_packet->headers_size();
|
expected_transmitted_counter.header_bytes += media_packet->headers_size();
|
||||||
@ -606,8 +607,9 @@ TEST_P(RtpSenderEgressTest, StreamDataCountersCallbacks) {
|
|||||||
// and retransmitted packet statistics.
|
// and retransmitted packet statistics.
|
||||||
std::unique_ptr<RtpPacketToSend> retransmission_packet = BuildRtpPacket();
|
std::unique_ptr<RtpPacketToSend> retransmission_packet = BuildRtpPacket();
|
||||||
retransmission_packet->set_packet_type(RtpPacketMediaType::kRetransmission);
|
retransmission_packet->set_packet_type(RtpPacketMediaType::kRetransmission);
|
||||||
|
retransmission_packet->SetSequenceNumber(kStartSequenceNumber);
|
||||||
retransmission_packet->set_retransmitted_sequence_number(
|
retransmission_packet->set_retransmitted_sequence_number(
|
||||||
retransmission_packet->SequenceNumber());
|
kStartSequenceNumber);
|
||||||
media_packet->SetPayloadSize(7);
|
media_packet->SetPayloadSize(7);
|
||||||
expected_transmitted_counter.packets += 1;
|
expected_transmitted_counter.packets += 1;
|
||||||
expected_transmitted_counter.payload_bytes +=
|
expected_transmitted_counter.payload_bytes +=
|
||||||
@ -636,6 +638,7 @@ TEST_P(RtpSenderEgressTest, StreamDataCountersCallbacks) {
|
|||||||
std::unique_ptr<RtpPacketToSend> padding_packet = BuildRtpPacket();
|
std::unique_ptr<RtpPacketToSend> padding_packet = BuildRtpPacket();
|
||||||
padding_packet->set_packet_type(RtpPacketMediaType::kPadding);
|
padding_packet->set_packet_type(RtpPacketMediaType::kPadding);
|
||||||
padding_packet->SetPadding(224);
|
padding_packet->SetPadding(224);
|
||||||
|
padding_packet->SetSequenceNumber(kStartSequenceNumber + 1);
|
||||||
expected_transmitted_counter.packets += 1;
|
expected_transmitted_counter.packets += 1;
|
||||||
expected_transmitted_counter.padding_bytes += padding_packet->padding_size();
|
expected_transmitted_counter.padding_bytes += padding_packet->padding_size();
|
||||||
expected_transmitted_counter.header_bytes += padding_packet->headers_size();
|
expected_transmitted_counter.header_bytes += padding_packet->headers_size();
|
||||||
|
Reference in New Issue
Block a user