Remove remaining .cc files from rtc_media_base

Also remove all dependencies on rtc_media_base except for a few
that are suspected of being linker directives.

Bug: webrtc:14775
Change-Id: Ic0daf88b5422047d3ed7079ee6af9e689853310c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/341461
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41886}
diff --git a/api/BUILD.gn b/api/BUILD.gn
index cf86d54..16a55f3 100644
--- a/api/BUILD.gn
+++ b/api/BUILD.gn
@@ -374,7 +374,6 @@
     # Basically, don't add stuff here. You might break sensitive downstream
     # targets like pnacl. API should not depend on anything outside of this
     # file, really. All these should arguably go away in time.
-    "../media:rtc_media_base",
     "../media:rtc_media_config",
     "../modules/audio_processing:audio_processing_statistics",
     "../rtc_base:checks",
@@ -586,7 +585,6 @@
     ":track_id_stream_info_map",
     ":video_quality_analyzer_api",
     "../media:media_constants",
-    "../media:rtc_media_base",
     "../modules/audio_processing:api",
     "../rtc_base:checks",
     "../rtc_base:network",
diff --git a/api/video_codecs/BUILD.gn b/api/video_codecs/BUILD.gn
index 3310a51..c731bfa 100644
--- a/api/video_codecs/BUILD.gn
+++ b/api/video_codecs/BUILD.gn
@@ -154,7 +154,6 @@
     "../../media:codec",
     "../../media:media_constants",
     "../../media:rtc_internal_video_codecs",
-    "../../media:rtc_media_base",
     "../../media:rtc_simulcast_encoder_adapter",
     "../../rtc_base:checks",
     "../../rtc_base/system:rtc_export",
@@ -311,7 +310,7 @@
     "../../api/environment",
     "../../api/transport:field_trial_based_config",
     "../../api/video:video_frame",
-    "../../media:rtc_media_base",
+    "../../media:video_common",
     "../../modules/video_coding:video_codec_interface",
     "../../modules/video_coding:video_coding_utility",
     "../../rtc_base:checks",
diff --git a/api/video_codecs/test/BUILD.gn b/api/video_codecs/test/BUILD.gn
index 97371b9..6b749aa7 100644
--- a/api/video_codecs/test/BUILD.gn
+++ b/api/video_codecs/test/BUILD.gn
@@ -33,7 +33,6 @@
       "../..:mock_video_encoder",
       "../../../api:scoped_refptr",
       "../../../media:media_constants",
-      "../../../media:rtc_media_base",
       "../../../modules/video_coding:video_codec_interface",
       "../../../modules/video_coding:video_coding_utility",
       "../../../modules/video_coding:webrtc_vp8",
diff --git a/audio/BUILD.gn b/audio/BUILD.gn
index 8679790..536e192 100644
--- a/audio/BUILD.gn
+++ b/audio/BUILD.gn
@@ -71,7 +71,7 @@
     "../logging:rtc_event_audio",
     "../logging:rtc_stream_config",
     "../media:media_channel",
-    "../media:rtc_media_base",
+    "../media:media_channel_impl",
     "../modules/async_audio_processing",
     "../modules/audio_coding",
     "../modules/audio_coding:audio_coding_module_typedefs",
diff --git a/examples/BUILD.gn b/examples/BUILD.gn
index 2eda751..026c974 100644
--- a/examples/BUILD.gn
+++ b/examples/BUILD.gn
@@ -697,7 +697,7 @@
       "../api/video:video_rtp_headers",
       "../api/video_codecs:video_codecs_api",
       "../media:media_channel",
-      "../media:rtc_media_base",
+      "../media:video_common",
       "../p2p:connection",
       "../p2p:port_allocator",
       "../p2p:rtc_p2p",
@@ -729,7 +729,6 @@
       ]
       configs += [ "//build/config/win:windowed" ]
       deps += [
-        "../media:rtc_media_base",
         "../rtc_base:win32",
         "../rtc_base:win32_socket_init",
       ]
