Add AV1 screencast perf test

Bug: b/348784414
Change-Id: If1b3bf2439280eba65cf66cc3699e11a0ef412f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355300
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42524}
diff --git a/video/full_stack_tests.cc b/video/full_stack_tests.cc
index b533c7b..aafae05 100644
--- a/video/full_stack_tests.cc
+++ b/video/full_stack_tests.cc
@@ -698,6 +698,57 @@
   fixture->RunWithAnalyzer(conf_motion_hd);
 }
 
+TEST(FullStackTest, Screenshare_Slides_Simulcast_AV1) {
+  auto fixture = CreateVideoQualityTestFixture();
+  ParamsWithLogging screenshare;
+  screenshare.analyzer = {.test_label = "screenshare_slides_simulcast_AV1",
+                          .test_durations_secs = kFullStackTestDurationSecs};
+  screenshare.call.send_side_bwe = true;
+  screenshare.screenshare[0] = {.enabled = true};
+  screenshare.video[0] = {.enabled = true,
+                          .width = 1850,
+                          .height = 1110,
+                          .fps = 30,
+                          .min_bitrate_bps = 0,
+                          .target_bitrate_bps = 0,
+                          .max_bitrate_bps = 2500000,
+                          .codec = "AV1",
+                          .num_temporal_layers = 2};
+
+  // Set `min_bitrate_bps` and `target_bitrate_bps` to zero to use WebRTC
+  // defaults.
+  VideoQualityTest::Params screenshare_params_low;
+  screenshare_params_low.video[0] = {.enabled = true,
+                                     .width = 1850,
+                                     .height = 1110,
+                                     .fps = 5,
+                                     .min_bitrate_bps = 0,
+                                     .target_bitrate_bps = 0,
+                                     .max_bitrate_bps = 420'000,
+                                     .codec = "AV1",
+                                     .num_temporal_layers = 2};
+
+  VideoQualityTest::Params screenshare_params_high;
+  screenshare_params_high.video[0] = {.enabled = true,
+                                      .width = 1850,
+                                      .height = 1110,
+                                      .fps = 30,
+                                      .min_bitrate_bps = 0,
+                                      .target_bitrate_bps = 0,
+                                      .max_bitrate_bps = 2'500'000,
+                                      .codec = "AV1",
+                                      .num_temporal_layers = 2};
+
+  std::vector<VideoStream> streams = {
+      VideoQualityTest::DefaultVideoStream(screenshare_params_low, 0),
+      VideoQualityTest::DefaultVideoStream(screenshare_params_high, 0)};
+  screenshare.ss[0] = {
+      .streams = streams,
+      .selected_stream = 1,
+  };
+  fixture->RunWithAnalyzer(screenshare);
+}
+
 #if defined(RTC_ENABLE_VP9)
 TEST(FullStackTest, Conference_Motion_Hd_2000kbps_100ms_32pkts_Queue_Vp9) {
   auto fixture = CreateVideoQualityTestFixture();