summaryrefslogtreecommitdiffstats
path: root/third_party/libwebrtc/call/adaptation/BUILD.gn
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/libwebrtc/call/adaptation/BUILD.gn')
-rw-r--r--third_party/libwebrtc/call/adaptation/BUILD.gn136
1 files changed, 136 insertions, 0 deletions
diff --git a/third_party/libwebrtc/call/adaptation/BUILD.gn b/third_party/libwebrtc/call/adaptation/BUILD.gn
new file mode 100644
index 0000000000..58fadc421d
--- /dev/null
+++ b/third_party/libwebrtc/call/adaptation/BUILD.gn
@@ -0,0 +1,136 @@
+# Copyright (c) 2019 The WebRTC project authors. All Rights Reserved.
+#
+# Use of this source code is governed by a BSD-style license
+# that can be found in the LICENSE file in the root of the source
+# tree. An additional intellectual property rights grant can be found
+# in the file PATENTS. All contributing project authors may
+# be found in the AUTHORS file in the root of the source tree.
+
+import("../../webrtc.gni")
+
+rtc_library("resource_adaptation") {
+ sources = [
+ "adaptation_constraint.cc",
+ "adaptation_constraint.h",
+ "broadcast_resource_listener.cc",
+ "broadcast_resource_listener.h",
+ "degradation_preference_provider.cc",
+ "degradation_preference_provider.h",
+ "encoder_settings.cc",
+ "encoder_settings.h",
+ "resource_adaptation_processor.cc",
+ "resource_adaptation_processor.h",
+ "resource_adaptation_processor_interface.cc",
+ "resource_adaptation_processor_interface.h",
+ "video_source_restrictions.cc",
+ "video_source_restrictions.h",
+ "video_stream_adapter.cc",
+ "video_stream_adapter.h",
+ "video_stream_input_state.cc",
+ "video_stream_input_state.h",
+ "video_stream_input_state_provider.cc",
+ "video_stream_input_state_provider.h",
+ ]
+ deps = [
+ "../../api:field_trials_view",
+ "../../api:make_ref_counted",
+ "../../api:rtp_parameters",
+ "../../api:scoped_refptr",
+ "../../api:sequence_checker",
+ "../../api/adaptation:resource_adaptation_api",
+ "../../api/task_queue:task_queue",
+ "../../api/video:video_adaptation",
+ "../../api/video:video_frame",
+ "../../api/video:video_stream_encoder",
+ "../../api/video_codecs:video_codecs_api",
+ "../../modules/video_coding:video_coding_utility",
+ "../../rtc_base:checks",
+ "../../rtc_base:logging",
+ "../../rtc_base:macromagic",
+ "../../rtc_base:refcount",
+ "../../rtc_base:rtc_task_queue",
+ "../../rtc_base:safe_conversions",
+ "../../rtc_base:stringutils",
+ "../../rtc_base/experiments:balanced_degradation_settings",
+ "../../rtc_base/synchronization:mutex",
+ "../../rtc_base/system:no_unique_address",
+ "../../video:video_stream_encoder_interface",
+ "../../video/config:encoder_config",
+ ]
+ absl_deps = [
+ "//third_party/abseil-cpp/absl/algorithm:container",
+ "//third_party/abseil-cpp/absl/strings",
+ "//third_party/abseil-cpp/absl/types:optional",
+ "//third_party/abseil-cpp/absl/types:variant",
+ ]
+}
+
+if (rtc_include_tests) {
+ rtc_library("resource_adaptation_tests") {
+ testonly = true
+
+ sources = [
+ "broadcast_resource_listener_unittest.cc",
+ "resource_adaptation_processor_unittest.cc",
+ "resource_unittest.cc",
+ "video_source_restrictions_unittest.cc",
+ "video_stream_adapter_unittest.cc",
+ "video_stream_input_state_provider_unittest.cc",
+ ]
+ deps = [
+ ":resource_adaptation",
+ ":resource_adaptation_test_utilities",
+ "../../api:scoped_refptr",
+ "../../api/adaptation:resource_adaptation_api",
+ "../../api/task_queue:default_task_queue_factory",
+ "../../api/task_queue:task_queue",
+ "../../api/video:video_adaptation",
+ "../../api/video_codecs:video_codecs_api",
+ "../../rtc_base:checks",
+ "../../rtc_base:gunit_helpers",
+ "../../rtc_base:rtc_event",
+ "../../rtc_base:rtc_task_queue",
+ "../../rtc_base:stringutils",
+ "../../rtc_base:task_queue_for_test",
+ "../../rtc_base/synchronization:mutex",
+ "../../test:field_trial",
+ "../../test:rtc_expect_death",
+ "../../test:scoped_key_value_config",
+ "../../test:test_support",
+ "../../video/config:encoder_config",
+ ]
+ absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
+ }
+
+ rtc_source_set("resource_adaptation_test_utilities") {
+ testonly = true
+
+ sources = [
+ "test/fake_adaptation_constraint.cc",
+ "test/fake_adaptation_constraint.h",
+ "test/fake_frame_rate_provider.cc",
+ "test/fake_frame_rate_provider.h",
+ "test/fake_resource.cc",
+ "test/fake_resource.h",
+ "test/fake_video_stream_input_state_provider.cc",
+ "test/fake_video_stream_input_state_provider.h",
+ "test/mock_resource_listener.h",
+ ]
+ deps = [
+ ":resource_adaptation",
+ "../../api:make_ref_counted",
+ "../../api:scoped_refptr",
+ "../../api:sequence_checker",
+ "../../api/adaptation:resource_adaptation_api",
+ "../../api/task_queue:task_queue",
+ "../../api/video:video_stream_encoder",
+ "../../test:test_support",
+ "../../video:video_stream_encoder_interface",
+ "../../video/config:encoder_config",
+ ]
+ absl_deps = [
+ "//third_party/abseil-cpp/absl/strings",
+ "//third_party/abseil-cpp/absl/types:optional",
+ ]
+ }
+}