diff --git a/media/BUILD.gn b/media/BUILD.gn
index ee99e58..2042128 100644
--- a/media/BUILD.gn
+++ b/media/BUILD.gn
@@ -53,16 +53,13 @@
   defines = []
   libs = []
   sources = [
-    "base/adapted_video_track_source.cc",
     "base/adapted_video_track_source.h",  # Used downstream
-    "base/video_adapter.cc",
     "base/video_adapter.h",  # Used once downstream
-    "base/video_broadcaster.cc",
     "base/video_broadcaster.h",  # Used downstream
-    "base/video_common.cc",
     "base/video_common.h",  # Used downstream
   ]
   deps = [
+    ":adapted_video_track_source",
     ":codec",
     ":media_channel",
     ":media_channel_impl",
@@ -70,6 +67,9 @@
     ":rtc_media_config",
     ":rtp_utils",
     ":stream_params",
+    ":video_adapter",
+    ":video_broadcaster",
+    ":video_common",
     ":video_source_base",
     "../api:array_view",
     "../api:audio_options_api",
@@ -140,9 +140,52 @@
   ]
 }
 
+rtc_library("adapted_video_track_source") {
+  sources = [
+    "base/adapted_video_track_source.cc",
+    "base/adapted_video_track_source.h",
+  ]
+  deps = [
+    ":video_adapter",
+    ":video_broadcaster",
+    "../api:media_stream_interface",
+    "../api:scoped_refptr",
+    "../api/video:video_frame",
+    "../api/video:video_rtp_headers",
+    "../rtc_base:checks",
+    "../rtc_base:macromagic",
+    "../rtc_base:timeutils",
+    "../rtc_base/synchronization:mutex",
+    "../rtc_base/system:rtc_export",
+  ]
+  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
+}
+
 rtc_source_set("audio_source") {
   sources = [ "base/audio_source.h" ]
   absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
+  deps = []
+}
+
+rtc_library("video_adapter") {
+  sources = [
+    "base/video_adapter.cc",
+    "base/video_adapter.h",
+  ]
+  deps = [
+    ":video_common",
+    "../api/video:video_frame",
+    "../common_video",
+    "../rtc_base:checks",
+    "../rtc_base:logging",
+    "../rtc_base:macromagic",
+    "../rtc_base:stringutils",
+    "../rtc_base:timeutils",
+    "../rtc_base/synchronization:mutex",
+    "../rtc_base/system:rtc_export",
+    "../system_wrappers:field_trial",
+  ]
+  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
 }
 
 rtc_library("video_source_base") {
@@ -159,6 +202,42 @@
   absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container" ]
 }
 
