[fix] mark original sequence number as sent for rtx packets

This commit is contained in:
dijunkun
2025-04-01 11:17:43 +08:00
parent f9717f8481
commit e399260daa
4 changed files with 3 additions and 13 deletions

View File

@@ -224,10 +224,7 @@ void RtpVideoReceiver::InsertRtpPacket(RtpPacket& rtp_packet) {
size_t osn_offset = rtp_packet.HeaderSize();
uint16_t osn = rtp_packet.Buffer().data()[osn_offset] << 8 |
rtp_packet.Buffer().data()[osn_offset + 1];
uint32_t abs_send_time = 0;
LOG_WARN("!!!!!!!!!!! osn = {}, abs {}", osn,
rtp_packet.GetAbsoluteSendTimestamp(&abs_send_time));
nack_->OnReceivedPacket(rtp_packet.SequenceNumber(), true);
nack_->OnReceivedPacket(osn, true);
} else {
nack_->OnReceivedPacket(rtp_packet.SequenceNumber(), false);
}

View File

@@ -49,9 +49,6 @@ void VideoChannelSend::OnSentRtpPacket(
if (packet->retransmitted_sequence_number()) {
rtp_packet_history_.MarkPacketAsSent(
*packet->retransmitted_sequence_number());
LOG_WARN("resend seq {}, original seq {} mark as sent",
packet->SequenceNumber(),
packet->retransmitted_sequence_number().value());
} else if (packet->PayloadType() != rtp::PAYLOAD_TYPE::H264 - 1) {
rtp_packet_history_.PutRtpPacket(std::move(packet), clock_->CurrentTime());
}
@@ -132,9 +129,6 @@ int32_t VideoChannelSend::ReSendPacket(uint16_t packet_id) {
retransmit_packet->set_retransmitted_sequence_number(
stored_packet.SequenceNumber());
LOG_WARN(
"???????????? resend seq {}",
retransmit_packet->retransmitted_sequence_number().value());
retransmit_packet->set_original_ssrc(stored_packet.Ssrc());
retransmit_packet->BuildRtxPacket();