xref: /aosp_15_r20/external/webrtc/modules/congestion_controller/rtp/BUILD.gn (revision d9f758449e529ab9291ac668be2861e7a55c2422)
1# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS.  All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9import("../../../webrtc.gni")
10
11config("bwe_test_logging") {
12  if (rtc_enable_bwe_test_logging) {
13    defines = [ "BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=1" ]
14  } else {
15    defines = [ "BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=0" ]
16  }
17}
18
19rtc_library("control_handler") {
20  visibility = [ "*" ]
21  sources = [
22    "control_handler.cc",
23    "control_handler.h",
24  ]
25
26  deps = [
27    "../../../api:sequence_checker",
28    "../../../api/transport:network_control",
29    "../../../api/units:data_rate",
30    "../../../api/units:data_size",
31    "../../../api/units:time_delta",
32    "../../../rtc_base:checks",
33    "../../../rtc_base:logging",
34    "../../../rtc_base:safe_conversions",
35    "../../../rtc_base:safe_minmax",
36    "../../../rtc_base/system:no_unique_address",
37    "../../../system_wrappers:field_trial",
38    "../../pacing",
39  ]
40  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
41
42  if (!build_with_mozilla) {
43    deps += [ "../../../rtc_base" ]
44  }
45}
46rtc_library("transport_feedback") {
47  visibility = [ "*" ]
48  sources = [
49    "transport_feedback_adapter.cc",
50    "transport_feedback_adapter.h",
51    "transport_feedback_demuxer.cc",
52    "transport_feedback_demuxer.h",
53  ]
54
55  deps = [
56    "../..:module_api_public",
57    "../../../api:sequence_checker",
58    "../../../api/transport:network_control",
59    "../../../api/units:data_size",
60    "../../../api/units:timestamp",
61    "../../../rtc_base",
62    "../../../rtc_base:checks",
63    "../../../rtc_base:logging",
64    "../../../rtc_base:macromagic",
65    "../../../rtc_base/network:sent_packet",
66    "../../../rtc_base/synchronization:mutex",
67    "../../../rtc_base/system:no_unique_address",
68    "../../../system_wrappers",
69    "../../../system_wrappers:field_trial",
70    "../../rtp_rtcp:rtp_rtcp_format",
71  ]
72  absl_deps = [
73    "//third_party/abseil-cpp/absl/algorithm:container",
74    "//third_party/abseil-cpp/absl/types:optional",
75  ]
76}
77
78if (rtc_include_tests) {
79  rtc_library("congestion_controller_unittests") {
80    testonly = true
81
82    sources = [
83      "transport_feedback_adapter_unittest.cc",
84      "transport_feedback_demuxer_unittest.cc",
85    ]
86    deps = [
87      ":transport_feedback",
88      "../:congestion_controller",
89      "../../../api/transport:network_control",
90      "../../../logging:mocks",
91      "../../../rtc_base",
92      "../../../rtc_base:checks",
93      "../../../rtc_base:safe_conversions",
94      "../../../rtc_base/network:sent_packet",
95      "../../../system_wrappers",
96      "../../../test:field_trial",
97      "../../../test:test_support",
98      "../../pacing",
99      "../../remote_bitrate_estimator",
100      "../../rtp_rtcp:rtp_rtcp_format",
101      "//testing/gmock",
102    ]
103  }
104}
105