+rtc_library("video_broadcaster") {
+  sources = [
+    "base/video_broadcaster.cc",
+    "base/video_broadcaster.h",  # Used downstream
+  ]
+  deps = [
+    ":video_common",
+    ":video_source_base",
+    "../api:media_stream_interface",
+    "../api:scoped_refptr",
+    "../api:sequence_checker",
+    "../api/video:video_frame",
+    "../api/video:video_rtp_headers",
+    "../rtc_base:checks",
+    "../rtc_base:logging",
+    "../rtc_base:macromagic",
+    "../rtc_base/synchronization:mutex",
+  ]
+  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
+}
+
+rtc_library("video_common") {
+  sources = [
+    "base/video_common.cc",
+    "base/video_common.h",
+  ]
+  deps = [
+    "../api:array_view",
+    "../rtc_base:checks",
+    "../rtc_base:macromagic",
+    "../rtc_base:stringutils",
+    "../rtc_base:timeutils",
+    "../rtc_base/system:rtc_export",
+  ]
+}
+
 rtc_library("media_engine") {
   sources = [
     "base/media_engine.cc",
@@ -168,8 +247,8 @@
     ":codec",
     ":media_channel",
     ":media_channel_impl",
-    ":rtc_media_base",
     ":rtc_media_config",
+    ":video_common",
     "../api:field_trials_view",
     "../api:rtp_parameters",
     "../api/audio_codecs:audio_codecs_api",
@@ -379,8 +458,8 @@
     "engine/simulcast_encoder_adapter.h",
   ]
   deps = [
-    ":rtc_media_base",
     ":rtc_sdp_video_format_utils",
+    ":video_common",
     "../api:fec_controller_api",
     "../api:field_trials_view",
     "../api:scoped_refptr",
@@ -418,7 +497,6 @@
   deps = [
     ":codec",
     ":media_constants",
-    ":rtc_media_base",
     ":rtc_simulcast_encoder_adapter",
     "../api/environment",
     "../api/video:encoded_image",
@@ -481,7 +559,6 @@
     ":media_constants",
     ":media_engine",
     ":rid_description",
-    ":rtc_media_base",
     ":rtc_media_config",
     ":rtp_utils",
     ":stream_params",
@@ -625,7 +702,6 @@
     ":media_channel",
     "../api:rtc_error",
     "../api/transport:datagram_transport_interface",
-    "../media:rtc_media_base",
     "../p2p:packet_transport_internal",
     "../p2p:rtc_p2p",
     "../rtc_base:copy_on_write_buffer",
@@ -646,7 +722,6 @@
       "../api/environment",
       "../api/task_queue:pending_task_safety_flag",
       "../api/task_queue:task_queue",
-      "../media:rtc_media_base",
       "../net/dcsctp/public:factory",
       "../net/dcsctp/public:socket",
       "../net/dcsctp/public:types",
@@ -724,10 +799,10 @@
       ":rtc_audio_video",
       ":rtc_internal_video_codecs",
       ":rtc_media",
-      ":rtc_media_base",
       ":rtc_simulcast_encoder_adapter",
       ":rtp_utils",
       ":stream_params",
+      ":video_common",
       "../api:call_api",
       "../api:fec_controller_api",
       "../api:rtp_parameters",
@@ -827,13 +902,15 @@
         ":rtc_audio_video",
         ":rtc_internal_video_codecs",
         ":rtc_media",
-        ":rtc_media_base",
         ":rtc_media_tests_utils",
         ":rtc_sdp_video_format_utils",
         ":rtc_simulcast_encoder_adapter",
         ":rtp_utils",
         ":stream_params",
         ":turn_utils",
+        ":video_adapter",
+        ":video_broadcaster",
+        ":video_common",
         "../api:create_simulcast_test_fixture_api",
         "../api:field_trials_view",
         "../api:libjingle_peerconnection_api",
diff --git a/modules/video_capture/BUILD.gn b/modules/video_capture/BUILD.gn
index b583814..b834584 100644
--- a/modules/video_capture/BUILD.gn
+++ b/modules/video_capture/BUILD.gn
@@ -33,7 +33,6 @@
     "../../api/video:video_frame",
     "../../api/video:video_rtp_headers",
     "../../common_video",
-    "../../media:rtc_media_base",
     "../../rtc_base:event_tracer",
     "../../rtc_base:logging",
     "../../rtc_base:macromagic",
@@ -56,6 +55,7 @@
       ":video_capture_module",
       "../../api:scoped_refptr",
       "../../api:sequence_checker",
+      "../../media:video_common",
       "../../rtc_base:checks",
       "../../rtc_base:logging",
       "../../rtc_base:macromagic",
diff --git a/modules/video_coding/BUILD.gn b/modules/video_coding/BUILD.gn
index 0e8c04a..0d98fd1 100644
--- a/modules/video_coding/BUILD.gn
+++ b/modules/video_coding/BUILD.gn
@@ -648,7 +648,7 @@
     "../../api/video:video_codec_constants",
     "../../api/video_codecs:video_codecs_api",
     "../../common_video",
-    "../../media:rtc_media_base",
+    "../../media:video_common",
     "../../rtc_base:checks",
     "../../rtc_base:logging",
     "../../rtc_base/experiments:stable_target_rate_experiment",
@@ -692,7 +692,6 @@
     "../../common_video",
     "../../media:codec",
     "../../media:media_constants",
-    "../../media:rtc_media_base",
     "../../rtc_base:buffer",
     "../../rtc_base:checks",
     "../../rtc_base:event_tracer",
@@ -756,7 +755,6 @@
         "../../api/video:video_rtp_headers",
         "../../api/video_codecs:video_codecs_api",
         "../../media:rtc_audio_video",
-        "../../media:rtc_media_base",
         "../../sdk:native_api",
         "../../sdk:peerconnectionfactory_base_objc",
         "../../sdk:videocodec_objc",
@@ -937,7 +935,6 @@
       "../../common_video",
       "../../media:media_constants",
       "../../media:rtc_audio_video",
-      "../../media:rtc_media_base",
       "../../rtc_base:checks",
       "../../rtc_base:logging",
       "../../rtc_base:rtc_base_tests_utils",
@@ -1078,7 +1075,6 @@
       "../../media:codec",
       "../../media:media_constants",
       "../../media:rtc_internal_video_codecs",
-      "../../media:rtc_media_base",
       "../../media:rtc_simulcast_encoder_adapter",
       "../../rtc_base:refcount",
       "../../rtc_base:stringutils",
@@ -1233,7 +1229,6 @@
       "../../common_video/test:utilities",
       "../../media:media_constants",
       "../../media:rtc_internal_video_codecs",
-      "../../media:rtc_media_base",
       "../../rtc_base:checks",
       "../../rtc_base:gunit_helpers",
       "../../rtc_base:histogram_percentile_counter",
diff --git a/pc/BUILD.gn b/pc/BUILD.gn
index a333c91..029afe8 100644
--- a/pc/BUILD.gn
+++ b/pc/BUILD.gn
@@ -83,7 +83,6 @@
     "../media:media_channel",
     "../media:media_channel_impl",
     "../media:rid_description",
-    "../media:rtc_media_base",
     "../media:rtp_utils",
     "../media:stream_params",
     "../modules/rtp_rtcp:rtp_rtcp_format",
@@ -119,7 +118,6 @@
     "../api:libjingle_peerconnection_api",
     "../api:rtp_parameters",
     "../media:media_channel",
-    "../media:rtc_media_base",
   ]
   absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
 }
@@ -344,7 +342,6 @@
     "../api/environment",
     "../call:call_interfaces",
     "../media:media_engine",
-    "../media:rtc_media_base",
   ]
 }
 
