From 4f79b1d2e5f8754237657904dd1e6aa766fb6282 Mon Sep 17 00:00:00 2001 From: Philipp Hancke Date: Fri, 19 Aug 2022 12:45:14 +0200 Subject: [PATCH] cleanup obsolete sps-pps-idr field trial MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit which has been superseeded by the equivalent nonstandard sdp fmtp sps-pps-idr-in-keyframe parameter. Bug: webrtc:11769 Change-Id: I02667a165dd3f86b4685530c43f19531ec654737 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/271121 Commit-Queue: Philipp Hancke Reviewed-by: Erik Språng Cr-Commit-Position: refs/heads/main@{#37839} --- video/end_to_end_tests/codec_tests.cc | 19 ++++---------- video/full_stack_tests.cc | 19 -------------- video/pc_full_stack_tests.cc | 27 -------------------- video/rtp_video_stream_receiver2.cc | 3 +-- video/rtp_video_stream_receiver2_unittest.cc | 22 +++------------- 5 files changed, 10 insertions(+), 80 deletions(-) diff --git a/video/end_to_end_tests/codec_tests.cc b/video/end_to_end_tests/codec_tests.cc index 53ec9f5b17..52e1b99868 100644 --- a/video/end_to_end_tests/codec_tests.cc +++ b/video/end_to_end_tests/codec_tests.cc @@ -225,22 +225,13 @@ TEST_F(CodecEndToEndTest, SendsAndReceivesMultiplexVideoRotation90) { class EndToEndTestH264 : public test::CallTest, public ::testing::WithParamInterface { public: - EndToEndTestH264() : field_trial_(GetParam()) { + EndToEndTestH264() { RegisterRtpExtension(RtpExtension(RtpExtension::kVideoRotationUri, kVideoRotationExtensionId)); } - - private: - test::ScopedFieldTrials field_trial_; }; -INSTANTIATE_TEST_SUITE_P( - SpsPpsIdrIsKeyframe, - EndToEndTestH264, - ::testing::Values("WebRTC-SpsPpsIdrIsH264Keyframe/Disabled/", - "WebRTC-SpsPpsIdrIsH264Keyframe/Enabled/")); - -TEST_P(EndToEndTestH264, SendsAndReceivesH264) { +TEST_F(EndToEndTestH264, SendsAndReceivesH264) { test::FunctionVideoEncoderFactory encoder_factory( []() { return H264Encoder::Create(cricket::VideoCodec("H264")); }); test::FunctionVideoDecoderFactory decoder_factory( @@ -250,7 +241,7 @@ TEST_P(EndToEndTestH264, SendsAndReceivesH264) { RunBaseTest(&test); } -TEST_P(EndToEndTestH264, SendsAndReceivesH264VideoRotation90) { +TEST_F(EndToEndTestH264, SendsAndReceivesH264VideoRotation90) { test::FunctionVideoEncoderFactory encoder_factory( []() { return H264Encoder::Create(cricket::VideoCodec("H264")); }); test::FunctionVideoDecoderFactory decoder_factory( @@ -260,7 +251,7 @@ TEST_P(EndToEndTestH264, SendsAndReceivesH264VideoRotation90) { RunBaseTest(&test); } -TEST_P(EndToEndTestH264, SendsAndReceivesH264PacketizationMode0) { +TEST_F(EndToEndTestH264, SendsAndReceivesH264PacketizationMode0) { cricket::VideoCodec codec = cricket::VideoCodec("H264"); codec.SetParam(cricket::kH264FmtpPacketizationMode, "0"); test::FunctionVideoEncoderFactory encoder_factory( @@ -272,7 +263,7 @@ TEST_P(EndToEndTestH264, SendsAndReceivesH264PacketizationMode0) { RunBaseTest(&test); } -TEST_P(EndToEndTestH264, SendsAndReceivesH264PacketizationMode1) { +TEST_F(EndToEndTestH264, SendsAndReceivesH264PacketizationMode1) { cricket::VideoCodec codec = cricket::VideoCodec("H264"); codec.SetParam(cricket::kH264FmtpPacketizationMode, "1"); test::FunctionVideoEncoderFactory encoder_factory( diff --git a/video/full_stack_tests.cc b/video/full_stack_tests.cc index 3831fdfcef..75fb69bbb5 100644 --- a/video/full_stack_tests.cc +++ b/video/full_stack_tests.cc @@ -425,25 +425,6 @@ TEST(GenericDescriptorTest, fixture->RunWithAnalyzer(foreman_cif); } -TEST(FullStackTest, Foreman_Cif_Delay_50_0_Plr_5_H264_Sps_Pps_Idr) { - test::ScopedFieldTrials override_field_trials( - AppendFieldTrials("WebRTC-SpsPpsIdrIsH264Keyframe/Enabled/")); - auto fixture = CreateVideoQualityTestFixture(); - - ParamsWithLogging foreman_cif; - foreman_cif.call.send_side_bwe = true; - foreman_cif.video[0] = { - true, 352, 288, 30, - 30000, 500000, 2000000, false, - "H264", 1, 0, 0, - false, false, true, ClipNameToClipPath("foreman_cif")}; - foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_H264_sps_pps_idr", 0.0, - 0.0, kFullStackTestDurationSecs}; - foreman_cif.config->loss_percent = 5; - foreman_cif.config->queue_delay_ms = 50; - fixture->RunWithAnalyzer(foreman_cif); -} - // Verify that this is worth the bot time, before enabling. TEST(FullStackTest, Foreman_Cif_Delay_50_0_Plr_5_H264_Flexfec) { auto fixture = CreateVideoQualityTestFixture(); diff --git a/video/pc_full_stack_tests.cc b/video/pc_full_stack_tests.cc index 1f56674562..b0154225b2 100644 --- a/video/pc_full_stack_tests.cc +++ b/video/pc_full_stack_tests.cc @@ -614,33 +614,6 @@ TEST(PCGenericDescriptorTest, fixture->Run(RunParams(TimeDelta::Seconds(kTestDurationSec))); } -TEST(PCFullStackTest, Pc_Foreman_Cif_Delay_50_0_Plr_5_H264_Sps_Pps_Idr) { - test::ScopedFieldTrials override_field_trials( - AppendFieldTrials("WebRTC-SpsPpsIdrIsH264Keyframe/Enabled/")); - - std::unique_ptr network_emulation_manager = - CreateNetworkEmulationManager(); - BuiltInNetworkBehaviorConfig config; - config.loss_percent = 5; - config.queue_delay_ms = 50; - auto fixture = CreateTestFixture( - "pc_foreman_cif_delay_50_0_plr_5_H264_sps_pps_idr", - *network_emulation_manager->time_controller(), - CreateTwoNetworkLinks(network_emulation_manager.get(), config), - [](PeerConfigurer* alice) { - VideoConfig video(352, 288, 30); - video.stream_label = "alice-video"; - auto frame_generator = CreateFromYuvFileFrameGenerator( - video, ClipNameToClipPath("foreman_cif")); - alice->AddVideoConfig(std::move(video), std::move(frame_generator)); - alice->SetVideoCodecs({VideoCodecConfig(cricket::kH264CodecName)}); - }, - [](PeerConfigurer* bob) { - bob->SetVideoCodecs({VideoCodecConfig(cricket::kH264CodecName)}); - }); - fixture->Run(RunParams(TimeDelta::Seconds(kTestDurationSec))); -} - TEST(PCFullStackTest, Pc_Foreman_Cif_Delay_50_0_Plr_5_H264_Flexfec) { std::unique_ptr network_emulation_manager = CreateNetworkEmulationManager(); diff --git a/video/rtp_video_stream_receiver2.cc b/video/rtp_video_stream_receiver2.cc index d2ba1b6e86..346ee7c910 100644 --- a/video/rtp_video_stream_receiver2.cc +++ b/video/rtp_video_stream_receiver2.cc @@ -360,8 +360,7 @@ void RtpVideoStreamReceiver2::AddReceiveCodec( const std::map& codec_params, bool raw_payload) { RTC_DCHECK_RUN_ON(&packet_sequence_checker_); - if (codec_params.count(cricket::kH264FmtpSpsPpsIdrInKeyframe) || - field_trials_.IsEnabled("WebRTC-SpsPpsIdrIsH264Keyframe")) { + if (codec_params.count(cricket::kH264FmtpSpsPpsIdrInKeyframe)) { packet_buffer_.ForceSpsPpsIdrIsH264Keyframe(); } payload_type_map_.emplace( diff --git a/video/rtp_video_stream_receiver2_unittest.cc b/video/rtp_video_stream_receiver2_unittest.cc index 325188e93c..99aa1a2e48 100644 --- a/video/rtp_video_stream_receiver2_unittest.cc +++ b/video/rtp_video_stream_receiver2_unittest.cc @@ -501,18 +501,7 @@ TEST_F(RtpVideoStreamReceiver2Test, GenericKeyFrameBitstreamError) { video_header); } -class RtpVideoStreamReceiver2TestH264 - : public RtpVideoStreamReceiver2Test, - public ::testing::WithParamInterface { - protected: - RtpVideoStreamReceiver2TestH264() : RtpVideoStreamReceiver2Test(GetParam()) {} -}; - -INSTANTIATE_TEST_SUITE_P(SpsPpsIdrIsKeyframe, - RtpVideoStreamReceiver2TestH264, - Values("", "WebRTC-SpsPpsIdrIsH264Keyframe/Enabled/")); - -TEST_P(RtpVideoStreamReceiver2TestH264, InBandSpsPps) { +TEST_F(RtpVideoStreamReceiver2Test, InBandSpsPps) { rtc::CopyOnWriteBuffer sps_data; RtpPacketReceived rtp_packet; RTPVideoHeader sps_video_header = GetDefaultH264VideoHeader(); @@ -559,7 +548,7 @@ TEST_P(RtpVideoStreamReceiver2TestH264, InBandSpsPps) { idr_video_header); } -TEST_P(RtpVideoStreamReceiver2TestH264, OutOfBandFmtpSpsPps) { +TEST_F(RtpVideoStreamReceiver2Test, OutOfBandFmtpSpsPps) { constexpr int kPayloadType = 99; std::map codec_params; // Example parameter sets from https://tools.ietf.org/html/rfc3984#section-8.2 @@ -600,13 +589,10 @@ TEST_P(RtpVideoStreamReceiver2TestH264, OutOfBandFmtpSpsPps) { video_header); } -TEST_P(RtpVideoStreamReceiver2TestH264, ForceSpsPpsIdrIsKeyframe) { +TEST_F(RtpVideoStreamReceiver2Test, ForceSpsPpsIdrIsKeyframe) { constexpr int kPayloadType = 99; std::map codec_params; - if (GetParam() == - "") { // Forcing can be done either with field trial or codec_params. - codec_params.insert({cricket::kH264FmtpSpsPpsIdrInKeyframe, ""}); - } + codec_params.insert({cricket::kH264FmtpSpsPpsIdrInKeyframe, ""}); rtp_video_stream_receiver_->AddReceiveCodec(kPayloadType, kVideoCodecH264, codec_params, /*raw_payload=*/false);