Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(248)

Unified Diff: webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h

Issue 2638083002: Attach TransportFeedbackPacketLossTracker to ANA (PLR only) (Closed)
Patch Set: DeathTest fix. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h
diff --git a/webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h b/webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h
index ab9fc401674140a65cdb99066a1de40cfea47e08..27a7de87583c27412a7379510cb3a374b91b3fa4 100644
--- a/webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h
+++ b/webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h
@@ -337,13 +337,15 @@ struct PacketFeedback {
PacedPacketInfo pacing_info;
};
+// TODO(elad.alon): See TODO attached to TransportFeedbackAdapterObserver.
class TransportFeedbackObserver {
public:
TransportFeedbackObserver() {}
virtual ~TransportFeedbackObserver() {}
// Note: Transport-wide sequence number as sequence number.
- virtual void AddPacket(uint16_t sequence_number,
+ virtual void AddPacket(uint32_t ssrc,
+ uint16_t sequence_number,
size_t length,
const PacedPacketInfo& pacing_info) = 0;
@@ -352,6 +354,30 @@ class TransportFeedbackObserver {
virtual std::vector<PacketFeedback> GetTransportFeedbackVector() const = 0;
};
+// TODO(elad.alon): After the current TransportFeedbackObserver becomes obsolete
+// and is removed, reuse the name "TransportFeedbackObserver" for the class
+// currently named "TransportFeedbackAdapterObserver".
+// Background: The only implementers of this interface are
+// CongestionController and TransportFeedbackProxy.
+// CongestionController uses it to expose only a small subset of its
+// capabilities.
+// TransportFeedbackProxy is a temporary solution which exists to allow passing
+// the CongestionController down at a later stage.
+// Ideally, we'd get rid of this altogether, exposing CC. This will be done
+// after the order-of-creation issues have been resolved, and
+// TransportFeedbackProxy therefore removed. Then, we'll remove
minyue-webrtc 2017/03/22 07:51:39 I still think the last sentence "Then, we'll rem
elad.alon_webrtc.org 2017/03/22 09:36:31 Done.
+// TransportFeedbackAdapterObserver, reuse the name
+// TransportFeedbackObserver for TransportFeedbackAdapterObserver, and only
+// have one observer.
+class TransportFeedbackAdapterObserver {
+ public:
+ virtual ~TransportFeedbackAdapterObserver() = default;
+
+ virtual void OnPacketAdded(uint32_t ssrc, uint16_t seq_num) = 0;
+ virtual void OnNewTransportFeedbackVector(
+ const std::vector<PacketFeedback>& packet_feedback_vector) = 0;
+};
+
class RtcpRttStats {
public:
virtual void OnRttUpdate(int64_t rtt) = 0;

Powered by Google App Engine
This is Rietveld 408576698