Adding field trial to force target level percentile in NetEQ.
Bug: webrtc:9822 Change-Id: I636f75de10851729825311ee5783e836f3b583cd Reviewed-on: https://webrtc-review.googlesource.com/c/101220 Commit-Queue: Minyue Li <minyue@webrtc.org> Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org> Cr-Commit-Position: refs/heads/master@{#24975}
This commit is contained in:
@ -16,6 +16,7 @@
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/types/optional.h"
|
||||
#include "modules/audio_coding/neteq/tick_timer.h"
|
||||
#include "rtc_base/constructormagic.h"
|
||||
|
||||
@ -114,16 +115,12 @@ class DelayManager {
|
||||
virtual int last_pack_cng_or_dtmf() const;
|
||||
virtual void set_last_pack_cng_or_dtmf(int value);
|
||||
|
||||
private:
|
||||
static const int kLimitProbability = 53687091; // 1/20 in Q30.
|
||||
static const int kLimitProbabilityStreaming = 536871; // 1/2000 in Q30.
|
||||
static const int kMaxStreamingPeakPeriodMs = 600000; // 10 minutes in ms.
|
||||
static const int kCumulativeSumDrift = 2; // Drift term for cumulative sum
|
||||
// |iat_cumulative_sum_|.
|
||||
// Steady-state forgetting factor for |iat_vector_|, 0.9993 in Q15.
|
||||
static const int kIatFactor_ = 32745;
|
||||
static const int kMaxIat = 64; // Max inter-arrival time to register.
|
||||
// This accessor is only intended for testing purposes.
|
||||
const absl::optional<int>& forced_limit_probability_for_test() const {
|
||||
return forced_limit_probability_;
|
||||
}
|
||||
|
||||
private:
|
||||
// Sets |iat_vector_| to the default start distribution and sets the
|
||||
// |base_target_level_| and |target_level_| to the corresponding values.
|
||||
void ResetHistogram();
|
||||
@ -168,6 +165,7 @@ class DelayManager {
|
||||
DelayPeakDetector& peak_detector_;
|
||||
int last_pack_cng_or_dtmf_;
|
||||
const bool frame_length_change_experiment_;
|
||||
const absl::optional<int> forced_limit_probability_;
|
||||
|
||||
RTC_DISALLOW_COPY_AND_ASSIGN(DelayManager);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user