@@ -371,7 +368,6 @@
     "../media:media_engine",
     "../media:rid_description",
     "../media:rtc_data_sctp_transport_internal",
-    "../media:rtc_media_base",
     "../media:rtc_sdp_video_format_utils",
     "../media:stream_params",
     "../p2p:ice_credentials_iterator",
@@ -489,7 +485,6 @@
     "../api/units:timestamp",
     "../call:rtp_receiver",
     "../call:video_stream_api",
-    "../media:rtc_media_base",
     "../media:rtp_utils",
     "../modules/rtp_rtcp:rtp_rtcp_format",
     "../p2p:packet_transport_internal",
@@ -567,7 +562,6 @@
     "../api/transport:datagram_transport_interface",
     "../media:media_channel",
     "../media:rtc_data_sctp_transport_internal",
-    "../media:rtc_media_base",
     "../net/dcsctp/public:types",
     "../rtc_base:byte_buffer",
     "../rtc_base:copy_on_write_buffer",
@@ -619,7 +613,6 @@
     "../api:field_trials_view",
     "../api:libjingle_peerconnection_api",
     "../api:rtc_error",
-    "../media:rtc_media_base",
     "../media:rtp_utils",
     "../modules/rtp_rtcp:rtp_rtcp_format",
     "../p2p:packet_transport_internal",
