Move scalability structures from av1 into own subfolder

To make it natural to reuse them for vp9

Bug: webrtc:11999
Change-Id: If2ef7ca16b8be96e0e03bb19211d9f5eb74b2d3d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/188620
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32414}
diff --git a/modules/video_coding/BUILD.gn b/modules/video_coding/BUILD.gn
index 86bd166..5dae630 100644
--- a/modules/video_coding/BUILD.gn
+++ b/modules/video_coding/BUILD.gn
@@ -1004,9 +1004,9 @@
       "../../test/time_controller:time_controller",
       "../rtp_rtcp:rtp_rtcp_format",
       "../rtp_rtcp:rtp_video_header",
-      "codecs/av1:scalability_structure_tests",
       "codecs/av1:video_coding_codecs_av1_tests",
       "deprecated:nack_module",
+      "svc:scalability_structure_tests",
     ]
     absl_deps = [
       "//third_party/abseil-cpp/absl/memory",
diff --git a/modules/video_coding/codecs/av1/BUILD.gn b/modules/video_coding/codecs/av1/BUILD.gn
index b692026..b88bdef 100644
--- a/modules/video_coding/codecs/av1/BUILD.gn
+++ b/modules/video_coding/codecs/av1/BUILD.gn
@@ -34,74 +34,13 @@
   }
 }
 
