Add struct for feedback request to RTPHeaderExtension

Bug: webrtc:10262
Change-Id: I88b8f2ea79bc94c9675f2e393ff7d0869ba478e6
Reviewed-on: https://webrtc-review.googlesource.com/c/123049
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26708}
diff --git a/api/rtp_headers.h b/api/rtp_headers.h
index c766899..2621db9 100644
--- a/api/rtp_headers.h
+++ b/api/rtp_headers.h
@@ -82,6 +82,16 @@
 // Mid represents RtpMid which is a string.
 typedef StringRtpHeaderExtension Mid;
 
+struct FeedbackRequest {
+  // Determines whether the recv delta as specified in
+  // https://tools.ietf.org/html/draft-holmer-rmcat-transport-wide-cc-extensions-01
+  // should be included.
+  bool include_timestamps;
+  // Include feedback of received packets in the range [sequence_number -
+  // sequence_count, sequence_number].
+  int sequence_count;
+};
+
 struct RTPHeaderExtension {
   RTPHeaderExtension();
   RTPHeaderExtension(const RTPHeaderExtension& other);
@@ -93,6 +103,7 @@
   uint32_t absoluteSendTime;
   bool hasTransportSequenceNumber;
   uint16_t transportSequenceNumber;
+  absl::optional<FeedbackRequest> feedback_request;
 
   // Audio Level includes both level in dBov and voiced/unvoiced bit. See:
   // https://datatracker.ietf.org/doc/draft-lennox-avt-rtp-audio-level-exthdr/