@@ -666,7 +659,6 @@
   deps = [
     "../api:rtp_parameters",
     "../media:codec",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:logging",
   ]
@@ -709,7 +701,6 @@
     "../media:media_channel",
     "../media:media_constants",
     "../media:rid_description",
-    "../media:rtc_media_base",
     "../media:stream_params",
     "../p2p:rtc_p2p",
     "../p2p:transport_description",
@@ -775,7 +766,6 @@
     "../api/transport:datagram_transport_interface",
     "../media:media_channel",
     "../media:rtc_data_sctp_transport_internal",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:copy_on_write_buffer",
     "../rtc_base:logging",
@@ -801,7 +791,6 @@
   deps = [
     "../api:libjingle_peerconnection_api",
     "../media:media_engine",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
   ]
 }
@@ -824,7 +813,6 @@
     "../api/transport:sctp_transport_factory_interface",
     "../media:media_engine",
     "../media:rtc_data_sctp_transport_factory",
-    "../media:rtc_media_base",
     "../p2p:basic_packet_socket_factory",
     "../p2p:rtc_p2p",
     "../rtc_base:checks",
@@ -858,7 +846,6 @@
     "../api/task_queue:pending_task_safety_flag",
     "../api/transport:datagram_transport_interface",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:copy_on_write_buffer",
     "../rtc_base:logging",
@@ -931,7 +918,6 @@
     "../common_video:common_video",
     "../media:media_channel",
     "../media:media_channel_impl",
-    "../media:rtc_media_base",
     "../modules/audio_device",
     "../modules/audio_processing:audio_processing_statistics",
     "../modules/rtp_rtcp:rtp_rtcp_format",
@@ -1031,7 +1017,6 @@
     "../media:codec",
     "../media:media_channel",
     "../media:rid_description",
-    "../media:rtc_media_base",
     "../media:stream_params",
     "../p2p:connection",
     "../p2p:ice_transport_internal",
@@ -1144,7 +1129,6 @@
     "../media:media_channel",
     "../media:media_engine",
     "../media:rid_description",
-    "../media:rtc_media_base",
     "../media:rtc_media_config",
     "../media:stream_params",
     "../modules/rtp_rtcp:rtp_rtcp_format",
@@ -1195,7 +1179,6 @@
     ":simulcast_description",
     "../api:rtc_error",
     "../media:rid_description",
-    "../media:rtc_media_base",
     "../modules/rtp_rtcp:rtp_rtcp_format",
     "../rtc_base:checks",
     "../rtc_base:stringutils",
@@ -1249,7 +1232,6 @@
     "../api/video:video_rtp_headers",
     "../call:call_interfaces",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../modules/audio_processing:audio_processing_statistics",
     "../p2p:connection",
     "../p2p:connection_info",
@@ -1293,7 +1275,6 @@
     "../api:rtp_parameters",
     "../api:scoped_refptr",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../media:stream_params",
     "../rtc_base:checks",
     "../rtc_base:refcount",
@@ -1326,7 +1307,6 @@
     "../media:media_constants",
     "../media:rid_description",
     "../media:rtc_data_sctp_transport_internal",
-    "../media:rtc_media_base",
     "../media:rtp_utils",
     "../media:stream_params",
     "../p2p:candidate_pair_interface",
@@ -1466,7 +1446,6 @@
     "../call:rtp_interfaces",
     "../call:rtp_sender",
     "../media:media_engine",
-    "../media:rtc_media_base",
     "../p2p:basic_packet_socket_factory",
     "../p2p:basic_port_allocator",
     "../p2p:connection",
@@ -1563,7 +1542,6 @@
     "../media:media_channel_impl",
     "../media:media_constants",
     "../media:media_engine",
-    "../media:rtc_media_base",
     "../media:rtc_media_config",
     "../rtc_base:checks",
     "../rtc_base:logging",
@@ -1607,7 +1585,6 @@
     "../api:scoped_refptr",
     "../api:sequence_checker",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:logging",
     "../rtc_base:macromagic",
