diff --git a/api/DEPS b/api/DEPS
index 847cce2..3bc7287 100644
--- a/api/DEPS
+++ b/api/DEPS
@@ -1,6 +1,5 @@
 include_rules = [
   "+third_party/libyuv",
-  "+common_video",
   "+media",
   "+p2p",
   "+pc",
diff --git a/api/video/BUILD.gn b/api/video/BUILD.gn
index d041260..3f71007 100644
--- a/api/video/BUILD.gn
+++ b/api/video/BUILD.gn
@@ -66,6 +66,20 @@
   ]
 }
 
+rtc_source_set("encoded_image") {
+  sources = [
+    "encoded_image.cc",
+    "encoded_image.h",
+  ]
+  deps = [
+    ":video_frame",
+    "../..:webrtc_common",
+    "../../rtc_base:checks",
+    "../../rtc_base:rtc_base_approved",
+    "//third_party/abseil-cpp/absl/types:optional",
+  ]
+}
+
 rtc_source_set("encoded_frame") {
   visibility = [ "*" ]
   sources = [
diff --git a/common_video/video_frame.cc b/api/video/encoded_image.cc
similarity index 96%
rename from common_video/video_frame.cc
rename to api/video/encoded_image.cc
index f461814..5658dfc 100644
--- a/common_video/video_frame.cc
+++ b/api/video/encoded_image.cc
@@ -8,7 +8,7 @@
  *  be found in the AUTHORS file in the root of the source tree.
  */
 
-#include "common_video/include/video_frame.h"
+#include "api/video/encoded_image.h"
 
 #include <string.h>
 
diff --git a/api/video/encoded_image.h b/api/video/encoded_image.h
new file mode 100644
index 0000000..ed58d96
--- /dev/null
+++ b/api/video/encoded_image.h
@@ -0,0 +1,97 @@
+/*
+ *  Copyright (c) 2014 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.
+ */
+
+#ifndef API_VIDEO_ENCODED_IMAGE_H_
+#define API_VIDEO_ENCODED_IMAGE_H_
+
+#include "absl/types/optional.h"
+#include "api/video/video_content_type.h"
+#include "api/video/video_rotation.h"
+#include "api/video/video_timing.h"
+#include "common_types.h"  // NOLINT(build/include)
+
+namespace webrtc {
+
+// TODO(bug.webrtc.org/9378): This is a legacy api class, which is slowly being
+// cleaned up. Direct use of its members is strongly discouraged.
+class EncodedImage {
+ public:
+  static const size_t kBufferPaddingBytesH264;
+
+  // Some decoders require encoded image buffers to be padded with a small
+  // number of additional bytes (due to over-reading byte readers).
+  static size_t GetBufferPaddingBytes(VideoCodecType codec_type);
+
+  EncodedImage();
+  EncodedImage(const EncodedImage&);
+  EncodedImage(uint8_t* buffer, size_t length, size_t size);
+
+  // TODO(nisse): Change style to timestamp(), set_timestamp(), for consistency
+  // with the VideoFrame class.
+  // Set frame timestamp (90kHz).
+  void SetTimestamp(uint32_t timestamp) { timestamp_rtp_ = timestamp; }
+
+  // Get frame timestamp (90kHz).
+  uint32_t Timestamp() const { return timestamp_rtp_; }
+
+  void SetEncodeTime(int64_t encode_start_ms, int64_t encode_finish_ms);
+
+  absl::optional<int> SpatialIndex() const {
+    if (spatial_index_ < 0)
+      return absl::nullopt;
+    return spatial_index_;
+  }
+  void SetSpatialIndex(absl::optional<int> spatial_index) {
+    RTC_DCHECK_GE(spatial_index.value_or(0), 0);
+    RTC_DCHECK_LT(spatial_index.value_or(0), kMaxSpatialLayers);
+    spatial_index_ = spatial_index.value_or(-1);
+  }
+
+  uint32_t _encodedWidth = 0;
+  uint32_t _encodedHeight = 0;
+  // NTP time of the capture time in local timebase in milliseconds.
+  int64_t ntp_time_ms_ = 0;
+  int64_t capture_time_ms_ = 0;
+  FrameType _frameType = kVideoFrameDelta;
+  uint8_t* _buffer;
+  size_t _length;
+  size_t _size;
+  VideoRotation rotation_ = kVideoRotation_0;
+  VideoContentType content_type_ = VideoContentType::UNSPECIFIED;
+  bool _completeFrame = false;
+  int qp_ = -1;  // Quantizer value.
+
+  // When an application indicates non-zero values here, it is taken as an
+  // indication that all future frames will be constrained with those limits
+  // until the application indicates a change again.
+  PlayoutDelay playout_delay_ = {-1, -1};
+
+  struct Timing {
+    uint8_t flags = VideoSendTiming::kInvalid;
+    int64_t encode_start_ms = 0;
+    int64_t encode_finish_ms = 0;
+    int64_t packetization_finish_ms = 0;
+    int64_t pacer_exit_ms = 0;
+    int64_t network_timestamp_ms = 0;
+    int64_t network2_timestamp_ms = 0;
+    int64_t receive_start_ms = 0;
+    int64_t receive_finish_ms = 0;
+  } timing_;
+
+ private:
+  uint32_t timestamp_rtp_ = 0;
+  // -1 means not set. Use a plain int rather than optional, to keep this class
+  // copyable with memcpy.
+  int spatial_index_ = -1;
+};
+
+}  // namespace webrtc
+
+#endif  // API_VIDEO_ENCODED_IMAGE_H_
diff --git a/api/video_codecs/BUILD.gn b/api/video_codecs/BUILD.gn
index 55674d0..f2d7e9e 100644
--- a/api/video_codecs/BUILD.gn
+++ b/api/video_codecs/BUILD.gn
@@ -32,9 +32,9 @@
 
   deps = [
     "../..:webrtc_common",
-    "../../common_video",
     "../../rtc_base:checks",
     "../../rtc_base:rtc_base_approved",
+    "../video:encoded_image",
     "../video:video_bitrate_allocation",
     "../video:video_frame",
     "//third_party/abseil-cpp/absl/types:optional",
diff --git a/api/video_codecs/video_decoder.h b/api/video_codecs/video_decoder.h
index 7995fcc..569e3cf 100644
--- a/api/video_codecs/video_decoder.h
+++ b/api/video_codecs/video_decoder.h
@@ -15,9 +15,9 @@
 #include <string>
 #include <vector>
 
+#include "api/video/encoded_image.h"
 #include "api/video/video_frame.h"
 #include "api/video_codecs/video_codec.h"
-#include "common_video/include/video_frame.h"
 
 namespace webrtc {
 
diff --git a/api/video_codecs/video_encoder.h b/api/video_codecs/video_encoder.h
index 68d9b44..4a4a8b6 100644
--- a/api/video_codecs/video_encoder.h
+++ b/api/video_codecs/video_encoder.h
@@ -16,10 +16,10 @@
 #include <vector>
 
 #include "absl/types/optional.h"
+#include "api/video/encoded_image.h"
 #include "api/video/video_bitrate_allocation.h"
 #include "api/video/video_frame.h"
 #include "api/video_codecs/video_codec.h"
-#include "common_video/include/video_frame.h"
 #include "rtc_base/checks.h"
 
 namespace webrtc {
diff --git a/common_video/BUILD.gn b/common_video/BUILD.gn
index 43780c1..665535a 100644
--- a/common_video/BUILD.gn
+++ b/common_video/BUILD.gn
@@ -34,7 +34,6 @@
     "incoming_video_stream.cc",
     "libyuv/include/webrtc_libyuv.h",
     "libyuv/webrtc_libyuv.cc",
-    "video_frame.cc",
     "video_frame_buffer.cc",
     "video_render_frames.cc",
     "video_render_frames.h",
@@ -42,6 +41,7 @@
 
   deps = [
     "..:webrtc_common",
+    "../api/video:encoded_image",
     "../api/video:video_bitrate_allocation",
     "../api/video:video_bitrate_allocator",
     "../api/video:video_frame",
diff --git a/common_video/include/video_frame.h b/common_video/include/video_frame.h
index 565870e..ba280f2 100644
--- a/common_video/include/video_frame.h
+++ b/common_video/include/video_frame.h
@@ -11,91 +11,7 @@
 #ifndef COMMON_VIDEO_INCLUDE_VIDEO_FRAME_H_
 #define COMMON_VIDEO_INCLUDE_VIDEO_FRAME_H_
 
-// TODO(nisse): This header file should eventually be deleted. The
-// EncodedImage class stays in this file until we have figured out how
-// to refactor and clean up related interfaces, at which point it
-// should be moved to somewhere under api/.
-
-#include "absl/types/optional.h"
-#include "api/video/video_content_type.h"
-#include "api/video/video_rotation.h"
-#include "api/video/video_timing.h"
-#include "common_types.h"  // NOLINT(build/include)
-
-namespace webrtc {
-
-// TODO(pbos): Rename EncodedFrame and reformat this class' members.
-class EncodedImage {
- public:
-  static const size_t kBufferPaddingBytesH264;
-
-  // Some decoders require encoded image buffers to be padded with a small
-  // number of additional bytes (due to over-reading byte readers).
-  static size_t GetBufferPaddingBytes(VideoCodecType codec_type);
-
-  EncodedImage();
-  EncodedImage(const EncodedImage&);
-  EncodedImage(uint8_t* buffer, size_t length, size_t size);
-
-  // TODO(nisse): Change style to timestamp(), set_timestamp(), for consistency
-  // with the VideoFrame class.
-  // Set frame timestamp (90kHz).
-  void SetTimestamp(uint32_t timestamp) { timestamp_rtp_ = timestamp; }
-
-  // Get frame timestamp (90kHz).
-  uint32_t Timestamp() const { return timestamp_rtp_; }
-
-  void SetEncodeTime(int64_t encode_start_ms, int64_t encode_finish_ms);
-
-  absl::optional<int> SpatialIndex() const {
-    if (spatial_index_ < 0)
-      return absl::nullopt;
-    return spatial_index_;
-  }
-  void SetSpatialIndex(absl::optional<int> spatial_index) {
-    RTC_DCHECK_GE(spatial_index.value_or(0), 0);
-    RTC_DCHECK_LT(spatial_index.value_or(0), kMaxSpatialLayers);
-    spatial_index_ = spatial_index.value_or(-1);
-  }
-
-  uint32_t _encodedWidth = 0;
-  uint32_t _encodedHeight = 0;
-  // NTP time of the capture time in local timebase in milliseconds.
-  int64_t ntp_time_ms_ = 0;
-  int64_t capture_time_ms_ = 0;
-  FrameType _frameType = kVideoFrameDelta;
-  uint8_t* _buffer;
-  size_t _length;
-  size_t _size;
-  VideoRotation rotation_ = kVideoRotation_0;
-  VideoContentType content_type_ = VideoContentType::UNSPECIFIED;
-  bool _completeFrame = false;
-  int qp_ = -1;  // Quantizer value.
-
-  // When an application indicates non-zero values here, it is taken as an
-  // indication that all future frames will be constrained with those limits
-  // until the application indicates a change again.
-  PlayoutDelay playout_delay_ = {-1, -1};
-
-  struct Timing {
-    uint8_t flags = VideoSendTiming::kInvalid;
-    int64_t encode_start_ms = 0;
-    int64_t encode_finish_ms = 0;
-    int64_t packetization_finish_ms = 0;
-    int64_t pacer_exit_ms = 0;
-    int64_t network_timestamp_ms = 0;
-    int64_t network2_timestamp_ms = 0;
-    int64_t receive_start_ms = 0;
-    int64_t receive_finish_ms = 0;
-  } timing_;
-
- private:
-  uint32_t timestamp_rtp_ = 0;
-  // -1 means not set. Use a plain int rather than optional, to keep this class
-  // copyable with memcpy.
-  int spatial_index_ = -1;
-};
-
-}  // namespace webrtc
+// TODO(nisse): Delete this file, after downstream code is updated.
+#include "api/video/encoded_image.h"
 
 #endif  // COMMON_VIDEO_INCLUDE_VIDEO_FRAME_H_
diff --git a/modules/video_coding/BUILD.gn b/modules/video_coding/BUILD.gn
index e759a4a..82ac132 100644
--- a/modules/video_coding/BUILD.gn
+++ b/modules/video_coding/BUILD.gn
@@ -17,8 +17,8 @@
   deps = [
     ":video_codec_interface",
     "../../:webrtc_common",
+    "../../api/video:encoded_image",
     "../../api/video:video_frame_i420",
-    "../../common_video:common_video",
     "../../modules:module_api",
     "../../modules:module_api_public",
     "../../modules/video_coding:video_coding_utility",
@@ -261,6 +261,7 @@
     ":video_codec_interface",
     "..:module_api",
     "../..:webrtc_common",
+    "../../api/video:encoded_image",
     "../../api/video:video_bitrate_allocator",
     "../../api/video_codecs:video_codecs_api",
     "../../common_video",
@@ -376,6 +377,7 @@
     ":video_coding_utility",
     "..:module_api",
     "../..:webrtc_common",
+    "../../api/video:encoded_image",
     "../../api/video:video_frame",
     "../../api/video:video_frame_i420",
     "../../api/video_codecs:video_codecs_api",
@@ -420,6 +422,7 @@
     ":video_coding_utility",
     "..:module_api",
     "../..:webrtc_common",
+    "../../api/video:encoded_image",
     "../../api/video:video_frame",
     "../../api/video_codecs:video_codecs_api",
     "../../common_video",
@@ -575,6 +578,7 @@
       ":video_coding_utility",
       "../../:webrtc_common",
       "../../api:simulcast_test_fixture_api",
+      "../../api/video:encoded_image",
       "../../api/video:video_frame",
       "../../api/video:video_frame_i420",
       "../../api/video_codecs:video_codecs_api",
diff --git a/modules/video_coding/codecs/multiplex/multiplex_decoder_adapter.cc b/modules/video_coding/codecs/multiplex/multiplex_decoder_adapter.cc
index cc588d0..a27bc8d 100644
--- a/modules/video_coding/codecs/multiplex/multiplex_decoder_adapter.cc
+++ b/modules/video_coding/codecs/multiplex/multiplex_decoder_adapter.cc
@@ -10,9 +10,9 @@
 
 #include "modules/video_coding/codecs/multiplex/include/multiplex_decoder_adapter.h"
 
+#include "api/video/encoded_image.h"
 #include "api/video/i420_buffer.h"
 #include "api/video/video_frame_buffer.h"
-#include "common_video/include/video_frame.h"
 #include "common_video/include/video_frame_buffer.h"
 #include "common_video/libyuv/include/webrtc_libyuv.h"
 #include "modules/video_coding/codecs/multiplex/include/augmented_video_frame_buffer.h"
diff --git a/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.h b/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.h
index ea37f0c..0d2f9fa 100644
--- a/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.h
+++ b/modules/video_coding/codecs/multiplex/multiplex_encoded_image_packer.h
@@ -14,8 +14,8 @@
 #include <memory>
 #include <vector>
 
+#include "api/video/encoded_image.h"
 #include "common_types.h"  // NOLINT(build/include)
-#include "common_video/include/video_frame.h"
 
 namespace webrtc {
 
diff --git a/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc b/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
index c3a7506..ce64574 100644
--- a/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
+++ b/modules/video_coding/codecs/multiplex/multiplex_encoder_adapter.cc
@@ -12,7 +12,7 @@
 
 #include <cstring>
 
-#include "common_video/include/video_frame.h"
+#include "api/video/encoded_image.h"
 #include "common_video/include/video_frame_buffer.h"
 #include "common_video/libyuv/include/webrtc_libyuv.h"
 #include "modules/include/module_common_types.h"
diff --git a/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.cc b/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.cc
index 20684d1..48838e9 100644
--- a/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.cc
+++ b/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.cc
@@ -12,7 +12,6 @@
 #include <string>
 
 #include "absl/memory/memory.h"
-#include "common_video/libyuv/include/webrtc_libyuv.h"
 #include "modules/video_coding/codecs/vp8/libvpx_vp8_decoder.h"
 #include "rtc_base/checks.h"
 #include "rtc_base/numerics/exp_filter.h"
diff --git a/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.h b/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.h
index 3a6cf92..cff9e89 100644
--- a/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.h
+++ b/modules/video_coding/codecs/vp8/libvpx_vp8_decoder.h
@@ -13,10 +13,10 @@
 
 #include <memory>
 
+#include "api/video/encoded_image.h"
 #include "api/video_codecs/video_decoder.h"
 #include "common_types.h"  // NOLINT(build/include)
 #include "common_video/include/i420_buffer_pool.h"
-#include "common_video/include/video_frame.h"
 #include "modules/include/module_common_types.h"
 #include "modules/video_coding/codecs/vp8/include/vp8.h"
 #include "modules/video_coding/include/video_codec_interface.h"
diff --git a/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h b/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h
index 3c20672..93888e8 100644
--- a/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h
+++ b/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h
@@ -14,10 +14,10 @@
 #include <memory>
 #include <vector>
 
+#include "api/video/encoded_image.h"
 #include "api/video/video_frame.h"
 #include "api/video_codecs/video_encoder.h"
 #include "common_types.h"  // NOLINT(build/include)
-#include "common_video/include/video_frame.h"
 #include "modules/video_coding/codecs/vp8/include/temporal_layers_checker.h"
 #include "modules/video_coding/codecs/vp8/include/vp8.h"
 #include "modules/video_coding/codecs/vp8/include/vp8_temporal_layers.h"
diff --git a/modules/video_coding/encoded_frame.h b/modules/video_coding/encoded_frame.h
index a08eb07..dae383c 100644
--- a/modules/video_coding/encoded_frame.h
+++ b/modules/video_coding/encoded_frame.h
@@ -13,8 +13,8 @@
 
 #include <vector>
 
+#include "api/video/encoded_image.h"
 #include "common_types.h"  // NOLINT(build/include)
-#include "common_video/include/video_frame.h"
 #include "modules/include/module_common_types.h"
 #include "modules/video_coding/include/video_codec_interface.h"
 #include "modules/video_coding/include/video_coding_defines.h"
diff --git a/modules/video_coding/include/video_coding_defines.h b/modules/video_coding/include/video_coding_defines.h
index 7fb6f58..023fc73 100644
--- a/modules/video_coding/include/video_coding_defines.h
+++ b/modules/video_coding/include/video_coding_defines.h
@@ -15,8 +15,6 @@
 #include <vector>
 
 #include "api/video/video_frame.h"
-// For EncodedImage
-#include "common_video/include/video_frame.h"
 #include "modules/include/module_common_types.h"
 
 namespace webrtc {
diff --git a/modules/video_coding/utility/ivf_file_writer.h b/modules/video_coding/utility/ivf_file_writer.h
index 7d917ed..4775bed 100644
--- a/modules/video_coding/utility/ivf_file_writer.h
+++ b/modules/video_coding/utility/ivf_file_writer.h
@@ -14,7 +14,7 @@
 #include <memory>
 #include <string>
 
-#include "common_video/include/video_frame.h"
+#include "api/video/encoded_image.h"
 #include "modules/include/module_common_types.h"
 #include "rtc_base/constructormagic.h"
 #include "rtc_base/file.h"
diff --git a/modules/video_coding/utility/simulcast_test_fixture_impl.cc b/modules/video_coding/utility/simulcast_test_fixture_impl.cc
index 4af526c..2573593 100644
--- a/modules/video_coding/utility/simulcast_test_fixture_impl.cc
+++ b/modules/video_coding/utility/simulcast_test_fixture_impl.cc
@@ -15,8 +15,8 @@
 #include <memory>
 #include <vector>
 
+#include "api/video/encoded_image.h"
 #include "api/video_codecs/sdp_video_format.h"
-#include "common_video/include/video_frame.h"
 #include "common_video/libyuv/include/webrtc_libyuv.h"
 #include "modules/video_coding/include/video_coding_defines.h"
 #include "rtc_base/checks.h"
diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn
index b4f193d..c4bee38 100644
--- a/sdk/BUILD.gn
+++ b/sdk/BUILD.gn
@@ -756,8 +756,8 @@
       deps = [
         ":base_objc",
         ":helpers_objc",
+        "../api/video:encoded_image",
         "../api/video_codecs:video_codecs_api",
-        "../common_video",
         "../modules:module_api",
         "../modules/video_coding:video_codec_interface",
         "../rtc_base:rtc_base",
diff --git a/sdk/android/BUILD.gn b/sdk/android/BUILD.gn
index 63c5bd2..64aece0 100644
--- a/sdk/android/BUILD.gn
+++ b/sdk/android/BUILD.gn
@@ -570,6 +570,7 @@
       ":vp9_jni",  # TODO(bugs.webrtc.org/7925): Remove.
       "../..:webrtc_common",
       "../../api:libjingle_peerconnection_api",
+      "../../api/video:encoded_image",
       "../../api/video:video_frame",
       "../../api/video_codecs:builtin_video_decoder_factory",
       "../../api/video_codecs:builtin_video_encoder_factory",
diff --git a/sdk/android/src/jni/encodedimage.cc b/sdk/android/src/jni/encodedimage.cc
index c0ea28e..21f8336 100644
--- a/sdk/android/src/jni/encodedimage.cc
+++ b/sdk/android/src/jni/encodedimage.cc
@@ -10,7 +10,7 @@
 
 #include "sdk/android/src/jni/encodedimage.h"
 
-#include "common_video/include/video_frame.h"
+#include "api/video/encoded_image.h"
 #include "rtc_base/timeutils.h"
 #include "sdk/android/generated_video_jni/jni/EncodedImage_jni.h"
 #include "sdk/android/native_api/jni/java_types.h"
diff --git a/sdk/objc/api/peerconnection/RTCEncodedImage+Private.h b/sdk/objc/api/peerconnection/RTCEncodedImage+Private.h
index 1b125f1..c77a7ad 100644
--- a/sdk/objc/api/peerconnection/RTCEncodedImage+Private.h
+++ b/sdk/objc/api/peerconnection/RTCEncodedImage+Private.h
@@ -10,7 +10,7 @@
 
 #import "base/RTCEncodedImage.h"
 
-#include "common_video/include/video_frame.h"
+#include "api/video/encoded_image.h"
 
 NS_ASSUME_NONNULL_BEGIN
 
diff --git a/test/BUILD.gn b/test/BUILD.gn
index 28146e0..6a09c9a 100644
--- a/test/BUILD.gn
+++ b/test/BUILD.gn
@@ -532,6 +532,7 @@
   }
   deps = [
     "..:webrtc_common",
+    "../api/video:encoded_image",
     "../api/video:video_frame_i420",
     "../api/video_codecs:video_codecs_api",
     "../common_video:common_video",
diff --git a/test/configurable_frame_size_encoder.cc b/test/configurable_frame_size_encoder.cc
index c0fe296..f037b98 100644
--- a/test/configurable_frame_size_encoder.cc
+++ b/test/configurable_frame_size_encoder.cc
@@ -12,7 +12,7 @@
 
 #include <string.h>
 
-#include "common_video/include/video_frame.h"
+#include "api/video/encoded_image.h"
 #include "modules/video_coding/include/video_codec_interface.h"
 #include "rtc_base/checks.h"
 
diff --git a/video/BUILD.gn b/video/BUILD.gn
index 3273fda..5d691cc 100644
--- a/video/BUILD.gn
+++ b/video/BUILD.gn
@@ -152,6 +152,7 @@
   }
 
   deps = [
+    "../api/video:encoded_image",
     "../api/video:video_bitrate_allocator",
     "../api/video:video_frame",
     "../api/video:video_frame_i420",
@@ -425,6 +426,7 @@
       ":video_mocks",
       ":video_stream_encoder_impl",
       "../api:simulated_network_api",
+      "../api/video:encoded_image",
       "../api/video:video_frame",
       "../api/video:video_frame_i420",
       "../api/video_codecs:video_codecs_api",
diff --git a/video/overuse_frame_detector_unittest.cc b/video/overuse_frame_detector_unittest.cc
index ac01975..9fb53e13 100644
--- a/video/overuse_frame_detector_unittest.cc
+++ b/video/overuse_frame_detector_unittest.cc
@@ -10,8 +10,8 @@
 
 #include <memory>
 
+#include "api/video/encoded_image.h"
 #include "api/video/i420_buffer.h"
-#include "common_video/include/video_frame.h"
 #include "modules/video_coding/utility/quality_scaler.h"
 #include "rtc_base/event.h"
 #include "rtc_base/fakeclock.h"
diff --git a/video/receive_statistics_proxy.h b/video/receive_statistics_proxy.h
index 4daefe0..23cc7038 100644
--- a/video/receive_statistics_proxy.h
+++ b/video/receive_statistics_proxy.h
@@ -19,7 +19,6 @@
 #include "absl/types/optional.h"
 #include "call/video_receive_stream.h"
 #include "common_types.h"  // NOLINT(build/include)
-#include "common_video/include/frame_callback.h"
 #include "modules/video_coding/include/video_coding_defines.h"
 #include "rtc_base/criticalsection.h"
 #include "rtc_base/numerics/histogram_percentile_counter.h"
diff --git a/video/video_receive_stream.h b/video/video_receive_stream.h
index ae5ced5..e5f69a7 100644
--- a/video/video_receive_stream.h
+++ b/video/video_receive_stream.h
@@ -17,7 +17,6 @@
 #include "call/rtp_packet_sink_interface.h"
 #include "call/syncable.h"
 #include "call/video_receive_stream.h"
-#include "common_video/libyuv/include/webrtc_libyuv.h"
 #include "modules/rtp_rtcp/include/flexfec_receiver.h"
 #include "modules/video_coding/frame_buffer2.h"
 #include "modules/video_coding/video_coding_impl.h"
diff --git a/video/video_send_stream.h b/video/video_send_stream.h
index 0945203..1ff64dc 100644
--- a/video/video_send_stream.h
+++ b/video/video_send_stream.h
@@ -20,7 +20,6 @@
 #include "call/bitrate_allocator.h"
 #include "call/video_receive_stream.h"
 #include "call/video_send_stream.h"
-#include "common_video/libyuv/include/webrtc_libyuv.h"
 #include "rtc_base/criticalsection.h"
 #include "rtc_base/event.h"
 #include "rtc_base/task_queue.h"
diff --git a/video/video_send_stream_tests.cc b/video/video_send_stream_tests.cc
index 09ccf1c..e98ad31 100644
--- a/video/video_send_stream_tests.cc
+++ b/video/video_send_stream_tests.cc
@@ -12,12 +12,12 @@
 #include <vector>
 
 #include "api/test/simulated_network.h"
+#include "api/video/encoded_image.h"
 #include "call/call.h"
 #include "call/fake_network_pipe.h"
 #include "call/rtp_transport_controller_send.h"
 #include "call/simulated_network.h"
 #include "common_video/include/frame_callback.h"
-#include "common_video/include/video_frame.h"
 #include "modules/rtp_rtcp/include/rtp_header_parser.h"
 #include "modules/rtp_rtcp/include/rtp_rtcp.h"
 #include "modules/rtp_rtcp/source/rtcp_sender.h"
diff --git a/video/video_stream_encoder.cc b/video/video_stream_encoder.cc
index b7b5a32..786ded4 100644
--- a/video/video_stream_encoder.cc
+++ b/video/video_stream_encoder.cc
@@ -15,8 +15,8 @@
 #include <numeric>
 #include <utility>
 
+#include "api/video/encoded_image.h"
 #include "api/video/i420_buffer.h"
-#include "common_video/include/video_frame.h"
 #include "modules/video_coding/include/video_codec_initializer.h"
 #include "modules/video_coding/include/video_coding.h"
 #include "rtc_base/arraysize.h"
