Populate VideoSendTime extension network2 field when configured
before this CL it was only configured when pacer is used. This CL sets it also when pacer is not used. Move block for setting TransmissionOffset/AbsoluteTime extensions after pacer_ check to stress in pacer case there are set(overwritten) in another function. Bug: None Change-Id: I06a6dd6ec689a25439a75b3baa71340535cd1ff8 Reviewed-on: https://webrtc-review.googlesource.com/c/112126 Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org> Cr-Commit-Position: refs/heads/master@{#25794}
This commit is contained in:
committed by
Commit Bot
parent
31a43319c8
commit
af52b68116
@ -690,8 +690,8 @@ TEST_P(RtpSenderTest, WritesPacerExitToTimingExtension) {
|
||||
EXPECT_EQ(kStoredTimeInMs, video_timing.pacer_exit_delta_ms);
|
||||
}
|
||||
|
||||
TEST_P(RtpSenderTest, WritesNetwork2ToTimingExtension) {
|
||||
SetUpRtpSender(true, true);
|
||||
TEST_P(RtpSenderTest, WritesNetwork2ToTimingExtensionWithPacer) {
|
||||
SetUpRtpSender(/*pacer=*/true, /*populate_network2=*/true);
|
||||
rtp_sender_->SetStorePacketsStatus(true, 10);
|
||||
EXPECT_EQ(0, rtp_sender_->RegisterRtpHeaderExtension(
|
||||
kRtpExtensionVideoTiming, kVideoTimingExtensionId));
|
||||
@ -729,6 +729,31 @@ TEST_P(RtpSenderTest, WritesNetwork2ToTimingExtension) {
|
||||
EXPECT_EQ(kPacerExitMs, video_timing.pacer_exit_delta_ms);
|
||||
}
|
||||
|
||||
TEST_P(RtpSenderTest, WritesNetwork2ToTimingExtensionWithoutPacer) {
|
||||
SetUpRtpSender(/*pacer=*/false, /*populate_network2=*/true);
|
||||
EXPECT_EQ(0, rtp_sender_->RegisterRtpHeaderExtension(
|
||||
kRtpExtensionVideoTiming, kVideoTimingExtensionId));
|
||||
auto packet = rtp_sender_->AllocatePacket();
|
||||
packet->SetMarker(true);
|
||||
packet->set_capture_time_ms(fake_clock_.TimeInMilliseconds());
|
||||
const VideoSendTiming kVideoTiming = {0u, 0u, 0u, 0u, 0u, 0u, true};
|
||||
packet->SetExtension<VideoTimingExtension>(kVideoTiming);
|
||||
EXPECT_TRUE(rtp_sender_->AssignSequenceNumber(packet.get()));
|
||||
|
||||
const int kPropagateTimeMs = 10;
|
||||
fake_clock_.AdvanceTimeMilliseconds(kPropagateTimeMs);
|
||||
|
||||
EXPECT_TRUE(rtp_sender_->SendToNetwork(std::move(packet),
|
||||
kAllowRetransmission,
|
||||
RtpPacketSender::kNormalPriority));
|
||||
|
||||
EXPECT_EQ(1, transport_.packets_sent());
|
||||
absl::optional<VideoSendTiming> video_timing =
|
||||
transport_.last_sent_packet().GetExtension<VideoTimingExtension>();
|
||||
ASSERT_TRUE(video_timing);
|
||||
EXPECT_EQ(kPropagateTimeMs, video_timing->network2_timestamp_delta_ms);
|
||||
}
|
||||
|
||||
TEST_P(RtpSenderTest, TrafficSmoothingWithExtensions) {
|
||||
EXPECT_CALL(mock_paced_sender_, InsertPacket(RtpPacketSender::kNormalPriority,
|
||||
kSsrc, kSeqNum, _, _, _));
|
||||
|
||||
Reference in New Issue
Block a user