-rtc_source_set("scalable_video_controller") {
-  sources = [
-    "scalable_video_controller.h",
-    "scalable_video_controller_no_layering.cc",
-    "scalable_video_controller_no_layering.h",
-  ]
-  deps = [
-    "../../../../api/transport/rtp:dependency_descriptor",
-    "../../../../api/video:video_bitrate_allocation",
-    "../../../../common_video/generic_frame_descriptor",
-    "../../../../rtc_base:checks",
-  ]
-  absl_deps = [
-    "//third_party/abseil-cpp/absl/container:inlined_vector",
-    "//third_party/abseil-cpp/absl/types:optional",
-  ]
-}
-
-rtc_source_set("scalability_structures") {
-  sources = [
-    "create_scalability_structure.cc",
-    "create_scalability_structure.h",
-    "scalability_structure_full_svc.cc",
-    "scalability_structure_full_svc.h",
-    "scalability_structure_l1t2.cc",
-    "scalability_structure_l1t2.h",
-    "scalability_structure_l1t3.cc",
-    "scalability_structure_l1t3.h",
-    "scalability_structure_l2t1.cc",
-    "scalability_structure_l2t1.h",
-    "scalability_structure_l2t1_key.cc",
-    "scalability_structure_l2t1_key.h",
-    "scalability_structure_l2t1h.cc",
-    "scalability_structure_l2t1h.h",
-    "scalability_structure_l2t2.cc",
-    "scalability_structure_l2t2.h",
-    "scalability_structure_l2t2_key.cc",
-    "scalability_structure_l2t2_key.h",
-    "scalability_structure_l2t2_key_shift.cc",
-    "scalability_structure_l2t2_key_shift.h",
-    "scalability_structure_l3t1.cc",
-    "scalability_structure_l3t1.h",
-    "scalability_structure_l3t3.cc",
-    "scalability_structure_l3t3.h",
-    "scalability_structure_s2t1.cc",
-    "scalability_structure_s2t1.h",
-  ]
-  deps = [
-    ":scalable_video_controller",
-    "../../../../api/transport/rtp:dependency_descriptor",
-    "../../../../common_video/generic_frame_descriptor",
-    "../../../../rtc_base:checks",
-    "../../../../rtc_base:logging",
-  ]
-  absl_deps = [
-    "//third_party/abseil-cpp/absl/base:core_headers",
-    "//third_party/abseil-cpp/absl/strings",
-    "//third_party/abseil-cpp/absl/types:optional",
-  ]
-}
-
 rtc_library("libaom_av1_encoder") {
   visibility = [ "*" ]
   poisonous = [ "software_video_codecs" ]
   public = [ "libaom_av1_encoder.h" ]
   deps = [
-    ":scalable_video_controller",
     "../../../../api/video_codecs:video_codecs_api",
+    "../../svc:scalable_video_controller",
   ]
   absl_deps = [
     "//third_party/abseil-cpp/absl/algorithm:container",
@@ -127,28 +66,6 @@
 }
 
 if (rtc_include_tests) {
-  rtc_library("scalability_structure_tests") {
-    testonly = true
-    sources = [
-      "scalability_structure_l3t3_unittest.cc",
-      "scalability_structure_test_helpers.cc",
-      "scalability_structure_test_helpers.h",
-      "scalability_structure_unittest.cc",
-    ]
-    deps = [
-      ":scalability_structures",
-      ":scalable_video_controller",
-      "../..:chain_diff_calculator",
-      "../..:frame_dependencies_calculator",
-      "../../../../api/transport/rtp:dependency_descriptor",
-      "../../../../api/video:video_bitrate_allocation",
-      "../../../../api/video:video_frame_type",
-      "../../../../common_video/generic_frame_descriptor",
-      "../../../../test:test_support",
-    ]
-    absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
-  }
-
   rtc_library("video_coding_codecs_av1_tests") {
     testonly = true
 
@@ -160,8 +77,6 @@
       deps = [
         ":libaom_av1_decoder",
         ":libaom_av1_encoder",
-        ":scalability_structures",
-        ":scalable_video_controller",
         "../..:encoded_video_frame_producer",
         "../..:video_codec_interface",
         "../../../../api:mock_video_encoder",
@@ -170,6 +85,8 @@
         "../../../../api/video:video_frame",
         "../../../../api/video_codecs:video_codecs_api",
         "../../../../test:test_support",
+        "../../svc:scalability_structures",
+        "../../svc:scalable_video_controller",
       ]
       absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
     }
diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder.cc b/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
index 5e18b15..435761b 100644
--- a/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
+++ b/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
@@ -25,10 +25,10 @@
 #include "api/video/video_frame.h"
 #include "api/video_codecs/video_codec.h"
 #include "api/video_codecs/video_encoder.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller_no_layering.h"
 #include "modules/video_coding/include/video_codec_interface.h"
 #include "modules/video_coding/include/video_error_codes.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller_no_layering.h"
 #include "rtc_base/checks.h"
 #include "rtc_base/logging.h"
 #include "third_party/libaom/source/libaom/aom/aom_codec.h"
diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder.h b/modules/video_coding/codecs/av1/libaom_av1_encoder.h
index c2f04e6..04a2b65 100644
--- a/modules/video_coding/codecs/av1/libaom_av1_encoder.h
+++ b/modules/video_coding/codecs/av1/libaom_av1_encoder.h
@@ -14,7 +14,7 @@
 
 #include "absl/base/attributes.h"
 #include "api/video_codecs/video_encoder.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder_unittest.cc b/modules/video_coding/codecs/av1/libaom_av1_encoder_unittest.cc
index 341a827..8fb9ead 100644
--- a/modules/video_coding/codecs/av1/libaom_av1_encoder_unittest.cc
+++ b/modules/video_coding/codecs/av1/libaom_av1_encoder_unittest.cc
@@ -16,9 +16,9 @@
 #include "absl/types/optional.h"
 #include "api/video_codecs/video_codec.h"
 #include "api/video_codecs/video_encoder.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l1t2.h"
 #include "modules/video_coding/codecs/test/encoded_video_frame_producer.h"
 #include "modules/video_coding/include/video_error_codes.h"
+#include "modules/video_coding/svc/scalability_structure_l1t2.h"
 #include "test/gmock.h"
 #include "test/gtest.h"
 
diff --git a/modules/video_coding/codecs/av1/libaom_av1_unittest.cc b/modules/video_coding/codecs/av1/libaom_av1_unittest.cc
index 7a577bc..dd3d163 100644
--- a/modules/video_coding/codecs/av1/libaom_av1_unittest.cc
+++ b/modules/video_coding/codecs/av1/libaom_av1_unittest.cc
@@ -22,14 +22,14 @@
 #include "api/units/time_delta.h"
 #include "api/video_codecs/video_codec.h"
 #include "api/video_codecs/video_encoder.h"
-#include "modules/video_coding/codecs/av1/create_scalability_structure.h"
 #include "modules/video_coding/codecs/av1/libaom_av1_decoder.h"
 #include "modules/video_coding/codecs/av1/libaom_av1_encoder.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller_no_layering.h"
 #include "modules/video_coding/codecs/test/encoded_video_frame_producer.h"
 #include "modules/video_coding/include/video_codec_interface.h"
 #include "modules/video_coding/include/video_error_codes.h"
+#include "modules/video_coding/svc/create_scalability_structure.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller_no_layering.h"
 #include "test/gmock.h"
 #include "test/gtest.h"
 
diff --git a/modules/video_coding/svc/BUILD.gn b/modules/video_coding/svc/BUILD.gn
new file mode 100644
index 0000000..6fcf023
--- /dev/null
+++ b/modules/video_coding/svc/BUILD.gn
@@ -0,0 +1,94 @@
+# Copyright (c) 2020 The WebRTC project authors. All Rights Reserved.
+#
+# Use of this source code is governed by a BSD-style license
+# that can be found in the LICENSE file in the root of the source
+# tree. An additional intellectual property rights grant can be found
+# in the file PATENTS.  All contributing project authors may
+# be found in the AUTHORS file in the root of the source tree.
+
+import("../../../webrtc.gni")
+
+rtc_source_set("scalable_video_controller") {
+  sources = [
+    "scalable_video_controller.h",
+    "scalable_video_controller_no_layering.cc",
+    "scalable_video_controller_no_layering.h",
+  ]
+  deps = [
+    "../../../api/transport/rtp:dependency_descriptor",
+    "../../../api/video:video_bitrate_allocation",
+    "../../../common_video/generic_frame_descriptor",
+    "../../../rtc_base:checks",
+  ]
+  absl_deps = [
+    "//third_party/abseil-cpp/absl/container:inlined_vector",
+    "//third_party/abseil-cpp/absl/types:optional",
+  ]
+}
+
+rtc_source_set("scalability_structures") {
+  sources = [
+    "create_scalability_structure.cc",
+    "create_scalability_structure.h",
+    "scalability_structure_full_svc.cc",
+    "scalability_structure_full_svc.h",
+    "scalability_structure_l1t2.cc",
+    "scalability_structure_l1t2.h",
+    "scalability_structure_l1t3.cc",
+    "scalability_structure_l1t3.h",
+    "scalability_structure_l2t1.cc",
+    "scalability_structure_l2t1.h",
+    "scalability_structure_l2t1_key.cc",
+    "scalability_structure_l2t1_key.h",
+    "scalability_structure_l2t1h.cc",
+    "scalability_structure_l2t1h.h",
+    "scalability_structure_l2t2.cc",
+    "scalability_structure_l2t2.h",
+    "scalability_structure_l2t2_key.cc",
+    "scalability_structure_l2t2_key.h",
+    "scalability_structure_l2t2_key_shift.cc",
+    "scalability_structure_l2t2_key_shift.h",
+    "scalability_structure_l3t1.cc",
+    "scalability_structure_l3t1.h",
+    "scalability_structure_l3t3.cc",
+    "scalability_structure_l3t3.h",
+    "scalability_structure_s2t1.cc",
+    "scalability_structure_s2t1.h",
+  ]
+  deps = [
+    ":scalable_video_controller",
+    "../../../api/transport/rtp:dependency_descriptor",
+    "../../../common_video/generic_frame_descriptor",
+    "../../../rtc_base:checks",
+    "../../../rtc_base:logging",
+  ]
+  absl_deps = [
+    "//third_party/abseil-cpp/absl/base:core_headers",
+    "//third_party/abseil-cpp/absl/strings",
+    "//third_party/abseil-cpp/absl/types:optional",
+  ]
+}
+
+if (rtc_include_tests) {
+  rtc_library("scalability_structure_tests") {
+    testonly = true
+    sources = [
+      "scalability_structure_l3t3_unittest.cc",
+      "scalability_structure_test_helpers.cc",
+      "scalability_structure_test_helpers.h",
+      "scalability_structure_unittest.cc",
+    ]
+    deps = [
+      ":scalability_structures",
+      ":scalable_video_controller",
+      "..:chain_diff_calculator",
+      "..:frame_dependencies_calculator",
+      "../../../api/transport/rtp:dependency_descriptor",
+      "../../../api/video:video_bitrate_allocation",
+      "../../../api/video:video_frame_type",
+      "../../../common_video/generic_frame_descriptor",
+      "../../../test:test_support",
+    ]
+    absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
+  }
+}
diff --git a/modules/video_coding/codecs/av1/create_scalability_structure.cc b/modules/video_coding/svc/create_scalability_structure.cc
similarity index 64%
rename from modules/video_coding/codecs/av1/create_scalability_structure.cc
rename to modules/video_coding/svc/create_scalability_structure.cc
index 1737554..a21fab2 100644
--- a/modules/video_coding/codecs/av1/create_scalability_structure.cc
+++ b/modules/video_coding/svc/create_scalability_structure.cc
@@ -7,24 +7,24 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/create_scalability_structure.h"
+#include "modules/video_coding/svc/create_scalability_structure.h"
 
 #include <memory>
 
 #include "absl/strings/string_view.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l1t2.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l1t3.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t1.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t1_key.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t1h.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t2.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t2_key.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t2_key_shift.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l3t1.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_l3t3.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_s2t1.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller_no_layering.h"
+#include "modules/video_coding/svc/scalability_structure_l1t2.h"
+#include "modules/video_coding/svc/scalability_structure_l1t3.h"
+#include "modules/video_coding/svc/scalability_structure_l2t1.h"
+#include "modules/video_coding/svc/scalability_structure_l2t1_key.h"
+#include "modules/video_coding/svc/scalability_structure_l2t1h.h"
+#include "modules/video_coding/svc/scalability_structure_l2t2.h"
+#include "modules/video_coding/svc/scalability_structure_l2t2_key.h"
+#include "modules/video_coding/svc/scalability_structure_l2t2_key_shift.h"
+#include "modules/video_coding/svc/scalability_structure_l3t1.h"
+#include "modules/video_coding/svc/scalability_structure_l3t3.h"
+#include "modules/video_coding/svc/scalability_structure_s2t1.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller_no_layering.h"
 #include "rtc_base/checks.h"
 
 namespace webrtc {
diff --git a/modules/video_coding/codecs/av1/create_scalability_structure.h b/modules/video_coding/svc/create_scalability_structure.h
similarity index 72%
rename from modules/video_coding/codecs/av1/create_scalability_structure.h
rename to modules/video_coding/svc/create_scalability_structure.h
index fe4a283..9a14221 100644
--- a/modules/video_coding/codecs/av1/create_scalability_structure.h
+++ b/modules/video_coding/svc/create_scalability_structure.h
@@ -7,14 +7,14 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_CREATE_SCALABILITY_STRUCTURE_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_CREATE_SCALABILITY_STRUCTURE_H_
+#ifndef MODULES_VIDEO_CODING_SVC_CREATE_SCALABILITY_STRUCTURE_H_
+#define MODULES_VIDEO_CODING_SVC_CREATE_SCALABILITY_STRUCTURE_H_
 
 #include <memory>
 #include <vector>
 
 #include "absl/strings/string_view.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -26,4 +26,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_CREATE_SCALABILITY_STRUCTURE_H_
+#endif  // MODULES_VIDEO_CODING_SVC_CREATE_SCALABILITY_STRUCTURE_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_full_svc.cc b/modules/video_coding/svc/scalability_structure_full_svc.cc
similarity index 98%
rename from modules/video_coding/codecs/av1/scalability_structure_full_svc.cc
rename to modules/video_coding/svc/scalability_structure_full_svc.cc
index 302e3b0..c489b60 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_full_svc.cc
+++ b/modules/video_coding/svc/scalability_structure_full_svc.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_full_svc.h"
+#include "modules/video_coding/svc/scalability_structure_full_svc.h"
 
 #include <utility>
 #include <vector>
diff --git a/modules/video_coding/codecs/av1/scalability_structure_full_svc.h b/modules/video_coding/svc/scalability_structure_full_svc.h
similarity index 88%
rename from modules/video_coding/codecs/av1/scalability_structure_full_svc.h
rename to modules/video_coding/svc/scalability_structure_full_svc.h
index 9513750..d490d6e 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_full_svc.h
+++ b/modules/video_coding/svc/scalability_structure_full_svc.h
@@ -7,15 +7,15 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_FULL_SVC_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_FULL_SVC_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_FULL_SVC_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_FULL_SVC_H_
 
 #include <bitset>
 #include <vector>
 
 #include "api/transport/rtp/dependency_descriptor.h"
 #include "common_video/generic_frame_descriptor/generic_frame_info.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -70,4 +70,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_FULL_SVC_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_FULL_SVC_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l1t2.cc b/modules/video_coding/svc/scalability_structure_l1t2.cc
similarity index 93%
rename from modules/video_coding/codecs/av1/scalability_structure_l1t2.cc
rename to modules/video_coding/svc/scalability_structure_l1t2.cc
index 5f2df54..f639e2d 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l1t2.cc
+++ b/modules/video_coding/svc/scalability_structure_l1t2.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l1t2.h"
+#include "modules/video_coding/svc/scalability_structure_l1t2.h"
 
 #include <vector>
 
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l1t2.h b/modules/video_coding/svc/scalability_structure_l1t2.h
similarity index 72%
rename from modules/video_coding/codecs/av1/scalability_structure_l1t2.h
rename to modules/video_coding/svc/scalability_structure_l1t2.h
index 3d7a2d4..d2f81aa 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l1t2.h
+++ b/modules/video_coding/svc/scalability_structure_l1t2.h
@@ -7,11 +7,11 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L1T2_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L1T2_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L1T2_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L1T2_H_
 
 #include "api/transport/rtp/dependency_descriptor.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_full_svc.h"
+#include "modules/video_coding/svc/scalability_structure_full_svc.h"
 
 namespace webrtc {
 
@@ -25,4 +25,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L1T2_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L1T2_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l1t3.cc b/modules/video_coding/svc/scalability_structure_l1t3.cc
similarity index 94%
rename from modules/video_coding/codecs/av1/scalability_structure_l1t3.cc
rename to modules/video_coding/svc/scalability_structure_l1t3.cc
index 4f46219..1707334 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l1t3.cc
+++ b/modules/video_coding/svc/scalability_structure_l1t3.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l1t3.h"
+#include "modules/video_coding/svc/scalability_structure_l1t3.h"
 
 #include <vector>
 
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l1t3.h b/modules/video_coding/svc/scalability_structure_l1t3.h
similarity index 76%
rename from modules/video_coding/codecs/av1/scalability_structure_l1t3.h
rename to modules/video_coding/svc/scalability_structure_l1t3.h
index fd86b80..00e48cc 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l1t3.h
+++ b/modules/video_coding/svc/scalability_structure_l1t3.h
@@ -7,11 +7,11 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L1T3_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L1T3_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L1T3_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L1T3_H_
 
 #include "api/transport/rtp/dependency_descriptor.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_full_svc.h"
+#include "modules/video_coding/svc/scalability_structure_full_svc.h"
 
 namespace webrtc {
 
@@ -31,4 +31,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L1T3_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L1T3_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t1.cc b/modules/video_coding/svc/scalability_structure_l2t1.cc
similarity index 93%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t1.cc
rename to modules/video_coding/svc/scalability_structure_l2t1.cc
index 4924d89..efd7516 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t1.cc
+++ b/modules/video_coding/svc/scalability_structure_l2t1.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t1.h"
+#include "modules/video_coding/svc/scalability_structure_l2t1.h"
 
 #include <vector>
 
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t1.h b/modules/video_coding/svc/scalability_structure_l2t1.h
similarity index 73%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t1.h
rename to modules/video_coding/svc/scalability_structure_l2t1.h
index 2a81a71..96a0da5 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t1.h
+++ b/modules/video_coding/svc/scalability_structure_l2t1.h
@@ -7,11 +7,11 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1_H_
 
 #include "api/transport/rtp/dependency_descriptor.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_full_svc.h"
+#include "modules/video_coding/svc/scalability_structure_full_svc.h"
 
 namespace webrtc {
 
@@ -28,4 +28,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t1_key.cc b/modules/video_coding/svc/scalability_structure_l2t1_key.cc
similarity index 97%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t1_key.cc
rename to modules/video_coding/svc/scalability_structure_l2t1_key.cc
index 270608a..4b3f322 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t1_key.cc
+++ b/modules/video_coding/svc/scalability_structure_l2t1_key.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t1_key.h"
+#include "modules/video_coding/svc/scalability_structure_l2t1_key.h"
 
 #include <utility>
 #include <vector>
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t1_key.h b/modules/video_coding/svc/scalability_structure_l2t1_key.h
similarity index 78%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t1_key.h
rename to modules/video_coding/svc/scalability_structure_l2t1_key.h
index edddf2e..adafbb9 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t1_key.h
+++ b/modules/video_coding/svc/scalability_structure_l2t1_key.h
@@ -7,14 +7,14 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1_KEY_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1_KEY_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1_KEY_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1_KEY_H_
 
 #include <vector>
 
 #include "api/transport/rtp/dependency_descriptor.h"
 #include "common_video/generic_frame_descriptor/generic_frame_info.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -39,4 +39,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1_KEY_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1_KEY_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t1h.cc b/modules/video_coding/svc/scalability_structure_l2t1h.cc
similarity index 93%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t1h.cc
rename to modules/video_coding/svc/scalability_structure_l2t1h.cc
index 7b05c92..c468276 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t1h.cc
+++ b/modules/video_coding/svc/scalability_structure_l2t1h.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t1h.h"
+#include "modules/video_coding/svc/scalability_structure_l2t1h.h"
 
 #include <utility>
 #include <vector>
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t1h.h b/modules/video_coding/svc/scalability_structure_l2t1h.h
similarity index 63%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t1h.h
rename to modules/video_coding/svc/scalability_structure_l2t1h.h
index ec419d9..7200a10 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t1h.h
+++ b/modules/video_coding/svc/scalability_structure_l2t1h.h
@@ -7,11 +7,11 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1H_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1H_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1H_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1H_H_
 
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t1.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalability_structure_l2t1.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -24,4 +24,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T1H_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T1H_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t2.cc b/modules/video_coding/svc/scalability_structure_l2t2.cc
similarity index 94%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t2.cc
rename to modules/video_coding/svc/scalability_structure_l2t2.cc
index df31b47..a381ad0 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t2.cc
+++ b/modules/video_coding/svc/scalability_structure_l2t2.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t2.h"
+#include "modules/video_coding/svc/scalability_structure_l2t2.h"
 
 #include <vector>
 
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t2.h b/modules/video_coding/svc/scalability_structure_l2t2.h
similarity index 76%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t2.h
rename to modules/video_coding/svc/scalability_structure_l2t2.h
index e1da296..781ea7e 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t2.h
+++ b/modules/video_coding/svc/scalability_structure_l2t2.h
@@ -7,11 +7,11 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_H_
 
 #include "api/transport/rtp/dependency_descriptor.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_full_svc.h"
+#include "modules/video_coding/svc/scalability_structure_full_svc.h"
 
 namespace webrtc {
 
@@ -33,4 +33,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t2_key.cc b/modules/video_coding/svc/scalability_structure_l2t2_key.cc
similarity index 97%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t2_key.cc
rename to modules/video_coding/svc/scalability_structure_l2t2_key.cc
index 1a459dd..0d052c1 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t2_key.cc
+++ b/modules/video_coding/svc/scalability_structure_l2t2_key.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t2_key.h"
+#include "modules/video_coding/svc/scalability_structure_l2t2_key.h"
 
 #include <utility>
 #include <vector>
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t2_key.h b/modules/video_coding/svc/scalability_structure_l2t2_key.h
similarity index 81%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t2_key.h
rename to modules/video_coding/svc/scalability_structure_l2t2_key.h
index 24da4a9..e11d0d4 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t2_key.h
+++ b/modules/video_coding/svc/scalability_structure_l2t2_key.h
@@ -7,14 +7,14 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_KEY_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_KEY_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_KEY_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_KEY_H_
 
 #include <vector>
 
 #include "api/transport/rtp/dependency_descriptor.h"
 #include "common_video/generic_frame_descriptor/generic_frame_info.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -49,4 +49,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_KEY_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_KEY_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t2_key_shift.cc b/modules/video_coding/svc/scalability_structure_l2t2_key_shift.cc
similarity index 97%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t2_key_shift.cc
rename to modules/video_coding/svc/scalability_structure_l2t2_key_shift.cc
index c0fd4ff..72f0317 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t2_key_shift.cc
+++ b/modules/video_coding/svc/scalability_structure_l2t2_key_shift.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l2t2_key_shift.h"
+#include "modules/video_coding/svc/scalability_structure_l2t2_key_shift.h"
 
 #include <utility>
 #include <vector>
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l2t2_key_shift.h b/modules/video_coding/svc/scalability_structure_l2t2_key_shift.h
similarity index 80%
rename from modules/video_coding/codecs/av1/scalability_structure_l2t2_key_shift.h
rename to modules/video_coding/svc/scalability_structure_l2t2_key_shift.h
index f36d2f8..ce3eb1d 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l2t2_key_shift.h
+++ b/modules/video_coding/svc/scalability_structure_l2t2_key_shift.h
@@ -7,14 +7,14 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_KEY_SHIFT_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_KEY_SHIFT_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_KEY_SHIFT_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_KEY_SHIFT_H_
 
 #include <vector>
 
 #include "api/transport/rtp/dependency_descriptor.h"
 #include "common_video/generic_frame_descriptor/generic_frame_info.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -49,4 +49,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L2T2_KEY_SHIFT_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L2T2_KEY_SHIFT_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l3t1.cc b/modules/video_coding/svc/scalability_structure_l3t1.cc
similarity index 94%
rename from modules/video_coding/codecs/av1/scalability_structure_l3t1.cc
rename to modules/video_coding/svc/scalability_structure_l3t1.cc
index f377ce4..d7a5324 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l3t1.cc
+++ b/modules/video_coding/svc/scalability_structure_l3t1.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l3t1.h"
+#include "modules/video_coding/svc/scalability_structure_l3t1.h"
 
 #include <vector>
 
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l3t1.h b/modules/video_coding/svc/scalability_structure_l3t1.h
similarity index 74%
rename from modules/video_coding/codecs/av1/scalability_structure_l3t1.h
rename to modules/video_coding/svc/scalability_structure_l3t1.h
index e62eb9f..dea40e9 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l3t1.h
+++ b/modules/video_coding/svc/scalability_structure_l3t1.h
@@ -7,11 +7,11 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L3T1_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L3T1_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L3T1_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L3T1_H_
 
 #include "api/transport/rtp/dependency_descriptor.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_full_svc.h"
+#include "modules/video_coding/svc/scalability_structure_full_svc.h"
 
 namespace webrtc {
 
@@ -31,4 +31,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L3T1_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L3T1_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l3t3.cc b/modules/video_coding/svc/scalability_structure_l3t3.cc
similarity index 96%
rename from modules/video_coding/codecs/av1/scalability_structure_l3t3.cc
rename to modules/video_coding/svc/scalability_structure_l3t3.cc
index 2d9ebc6..932056b 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l3t3.cc
+++ b/modules/video_coding/svc/scalability_structure_l3t3.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l3t3.h"
+#include "modules/video_coding/svc/scalability_structure_l3t3.h"
 
 #include <vector>
 
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l3t3.h b/modules/video_coding/svc/scalability_structure_l3t3.h
similarity index 74%
rename from modules/video_coding/codecs/av1/scalability_structure_l3t3.h
rename to modules/video_coding/svc/scalability_structure_l3t3.h
index 00eb0dc..3f42726 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l3t3.h
+++ b/modules/video_coding/svc/scalability_structure_l3t3.h
@@ -7,11 +7,11 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L3T3_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L3T3_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L3T3_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L3T3_H_
 
 #include "api/transport/rtp/dependency_descriptor.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_full_svc.h"
+#include "modules/video_coding/svc/scalability_structure_full_svc.h"
 
 namespace webrtc {
 
@@ -26,4 +26,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_L3T3_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_L3T3_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_l3t3_unittest.cc b/modules/video_coding/svc/scalability_structure_l3t3_unittest.cc
similarity index 92%
rename from modules/video_coding/codecs/av1/scalability_structure_l3t3_unittest.cc
rename to modules/video_coding/svc/scalability_structure_l3t3_unittest.cc
index e9e9e19..1a3dc8b 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_l3t3_unittest.cc
+++ b/modules/video_coding/svc/scalability_structure_l3t3_unittest.cc
@@ -7,9 +7,9 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_l3t3.h"
+#include "modules/video_coding/svc/scalability_structure_l3t3.h"
 
-#include "modules/video_coding/codecs/av1/scalability_structure_test_helpers.h"
+#include "modules/video_coding/svc/scalability_structure_test_helpers.h"
 #include "test/gmock.h"
 #include "test/gtest.h"
 
diff --git a/modules/video_coding/codecs/av1/scalability_structure_s2t1.cc b/modules/video_coding/svc/scalability_structure_s2t1.cc
similarity index 97%
rename from modules/video_coding/codecs/av1/scalability_structure_s2t1.cc
rename to modules/video_coding/svc/scalability_structure_s2t1.cc
index 0cf6ee5..a8f8639 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_s2t1.cc
+++ b/modules/video_coding/svc/scalability_structure_s2t1.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_s2t1.h"
+#include "modules/video_coding/svc/scalability_structure_s2t1.h"
 
 #include <utility>
 #include <vector>
diff --git a/modules/video_coding/codecs/av1/scalability_structure_s2t1.h b/modules/video_coding/svc/scalability_structure_s2t1.h
similarity index 78%
rename from modules/video_coding/codecs/av1/scalability_structure_s2t1.h
rename to modules/video_coding/svc/scalability_structure_s2t1.h
index a93a6a9..c24bd3b 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_s2t1.h
+++ b/modules/video_coding/svc/scalability_structure_s2t1.h
@@ -7,14 +7,14 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_S2T1_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_S2T1_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_S2T1_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_S2T1_H_
 
 #include <vector>
 
 #include "api/transport/rtp/dependency_descriptor.h"
 #include "common_video/generic_frame_descriptor/generic_frame_info.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -37,4 +37,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_S2T1_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_S2T1_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_test_helpers.cc b/modules/video_coding/svc/scalability_structure_test_helpers.cc
similarity index 95%
rename from modules/video_coding/codecs/av1/scalability_structure_test_helpers.cc
rename to modules/video_coding/svc/scalability_structure_test_helpers.cc
index adfccfe..f549465 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_test_helpers.cc
+++ b/modules/video_coding/svc/scalability_structure_test_helpers.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalability_structure_test_helpers.h"
+#include "modules/video_coding/svc/scalability_structure_test_helpers.h"
 
 #include <stdint.h>
 
@@ -18,8 +18,8 @@
 #include "api/video/video_bitrate_allocation.h"
 #include "api/video/video_frame_type.h"
 #include "modules/video_coding/chain_diff_calculator.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
 #include "modules/video_coding/frame_dependencies_calculator.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 #include "test/gtest.h"
 
 namespace webrtc {
diff --git a/modules/video_coding/codecs/av1/scalability_structure_test_helpers.h b/modules/video_coding/svc/scalability_structure_test_helpers.h
similarity index 84%
rename from modules/video_coding/codecs/av1/scalability_structure_test_helpers.h
rename to modules/video_coding/svc/scalability_structure_test_helpers.h
index 1f0cf0e..30ebb15 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_test_helpers.h
+++ b/modules/video_coding/svc/scalability_structure_test_helpers.h
@@ -7,8 +7,8 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_TEST_HELPERS_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_TEST_HELPERS_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_TEST_HELPERS_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_TEST_HELPERS_H_
 
 #include <stdint.h>
 
@@ -18,8 +18,8 @@
 #include "api/video/video_bitrate_allocation.h"
 #include "common_video/generic_frame_descriptor/generic_frame_info.h"
 #include "modules/video_coding/chain_diff_calculator.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
 #include "modules/video_coding/frame_dependencies_calculator.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -49,4 +49,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABILITY_STRUCTURE_TEST_HELPERS_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABILITY_STRUCTURE_TEST_HELPERS_H_
diff --git a/modules/video_coding/codecs/av1/scalability_structure_unittest.cc b/modules/video_coding/svc/scalability_structure_unittest.cc
similarity index 98%
rename from modules/video_coding/codecs/av1/scalability_structure_unittest.cc
rename to modules/video_coding/svc/scalability_structure_unittest.cc
index 7f43842..eab1801 100644
--- a/modules/video_coding/codecs/av1/scalability_structure_unittest.cc
+++ b/modules/video_coding/svc/scalability_structure_unittest.cc
@@ -17,9 +17,9 @@
 
 #include "absl/types/optional.h"
 #include "api/transport/rtp/dependency_descriptor.h"
-#include "modules/video_coding/codecs/av1/create_scalability_structure.h"
-#include "modules/video_coding/codecs/av1/scalability_structure_test_helpers.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/create_scalability_structure.h"
+#include "modules/video_coding/svc/scalability_structure_test_helpers.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 #include "test/gmock.h"
 #include "test/gtest.h"
 
diff --git a/modules/video_coding/codecs/av1/scalable_video_controller.h b/modules/video_coding/svc/scalable_video_controller.h
similarity index 95%
rename from modules/video_coding/codecs/av1/scalable_video_controller.h
rename to modules/video_coding/svc/scalable_video_controller.h
index b976ca1..578346e 100644
--- a/modules/video_coding/codecs/av1/scalable_video_controller.h
+++ b/modules/video_coding/svc/scalable_video_controller.h
@@ -7,8 +7,8 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABLE_VIDEO_CONTROLLER_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABLE_VIDEO_CONTROLLER_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABLE_VIDEO_CONTROLLER_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABLE_VIDEO_CONTROLLER_H_
 
 #include <vector>
 
@@ -136,4 +136,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABLE_VIDEO_CONTROLLER_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABLE_VIDEO_CONTROLLER_H_
diff --git a/modules/video_coding/codecs/av1/scalable_video_controller_no_layering.cc b/modules/video_coding/svc/scalable_video_controller_no_layering.cc
similarity index 95%
rename from modules/video_coding/codecs/av1/scalable_video_controller_no_layering.cc
rename to modules/video_coding/svc/scalable_video_controller_no_layering.cc
index 0b2280f..6d8e6e8 100644
--- a/modules/video_coding/codecs/av1/scalable_video_controller_no_layering.cc
+++ b/modules/video_coding/svc/scalable_video_controller_no_layering.cc
@@ -7,7 +7,7 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#include "modules/video_coding/codecs/av1/scalable_video_controller_no_layering.h"
+#include "modules/video_coding/svc/scalable_video_controller_no_layering.h"
 
 #include <utility>
 #include <vector>
diff --git a/modules/video_coding/codecs/av1/scalable_video_controller_no_layering.h b/modules/video_coding/svc/scalable_video_controller_no_layering.h
similarity index 76%
rename from modules/video_coding/codecs/av1/scalable_video_controller_no_layering.h
rename to modules/video_coding/svc/scalable_video_controller_no_layering.h
index 7423667..576761d 100644
--- a/modules/video_coding/codecs/av1/scalable_video_controller_no_layering.h
+++ b/modules/video_coding/svc/scalable_video_controller_no_layering.h
@@ -7,14 +7,14 @@
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
-#ifndef MODULES_VIDEO_CODING_CODECS_AV1_SCALABLE_VIDEO_CONTROLLER_NO_LAYERING_H_
-#define MODULES_VIDEO_CODING_CODECS_AV1_SCALABLE_VIDEO_CONTROLLER_NO_LAYERING_H_
+#ifndef MODULES_VIDEO_CODING_SVC_SCALABLE_VIDEO_CONTROLLER_NO_LAYERING_H_
+#define MODULES_VIDEO_CODING_SVC_SCALABLE_VIDEO_CONTROLLER_NO_LAYERING_H_
 
 #include <vector>
 
 #include "api/transport/rtp/dependency_descriptor.h"
 #include "common_video/generic_frame_descriptor/generic_frame_info.h"
-#include "modules/video_coding/codecs/av1/scalable_video_controller.h"
+#include "modules/video_coding/svc/scalable_video_controller.h"
 
 namespace webrtc {
 
@@ -34,4 +34,4 @@
 
 }  // namespace webrtc
 
-#endif  // MODULES_VIDEO_CODING_CODECS_AV1_SCALABLE_VIDEO_CONTROLLER_NO_LAYERING_H_
+#endif  // MODULES_VIDEO_CODING_SVC_SCALABLE_VIDEO_CONTROLLER_NO_LAYERING_H_