@@ -1661,7 +1638,7 @@
     "../api/crypto:frame_decryptor_interface",
     "../api/video:video_frame",
     "../media:media_channel",
-    "../media:rtc_media_base",
+    "../media:video_broadcaster",
     "../rtc_base:checks",
     "../rtc_base:logging",
     "../rtc_base:threading",
@@ -1697,7 +1674,6 @@
     "../api/task_queue:pending_task_safety_flag",
     "../api/transport/rtp:rtp_source",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:macromagic",
     "../rtc_base:threading",
@@ -1735,7 +1711,6 @@
     "../api/video:recordable_encoded_frame",
     "../api/video:video_frame",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:logging",
     "../rtc_base:macromagic",
@@ -1760,7 +1735,7 @@
     "../api:sequence_checker",
     "../api/video:recordable_encoded_frame",
     "../api/video:video_frame",
-    "../media:rtc_media_base",
+    "../media:video_broadcaster",
     "../rtc_base:checks",
     "../rtc_base:macromagic",
     "../rtc_base/synchronization:mutex",
@@ -1795,7 +1770,6 @@
     "../api:scoped_refptr",
     "../api:sequence_checker",
     "../api/video:video_frame",
-    "../media:rtc_media_base",
     "../media:video_source_base",
     "../rtc_base:checks",
     "../rtc_base:macromagic",
@@ -1842,7 +1816,6 @@
     "../api:sequence_checker",
     "../api/task_queue",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:event_tracer",
     "../rtc_base:logging",
@@ -1882,7 +1855,6 @@
     "../media:audio_source",
     "../media:media_channel",
     "../media:media_engine",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:event_tracer",
     "../rtc_base:logging",
@@ -1913,7 +1885,6 @@
     "../api:rtp_parameters",
     "../media:codec",
     "../media:media_constants",
-    "../media:rtc_media_base",
     "../media:rtp_utils",
     "../media:stream_params",
     "../rtc_base:checks",
@@ -1985,7 +1956,6 @@
     "../api/video:recordable_encoded_frame",
     "../api/video:video_frame",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:macromagic",
     "../rtc_base/system:no_unique_address",
@@ -2102,7 +2072,6 @@
       "../media:media_constants",
       "../media:rid_description",
       "../media:rtc_data_sctp_transport_internal",
-      "../media:rtc_media_base",
       "../media:rtc_media_tests_utils",
       "../modules/rtp_rtcp:rtp_rtcp_format",
       "../p2p:candidate_pair_interface",
@@ -2533,7 +2502,6 @@
       "../api/video_codecs:video_encoder_factory_template_open_h264_adapter",
       "../call:call_interfaces",
       "../media:rtc_audio_video",
-      "../media:rtc_media_base",
       "../media:rtc_media_tests_utils",
       "../modules/audio_processing",
       "../modules/audio_processing:api",
@@ -2651,7 +2619,6 @@
       "../call/adaptation:resource_adaptation_test_utilities",
       "../logging:fake_rtc_event_log",
       "../media:media_engine",
-      "../media:rtc_media_base",
       "../media:rtc_media_config",
       "../media:rtc_media_tests_utils",
       "../media:stream_params",
@@ -2810,9 +2777,9 @@
       "../media:media_channel",
       "../media:media_channel_impl",
       "../media:rtc_media",
-      "../media:rtc_media_base",
       "../media:rtc_media_tests_utils",
       "../media:rtc_simulcast_encoder_adapter",
+      "../media:video_broadcaster",
       "../modules/audio_device",
       "../modules/audio_processing",
       "../modules/audio_processing:api",
diff --git a/rtc_tools/BUILD.gn b/rtc_tools/BUILD.gn
index 4defa98..6fa2bdb 100644
--- a/rtc_tools/BUILD.gn
+++ b/rtc_tools/BUILD.gn
@@ -218,7 +218,6 @@
       "../call:video_stream_api",
       "../media:media_constants",
       "../media:rtc_audio_video",
