Make SetFirstSubFrameInFrame and SetLastSubFrameInFrame protected

These methods should only be used when parsing frames produced
by an older client; newer clients should not attempt to set
these values.

(When talking to older clients, TRUE is hard-coded. When talking
to newer clients, these flags are deprecated.)

Bug: webrtc:10214
Change-Id: I8537869ef3112f4ce9531c6becc33951715685a1
Reviewed-on: https://webrtc-review.googlesource.com/c/118421
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26360}
diff --git a/modules/rtp_rtcp/source/rtp_generic_frame_descriptor.h b/modules/rtp_rtcp/source/rtp_generic_frame_descriptor.h
index 811b634..52d401f 100644
--- a/modules/rtp_rtcp/source/rtp_generic_frame_descriptor.h
+++ b/modules/rtp_rtcp/source/rtp_generic_frame_descriptor.h
@@ -18,6 +18,8 @@
 
 namespace webrtc {
 
+class RtpGenericFrameDescriptorExtension;
+
 // Data to put on the wire for FrameDescriptor rtp header extension.
 class RtpGenericFrameDescriptor {
  public:
@@ -35,9 +37,7 @@
   void SetLastPacketInSubFrame(bool last) { end_of_subframe_ = last; }
 
   bool FirstSubFrameInFrame() const { return beginning_of_frame_; }
-  void SetFirstSubFrameInFrame(bool first) { beginning_of_frame_ = first; }
   bool LastSubFrameInFrame() const { return end_of_frame_; }
-  void SetLastSubFrameInFrame(bool last) { end_of_frame_ = last; }
 
   // Properties below undefined if !FirstPacketInSubFrame()
   // Valid range for temporal layer: [0, 7]
@@ -66,6 +66,10 @@
   rtc::ArrayView<const uint8_t> GetByteRepresentation();
 
  private:
+  friend class RtpGenericFrameDescriptorExtension;
+  void SetFirstSubFrameInFrame(bool first) { beginning_of_frame_ = first; }
+  void SetLastSubFrameInFrame(bool last) { end_of_frame_ = last; }
+
   bool beginning_of_subframe_ = false;
   bool end_of_subframe_ = false;
   bool beginning_of_frame_ = true;
diff --git a/modules/rtp_rtcp/source/rtp_sender_video.cc b/modules/rtp_rtcp/source/rtp_sender_video.cc
index 8f276c4..a33aa36 100644
--- a/modules/rtp_rtcp/source/rtp_sender_video.cc
+++ b/modules/rtp_rtcp/source/rtp_sender_video.cc
@@ -82,8 +82,6 @@
     RtpGenericFrameDescriptor generic_descriptor;
     generic_descriptor.SetFirstPacketInSubFrame(first_packet);
     generic_descriptor.SetLastPacketInSubFrame(last_packet);
-    generic_descriptor.SetFirstSubFrameInFrame(true);
-    generic_descriptor.SetLastSubFrameInFrame(true);
 
     if (first_packet) {
       generic_descriptor.SetFrameId(
diff --git a/video/rtp_video_stream_receiver_unittest.cc b/video/rtp_video_stream_receiver_unittest.cc
index 6ec7046..d54d977 100644
--- a/video/rtp_video_stream_receiver_unittest.cc
+++ b/video/rtp_video_stream_receiver_unittest.cc
@@ -517,8 +517,6 @@
   RtpGenericFrameDescriptor generic_descriptor;
   generic_descriptor.SetFirstPacketInSubFrame(true);
   generic_descriptor.SetLastPacketInSubFrame(true);
-  generic_descriptor.SetFirstSubFrameInFrame(true);
-  generic_descriptor.SetLastSubFrameInFrame(true);
   generic_descriptor.SetFrameId(100);
   generic_descriptor.SetSpatialLayersBitmask(1 << kSpatialIndex);
   generic_descriptor.AddFrameDependencyDiff(90);
@@ -564,8 +562,6 @@
   RtpGenericFrameDescriptor first_packet_descriptor;
   first_packet_descriptor.SetFirstPacketInSubFrame(true);
   first_packet_descriptor.SetLastPacketInSubFrame(false);
-  first_packet_descriptor.SetFirstSubFrameInFrame(true);
-  first_packet_descriptor.SetLastSubFrameInFrame(true);
   first_packet_descriptor.SetFrameId(100);
   first_packet_descriptor.SetSpatialLayersBitmask(1 << kSpatialIndex);
   first_packet_descriptor.SetResolution(480, 360);
@@ -586,8 +582,6 @@
   RtpGenericFrameDescriptor second_packet_descriptor;
   second_packet_descriptor.SetFirstPacketInSubFrame(false);
   second_packet_descriptor.SetLastPacketInSubFrame(true);
-  second_packet_descriptor.SetFirstSubFrameInFrame(true);
-  second_packet_descriptor.SetLastSubFrameInFrame(true);
   EXPECT_TRUE(second_packet.SetExtension<RtpGenericFrameDescriptorExtension>(
       second_packet_descriptor));