Index: webrtc/video/vie_channel.h |
diff --git a/webrtc/video/vie_channel.h b/webrtc/video/vie_channel.h |
index 93ba02863bfbdfe196ada3e7442befee75e96d37..1fafdc4dcaf663af1092e9be8fcf3869acf4b86e 100644 |
--- a/webrtc/video/vie_channel.h |
+++ b/webrtc/video/vie_channel.h |
@@ -93,6 +93,8 @@ class ViEChannel : public VCMFrameTypeCallback, |
void RegisterSendSideDelayObserver(SendSideDelayObserver* observer); |
+ void RegisterSendPacketObserver(SendPacketObserver* observer); |
+ |
// Called on any new send bitrate estimate. |
void RegisterSendBitrateObserver(BitrateStatisticsObserver* observer); |
@@ -183,6 +185,7 @@ class ViEChannel : public VCMFrameTypeCallback, |
BitrateStatisticsObserver* send_bitrate_observer, |
FrameCountObserver* send_frame_count_observer, |
SendSideDelayObserver* send_side_delay_observer, |
+ SendPacketObserver* send_packet_observer, |
size_t num_modules); |
// Assumed to be protected. |
@@ -254,6 +257,17 @@ class ViEChannel : public VCMFrameTypeCallback, |
} |
} send_side_delay_observer_; |
+ class RegisterableSendPacketObserver |
+ : public RegisterableCallback<SendPacketObserver> { |
+ void OnSendPacket(uint16_t packet_id, |
+ int64_t capture_time_ms, |
+ uint32_t ssrc) override { |
+ rtc::CritScope lock(&critsect_); |
+ if (callback_) |
+ callback_->OnSendPacket(packet_id, capture_time_ms, ssrc); |
+ } |
+ } send_packet_observer_; |
+ |
class RegisterableRtcpPacketTypeCounterObserver |
: public RegisterableCallback<RtcpPacketTypeCounterObserver> { |
public: |