Move RtpFrameReferenceFinder out of video_coding namespace.

Namespace used because of copy-pasting an old pattern, should never have been used in the first place. Removing it now to make followup refactoring prettier.

Bug: webrtc:12579
Change-Id: I00a80958401cfa368769dc0a1d8bbdd76aaa4ef5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212603
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33536}
diff --git a/modules/video_coding/rtp_frame_id_only_ref_finder.cc b/modules/video_coding/rtp_frame_id_only_ref_finder.cc
index d52b276..8846e68 100644
--- a/modules/video_coding/rtp_frame_id_only_ref_finder.cc
+++ b/modules/video_coding/rtp_frame_id_only_ref_finder.cc
@@ -15,10 +15,9 @@
 #include "rtc_base/logging.h"
 
 namespace webrtc {
-namespace video_coding {
 
 RtpFrameReferenceFinder::ReturnVector RtpFrameIdOnlyRefFinder::ManageFrame(
-    std::unique_ptr<RtpFrameObject> frame,
+    std::unique_ptr<video_coding::RtpFrameObject> frame,
     int frame_id) {
   frame->SetSpatialIndex(0);
   frame->SetId(unwrapper_.Unwrap(frame_id & (kFrameIdLength - 1)));
@@ -31,5 +30,4 @@
   return res;
 }
 
-}  // namespace video_coding
 }  // namespace webrtc
diff --git a/modules/video_coding/rtp_frame_id_only_ref_finder.h b/modules/video_coding/rtp_frame_id_only_ref_finder.h
index 7728ba9..4dc8250 100644
--- a/modules/video_coding/rtp_frame_id_only_ref_finder.h
+++ b/modules/video_coding/rtp_frame_id_only_ref_finder.h
@@ -19,14 +19,13 @@
 #include "rtc_base/numerics/sequence_number_util.h"
 
 namespace webrtc {
-namespace video_coding {
 
 class RtpFrameIdOnlyRefFinder {
  public:
   RtpFrameIdOnlyRefFinder() = default;
 
   RtpFrameReferenceFinder::ReturnVector ManageFrame(
-      std::unique_ptr<RtpFrameObject> frame,
+      std::unique_ptr<video_coding::RtpFrameObject> frame,
       int frame_id);
 
  private:
@@ -34,7 +33,6 @@
   SeqNumUnwrapper<uint16_t, kFrameIdLength> unwrapper_;
 };
 
-}  // namespace video_coding
 }  // namespace webrtc
 
 #endif  // MODULES_VIDEO_CODING_RTP_FRAME_ID_ONLY_REF_FINDER_H_
