WebRTC-DeprecateGlobalFieldTrialString/Enabled/ - part 12/inf
rename WebRtcKeyValueConfig to FieldTrialsView
Bug: webrtc:10335
Change-Id: If725bd498c4c3daf144bee638230fa089fdde833
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256965
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36365}
diff --git a/modules/video_coding/BUILD.gn b/modules/video_coding/BUILD.gn
index a328d91..ebc8303 100644
--- a/modules/video_coding/BUILD.gn
+++ b/modules/video_coding/BUILD.gn
@@ -81,8 +81,8 @@
deps = [
"..:module_api",
+ "../../api:field_trials_view",
"../../api:sequence_checker",
- "../../api:webrtc_key_value_config",
"../../api/task_queue",
"../../api/units:time_delta",
"../../api/units:timestamp",
@@ -167,7 +167,7 @@
]
deps = [
":video_coding_utility",
- "../../api:webrtc_key_value_config",
+ "../../api:field_trials_view",
"../../api/units:timestamp",
"../../api/video:encoded_frame",
"../../rtc_base:logging",
@@ -188,7 +188,7 @@
"timing.h",
]
deps = [
- "../../api:webrtc_key_value_config",
+ "../../api:field_trials_view",
"../../api/units:time_delta",
"../../api/video:video_rtp_headers",
"../../rtc_base:logging",
@@ -221,7 +221,7 @@
]
deps = [
":rtt_filter",
- "../../api:webrtc_key_value_config",
+ "../../api:field_trials_view",
"../../api/units:data_size",
"../../api/units:frequency",
"../../api/units:time_delta",
@@ -310,11 +310,11 @@
"..:module_fec_api",
"../../api:array_view",
"../../api:fec_controller_api",
+ "../../api:field_trials_view",
"../../api:rtp_headers",
"../../api:rtp_packet_info",
"../../api:scoped_refptr",
"../../api:sequence_checker",
- "../../api:webrtc_key_value_config",
"../../api/task_queue",
"../../api/units:data_rate",
"../../api/units:data_size",
@@ -422,10 +422,10 @@
":video_coding",
"..:module_api",
"..:module_api_public",
+ "../../api:field_trials_view",
"../../api:rtp_headers",
"../../api:rtp_packet_info",
"../../api:sequence_checker",
- "../../api:webrtc_key_value_config",
"../../api/transport:field_trial_based_config",
"../../api/units:timestamp",
"../../api/video:encoded_image",
@@ -499,9 +499,9 @@
deps = [
":video_codec_interface",
"../../api:array_view",
+ "../../api:field_trials_view",
"../../api:scoped_refptr",
"../../api:sequence_checker",
- "../../api:webrtc_key_value_config",
"../../api/video:encoded_frame",
"../../api/video:encoded_image",
"../../api/video:video_adaptation",
@@ -755,10 +755,10 @@
":webrtc_libvpx_interface",
":webrtc_vp9_helpers",
"../../api:fec_controller_api",
+ "../../api:field_trials_view",
"../../api:refcountedbase",
"../../api:scoped_refptr",
"../../api/transport:field_trial_based_config",
- "../../api/transport:webrtc_key_value_config",
"../../api/video:video_frame",
"../../api/video:video_frame_i010",
"../../api/video:video_rtp_headers",
diff --git a/modules/video_coding/codecs/vp9/libvpx_vp9_decoder.cc b/modules/video_coding/codecs/vp9/libvpx_vp9_decoder.cc
index 669dc55..ffb4705 100644
--- a/modules/video_coding/codecs/vp9/libvpx_vp9_decoder.cc
+++ b/modules/video_coding/codecs/vp9/libvpx_vp9_decoder.cc
@@ -96,7 +96,7 @@
LibvpxVp9Decoder::LibvpxVp9Decoder()
: LibvpxVp9Decoder(FieldTrialBasedConfig()) {}
-LibvpxVp9Decoder::LibvpxVp9Decoder(const WebRtcKeyValueConfig& trials)
+LibvpxVp9Decoder::LibvpxVp9Decoder(const FieldTrialsView& trials)
: decode_complete_callback_(nullptr),
inited_(false),
decoder_(nullptr),
diff --git a/modules/video_coding/codecs/vp9/libvpx_vp9_decoder.h b/modules/video_coding/codecs/vp9/libvpx_vp9_decoder.h
index e5636d8..a680441 100644
--- a/modules/video_coding/codecs/vp9/libvpx_vp9_decoder.h
+++ b/modules/video_coding/codecs/vp9/libvpx_vp9_decoder.h
@@ -14,7 +14,7 @@
#ifdef RTC_ENABLE_VP9
-#include "api/transport/webrtc_key_value_config.h"
+#include "api/field_trials_view.h"
#include "api/video_codecs/video_decoder.h"
#include "common_video/include/video_frame_buffer_pool.h"
#include "modules/video_coding/codecs/vp9/include/vp9.h"
@@ -26,7 +26,7 @@
class LibvpxVp9Decoder : public VP9Decoder {
public:
LibvpxVp9Decoder();
- explicit LibvpxVp9Decoder(const WebRtcKeyValueConfig& trials);
+ explicit LibvpxVp9Decoder(const FieldTrialsView& trials);
virtual ~LibvpxVp9Decoder();
diff --git a/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.cc b/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.cc
index 99680cb..c569053 100644
--- a/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.cc
+++ b/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.cc
@@ -194,7 +194,7 @@
LibvpxVp9Encoder::LibvpxVp9Encoder(const cricket::VideoCodec& codec,
std::unique_ptr<LibvpxInterface> interface,
- const WebRtcKeyValueConfig& trials)
+ const FieldTrialsView& trials)
: libvpx_(std::move(interface)),
encoded_image_(),
encoded_complete_callback_(nullptr),
@@ -1811,8 +1811,7 @@
// static
LibvpxVp9Encoder::VariableFramerateExperiment
-LibvpxVp9Encoder::ParseVariableFramerateConfig(
- const WebRtcKeyValueConfig& trials) {
+LibvpxVp9Encoder::ParseVariableFramerateConfig(const FieldTrialsView& trials) {
FieldTrialFlag enabled = FieldTrialFlag("Enabled");
FieldTrialParameter<double> framerate_limit("min_fps", 5.0);
FieldTrialParameter<int> qp("min_qp", 32);
@@ -1834,7 +1833,7 @@
// static
LibvpxVp9Encoder::QualityScalerExperiment
-LibvpxVp9Encoder::ParseQualityScalerConfig(const WebRtcKeyValueConfig& trials) {
+LibvpxVp9Encoder::ParseQualityScalerConfig(const FieldTrialsView& trials) {
FieldTrialFlag disabled = FieldTrialFlag("Disabled");
FieldTrialParameter<int> low_qp("low_qp", kLowVp9QpThreshold);
FieldTrialParameter<int> high_qp("hihg_qp", kHighVp9QpThreshold);
@@ -1873,7 +1872,7 @@
// static
LibvpxVp9Encoder::PerformanceFlags
LibvpxVp9Encoder::ParsePerformanceFlagsFromTrials(
- const WebRtcKeyValueConfig& trials) {
+ const FieldTrialsView& trials) {
struct Params : public PerformanceFlags::ParameterSet {
int min_pixel_count = 0;
};
diff --git a/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.h b/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.h
index b5e9cc6..8685464 100644
--- a/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.h
+++ b/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.h
@@ -19,7 +19,7 @@
#include <vector>
#include "api/fec_controller_override.h"
-#include "api/transport/webrtc_key_value_config.h"
+#include "api/field_trials_view.h"
#include "api/video_codecs/video_encoder.h"
#include "api/video_codecs/vp9_profile.h"
#include "common_video/include/video_frame_buffer_pool.h"
@@ -37,7 +37,7 @@
public:
LibvpxVp9Encoder(const cricket::VideoCodec& codec,
std::unique_ptr<LibvpxInterface> interface,
- const WebRtcKeyValueConfig& trials);
+ const FieldTrialsView& trials);
~LibvpxVp9Encoder() override;
@@ -190,7 +190,7 @@
int frames_before_steady_state;
} variable_framerate_experiment_;
static VariableFramerateExperiment ParseVariableFramerateConfig(
- const WebRtcKeyValueConfig& trials);
+ const FieldTrialsView& trials);
FramerateControllerDeprecated variable_framerate_controller_;
const struct QualityScalerExperiment {
@@ -199,7 +199,7 @@
bool enabled;
} quality_scaler_experiment_;
static QualityScalerExperiment ParseQualityScalerConfig(
- const WebRtcKeyValueConfig& trials);
+ const FieldTrialsView& trials);
const bool external_ref_ctrl_;
// Flags that can affect speed vs quality tradeoff, and are configureable per
@@ -234,7 +234,7 @@
performance_flags_by_spatial_index_;
void UpdatePerformanceFlags();
static PerformanceFlags ParsePerformanceFlagsFromTrials(
- const WebRtcKeyValueConfig& trials);
+ const FieldTrialsView& trials);
static PerformanceFlags GetDefaultPerformanceFlags();
int num_steady_state_frames_;
diff --git a/modules/video_coding/deprecated/BUILD.gn b/modules/video_coding/deprecated/BUILD.gn
index 9e4b65f..0155fc4 100644
--- a/modules/video_coding/deprecated/BUILD.gn
+++ b/modules/video_coding/deprecated/BUILD.gn
@@ -17,7 +17,7 @@
deps = [
"..:nack_requester",
"../..:module_api",
- "../../../api:webrtc_key_value_config",
+ "../../../api:field_trials_view",
"../../../api/units:time_delta",
"../../../api/units:timestamp",
"../../../rtc_base:checks",
diff --git a/modules/video_coding/deprecated/nack_module.cc b/modules/video_coding/deprecated/nack_module.cc
index 4a6ae09..0768bc4 100644
--- a/modules/video_coding/deprecated/nack_module.cc
+++ b/modules/video_coding/deprecated/nack_module.cc
@@ -32,7 +32,7 @@
const int kNumReorderingBuckets = 10;
const int kDefaultSendNackDelayMs = 0;
-int64_t GetSendNackDelay(const WebRtcKeyValueConfig& field_trials) {
+int64_t GetSendNackDelay(const FieldTrialsView& field_trials) {
int64_t delay_ms = strtol(
field_trials.Lookup("WebRTC-SendNackDelayMs").c_str(), nullptr, 10);
if (delay_ms > 0 && delay_ms <= 20) {
@@ -62,7 +62,7 @@
absl::optional<DEPRECATED_NackModule::BackoffSettings>
DEPRECATED_NackModule::BackoffSettings::ParseFromFieldTrials(
- const WebRtcKeyValueConfig& field_trials) {
+ const FieldTrialsView& field_trials) {
// Matches magic number in RTPSender::OnReceivedNack().
const TimeDelta kDefaultMinRetryInterval = TimeDelta::Millis(5);
// Upper bound on link-delay considered for exponential backoff.
@@ -91,7 +91,7 @@
Clock* clock,
NackSender* nack_sender,
KeyFrameRequestSender* keyframe_request_sender,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: clock_(clock),
nack_sender_(nack_sender),
keyframe_request_sender_(keyframe_request_sender),
diff --git a/modules/video_coding/deprecated/nack_module.h b/modules/video_coding/deprecated/nack_module.h
index 8d17fff..3b49bd1 100644
--- a/modules/video_coding/deprecated/nack_module.h
+++ b/modules/video_coding/deprecated/nack_module.h
@@ -18,8 +18,8 @@
#include <vector>
#include "absl/base/attributes.h"
+#include "api/field_trials_view.h"
#include "api/units/time_delta.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/include/module.h"
#include "modules/include/module_common_types.h"
#include "modules/video_coding/histogram.h"
@@ -35,7 +35,7 @@
DEPRECATED_NackModule(Clock* clock,
NackSender* nack_sender,
KeyFrameRequestSender* keyframe_request_sender,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
int OnReceivedPacket(uint16_t seq_num, bool is_keyframe);
int OnReceivedPacket(uint16_t seq_num, bool is_keyframe, bool is_recovered);
@@ -72,7 +72,7 @@
struct BackoffSettings {
BackoffSettings(TimeDelta min_retry, TimeDelta max_rtt, double base);
static absl::optional<BackoffSettings> ParseFromFieldTrials(
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
// Min time between nacks.
const TimeDelta min_retry_interval;
diff --git a/modules/video_coding/frame_buffer2.cc b/modules/video_coding/frame_buffer2.cc
index bfa3b36..421da75 100644
--- a/modules/video_coding/frame_buffer2.cc
+++ b/modules/video_coding/frame_buffer2.cc
@@ -58,7 +58,7 @@
FrameBuffer::FrameBuffer(Clock* clock,
VCMTiming* timing,
VCMReceiveStatisticsCallback* stats_callback,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: decoded_frames_history_(kMaxFramesHistory),
clock_(clock),
callback_queue_(nullptr),
diff --git a/modules/video_coding/frame_buffer2.h b/modules/video_coding/frame_buffer2.h
index cd4cbcd..48aceab 100644
--- a/modules/video_coding/frame_buffer2.h
+++ b/modules/video_coding/frame_buffer2.h
@@ -18,9 +18,9 @@
#include <vector>
#include "absl/container/inlined_vector.h"
+#include "api/field_trials_view.h"
#include "api/sequence_checker.h"
#include "api/video/encoded_frame.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/include/video_coding_defines.h"
#include "modules/video_coding/inter_frame_delay.h"
#include "modules/video_coding/jitter_estimator.h"
@@ -49,7 +49,7 @@
FrameBuffer(Clock* clock,
VCMTiming* timing,
VCMReceiveStatisticsCallback* stats_callback,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
FrameBuffer() = delete;
FrameBuffer(const FrameBuffer&) = delete;
diff --git a/modules/video_coding/frame_buffer2_unittest.cc b/modules/video_coding/frame_buffer2_unittest.cc
index b0e3f1d..def2e22 100644
--- a/modules/video_coding/frame_buffer2_unittest.cc
+++ b/modules/video_coding/frame_buffer2_unittest.cc
@@ -41,7 +41,7 @@
class VCMTimingFake : public VCMTiming {
public:
- explicit VCMTimingFake(Clock* clock, const WebRtcKeyValueConfig& field_trials)
+ explicit VCMTimingFake(Clock* clock, const FieldTrialsView& field_trials)
: VCMTiming(clock, field_trials) {}
Timestamp RenderTime(uint32_t frame_timestamp, Timestamp now) const override {
diff --git a/modules/video_coding/frame_buffer3.cc b/modules/video_coding/frame_buffer3.cc
index 7be5ffa..fab4ca7 100644
--- a/modules/video_coding/frame_buffer3.cc
+++ b/modules/video_coding/frame_buffer3.cc
@@ -64,7 +64,7 @@
FrameBuffer::FrameBuffer(int max_size,
int max_decode_history,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: legacy_frame_id_jump_behavior_(
!field_trials.IsDisabled("WebRTC-LegacyFrameIdJumpBehavior")),
max_size_(max_size),
diff --git a/modules/video_coding/frame_buffer3.h b/modules/video_coding/frame_buffer3.h
index 9683195..5bcfbd2 100644
--- a/modules/video_coding/frame_buffer3.h
+++ b/modules/video_coding/frame_buffer3.h
@@ -17,9 +17,9 @@
#include "absl/container/inlined_vector.h"
#include "absl/types/optional.h"
+#include "api/field_trials_view.h"
#include "api/units/timestamp.h"
#include "api/video/encoded_frame.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/utility/decoded_frames_history.h"
namespace webrtc {
@@ -37,7 +37,7 @@
FrameBuffer(int max_size,
int max_decode_history,
// TODO(hta): remove field trials!
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
FrameBuffer(const FrameBuffer&) = delete;
FrameBuffer& operator=(const FrameBuffer&) = delete;
~FrameBuffer() = default;
diff --git a/modules/video_coding/generic_decoder.cc b/modules/video_coding/generic_decoder.cc
index 78d77d3..2a87198 100644
--- a/modules/video_coding/generic_decoder.cc
+++ b/modules/video_coding/generic_decoder.cc
@@ -29,7 +29,7 @@
VCMDecodedFrameCallback::VCMDecodedFrameCallback(
VCMTiming* timing,
Clock* clock,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: _clock(clock),
_timing(timing),
_timestampMap(kDecoderFrameMemoryLength),
diff --git a/modules/video_coding/generic_decoder.h b/modules/video_coding/generic_decoder.h
index 34f22c4..a674858 100644
--- a/modules/video_coding/generic_decoder.h
+++ b/modules/video_coding/generic_decoder.h
@@ -13,10 +13,10 @@
#include <string>
+#include "api/field_trials_view.h"
#include "api/sequence_checker.h"
#include "api/units/time_delta.h"
#include "api/video_codecs/video_decoder.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/encoded_frame.h"
#include "modules/video_coding/include/video_codec_interface.h"
#include "modules/video_coding/timestamp_map.h"
@@ -34,7 +34,7 @@
public:
VCMDecodedFrameCallback(VCMTiming* timing,
Clock* clock,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
~VCMDecodedFrameCallback() override;
void SetUserReceiveCallback(VCMReceiveCallback* receiveCallback);
VCMReceiveCallback* UserReceiveCallback();
diff --git a/modules/video_coding/include/video_coding.h b/modules/video_coding/include/video_coding.h
index 8cedc4a..80398fc 100644
--- a/modules/video_coding/include/video_coding.h
+++ b/modules/video_coding/include/video_coding.h
@@ -11,9 +11,9 @@
#ifndef MODULES_VIDEO_CODING_INCLUDE_VIDEO_CODING_H_
#define MODULES_VIDEO_CODING_INCLUDE_VIDEO_CODING_H_
+#include "api/field_trials_view.h"
#include "api/video/video_frame.h"
#include "api/video_codecs/video_decoder.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/include/module.h"
#include "modules/rtp_rtcp/source/rtp_video_header.h"
#include "modules/video_coding/include/video_coding_defines.h"
@@ -31,7 +31,7 @@
// DEPRECATED.
static VideoCodingModule* Create(
Clock* clock,
- const WebRtcKeyValueConfig* field_trials = nullptr);
+ const FieldTrialsView* field_trials = nullptr);
/*
* Receiver
diff --git a/modules/video_coding/jitter_buffer.cc b/modules/video_coding/jitter_buffer.cc
index 5983bc1..6464b8c 100644
--- a/modules/video_coding/jitter_buffer.cc
+++ b/modules/video_coding/jitter_buffer.cc
@@ -110,7 +110,7 @@
VCMJitterBuffer::VCMJitterBuffer(Clock* clock,
std::unique_ptr<EventWrapper> event,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: clock_(clock),
running_(false),
frame_event_(std::move(event)),
diff --git a/modules/video_coding/jitter_buffer.h b/modules/video_coding/jitter_buffer.h
index 70e65be..72feffd 100644
--- a/modules/video_coding/jitter_buffer.h
+++ b/modules/video_coding/jitter_buffer.h
@@ -17,7 +17,7 @@
#include <set>
#include <vector>
-#include "api/webrtc_key_value_config.h"
+#include "api/field_trials_view.h"
#include "modules/include/module_common_types.h"
#include "modules/include/module_common_types_public.h"
#include "modules/video_coding/decoding_state.h"
@@ -72,7 +72,7 @@
public:
VCMJitterBuffer(Clock* clock,
std::unique_ptr<EventWrapper> event,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
~VCMJitterBuffer();
diff --git a/modules/video_coding/jitter_estimator.cc b/modules/video_coding/jitter_estimator.cc
index e38dfaa..acc36a9 100644
--- a/modules/video_coding/jitter_estimator.cc
+++ b/modules/video_coding/jitter_estimator.cc
@@ -17,11 +17,11 @@
#include <cstdint>
#include "absl/types/optional.h"
+#include "api/field_trials_view.h"
#include "api/units/data_size.h"
#include "api/units/frequency.h"
#include "api/units/time_delta.h"
#include "api/units/timestamp.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/rtt_filter.h"
#include "rtc_base/experiments/jitter_upper_bound_experiment.h"
#include "rtc_base/numerics/safe_conversions.h"
@@ -50,7 +50,7 @@
} // namespace
VCMJitterEstimator::VCMJitterEstimator(Clock* clock,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: fps_counter_(30), // TODO(sprang): Use an estimator with limit based on
// time, rather than number of samples.
time_deviation_upper_bound_(
diff --git a/modules/video_coding/jitter_estimator.h b/modules/video_coding/jitter_estimator.h
index 9672d88..20d318a 100644
--- a/modules/video_coding/jitter_estimator.h
+++ b/modules/video_coding/jitter_estimator.h
@@ -12,11 +12,11 @@
#define MODULES_VIDEO_CODING_JITTER_ESTIMATOR_H_
#include "absl/types/optional.h"
+#include "api/field_trials_view.h"
#include "api/units/data_size.h"
#include "api/units/frequency.h"
#include "api/units/time_delta.h"
#include "api/units/timestamp.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/rtt_filter.h"
#include "rtc_base/rolling_accumulator.h"
@@ -27,7 +27,7 @@
class VCMJitterEstimator {
public:
explicit VCMJitterEstimator(Clock* clock,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
virtual ~VCMJitterEstimator();
VCMJitterEstimator(const VCMJitterEstimator&) = delete;
VCMJitterEstimator& operator=(const VCMJitterEstimator&) = delete;
diff --git a/modules/video_coding/nack_requester.cc b/modules/video_coding/nack_requester.cc
index 7cd824e..1db716b 100644
--- a/modules/video_coding/nack_requester.cc
+++ b/modules/video_coding/nack_requester.cc
@@ -32,7 +32,7 @@
const int kNumReorderingBuckets = 10;
const int kDefaultSendNackDelayMs = 0;
-int64_t GetSendNackDelay(const WebRtcKeyValueConfig& field_trials) {
+int64_t GetSendNackDelay(const FieldTrialsView& field_trials) {
int64_t delay_ms = strtol(
field_trials.Lookup("WebRTC-SendNackDelayMs").c_str(), nullptr, 10);
if (delay_ms > 0 && delay_ms <= 20) {
@@ -109,7 +109,7 @@
absl::optional<NackRequester::BackoffSettings>
NackRequester::BackoffSettings::ParseFromFieldTrials(
- const WebRtcKeyValueConfig& field_trials) {
+ const FieldTrialsView& field_trials) {
// Matches magic number in RTPSender::OnReceivedNack().
const TimeDelta kDefaultMinRetryInterval = TimeDelta::Millis(5);
// Upper bound on link-delay considered for exponential backoff.
@@ -139,7 +139,7 @@
Clock* clock,
NackSender* nack_sender,
KeyFrameRequestSender* keyframe_request_sender,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: worker_thread_(current_queue),
clock_(clock),
nack_sender_(nack_sender),
diff --git a/modules/video_coding/nack_requester.h b/modules/video_coding/nack_requester.h
index a01fb7c..fc44a59 100644
--- a/modules/video_coding/nack_requester.h
+++ b/modules/video_coding/nack_requester.h
@@ -17,9 +17,9 @@
#include <set>
#include <vector>
+#include "api/field_trials_view.h"
#include "api/sequence_checker.h"
#include "api/units/time_delta.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/include/module_common_types.h"
#include "modules/video_coding/histogram.h"
#include "rtc_base/numerics/sequence_number_util.h"
@@ -72,7 +72,7 @@
Clock* clock,
NackSender* nack_sender,
KeyFrameRequestSender* keyframe_request_sender,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
~NackRequester();
void ProcessNacks() override;
@@ -107,7 +107,7 @@
struct BackoffSettings {
BackoffSettings(TimeDelta min_retry, TimeDelta max_rtt, double base);
static absl::optional<BackoffSettings> ParseFromFieldTrials(
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
// Min time between nacks.
const TimeDelta min_retry_interval;
diff --git a/modules/video_coding/receiver.cc b/modules/video_coding/receiver.cc
index 1503731..3f954ec 100644
--- a/modules/video_coding/receiver.cc
+++ b/modules/video_coding/receiver.cc
@@ -32,7 +32,7 @@
VCMReceiver::VCMReceiver(VCMTiming* timing,
Clock* clock,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: VCMReceiver::VCMReceiver(timing,
clock,
absl::WrapUnique(EventWrapper::Create()),
@@ -43,7 +43,7 @@
Clock* clock,
std::unique_ptr<EventWrapper> receiver_event,
std::unique_ptr<EventWrapper> jitter_buffer_event,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: clock_(clock),
jitter_buffer_(clock_, std::move(jitter_buffer_event), field_trials),
timing_(timing),
diff --git a/modules/video_coding/receiver.h b/modules/video_coding/receiver.h
index c82ec2d..0bf756c 100644
--- a/modules/video_coding/receiver.h
+++ b/modules/video_coding/receiver.h
@@ -14,7 +14,7 @@
#include <memory>
#include <vector>
-#include "api/webrtc_key_value_config.h"
+#include "api/field_trials_view.h"
#include "modules/video_coding/event_wrapper.h"
#include "modules/video_coding/include/video_coding.h"
#include "modules/video_coding/include/video_coding_defines.h"
@@ -31,7 +31,7 @@
public:
VCMReceiver(VCMTiming* timing,
Clock* clock,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
// Using this constructor, you can specify a different event implemetation for
// the jitter buffer. Useful for unit tests when you want to simulate incoming
@@ -41,7 +41,7 @@
Clock* clock,
std::unique_ptr<EventWrapper> receiver_event,
std::unique_ptr<EventWrapper> jitter_buffer_event,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
~VCMReceiver();
diff --git a/modules/video_coding/timing.cc b/modules/video_coding/timing.cc
index da71279..f3d5cb4 100644
--- a/modules/video_coding/timing.cc
+++ b/modules/video_coding/timing.cc
@@ -24,7 +24,7 @@
constexpr TimeDelta kZeroPlayoutDelayDefaultMinPacing = TimeDelta::Millis(8);
} // namespace
-VCMTiming::VCMTiming(Clock* clock, const WebRtcKeyValueConfig& field_trials)
+VCMTiming::VCMTiming(Clock* clock, const FieldTrialsView& field_trials)
: clock_(clock),
ts_extrapolator_(
std::make_unique<TimestampExtrapolator>(clock_->CurrentTime())),
diff --git a/modules/video_coding/timing.h b/modules/video_coding/timing.h
index 7471740..5868178 100644
--- a/modules/video_coding/timing.h
+++ b/modules/video_coding/timing.h
@@ -14,9 +14,9 @@
#include <memory>
#include "absl/types/optional.h"
+#include "api/field_trials_view.h"
#include "api/units/time_delta.h"
#include "api/video/video_timing.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/codec_timer.h"
#include "rtc_base/experiments/field_trial_parser.h"
#include "rtc_base/synchronization/mutex.h"
@@ -33,7 +33,7 @@
static constexpr auto kDefaultRenderDelay = TimeDelta::Millis(10);
static constexpr auto kDelayMaxChangeMsPerS = 100;
- VCMTiming(Clock* clock, const WebRtcKeyValueConfig& field_trials);
+ VCMTiming(Clock* clock, const FieldTrialsView& field_trials);
virtual ~VCMTiming() = default;
// Resets the timing to the initial state.
diff --git a/modules/video_coding/video_coding_impl.cc b/modules/video_coding/video_coding_impl.cc
index f3187d9..3e105a6 100644
--- a/modules/video_coding/video_coding_impl.cc
+++ b/modules/video_coding/video_coding_impl.cc
@@ -13,10 +13,10 @@
#include <algorithm>
#include <memory>
+#include "api/field_trials_view.h"
#include "api/sequence_checker.h"
#include "api/transport/field_trial_based_config.h"
#include "api/video/encoded_image.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/include/video_codec_interface.h"
#include "modules/video_coding/timing.h"
#include "rtc_base/memory/always_valid_pointer.h"
@@ -45,7 +45,7 @@
class VideoCodingModuleImpl : public VideoCodingModule {
public:
explicit VideoCodingModuleImpl(Clock* clock,
- const WebRtcKeyValueConfig* field_trials)
+ const FieldTrialsView* field_trials)
: VideoCodingModule(),
field_trials_(field_trials),
timing_(new VCMTiming(clock, *field_trials_)),
@@ -109,7 +109,7 @@
}
private:
- AlwaysValidPointer<const WebRtcKeyValueConfig, FieldTrialBasedConfig>
+ AlwaysValidPointer<const FieldTrialsView, FieldTrialBasedConfig>
field_trials_;
SequenceChecker construction_thread_;
const std::unique_ptr<VCMTiming> timing_;
@@ -121,7 +121,7 @@
// new jitter buffer is in place.
VideoCodingModule* VideoCodingModule::Create(
Clock* clock,
- const WebRtcKeyValueConfig* field_trials) {
+ const FieldTrialsView* field_trials) {
RTC_DCHECK(clock);
return new VideoCodingModuleImpl(clock, field_trials);
}
diff --git a/modules/video_coding/video_coding_impl.h b/modules/video_coding/video_coding_impl.h
index 10adf55..3010b2f 100644
--- a/modules/video_coding/video_coding_impl.h
+++ b/modules/video_coding/video_coding_impl.h
@@ -16,8 +16,8 @@
#include <vector>
#include "absl/types/optional.h"
+#include "api/field_trials_view.h"
#include "api/sequence_checker.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/decoder_database.h"
#include "modules/video_coding/frame_buffer.h"
#include "modules/video_coding/generic_decoder.h"
@@ -59,7 +59,7 @@
public:
VideoReceiver(Clock* clock,
VCMTiming* timing,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
~VideoReceiver() override;
void RegisterReceiveCodec(uint8_t payload_type,
diff --git a/modules/video_coding/video_receiver.cc b/modules/video_coding/video_receiver.cc
index ebfdd1b..6db27c4 100644
--- a/modules/video_coding/video_receiver.cc
+++ b/modules/video_coding/video_receiver.cc
@@ -42,7 +42,7 @@
VideoReceiver::VideoReceiver(Clock* clock,
VCMTiming* timing,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: clock_(clock),
_timing(timing),
_receiver(_timing, clock_, field_trials),
diff --git a/modules/video_coding/video_receiver2.cc b/modules/video_coding/video_receiver2.cc
index e0df761..8557d68 100644
--- a/modules/video_coding/video_receiver2.cc
+++ b/modules/video_coding/video_receiver2.cc
@@ -30,7 +30,7 @@
VideoReceiver2::VideoReceiver2(Clock* clock,
VCMTiming* timing,
- const WebRtcKeyValueConfig& field_trials)
+ const FieldTrialsView& field_trials)
: clock_(clock),
timing_(timing),
decodedFrameCallback_(timing_, clock_, field_trials),
diff --git a/modules/video_coding/video_receiver2.h b/modules/video_coding/video_receiver2.h
index 45d774b..a634e0e 100644
--- a/modules/video_coding/video_receiver2.h
+++ b/modules/video_coding/video_receiver2.h
@@ -11,9 +11,9 @@
#ifndef MODULES_VIDEO_CODING_VIDEO_RECEIVER2_H_
#define MODULES_VIDEO_CODING_VIDEO_RECEIVER2_H_
+#include "api/field_trials_view.h"
#include "api/sequence_checker.h"
#include "api/video_codecs/video_decoder.h"
-#include "api/webrtc_key_value_config.h"
#include "modules/video_coding/decoder_database.h"
#include "modules/video_coding/encoded_frame.h"
#include "modules/video_coding/generic_decoder.h"
@@ -31,7 +31,7 @@
public:
VideoReceiver2(Clock* clock,
VCMTiming* timing,
- const WebRtcKeyValueConfig& field_trials);
+ const FieldTrialsView& field_trials);
~VideoReceiver2();
void RegisterReceiveCodec(uint8_t payload_type,