-      "../media:rtc_media_base",
       "../rtc_base:rtc_json",
       "../rtc_base:threading",
       "../rtc_base/system:file_wrapper",
diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn
index 6fa1bd2..12584c0 100644
--- a/sdk/BUILD.gn
+++ b/sdk/BUILD.gn
@@ -1670,6 +1670,7 @@
         "../api/video:video_rtp_headers",
         "../api/video_codecs:video_codecs_api",
         "../common_video",
+        "../media:adapted_video_track_source",
         "../media:codec",
         "../media:rtc_audio_video",
         "../media:rtc_media_base",
diff --git a/sdk/android/BUILD.gn b/sdk/android/BUILD.gn
index 61af49f..0efe76a 100644
--- a/sdk/android/BUILD.gn
+++ b/sdk/android/BUILD.gn
@@ -1653,7 +1653,6 @@
       "../../media:media_engine",
       "../../media:rtc_audio_video",
       "../../media:rtc_internal_video_codecs",
-      "../../media:rtc_media_base",
       "../../modules/audio_device",
       "../../modules/audio_device:mock_audio_device",
       "../../modules/audio_processing:api",
diff --git a/test/BUILD.gn b/test/BUILD.gn
index 36ca545..0cec8cd 100644
--- a/test/BUILD.gn
+++ b/test/BUILD.gn
@@ -61,7 +61,6 @@
     "../api/video_codecs:video_codecs_api",
     "../common_video",
     "../media:media_constants",
-    "../media:rtc_media_base",
     "../modules/video_coding:video_codec_interface",
     "../modules/video_coding:video_coding_utility",
     "../modules/video_coding:webrtc_h264",
@@ -123,7 +122,8 @@
     "../api:scoped_refptr",
     "../api/video:video_frame",
     "../api/video:video_rtp_headers",
-    "../media:rtc_media_base",
+    "../media:video_adapter",
+    "../media:video_broadcaster",
     "../rtc_base/synchronization:mutex",
   ]
 }
@@ -210,7 +210,6 @@
     "../api/video:video_rtp_headers",
     "../api/video_codecs:video_codecs_api",
     "../common_video",
-    "../media:rtc_media_base",
     "../rtc_base:checks",
     "../rtc_base:criticalsection",
     "../rtc_base:logging",
@@ -542,7 +541,6 @@
     "../api/video:video_frame",
     "../api/video_codecs:video_codecs_api",
     "../common_video",
-    "../media:rtc_media_base",
     "../modules/video_coding:video_codec_interface",
     "../modules/video_coding:video_coding_utility",
     "../modules/video_coding:webrtc_h264",
@@ -746,7 +744,6 @@
         "../common_video",
         "../media:codec",
         "../media:media_constants",
-        "../media:rtc_media_base",
         "../modules/rtp_rtcp:rtp_rtcp_format",
         "../modules/video_coding:simulcast_test_fixture_impl",
         "../modules/video_coding:video_codec_interface",
diff --git a/test/fuzzers/BUILD.gn b/test/fuzzers/BUILD.gn
index 642b0c8..9e1586f 100644
--- a/test/fuzzers/BUILD.gn
+++ b/test/fuzzers/BUILD.gn
@@ -385,7 +385,6 @@
   sources = [ "turn_unwrap_fuzzer.cc" ]
   deps = [
     "../../media",
-    "../../media:rtc_media_base",
     "../../media:turn_utils",
   ]
 }
diff --git a/test/pc/e2e/BUILD.gn b/test/pc/e2e/BUILD.gn
index 22c9ee4..3b486ab 100644
--- a/test/pc/e2e/BUILD.gn
+++ b/test/pc/e2e/BUILD.gn
@@ -576,7 +576,6 @@
       "../../../api/test/pclf:media_configuration",
       "../../../media:media_constants",
       "../../../media:rid_description",
