Remove unnecessary check for TransportSequence number header extension

In order for a packet to be parseable and include a transport sequence number, it has to be negotiated. Thus, there is no need to check again.

Bug: webrtc:14795
Change-Id: I1fa76abdbad11d15ecae80fbaa227bd12a8035bc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290565
Auto-Submit: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39011}
This commit is contained in:
Per K 2023-01-04 17:55:08 +01:00 committed by WebRTC LUCI CQ
parent 175f06f112
commit 73ca7e08e5

View File

@ -79,11 +79,6 @@ bool SendPeriodicFeedback(const std::vector<RtpExtension>& extensions) {
return true;
}
bool HasTransportSequenceNumber(const RtpHeaderExtensionMap& map) {
return map.IsRegistered(kRtpExtensionTransportSequenceNumber) ||
map.IsRegistered(kRtpExtensionTransportSequenceNumber02);
}
const int* FindKeyByValue(const std::map<int, int>& m, int v) {
for (const auto& kv : m) {
if (kv.second == v)
@ -344,12 +339,10 @@ class Call final : public webrtc::Call,
void ConfigureSync(absl::string_view sync_group) RTC_RUN_ON(worker_thread_);
void NotifyBweOfReceivedPacket(const RtpPacketReceived& packet,
MediaType media_type,
bool use_send_side_bwe)
MediaType media_type)
RTC_RUN_ON(worker_thread_);
bool IdentifyReceivedPacket(RtpPacketReceived& packet,
bool* use_send_side_bwe = nullptr);
bool IdentifyReceivedPacket(RtpPacketReceived& packet);
bool RegisterReceiveStream(uint32_t ssrc, ReceiveStreamInterface* stream);
bool UnregisterReceiveStream(uint32_t ssrc);
@ -1463,11 +1456,10 @@ PacketReceiver::DeliveryStatus Call::DeliverRtp(MediaType media_type,
RTC_DCHECK(media_type == MediaType::AUDIO || media_type == MediaType::VIDEO ||
is_keep_alive_packet);
bool use_send_side_bwe = false;
if (!IdentifyReceivedPacket(parsed_packet, &use_send_side_bwe))
if (!IdentifyReceivedPacket(parsed_packet))
return DELIVERY_UNKNOWN_SSRC;
NotifyBweOfReceivedPacket(parsed_packet, media_type, use_send_side_bwe);
NotifyBweOfReceivedPacket(parsed_packet, media_type);
// RateCounters expect input parameter as int, save it as int,
// instead of converting each time it is passed to RateCounter::Add below.
@ -1508,8 +1500,7 @@ PacketReceiver::DeliveryStatus Call::DeliverPacket(
}
void Call::NotifyBweOfReceivedPacket(const RtpPacketReceived& packet,
MediaType media_type,
bool use_send_side_bwe) {
MediaType media_type) {
RTC_DCHECK_RUN_ON(worker_thread_);
RTPHeader header;
packet.GetHeader(&header);
@ -1522,21 +1513,16 @@ void Call::NotifyBweOfReceivedPacket(const RtpPacketReceived& packet,
}
transport_send_->OnReceivedPacket(packet_msg);
if (!use_send_side_bwe && header.extension.hasTransportSequenceNumber) {
// Inconsistent configuration of send side BWE. Do nothing.
return;
}
// For audio, we only support send side BWE.
if (media_type == MediaType::VIDEO ||
(use_send_side_bwe && header.extension.hasTransportSequenceNumber)) {
header.extension.hasTransportSequenceNumber) {
receive_side_cc_.OnReceivedPacket(
packet.arrival_time().ms(),
packet.payload_size() + packet.padding_size(), header);
}
}
bool Call::IdentifyReceivedPacket(RtpPacketReceived& packet,
bool* use_send_side_bwe /*= nullptr*/) {
bool Call::IdentifyReceivedPacket(RtpPacketReceived& packet) {
RTC_DCHECK_RUN_ON(&receive_11993_checker_);
auto it = receive_rtp_config_.find(packet.Ssrc());
if (it == receive_rtp_config_.end()) {
@ -1546,12 +1532,6 @@ bool Call::IdentifyReceivedPacket(RtpPacketReceived& packet,
}
packet.IdentifyExtensions(it->second->GetRtpExtensionMap());
if (use_send_side_bwe) {
*use_send_side_bwe =
HasTransportSequenceNumber(it->second->GetRtpExtensionMap());
}
return true;
}