diff --git a/modules/video_coding/rtp_frame_reference_finder.cc b/modules/video_coding/rtp_frame_reference_finder.cc
index 1a99fc2..4d24546 100644
--- a/modules/video_coding/rtp_frame_reference_finder.cc
+++ b/modules/video_coding/rtp_frame_reference_finder.cc
@@ -21,14 +21,13 @@
 #include "modules/video_coding/rtp_vp9_ref_finder.h"
 
 namespace webrtc {
-namespace video_coding {
 namespace internal {
 class RtpFrameReferenceFinderImpl {
  public:
   RtpFrameReferenceFinderImpl() = default;
 
   RtpFrameReferenceFinder::ReturnVector ManageFrame(
-      std::unique_ptr<RtpFrameObject> frame);
+      std::unique_ptr<video_coding::RtpFrameObject> frame);
   RtpFrameReferenceFinder::ReturnVector PaddingReceived(uint16_t seq_num);
   void ClearTo(uint16_t seq_num);
 
@@ -46,7 +45,7 @@
 };
 
 RtpFrameReferenceFinder::ReturnVector RtpFrameReferenceFinderImpl::ManageFrame(
-    std::unique_ptr<RtpFrameObject> frame) {
+    std::unique_ptr<video_coding::RtpFrameObject> frame) {
   const RTPVideoHeader& video_header = frame->GetRtpVideoHeader();
 
   if (video_header.generic.has_value()) {
@@ -157,7 +156,7 @@
 RtpFrameReferenceFinder::~RtpFrameReferenceFinder() = default;
 
 void RtpFrameReferenceFinder::ManageFrame(
-    std::unique_ptr<RtpFrameObject> frame) {
+    std::unique_ptr<video_coding::RtpFrameObject> frame) {
   // If we have cleared past this frame, drop it.
   if (cleared_to_seq_num_ != -1 &&
       AheadOf<uint16_t>(cleared_to_seq_num_, frame->first_seq_num())) {
@@ -186,5 +185,4 @@
   }
 }
 
-}  // namespace video_coding
 }  // namespace webrtc
diff --git a/modules/video_coding/rtp_frame_reference_finder.h b/modules/video_coding/rtp_frame_reference_finder.h
index c7ee07e..d3b0cc5 100644
--- a/modules/video_coding/rtp_frame_reference_finder.h
+++ b/modules/video_coding/rtp_frame_reference_finder.h
@@ -16,7 +16,6 @@
 #include "modules/video_coding/frame_object.h"
 
 namespace webrtc {
-namespace video_coding {
 namespace internal {
 class RtpFrameReferenceFinderImpl;
 }  // namespace internal
@@ -26,12 +25,19 @@
 class OnCompleteFrameCallback {
  public:
   virtual ~OnCompleteFrameCallback() {}
-  virtual void OnCompleteFrame(std::unique_ptr<EncodedFrame> frame) = 0;
+  virtual void OnCompleteFrame(
+      std::unique_ptr<video_coding::EncodedFrame> frame) = 0;
 };
 
+// TODO(bugs.webrtc.org/12579): Remove when downstream has been update.
+namespace video_coding {
+using OnCompleteFrameCallback = webrtc::OnCompleteFrameCallback;
+}  // namespace video_coding
+
 class RtpFrameReferenceFinder {
  public:
-  using ReturnVector = absl::InlinedVector<std::unique_ptr<RtpFrameObject>, 3>;
+  using ReturnVector =
+      absl::InlinedVector<std::unique_ptr<video_coding::RtpFrameObject>, 3>;
 
   explicit RtpFrameReferenceFinder(OnCompleteFrameCallback* frame_callback);
   explicit RtpFrameReferenceFinder(OnCompleteFrameCallback* frame_callback,
@@ -44,7 +50,7 @@
   //  - We have too many stashed frames (determined by |kMaxStashedFrames|)
   //    so we drop this frame, or
   //  - It gets cleared by ClearTo, which also means we drop it.
-  void ManageFrame(std::unique_ptr<RtpFrameObject> frame);
+  void ManageFrame(std::unique_ptr<video_coding::RtpFrameObject> frame);
 
   // Notifies that padding has been received, which the reference finder
   // might need to calculate the references of a frame.
@@ -65,7 +71,6 @@
   std::unique_ptr<internal::RtpFrameReferenceFinderImpl> impl_;
 };
 
-}  // namespace video_coding
 }  // namespace webrtc
 
 #endif  // MODULES_VIDEO_CODING_RTP_FRAME_REFERENCE_FINDER_H_
diff --git a/modules/video_coding/rtp_frame_reference_finder_unittest.cc b/modules/video_coding/rtp_frame_reference_finder_unittest.cc
index f2ee9b5..de8c1ae 100644
--- a/modules/video_coding/rtp_frame_reference_finder_unittest.cc
+++ b/modules/video_coding/rtp_frame_reference_finder_unittest.cc
@@ -27,7 +27,7 @@
 namespace video_coding {
 
 namespace {
-std::unique_ptr<RtpFrameObject> CreateFrame(
+std::unique_ptr<video_coding::RtpFrameObject> CreateFrame(
     uint16_t seq_num_start,
     uint16_t seq_num_end,
     bool keyframe,
@@ -39,7 +39,7 @@
   video_header.video_type_header = video_type_header;
 
   // clang-format off
-  return std::make_unique<RtpFrameObject>(
+  return std::make_unique<video_coding::RtpFrameObject>(
       seq_num_start,
       seq_num_end,
       /*markerBit=*/true,
@@ -71,7 +71,8 @@
 
   uint16_t Rand() { return rand_.Rand<uint16_t>(); }
 
-  void OnCompleteFrame(std::unique_ptr<EncodedFrame> frame) override {
+  void OnCompleteFrame(
+      std::unique_ptr<video_coding::EncodedFrame> frame) override {
     int64_t pid = frame->Id();
     uint16_t sidx = *frame->SpatialIndex();
     auto frame_it = frames_from_callback_.find(std::make_pair(pid, sidx));
@@ -88,7 +89,7 @@
   void InsertGeneric(uint16_t seq_num_start,
                      uint16_t seq_num_end,
                      bool keyframe) {
-    std::unique_ptr<RtpFrameObject> frame =
+    std::unique_ptr<video_coding::RtpFrameObject> frame =
         CreateFrame(seq_num_start, seq_num_end, keyframe, kVideoCodecGeneric,
                     RTPVideoTypeHeader());
 
@@ -96,7 +97,7 @@
   }
 
   void InsertH264(uint16_t seq_num_start, uint16_t seq_num_end, bool keyframe) {
-    std::unique_ptr<RtpFrameObject> frame =
+    std::unique_ptr<video_coding::RtpFrameObject> frame =
         CreateFrame(seq_num_start, seq_num_end, keyframe, kVideoCodecH264,
                     RTPVideoTypeHeader());
     reference_finder_->ManageFrame(std::move(frame));
@@ -155,9 +156,10 @@
       return f1.first < f2.first;
     }
   };
-  std::
-      map<std::pair<int64_t, uint8_t>, std::unique_ptr<EncodedFrame>, FrameComp>
-          frames_from_callback_;
+  std::map<std::pair<int64_t, uint8_t>,
+           std::unique_ptr<video_coding::EncodedFrame>,
+           FrameComp>
+      frames_from_callback_;
 };
 
 TEST_F(TestRtpFrameReferenceFinder, PaddingPackets) {
@@ -305,7 +307,7 @@
 
 TEST_F(TestRtpFrameReferenceFinder, Av1FrameNoDependencyDescriptor) {
   uint16_t sn = 0xFFFF;
-  std::unique_ptr<RtpFrameObject> frame =
+  std::unique_ptr<video_coding::RtpFrameObject> frame =
       CreateFrame(/*seq_num_start=*/sn, /*seq_num_end=*/sn, /*keyframe=*/true,
                   kVideoCodecAV1, RTPVideoTypeHeader());
 
diff --git a/modules/video_coding/rtp_generic_ref_finder.cc b/modules/video_coding/rtp_generic_ref_finder.cc
index 7a6d750..3a2a94e 100644
--- a/modules/video_coding/rtp_generic_ref_finder.cc
+++ b/modules/video_coding/rtp_generic_ref_finder.cc
@@ -15,10 +15,9 @@
 #include "rtc_base/logging.h"
 
 namespace webrtc {
-namespace video_coding {
 
 RtpFrameReferenceFinder::ReturnVector RtpGenericFrameRefFinder::ManageFrame(
-    std::unique_ptr<RtpFrameObject> frame,
+    std::unique_ptr<video_coding::RtpFrameObject> frame,
     const RTPVideoHeader::GenericDescriptorInfo& descriptor) {
   // Frame IDs are unwrapped in the RtpVideoStreamReceiver, no need to unwrap
   // them here.
@@ -26,7 +25,8 @@
   frame->SetSpatialIndex(descriptor.spatial_index);
 
   RtpFrameReferenceFinder::ReturnVector res;
-  if (EncodedFrame::kMaxFrameReferences < descriptor.dependencies.size()) {
+  if (video_coding::EncodedFrame::kMaxFrameReferences <
+      descriptor.dependencies.size()) {
     RTC_LOG(LS_WARNING) << "Too many dependencies in generic descriptor.";
     return res;
   }
@@ -40,5 +40,4 @@
   return res;
 }
 
-}  // namespace video_coding
 }  // namespace webrtc
diff --git a/modules/video_coding/rtp_generic_ref_finder.h b/modules/video_coding/rtp_generic_ref_finder.h
index 278de26..5f8462a 100644
--- a/modules/video_coding/rtp_generic_ref_finder.h
+++ b/modules/video_coding/rtp_generic_ref_finder.h
@@ -17,18 +17,16 @@
 #include "modules/video_coding/rtp_frame_reference_finder.h"
 
 namespace webrtc {
-namespace video_coding {
 
 class RtpGenericFrameRefFinder {
  public:
   RtpGenericFrameRefFinder() = default;
 
   RtpFrameReferenceFinder::ReturnVector ManageFrame(
-      std::unique_ptr<RtpFrameObject> frame,
+      std::unique_ptr<video_coding::RtpFrameObject> frame,
       const RTPVideoHeader::GenericDescriptorInfo& descriptor);
 };
 
-}  // namespace video_coding
 }  // namespace webrtc
 
 #endif  // MODULES_VIDEO_CODING_RTP_GENERIC_REF_FINDER_H_
diff --git a/modules/video_coding/rtp_seq_num_only_ref_finder.cc b/modules/video_coding/rtp_seq_num_only_ref_finder.cc
index 9b1d07f..3202313 100644
--- a/modules/video_coding/rtp_seq_num_only_ref_finder.cc
+++ b/modules/video_coding/rtp_seq_num_only_ref_finder.cc
@@ -15,10 +15,9 @@
 #include "rtc_base/logging.h"
 
 namespace webrtc {
-namespace video_coding {
 
 RtpFrameReferenceFinder::ReturnVector RtpSeqNumOnlyRefFinder::ManageFrame(
-    std::unique_ptr<RtpFrameObject> frame) {
+    std::unique_ptr<video_coding::RtpFrameObject> frame) {
   FrameDecision decision = ManageFrameInternal(frame.get());
 
   RtpFrameReferenceFinder::ReturnVector res;
@@ -40,7 +39,8 @@
 }
 
 RtpSeqNumOnlyRefFinder::FrameDecision
-RtpSeqNumOnlyRefFinder::ManageFrameInternal(RtpFrameObject* frame) {
+RtpSeqNumOnlyRefFinder::ManageFrameInternal(
+    video_coding::RtpFrameObject* frame) {
   if (frame->frame_type() == VideoFrameType::kVideoFrameKey) {
     last_seq_num_gop_.insert(std::make_pair(
         frame->last_seq_num(),
@@ -184,5 +184,4 @@
   }
 }
 
-}  // namespace video_coding
 }  // namespace webrtc
diff --git a/modules/video_coding/rtp_seq_num_only_ref_finder.h b/modules/video_coding/rtp_seq_num_only_ref_finder.h
index 1b0cc77..e6cf0f6 100644
--- a/modules/video_coding/rtp_seq_num_only_ref_finder.h
+++ b/modules/video_coding/rtp_seq_num_only_ref_finder.h
@@ -23,14 +23,13 @@
 #include "rtc_base/numerics/sequence_number_util.h"
 
 namespace webrtc {
-namespace video_coding {
 
 class RtpSeqNumOnlyRefFinder {
  public:
   RtpSeqNumOnlyRefFinder() = default;
 
   RtpFrameReferenceFinder::ReturnVector ManageFrame(
-      std::unique_ptr<RtpFrameObject> frame);
+      std::unique_ptr<video_coding::RtpFrameObject> frame);
   RtpFrameReferenceFinder::ReturnVector PaddingReceived(uint16_t seq_num);
   void ClearTo(uint16_t seq_num);
 
@@ -40,7 +39,7 @@
 
   enum FrameDecision { kStash, kHandOff, kDrop };
 
-  FrameDecision ManageFrameInternal(RtpFrameObject* frame);
+  FrameDecision ManageFrameInternal(video_coding::RtpFrameObject* frame);
   void RetryStashedFrames(RtpFrameReferenceFinder::ReturnVector& res);
   void UpdateLastPictureIdWithPadding(uint16_t seq_num);
 
@@ -59,14 +58,13 @@
 
   // Frames that have been fully received but didn't have all the information
   // needed to determine their references.
-  std::deque<std::unique_ptr<RtpFrameObject>> stashed_frames_;
+  std::deque<std::unique_ptr<video_coding::RtpFrameObject>> stashed_frames_;
 
   // Unwrapper used to unwrap generic RTP streams. In a generic stream we derive
   // a picture id from the packet sequence number.
   SeqNumUnwrapper<uint16_t> rtp_seq_num_unwrapper_;
 };
 
-}  // namespace video_coding
 }  // namespace webrtc
 
 #endif  // MODULES_VIDEO_CODING_RTP_SEQ_NUM_ONLY_REF_FINDER_H_
diff --git a/modules/video_coding/rtp_vp8_ref_finder.cc b/modules/video_coding/rtp_vp8_ref_finder.cc
index af0e13a..0074558 100644
--- a/modules/video_coding/rtp_vp8_ref_finder.cc
+++ b/modules/video_coding/rtp_vp8_ref_finder.cc
@@ -15,10 +15,9 @@
 #include "rtc_base/logging.h"
 
 namespace webrtc {
-namespace video_coding {
 
 RtpFrameReferenceFinder::ReturnVector RtpVp8RefFinder::ManageFrame(
-    std::unique_ptr<RtpFrameObject> frame) {
+    std::unique_ptr<video_coding::RtpFrameObject> frame) {
   FrameDecision decision = ManageFrameInternal(frame.get());
 
   RtpFrameReferenceFinder::ReturnVector res;
@@ -40,7 +39,7 @@
 }
 
 RtpVp8RefFinder::FrameDecision RtpVp8RefFinder::ManageFrameInternal(
-    RtpFrameObject* frame) {
+    video_coding::RtpFrameObject* frame) {
   const RTPVideoHeader& video_header = frame->GetRtpVideoHeader();
   const RTPVideoHeaderVP8& codec_header =
       absl::get<RTPVideoHeaderVP8>(video_header.video_type_header);
@@ -179,7 +178,7 @@
   return kHandOff;
 }
 
-void RtpVp8RefFinder::UpdateLayerInfoVp8(RtpFrameObject* frame,
+void RtpVp8RefFinder::UpdateLayerInfoVp8(video_coding::RtpFrameObject* frame,
                                          int64_t unwrapped_tl0,
                                          uint8_t temporal_idx) {
   auto layer_info_it = layer_info_.find(unwrapped_tl0);
@@ -227,7 +226,7 @@
   } while (complete_frame);
 }
 
-void RtpVp8RefFinder::UnwrapPictureIds(RtpFrameObject* frame) {
+void RtpVp8RefFinder::UnwrapPictureIds(video_coding::RtpFrameObject* frame) {
   for (size_t i = 0; i < frame->num_references; ++i)
     frame->references[i] = unwrapper_.Unwrap(frame->references[i]);
   frame->SetId(unwrapper_.Unwrap(frame->Id()));
@@ -244,5 +243,4 @@
   }
 }
 
-}  // namespace video_coding
 }  // namespace webrtc
diff --git a/modules/video_coding/rtp_vp8_ref_finder.h b/modules/video_coding/rtp_vp8_ref_finder.h
index 55d2de9..4ac4d10 100644
--- a/modules/video_coding/rtp_vp8_ref_finder.h
+++ b/modules/video_coding/rtp_vp8_ref_finder.h
@@ -22,14 +22,13 @@
 #include "rtc_base/numerics/sequence_number_util.h"
 
 namespace webrtc {
-namespace video_coding {
 
 class RtpVp8RefFinder {
  public:
   RtpVp8RefFinder() = default;
 
   RtpFrameReferenceFinder::ReturnVector ManageFrame(
-      std::unique_ptr<RtpFrameObject> frame);
+      std::unique_ptr<video_coding::RtpFrameObject> frame);
   void ClearTo(uint16_t seq_num);
 
  private:
@@ -41,12 +40,12 @@
 
   enum FrameDecision { kStash, kHandOff, kDrop };
 
-  FrameDecision ManageFrameInternal(RtpFrameObject* frame);
+  FrameDecision ManageFrameInternal(video_coding::RtpFrameObject* frame);
   void RetryStashedFrames(RtpFrameReferenceFinder::ReturnVector& res);
-  void UpdateLayerInfoVp8(RtpFrameObject* frame,
+  void UpdateLayerInfoVp8(video_coding::RtpFrameObject* frame,
                           int64_t unwrapped_tl0,
                           uint8_t temporal_idx);
-  void UnwrapPictureIds(RtpFrameObject* frame);
+  void UnwrapPictureIds(video_coding::RtpFrameObject* frame);
 
   // Save the last picture id in order to detect when there is a gap in frames
   // that have not yet been fully received.
@@ -59,7 +58,7 @@
 
   // Frames that have been fully received but didn't have all the information
   // needed to determine their references.
-  std::deque<std::unique_ptr<RtpFrameObject>> stashed_frames_;
+  std::deque<std::unique_ptr<video_coding::RtpFrameObject>> stashed_frames_;
 
   // Holds the information about the last completed frame for a given temporal
   // layer given an unwrapped Tl0 picture index.
@@ -72,7 +71,6 @@
   SeqNumUnwrapper<uint8_t> tl0_unwrapper_;
 };
 
-}  // namespace video_coding
 }  // namespace webrtc
 
 #endif  // MODULES_VIDEO_CODING_RTP_VP8_REF_FINDER_H_
diff --git a/modules/video_coding/rtp_vp8_ref_finder_unittest.cc b/modules/video_coding/rtp_vp8_ref_finder_unittest.cc
index aa85880..34836e6 100644
--- a/modules/video_coding/rtp_vp8_ref_finder_unittest.cc
+++ b/modules/video_coding/rtp_vp8_ref_finder_unittest.cc
@@ -66,7 +66,7 @@
     return *this;
   }
 
-  operator std::unique_ptr<RtpFrameObject>() {
+  operator std::unique_ptr<video_coding::RtpFrameObject>() {
     RTPVideoHeaderVP8 vp8_header{};
     vp8_header.pictureId = *picture_id_;
     vp8_header.temporalIdx = *temporal_id_;
@@ -78,7 +78,7 @@
                                            : VideoFrameType::kVideoFrameDelta;
     video_header.video_type_header = vp8_header;
     // clang-format off
-    return std::make_unique<RtpFrameObject>(
+    return std::make_unique<video_coding::RtpFrameObject>(
         /*seq_num_start=*/0,
         /*seq_num_end=*/0,
         /*markerBit=*/true,
@@ -113,7 +113,7 @@
  protected:
   RtpVp8RefFinderTest() : ref_finder_(std::make_unique<RtpVp8RefFinder>()) {}
 
-  void Insert(std::unique_ptr<RtpFrameObject> frame) {
+  void Insert(std::unique_ptr<video_coding::RtpFrameObject> frame) {
     for (auto& f : ref_finder_->ManageFrame(std::move(frame))) {
       frames_.push_back(std::move(f));
     }
diff --git a/modules/video_coding/rtp_vp9_ref_finder.cc b/modules/video_coding/rtp_vp9_ref_finder.cc
index 89b463a..46a0946 100644
--- a/modules/video_coding/rtp_vp9_ref_finder.cc
+++ b/modules/video_coding/rtp_vp9_ref_finder.cc
@@ -16,10 +16,9 @@
 #include "rtc_base/logging.h"
 
 namespace webrtc {
-namespace video_coding {
 
 RtpFrameReferenceFinder::ReturnVector RtpVp9RefFinder::ManageFrame(
-    std::unique_ptr<RtpFrameObject> frame) {
+    std::unique_ptr<video_coding::RtpFrameObject> frame) {
   FrameDecision decision = ManageFrameInternal(frame.get());
 
   RtpFrameReferenceFinder::ReturnVector res;
@@ -41,7 +40,7 @@
 }
 
 RtpVp9RefFinder::FrameDecision RtpVp9RefFinder::ManageFrameInternal(
-    RtpFrameObject* frame) {
+    video_coding::RtpFrameObject* frame) {
   const RTPVideoHeader& video_header = frame->GetRtpVideoHeader();
   const RTPVideoHeaderVP9& codec_header =
       absl::get<RTPVideoHeaderVP9>(video_header.video_type_header);
@@ -58,7 +57,8 @@
     last_picture_id_ = frame->Id();
 
   if (codec_header.flexible_mode) {
-    if (codec_header.num_ref_pics > EncodedFrame::kMaxFrameReferences) {
+    if (codec_header.num_ref_pics >
+        video_coding::EncodedFrame::kMaxFrameReferences) {
       return kDrop;
     }
     frame->num_references = codec_header.num_ref_pics;
@@ -179,7 +179,8 @@
       ForwardDiff<uint16_t, kFrameIdLength>(info->gof->pid_start, frame->Id());
   size_t gof_idx = diff % info->gof->num_frames_in_gof;
 
-  if (info->gof->num_ref_pics[gof_idx] > EncodedFrame::kMaxFrameReferences) {
+  if (info->gof->num_ref_pics[gof_idx] >
+      video_coding::EncodedFrame::kMaxFrameReferences) {
     return kDrop;
   }
   // Populate references according to the scalability structure.
@@ -323,7 +324,7 @@
   } while (complete_frame);
 }
 
-void RtpVp9RefFinder::FlattenFrameIdAndRefs(RtpFrameObject* frame,
+void RtpVp9RefFinder::FlattenFrameIdAndRefs(video_coding::RtpFrameObject* frame,
                                             bool inter_layer_predicted) {
   for (size_t i = 0; i < frame->num_references; ++i) {
     frame->references[i] =
@@ -334,7 +335,8 @@
                *frame->SpatialIndex());
 
   if (inter_layer_predicted &&
-      frame->num_references + 1 <= EncodedFrame::kMaxFrameReferences) {
+      frame->num_references + 1 <=
+          video_coding::EncodedFrame::kMaxFrameReferences) {
     frame->references[frame->num_references] = frame->Id() - 1;
     ++frame->num_references;
   }
@@ -351,5 +353,4 @@
   }
 }
 
-}  // namespace video_coding
 }  // namespace webrtc
diff --git a/modules/video_coding/rtp_vp9_ref_finder.h b/modules/video_coding/rtp_vp9_ref_finder.h
index 1ccfa3b..0179918 100644
--- a/modules/video_coding/rtp_vp9_ref_finder.h
+++ b/modules/video_coding/rtp_vp9_ref_finder.h
@@ -22,14 +22,13 @@
 #include "rtc_base/numerics/sequence_number_util.h"
 
 namespace webrtc {
-namespace video_coding {
 
 class RtpVp9RefFinder {
  public:
   RtpVp9RefFinder() = default;
 
   RtpFrameReferenceFinder::ReturnVector ManageFrame(
-      std::unique_ptr<RtpFrameObject> frame);
+      std::unique_ptr<video_coding::RtpFrameObject> frame);
   void ClearTo(uint16_t seq_num);
 
  private:
@@ -49,7 +48,7 @@
     uint16_t last_picture_id;
   };
 
-  FrameDecision ManageFrameInternal(RtpFrameObject* frame);
+  FrameDecision ManageFrameInternal(video_coding::RtpFrameObject* frame);
   void RetryStashedFrames(RtpFrameReferenceFinder::ReturnVector& res);
 
   bool MissingRequiredFrameVp9(uint16_t picture_id, const GofInfo& info);
@@ -59,7 +58,8 @@
                              uint8_t temporal_idx,
                              uint16_t pid_ref);
 
-  void FlattenFrameIdAndRefs(RtpFrameObject* frame, bool inter_layer_predicted);
+  void FlattenFrameIdAndRefs(video_coding::RtpFrameObject* frame,
+                             bool inter_layer_predicted);
 
   // Save the last picture id in order to detect when there is a gap in frames
   // that have not yet been fully received.
@@ -67,7 +67,7 @@
 
   // Frames that have been fully received but didn't have all the information
   // needed to determine their references.
-  std::deque<std::unique_ptr<RtpFrameObject>> stashed_frames_;
+  std::deque<std::unique_ptr<video_coding::RtpFrameObject>> stashed_frames_;
 
   // Where the current scalability structure is in the
   // |scalability_structures_| array.
@@ -96,7 +96,6 @@
   SeqNumUnwrapper<uint8_t> tl0_unwrapper_;
 };
 
-}  // namespace video_coding
 }  // namespace webrtc
 
 #endif  // MODULES_VIDEO_CODING_RTP_VP9_REF_FINDER_H_
diff --git a/modules/video_coding/rtp_vp9_ref_finder_unittest.cc b/modules/video_coding/rtp_vp9_ref_finder_unittest.cc
index 22da1e3..7b2d02a 100644
--- a/modules/video_coding/rtp_vp9_ref_finder_unittest.cc
+++ b/modules/video_coding/rtp_vp9_ref_finder_unittest.cc
@@ -83,7 +83,7 @@
     return *this;
   }
 
-  operator std::unique_ptr<RtpFrameObject>() {
+  operator std::unique_ptr<video_coding::RtpFrameObject>() {
     RTPVideoHeaderVP9 vp9_header{};
     vp9_header.picture_id = *picture_id;
     vp9_header.temporal_idx = *temporal_id;
@@ -112,7 +112,7 @@
                                        : VideoFrameType::kVideoFrameDelta;
     video_header.video_type_header = vp9_header;
     // clang-format off
-    return std::make_unique<RtpFrameObject>(
+    return std::make_unique<video_coding::RtpFrameObject>(
         seq_num_start,
         seq_num_end,
         /*markerBit=*/true,
@@ -209,7 +209,7 @@
  protected:
   RtpVp9RefFinderTest() : ref_finder_(std::make_unique<RtpVp9RefFinder>()) {}
 
-  void Insert(std::unique_ptr<RtpFrameObject> frame) {
+  void Insert(std::unique_ptr<video_coding::RtpFrameObject> frame) {
     for (auto& f : ref_finder_->ManageFrame(std::move(frame))) {
       frames_.push_back(std::move(f));
     }
diff --git a/test/fuzzers/rtp_frame_reference_finder_fuzzer.cc b/test/fuzzers/rtp_frame_reference_finder_fuzzer.cc
index 8b19a08..c158cd0 100644
--- a/test/fuzzers/rtp_frame_reference_finder_fuzzer.cc
+++ b/test/fuzzers/rtp_frame_reference_finder_fuzzer.cc
@@ -58,7 +58,7 @@
   size_t offset_ = 0;
 };
 
-class NullCallback : public video_coding::OnCompleteFrameCallback {
+class NullCallback : public OnCompleteFrameCallback {
   void OnCompleteFrame(
       std::unique_ptr<video_coding::EncodedFrame> frame) override {}
 };
@@ -93,7 +93,7 @@
 void FuzzOneInput(const uint8_t* data, size_t size) {
   DataReader reader(data, size);
   NullCallback cb;
-  video_coding::RtpFrameReferenceFinder reference_finder(&cb);
+  RtpFrameReferenceFinder reference_finder(&cb);
 
   auto codec = static_cast<VideoCodecType>(reader.GetNum<uint8_t>() % 5);
 
diff --git a/video/rtp_video_stream_receiver.cc b/video/rtp_video_stream_receiver.cc
index 11be5aa..a2e6273 100644
--- a/video/rtp_video_stream_receiver.cc
+++ b/video/rtp_video_stream_receiver.cc
@@ -210,7 +210,7 @@
     ProcessThread* process_thread,
     NackSender* nack_sender,
     KeyFrameRequestSender* keyframe_request_sender,
-    video_coding::OnCompleteFrameCallback* complete_frame_callback,
+    OnCompleteFrameCallback* complete_frame_callback,
     rtc::scoped_refptr<FrameDecryptorInterface> frame_decryptor,
     rtc::scoped_refptr<FrameTransformerInterface> frame_transformer)
     : RtpVideoStreamReceiver(clock,
@@ -240,7 +240,7 @@
     ProcessThread* process_thread,
     NackSender* nack_sender,
     KeyFrameRequestSender* keyframe_request_sender,
-    video_coding::OnCompleteFrameCallback* complete_frame_callback,
+    OnCompleteFrameCallback* complete_frame_callback,
     rtc::scoped_refptr<FrameDecryptorInterface> frame_decryptor,
     rtc::scoped_refptr<FrameTransformerInterface> frame_transformer)
     : clock_(clock),
@@ -321,8 +321,7 @@
     process_thread_->RegisterModule(nack_module_.get(), RTC_FROM_HERE);
   }
 
-  reference_finder_ =
-      std::make_unique<video_coding::RtpFrameReferenceFinder>(this);
+  reference_finder_ = std::make_unique<RtpFrameReferenceFinder>(this);
 
   // Only construct the encrypted receiver if frame encryption is enabled.
   if (config_.crypto_options.sframe.require_frame_encryption) {
@@ -863,10 +862,9 @@
         // to overlap with old picture ids. To ensure that doesn't happen we
         // start from the |last_completed_picture_id_| and add an offset in case
         // of reordering.
-        reference_finder_ =
-            std::make_unique<video_coding::RtpFrameReferenceFinder>(
-                this, last_completed_picture_id_ +
-                          std::numeric_limits<uint16_t>::max());
+        reference_finder_ = std::make_unique<RtpFrameReferenceFinder>(
+            this,
+            last_completed_picture_id_ + std::numeric_limits<uint16_t>::max());
         current_codec_ = frame->codec_type();
       } else {
         // Old frame from before the codec switch, discard it.
diff --git a/video/rtp_video_stream_receiver.h b/video/rtp_video_stream_receiver.h
index bdb1e2d..c480cb2 100644
--- a/video/rtp_video_stream_receiver.h
+++ b/video/rtp_video_stream_receiver.h
@@ -67,7 +67,7 @@
                                public RecoveredPacketReceiver,
                                public RtpPacketSinkInterface,
                                public KeyFrameRequestSender,
-                               public video_coding::OnCompleteFrameCallback,
+                               public OnCompleteFrameCallback,
                                public OnDecryptedFrameCallback,
                                public OnDecryptionStatusChangeCallback,
                                public RtpVideoFrameReceiver {
@@ -89,7 +89,7 @@
       // The KeyFrameRequestSender is optional; if not provided, key frame
       // requests are sent via the internal RtpRtcp module.
       KeyFrameRequestSender* keyframe_request_sender,
-      video_coding::OnCompleteFrameCallback* complete_frame_callback,
+      OnCompleteFrameCallback* complete_frame_callback,
       rtc::scoped_refptr<FrameDecryptorInterface> frame_decryptor,
       rtc::scoped_refptr<FrameTransformerInterface> frame_transformer);
 
@@ -110,7 +110,7 @@
       // The KeyFrameRequestSender is optional; if not provided, key frame
       // requests are sent via the internal RtpRtcp module.
       KeyFrameRequestSender* keyframe_request_sender,
-      video_coding::OnCompleteFrameCallback* complete_frame_callback,
+      OnCompleteFrameCallback* complete_frame_callback,
       rtc::scoped_refptr<FrameDecryptorInterface> frame_decryptor,
       rtc::scoped_refptr<FrameTransformerInterface> frame_transformer);
   ~RtpVideoStreamReceiver() override;
@@ -329,7 +329,7 @@
 
   const std::unique_ptr<RtpRtcp> rtp_rtcp_;
 
-  video_coding::OnCompleteFrameCallback* complete_frame_callback_;
+  OnCompleteFrameCallback* complete_frame_callback_;
   KeyFrameRequestSender* const keyframe_request_sender_;
 
   RtcpFeedbackBuffer rtcp_feedback_buffer_;
@@ -352,7 +352,7 @@
       RTC_GUARDED_BY(worker_task_checker_);
 
   Mutex reference_finder_lock_;
-  std::unique_ptr<video_coding::RtpFrameReferenceFinder> reference_finder_
+  std::unique_ptr<RtpFrameReferenceFinder> reference_finder_
       RTC_GUARDED_BY(reference_finder_lock_);
   absl::optional<VideoCodecType> current_codec_;
   uint32_t last_assembled_frame_rtp_timestamp_;
diff --git a/video/rtp_video_stream_receiver2.cc b/video/rtp_video_stream_receiver2.cc
index 4893d1a..8ea1bc7 100644
--- a/video/rtp_video_stream_receiver2.cc
+++ b/video/rtp_video_stream_receiver2.cc
@@ -213,7 +213,7 @@
     ProcessThread* process_thread,
     NackSender* nack_sender,
     KeyFrameRequestSender* keyframe_request_sender,
-    video_coding::OnCompleteFrameCallback* complete_frame_callback,
+    OnCompleteFrameCallback* complete_frame_callback,
     rtc::scoped_refptr<FrameDecryptorInterface> frame_decryptor,
     rtc::scoped_refptr<FrameTransformerInterface> frame_transformer)
     : clock_(clock),
@@ -294,8 +294,7 @@
                                                      &rtcp_feedback_buffer_);
   }
 
-  reference_finder_ =
-      std::make_unique<video_coding::RtpFrameReferenceFinder>(this);
+  reference_finder_ = std::make_unique<RtpFrameReferenceFinder>(this);
 
   // Only construct the encrypted receiver if frame encryption is enabled.
   if (config_.crypto_options.sframe.require_frame_encryption) {
@@ -832,10 +831,9 @@
         // to overlap with old picture ids. To ensure that doesn't happen we
         // start from the |last_completed_picture_id_| and add an offset in case
         // of reordering.
-        reference_finder_ =
-            std::make_unique<video_coding::RtpFrameReferenceFinder>(
-                this, last_completed_picture_id_ +
-                          std::numeric_limits<uint16_t>::max());
+        reference_finder_ = std::make_unique<RtpFrameReferenceFinder>(
+            this,
+            last_completed_picture_id_ + std::numeric_limits<uint16_t>::max());
         current_codec_ = frame->codec_type();
       } else {
         // Old frame from before the codec switch, discard it.
diff --git a/video/rtp_video_stream_receiver2.h b/video/rtp_video_stream_receiver2.h
index 616aeaf..1215003 100644
--- a/video/rtp_video_stream_receiver2.h
+++ b/video/rtp_video_stream_receiver2.h
@@ -63,7 +63,7 @@
                                 public RecoveredPacketReceiver,
                                 public RtpPacketSinkInterface,
                                 public KeyFrameRequestSender,
-                                public video_coding::OnCompleteFrameCallback,
+                                public OnCompleteFrameCallback,
                                 public OnDecryptedFrameCallback,
                                 public OnDecryptionStatusChangeCallback,
                                 public RtpVideoFrameReceiver {
@@ -86,7 +86,7 @@
       // The KeyFrameRequestSender is optional; if not provided, key frame
       // requests are sent via the internal RtpRtcp module.
       KeyFrameRequestSender* keyframe_request_sender,
-      video_coding::OnCompleteFrameCallback* complete_frame_callback,
+      OnCompleteFrameCallback* complete_frame_callback,
       rtc::scoped_refptr<FrameDecryptorInterface> frame_decryptor,
       rtc::scoped_refptr<FrameTransformerInterface> frame_transformer);
   ~RtpVideoStreamReceiver2() override;
@@ -286,7 +286,7 @@
 
   const std::unique_ptr<ModuleRtpRtcpImpl2> rtp_rtcp_;
 
-  video_coding::OnCompleteFrameCallback* complete_frame_callback_;
+  OnCompleteFrameCallback* complete_frame_callback_;
   KeyFrameRequestSender* const keyframe_request_sender_;
 
   RtcpFeedbackBuffer rtcp_feedback_buffer_;
@@ -308,7 +308,7 @@
   absl::optional<int64_t> video_structure_frame_id_
       RTC_GUARDED_BY(worker_task_checker_);
 
-  std::unique_ptr<video_coding::RtpFrameReferenceFinder> reference_finder_
+  std::unique_ptr<RtpFrameReferenceFinder> reference_finder_
       RTC_GUARDED_BY(worker_task_checker_);
   absl::optional<VideoCodecType> current_codec_
       RTC_GUARDED_BY(worker_task_checker_);
diff --git a/video/rtp_video_stream_receiver2_unittest.cc b/video/rtp_video_stream_receiver2_unittest.cc
index 9684b4a..ae5b508 100644
--- a/video/rtp_video_stream_receiver2_unittest.cc
+++ b/video/rtp_video_stream_receiver2_unittest.cc
@@ -95,8 +95,7 @@
   MOCK_METHOD(void, RequestKeyFrame, (), (override));
 };
 
-class MockOnCompleteFrameCallback
-    : public video_coding::OnCompleteFrameCallback {
+class MockOnCompleteFrameCallback : public OnCompleteFrameCallback {
  public:
   MOCK_METHOD(void, DoOnCompleteFrame, (video_coding::EncodedFrame*), ());
   MOCK_METHOD(void,
diff --git a/video/rtp_video_stream_receiver_unittest.cc b/video/rtp_video_stream_receiver_unittest.cc
index 6bfe17d..0d7d4c9 100644
--- a/video/rtp_video_stream_receiver_unittest.cc
+++ b/video/rtp_video_stream_receiver_unittest.cc
@@ -94,8 +94,7 @@
   MOCK_METHOD(void, RequestKeyFrame, (), (override));
 };
 
-class MockOnCompleteFrameCallback
-    : public video_coding::OnCompleteFrameCallback {
+class MockOnCompleteFrameCallback : public OnCompleteFrameCallback {
  public:
   MOCK_METHOD(void, DoOnCompleteFrame, (video_coding::EncodedFrame*), ());
   MOCK_METHOD(void,
diff --git a/video/video_receive_stream.h b/video/video_receive_stream.h
index 8c63e32..f647fb1 100644
--- a/video/video_receive_stream.h
+++ b/video/video_receive_stream.h
@@ -48,7 +48,7 @@
 class VideoReceiveStream : public webrtc::DEPRECATED_VideoReceiveStream,
                            public rtc::VideoSinkInterface<VideoFrame>,
                            public NackSender,
-                           public video_coding::OnCompleteFrameCallback,
+                           public OnCompleteFrameCallback,
                            public Syncable,
                            public CallStatsObserver {
  public:
@@ -111,7 +111,7 @@
   void SendNack(const std::vector<uint16_t>& sequence_numbers,
                 bool buffering_allowed) override;
 
-  // Implements video_coding::OnCompleteFrameCallback.
+  // Implements OnCompleteFrameCallback.
   void OnCompleteFrame(
       std::unique_ptr<video_coding::EncodedFrame> frame) override;
 
diff --git a/video/video_receive_stream2.h b/video/video_receive_stream2.h
index 33855e7..305c6a1 100644
--- a/video/video_receive_stream2.h
+++ b/video/video_receive_stream2.h
@@ -77,7 +77,7 @@
 class VideoReceiveStream2 : public webrtc::VideoReceiveStream,
                             public rtc::VideoSinkInterface<VideoFrame>,
                             public NackSender,
-                            public video_coding::OnCompleteFrameCallback,
+                            public OnCompleteFrameCallback,
                             public Syncable,
                             public CallStatsObserver {
  public:
@@ -130,7 +130,7 @@
   void SendNack(const std::vector<uint16_t>& sequence_numbers,
                 bool buffering_allowed) override;
 
-  // Implements video_coding::OnCompleteFrameCallback.
+  // Implements OnCompleteFrameCallback.
   void OnCompleteFrame(
       std::unique_ptr<video_coding::EncodedFrame> frame) override;