-      "../../../media:rtc_media_base",
       "../../../p2p:p2p_constants",
       "../../../p2p:rtc_p2p",
       "../../../pc:sdp_utils",
diff --git a/test/peer_scenario/BUILD.gn b/test/peer_scenario/BUILD.gn
index b149a33..5b429ba 100644
--- a/test/peer_scenario/BUILD.gn
+++ b/test/peer_scenario/BUILD.gn
@@ -50,7 +50,6 @@
       "../../api/video_codecs:video_encoder_factory_template_libvpx_vp9_adapter",
       "../../api/video_codecs:video_encoder_factory_template_open_h264_adapter",
       "../../media:rtc_audio_video",
-      "../../media:rtc_media_base",
       "../../media:rtp_utils",
       "../../modules/audio_device:test_audio_device_module",
       "../../modules/rtp_rtcp:rtp_rtcp_format",
diff --git a/test/peer_scenario/tests/BUILD.gn b/test/peer_scenario/tests/BUILD.gn
index fb29489..5e72e4e 100644
--- a/test/peer_scenario/tests/BUILD.gn
+++ b/test/peer_scenario/tests/BUILD.gn
@@ -24,7 +24,6 @@
       "../../../api:rtc_stats_api",
       "../../../api/units:data_rate",
       "../../../api/units:time_delta",
-      "../../../media:rtc_media_base",
       "../../../media:stream_params",
       "../../../modules/rtp_rtcp:rtp_rtcp_format",
       "../../../pc:media_session",
diff --git a/test/scenario/BUILD.gn b/test/scenario/BUILD.gn
index 819c3c9..8d85f6e 100644
--- a/test/scenario/BUILD.gn
+++ b/test/scenario/BUILD.gn
@@ -115,7 +115,6 @@
       "../../media:media_constants",
       "../../media:rtc_audio_video",
       "../../media:rtc_internal_video_codecs",
-      "../../media:rtc_media_base",
       "../../modules/audio_device",
       "../../modules/audio_device:mock_audio_device",
       "../../modules/audio_device:test_audio_device_module",
diff --git a/video/BUILD.gn b/video/BUILD.gn
index 5efcb58..eeabef8 100644
--- a/video/BUILD.gn
+++ b/video/BUILD.gn
@@ -432,7 +432,6 @@
     "../call/adaptation:resource_adaptation",
     "../common_video",
     "../media:media_channel",
-    "../media:rtc_media_base",
     "../modules:module_api_public",
     "../modules/video_coding",
     "../modules/video_coding:video_codec_interface",
@@ -538,7 +537,6 @@
         "../media:media_constants",
         "../media:rtc_audio_video",
         "../media:rtc_internal_video_codecs",
-        "../media:rtc_media_base",
         "../media:rtc_simulcast_encoder_adapter",
         "../modules/audio_device:audio_device_api",
         "../modules/audio_device:audio_device_module_from_input_and_output",
@@ -891,9 +889,9 @@
       "../media:rtc_audio_video",
       "../media:rtc_internal_video_codecs",
       "../media:rtc_media",
-      "../media:rtc_media_base",
       "../media:rtc_media_tests_utils",
       "../media:rtc_simulcast_encoder_adapter",
+      "../media:video_adapter",
       "../modules:module_api_public",
       "../modules/pacing",
       "../modules/rtp_rtcp",
diff --git a/video/config/BUILD.gn b/video/config/BUILD.gn
index 96e254e..b20e119 100644
--- a/video/config/BUILD.gn
+++ b/video/config/BUILD.gn
@@ -25,7 +25,7 @@
     "../../api/video_codecs:video_codecs_api",
     "../../call/adaptation:resource_adaptation",
     "../../media:media_constants",
-    "../../media:rtc_media_base",
+    "../../media:video_adapter",
     "../../modules/video_coding:video_coding_utility",
     "../../modules/video_coding:webrtc_vp9_helpers",
     "../../rtc_base:checks",