Index: webrtc/modules/audio_coding/neteq/delay_manager.h |
diff --git a/webrtc/modules/audio_coding/neteq/delay_manager.h b/webrtc/modules/audio_coding/neteq/delay_manager.h |
index 785fced15df6ee963955cf7db595c673625c6127..6f3c14aea9da0eda02ca4608283453c6bdf1358b 100644 |
--- a/webrtc/modules/audio_coding/neteq/delay_manager.h |
+++ b/webrtc/modules/audio_coding/neteq/delay_manager.h |
@@ -13,10 +13,12 @@ |
#include <string.h> // Provide access to size_t. |
+#include <memory> |
#include <vector> |
#include "webrtc/base/constructormagic.h" |
#include "webrtc/modules/audio_coding/neteq/audio_decoder_impl.h" |
+#include "webrtc/modules/audio_coding/neteq/tick_timer.h" |
#include "webrtc/typedefs.h" |
namespace webrtc { |
@@ -32,7 +34,9 @@ class DelayManager { |
// buffer can hold no more than |max_packets_in_buffer| packets (i.e., this |
// is the number of packet slots in the buffer). Supply a PeakDetector |
// object to the DelayManager. |
- DelayManager(size_t max_packets_in_buffer, DelayPeakDetector* peak_detector); |
+ DelayManager(size_t max_packets_in_buffer, |
+ DelayPeakDetector* peak_detector, |
+ const TickTimer* tick_timer); |
virtual ~DelayManager(); |
@@ -75,10 +79,6 @@ class DelayManager { |
// DelayPeakDetector object. |
virtual bool PeakFound() const; |
- // Notifies the counters in DelayManager and DelayPeakDetector that |
- // |elapsed_time_ms| have elapsed. |
- virtual void UpdateCounters(int elapsed_time_ms); |
- |
// Reset the inter-arrival time counter to 0. |
virtual void ResetPacketIatCount(); |
@@ -135,7 +135,9 @@ class DelayManager { |
const size_t max_packets_in_buffer_; // Capacity of the packet buffer. |
IATVector iat_vector_; // Histogram of inter-arrival times. |
int iat_factor_; // Forgetting factor for updating the IAT histogram (Q15). |
- int packet_iat_count_ms_; // Milliseconds elapsed since last packet. |
+ const TickTimer* tick_timer_; |
+ // Time elapsed since last packet. |
+ std::unique_ptr<TickTimer::Stopwatch> packet_iat_stopwatch_; |
int base_target_level_; // Currently preferred buffer level before peak |
// detection and streaming mode (Q0). |
// TODO(turajs) change the comment according to the implementation of |
@@ -153,7 +155,8 @@ class DelayManager { |
int maximum_delay_ms_; // Externally set maximum allowed delay. |
int iat_cumulative_sum_; // Cumulative sum of delta inter-arrival times. |
int max_iat_cumulative_sum_; // Max of |iat_cumulative_sum_|. |
- int max_timer_ms_; // Time elapsed since maximum was observed. |
+ // Time elapsed since maximum was observed. |
+ std::unique_ptr<TickTimer::Stopwatch> max_iat_stopwatch_; |
DelayPeakDetector& peak_detector_; |
int last_pack_cng_or_dtmf_; |