PacketBuffer now can save how many times a packet has been nacked.
Also save size/max nack count in the FrameObject/RtpFrameObject.

BUG=webrtc:5514
R=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1988653002 .

Cr-Commit-Position: refs/heads/master@{#12863}
diff --git a/webrtc/modules/video_coding/frame_object.h b/webrtc/modules/video_coding/frame_object.h
index e8bb481..02d7342 100644
--- a/webrtc/modules/video_coding/frame_object.h
+++ b/webrtc/modules/video_coding/frame_object.h
@@ -36,6 +36,8 @@
   size_t num_references;
   uint16_t references[kMaxFrameReferences];
   bool inter_layer_predicted;
+
+  size_t size;
 };
 
 class PacketBuffer;
@@ -44,11 +46,14 @@
  public:
   RtpFrameObject(PacketBuffer* packet_buffer,
                  uint16_t first_seq_num,
-                 uint16_t last_seq_num);
+                 uint16_t last_seq_num,
+                 size_t frame_size,
+                 int times_nacked);
 
   ~RtpFrameObject();
   uint16_t first_seq_num() const;
   uint16_t last_seq_num() const;
+  int times_nacked() const;
   FrameType frame_type() const;
   VideoCodecType codec_type() const;
   bool GetBitstream(uint8_t* destination) const override;
@@ -60,6 +65,10 @@
   VideoCodecType codec_type_;
   uint16_t first_seq_num_;
   uint16_t last_seq_num_;
+
+  // Equal to times nacked of the packet with the highet times nacked
+  // belonging to this frame.
+  int times_nacked_;
 };
 
 }  // namespace video_coding