Index: webrtc/modules/video_coding/frame_buffer2.cc |
diff --git a/webrtc/modules/video_coding/frame_buffer2.cc b/webrtc/modules/video_coding/frame_buffer2.cc |
index b8a80e1f681cc77ae634ef7faf879d3b14ad156d..2540ae594148795ce62280e9df31e525348f988b 100644 |
--- a/webrtc/modules/video_coding/frame_buffer2.cc |
+++ b/webrtc/modules/video_coding/frame_buffer2.cc |
@@ -142,6 +142,8 @@ FrameBuffer::ReturnReason FrameBuffer::NextFrame( |
float rtt_mult = protection_mode_ == kProtectionNackFEC ? 0.0 : 1.0; |
timing_->SetJitterDelay(jitter_estimator_->GetJitterEstimate(rtt_mult)); |
timing_->UpdateCurrentDelay(frame->RenderTime(), now_ms); |
+ } else { |
+ jitter_estimator_->FrameNacked(); |
} |
// Gracefully handle bad RTP timestamps and render time issues. |
@@ -242,6 +244,11 @@ void FrameBuffer::Stop() { |
new_continuous_frame_event_.Set(); |
} |
+void FrameBuffer::UpdateRtt(int64_t rtt_ms) { |
+ rtc::CritScope lock(&crit_); |
+ jitter_estimator_->UpdateRtt(rtt_ms); |
+} |
+ |
bool FrameBuffer::ValidReferences(const FrameObject& frame) const { |
for (size_t i = 0; i < frame.num_references; ++i) { |
if (AheadOrAt(frame.references[i], frame.picture_id)) |