blob: 138d855b456608975b517971165a158a788ce0fd [file] [log] [blame]
hjonaa32c3e2015-12-13 19:58:11 -08001# Copyright (c) 2015 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
mbonadei9aa3f0a2017-01-24 06:58:22 -08009import("../webrtc.gni")
Sami Kalliomaki9c0c75b2016-06-29 14:55:00 +020010if (is_android) {
11 import("//build/config/android/config.gni")
12 import("//build/config/android/rules.gni")
13}
kjellanderc76dc952016-06-03 03:09:32 -070014
15group("api") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000016 visibility = [ "*" ]
Dan Minor9c686132018-01-15 10:20:00 -050017 deps = []
18
19 if (!build_with_mozilla) {
20 deps += [ ":libjingle_peerconnection_api" ]
21 }
kjellanderc76dc952016-06-03 03:09:32 -070022}
23
ehmaldonado38a21322016-09-02 04:10:34 -070024rtc_source_set("call_api") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000025 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +010026 sources = [ "call/audio_sink.h" ]
kjellandera69d9732016-08-31 07:33:05 -070027}
28
Niels Möller8366e172018-02-14 12:20:13 +010029rtc_source_set("callfactory_api") {
30 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +010031 sources = [ "call/call_factory_interface.h" ]
Vojin Ilic504fc192021-05-31 14:02:28 +020032 deps = [
33 "../call:rtp_interfaces",
34 "../rtc_base/system:rtc_export",
35 ]
Niels Möller8366e172018-02-14 12:20:13 +010036}
37
Danil Chapovalov5bf58062019-06-18 16:43:37 +020038if (!build_with_chromium) {
Mirko Bonadei86d053c2019-10-17 21:32:04 +020039 rtc_library("create_peerconnection_factory") {
Danil Chapovalov5bf58062019-06-18 16:43:37 +020040 visibility = [ "*" ]
Danil Chapovalov41300af2019-07-10 12:44:43 +020041 allow_poison = [ "default_task_queue" ]
Danil Chapovalov5bf58062019-06-18 16:43:37 +020042 sources = [
43 "create_peerconnection_factory.cc",
44 "create_peerconnection_factory.h",
45 ]
46 deps = [
47 ":callfactory_api",
48 ":libjingle_peerconnection_api",
49 ":scoped_refptr",
50 "../api/rtc_event_log:rtc_event_log_factory",
51 "../media:rtc_audio_video",
52 "../media:rtc_media_base",
53 "../modules/audio_device:audio_device_api",
54 "../modules/audio_processing:api",
Harald Alvestrandc1e8aeb2022-03-31 19:53:50 +000055 "../pc:peer_connection_factory",
56 "../pc:webrtc_sdp",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +010057 "../rtc_base:threading",
Harald Alvestrandc1e8aeb2022-03-31 19:53:50 +000058 "../stats:rtc_stats",
Danil Chapovalov5bf58062019-06-18 16:43:37 +020059 "audio:audio_mixer_api",
60 "audio_codecs:audio_codecs_api",
61 "task_queue:default_task_queue_factory",
Erik Språngceb44952020-09-22 11:36:35 +020062 "transport:field_trial_based_config",
Danil Chapovalov5bf58062019-06-18 16:43:37 +020063 "video_codecs:video_codecs_api",
Danil Chapovalov5bf58062019-06-18 16:43:37 +020064 ]
65 }
Mirko Bonadei3cf8f3e2018-11-19 09:17:51 +010066}
67
Mirko Bonadei86d053c2019-10-17 21:32:04 +020068rtc_library("rtp_headers") {
Niels Möllerb8389522019-03-19 14:27:03 +010069 visibility = [ "*" ]
Niels Mölleref1052a2019-03-20 08:40:23 +010070 sources = [
71 "rtp_headers.cc",
72 "rtp_headers.h",
73 ]
74 deps = [
75 ":array_view",
Sebastian Jansson3d61ab12019-06-14 13:35:51 +020076 "units:timestamp",
Chen Xing5d24b162019-06-10 12:59:38 +020077 "video:video_rtp_headers",
Niels Mölleref1052a2019-03-20 08:40:23 +010078 ]
Mirko Bonadei8b7cfa12020-06-03 21:23:41 +020079 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Niels Möllerb8389522019-03-19 14:27:03 +010080}
81
Mirko Bonadei86d053c2019-10-17 21:32:04 +020082rtc_library("rtp_packet_info") {
Chen Xingd2a66862019-06-03 14:53:42 +020083 visibility = [ "*" ]
84 sources = [
85 "rtp_packet_info.cc",
86 "rtp_packet_info.h",
87 "rtp_packet_infos.h",
88 ]
89 deps = [
90 ":array_view",
Niels Möller7c8c4db2022-06-13 10:36:38 +020091 ":make_ref_counted",
Chen Xingd2a66862019-06-03 14:53:42 +020092 ":refcountedbase",
93 ":rtp_headers",
94 ":scoped_refptr",
Johannes Kron0809e7e2020-01-21 11:54:21 +010095 "../rtc_base/system:rtc_export",
Alessio Bazzica56b96ff2022-09-20 11:16:16 +020096 "units:time_delta",
Johannes Kronf7de74c2021-04-30 13:10:56 +020097 "units:timestamp",
Chen Xingd2a66862019-06-03 14:53:42 +020098 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +020099 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Chen Xingd2a66862019-06-03 14:53:42 +0200100}
101
Markus Handell6fa9e682021-10-13 22:50:53 +0200102rtc_source_set("video_track_source_constraints") {
103 visibility = [ "*" ]
104 sources = [ "video_track_source_constraints.h" ]
105 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
106}
107
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200108rtc_library("media_stream_interface") {
Niels Möllerc1c62842019-09-17 10:16:05 +0200109 visibility = [ "*" ]
Niels Möllere942b142019-09-17 14:30:41 +0200110 sources = [
111 "media_stream_interface.cc",
112 "media_stream_interface.h",
Harald Alvestrand9cb42c82020-10-11 13:03:47 +0000113 "media_stream_track.h",
Niels Möllere942b142019-09-17 14:30:41 +0200114 "notifier.h",
115 ]
116 deps = [
117 ":audio_options_api",
Niels Möller7c8c4db2022-06-13 10:36:38 +0200118 ":make_ref_counted",
Niels Möllere942b142019-09-17 14:30:41 +0200119 ":rtp_parameters",
120 ":scoped_refptr",
Byoungchan Leeb36f6892022-03-03 05:55:22 +0900121 ":sequence_checker",
Markus Handell6fa9e682021-10-13 22:50:53 +0200122 ":video_track_source_constraints",
Niels Möllere942b142019-09-17 14:30:41 +0200123 "../modules/audio_processing:audio_processing_statistics",
124 "../rtc_base:checks",
125 "../rtc_base:refcount",
Byoungchan Leeb36f6892022-03-03 05:55:22 +0900126 "../rtc_base/system:no_unique_address",
Niels Möllere942b142019-09-17 14:30:41 +0200127 "../rtc_base/system:rtc_export",
Markus Handell9982efa2019-11-21 11:56:50 +0100128 "video:recordable_encoded_frame",
Niels Möllere942b142019-09-17 14:30:41 +0200129 "video:video_frame",
Niels Möllere942b142019-09-17 14:30:41 +0200130 ]
Niels Möllerc397fc62022-05-30 11:26:40 +0200131 absl_deps = [
132 "//third_party/abseil-cpp/absl/strings",
133 "//third_party/abseil-cpp/absl/types:optional",
134 ]
Niels Möllerc1c62842019-09-17 10:16:05 +0200135}
136
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200137rtc_library("candidate") {
Mirko Bonadei130f2fd2022-06-18 00:07:14 +0200138 visibility = [ "*" ]
139
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000140 sources = [
141 "candidate.cc",
142 "candidate.h",
143 ]
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200144 deps = [
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200145 "../rtc_base:checks",
146 "../rtc_base:ip_address",
147 "../rtc_base:logging",
148 "../rtc_base:network_constants",
149 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 12:01:09 +0100150 "../rtc_base:ssl",
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200151 "../rtc_base:stringutils",
152 "../rtc_base/system:rtc_export",
153 ]
154 absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
155}
156
157rtc_source_set("turn_customizer") {
Mirko Bonadei130f2fd2022-06-18 00:07:14 +0200158 visibility = [ "*" ]
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000159 sources = [ "turn_customizer.h" ]
Mirko Bonadei9d9c2d52022-10-07 21:47:49 +0000160 deps = [ "transport:stun_types" ]
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200161}
162
163rtc_source_set("ice_transport_interface") {
Mirko Bonadei130f2fd2022-06-18 00:07:14 +0200164 visibility = [ "*" ]
165
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000166 sources = [ "ice_transport_interface.h" ]
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200167 deps = [
168 ":async_dns_resolver",
169 ":packet_socket_factory",
170 ":rtc_error",
171 ":scoped_refptr",
172 "../rtc_base:refcount",
173 "rtc_event_log:rtc_event_log",
174 ]
175}
176
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000177rtc_library("dtls_transport_interface") {
Mirko Bonadei130f2fd2022-06-18 00:07:14 +0200178 visibility = [ "*" ]
179
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000180 sources = [
181 "dtls_transport_interface.cc",
182 "dtls_transport_interface.h",
183 ]
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200184 deps = [
185 ":ice_transport_interface",
186 ":rtc_error",
187 ":scoped_refptr",
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200188 "../rtc_base:refcount",
Florent Castellia138c6c2023-01-04 12:01:09 +0100189 "../rtc_base:ssl",
Mirko Bonadei01ed3252022-06-17 14:07:28 +0200190 "../rtc_base/system:rtc_export",
191 ]
192 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
193}
194
Florent Castelliacabb362022-10-18 17:05:16 +0200195rtc_library("dtmf_sender_interface") {
196 visibility = [ "*" ]
197
198 sources = [ "dtmf_sender_interface.h" ]
199 deps = [
200 ":media_stream_interface",
201 "../rtc_base:refcount",
202 ]
203}
204
205rtc_library("rtp_sender_interface") {
206 visibility = [ "*" ]
207
208 sources = [
209 "rtp_sender_interface.cc",
210 "rtp_sender_interface.h",
211 ]
212 deps = [
213 ":dtls_transport_interface",
214 ":dtmf_sender_interface",
215 ":frame_transformer_interface",
216 ":media_stream_interface",
217 ":rtc_error",
218 ":rtp_parameters",
219 ":scoped_refptr",
220 "../rtc_base:checks",
221 "../rtc_base:refcount",
222 "../rtc_base/system:rtc_export",
223 "crypto:frame_encryptor_interface",
224 "video_codecs:video_codecs_api",
225 ]
226 absl_deps = [ "//third_party/abseil-cpp/absl/functional:any_invocable" ]
227}
228
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200229rtc_library("libjingle_peerconnection_api") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000230 visibility = [ "*" ]
kjellanderc76dc952016-06-03 03:09:32 -0700231 cflags = []
232 sources = [
Harald Alvestrand0d018412021-11-04 13:52:31 +0000233 "crypto_params.h",
Steve Anton10542f22019-01-11 09:11:00 -0800234 "data_channel_interface.cc",
235 "data_channel_interface.h",
Steve Anton845bb732017-12-05 12:50:26 -0800236 "jsep.cc",
kjellanderc76dc952016-06-03 03:09:32 -0700237 "jsep.h",
Steve Anton10542f22019-01-11 09:11:00 -0800238 "jsep_ice_candidate.cc",
239 "jsep_ice_candidate.h",
240 "jsep_session_description.h",
Henrik Boström3e6931b2022-11-11 10:07:34 +0100241 "legacy_stats_types.cc",
242 "legacy_stats_types.h",
Steve Anton10542f22019-01-11 09:11:00 -0800243 "peer_connection_interface.cc",
244 "peer_connection_interface.h",
Steve Anton10542f22019-01-11 09:11:00 -0800245 "rtp_receiver_interface.cc",
246 "rtp_receiver_interface.h",
Steve Anton10542f22019-01-11 09:11:00 -0800247 "rtp_transceiver_interface.cc",
248 "rtp_transceiver_interface.h",
Harald Alvestrandc85328f2019-02-28 07:51:00 +0100249 "sctp_transport_interface.cc",
250 "sctp_transport_interface.h",
Henrik Boström831ae4e2020-07-29 12:04:00 +0200251 "set_local_description_observer_interface.h",
Steve Anton10542f22019-01-11 09:11:00 -0800252 "set_remote_description_observer_interface.h",
Steve Anton10542f22019-01-11 09:11:00 -0800253 "uma_metrics.h",
Markus Handelle93fe6c2021-05-20 22:46:31 +0200254 "video_track_source_proxy_factory.h",
Florent Castelliacabb362022-10-18 17:05:16 +0200255
256 # Remove when downstream has been updated
257 "dtmf_sender_interface.h",
258 "rtp_sender_interface.h",
259 ]
260 public_deps = [ # no-presubmit-check TODO(webrtc:8603)
261 # Remove when downstream has been updated
262 ":dtmf_sender_interface",
263 ":rtp_sender_interface",
kjellanderc76dc952016-06-03 03:09:32 -0700264 ]
kjellanderc76dc952016-06-03 03:09:32 -0700265 deps = [
Patrik Höglund3e113432017-12-15 14:40:10 +0100266 ":array_view",
Harald Alvestrand0ccfbd22021-04-08 07:25:04 +0000267 ":async_dns_resolver",
Niels Möllera6fe2612018-01-19 11:28:54 +0100268 ":audio_options_api",
Niels Möller8366e172018-02-14 12:20:13 +0100269 ":callfactory_api",
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000270 ":candidate",
271 ":dtls_transport_interface",
Ying Wang0dd1b0a2018-02-20 12:50:27 +0100272 ":fec_controller_api",
Jonas Oreland128c4dc2022-03-30 07:57:48 +0200273 ":field_trials",
Jonas Orelande62c2f22022-03-29 11:04:48 +0200274 ":field_trials_view",
Marina Cioceae3e07bf2020-02-27 16:28:51 +0100275 ":frame_transformer_interface",
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000276 ":ice_transport_interface",
Niels Möller8366e172018-02-14 12:20:13 +0100277 ":libjingle_logging_api",
Niels Möller7c8c4db2022-06-13 10:36:38 +0200278 ":make_ref_counted",
Niels Möllere942b142019-09-17 14:30:41 +0200279 ":media_stream_interface",
Ying Wang0810a7c2019-04-10 13:48:24 +0200280 ":network_state_predictor_api",
Patrik Höglund662e31f2019-09-05 14:35:04 +0200281 ":packet_socket_factory",
Harald Alvestrandfd5ae7f2020-05-16 08:37:49 +0200282 ":priority",
Mirko Bonadeifcfeefe2019-09-10 10:51:23 +0200283 ":rtc_error",
hbos74e1a4f2016-09-15 23:33:01 -0700284 ":rtc_stats_api",
Chen Xingd2a66862019-06-03 14:53:42 +0200285 ":rtp_packet_info",
Niels Möller184b4af2019-08-23 13:33:50 +0200286 ":rtp_parameters",
Florent Castelliacabb362022-10-18 17:05:16 +0200287 ":rtp_sender_interface",
Markus Handell0357b3e2020-03-16 13:40:51 +0100288 ":rtp_transceiver_direction",
Mirko Bonadeid9708072019-01-25 20:26:48 +0100289 ":scoped_refptr",
Artem Titov06159aa2021-02-09 23:38:13 +0100290 ":sequence_checker",
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000291 ":turn_customizer",
Vojin Ilic504fc192021-05-31 14:02:28 +0200292 "../call:rtp_interfaces",
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000293 "../p2p:rtc_p2p",
Florent Castellied4aadc2022-04-19 17:40:46 +0200294 "../rtc_base:copy_on_write_buffer",
Florent Castelli0af55ba2022-04-04 15:06:30 +0200295 "../rtc_base:logging",
Florent Castellia138c6c2023-01-04 12:01:09 +0100296 "../rtc_base:network",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +0100297 "../rtc_base:network_constants",
Florent Castellif86f6f92022-04-05 02:54:12 +0200298 "../rtc_base:refcount",
Florent Castellia138c6c2023-01-04 12:01:09 +0100299 "../rtc_base:rtc_certificate_generator",
300 "../rtc_base:ssl",
Florent Castelli57aa81b2022-04-04 17:14:02 +0200301 "../rtc_base:stringutils",
Henrik Boström4c1e7cc2020-06-11 12:26:53 +0200302 "adaptation:resource_adaptation_api",
Gustaf Ullberg2ae140a2018-02-16 13:43:49 +0100303 "audio:audio_mixer_api",
Patrik Höglundb5b5bce2017-11-13 10:19:58 +0100304 "audio_codecs:audio_codecs_api",
Mirko Bonadeieaaaf412019-09-13 14:42:15 +0200305 "crypto:frame_decryptor_interface",
306 "crypto:frame_encryptor_interface",
307 "crypto:options",
Evan Shrubsolea7ecf112022-01-26 18:02:30 +0100308 "metronome",
Ivo Creusenc3d1f9b2019-11-01 11:47:51 +0100309 "neteq:neteq_api",
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200310 "rtc_event_log",
Danil Chapovalov9435c612019-04-01 10:33:16 +0200311 "task_queue",
Niels Möller0c4f7be2018-05-07 14:01:37 +0200312 "transport:bitrate_settings",
Honghai Zhangf8998cf2019-10-14 11:27:50 -0700313 "transport:enums",
Sebastian Janssondfce03a2018-05-18 18:05:10 +0200314 "transport:network_control",
Per Kjellander2bca0082020-08-28 09:15:15 +0200315 "transport:sctp_transport_factory_interface",
Niels Möllera8370302019-09-02 15:16:49 +0200316 "transport/rtp:rtp_source",
Piotr (Peter) Slatala48c54932019-01-28 06:50:38 -0800317 "units:data_rate",
Bjorn A Mellem57dc02a2019-05-30 09:15:37 -0700318 "units:timestamp",
Niels Möller3a742392018-10-08 11:13:58 +0200319 "video:encoded_image",
Harald Alvestrandf33f7a22021-05-09 14:58:57 +0000320 "video:video_bitrate_allocator_factory",
Niels Möllerc6ce9c52018-05-11 11:15:30 +0200321 "video:video_frame",
Chen Xing5d24b162019-06-10 12:59:38 +0200322 "video:video_rtp_headers",
Jonas Oreland65455162022-06-08 11:25:46 +0200323 "video_codecs:video_codecs_api",
Patrik Höglundb5b5bce2017-11-13 10:19:58 +0100324
325 # Basically, don't add stuff here. You might break sensitive downstream
326 # targets like pnacl. API should not depend on anything outside of this
327 # file, really. All these should arguably go away in time.
Niels Möllere24557f2019-09-19 11:36:35 +0200328 "../media:rtc_media_base",
Niels Möller6daa2782018-01-23 10:37:42 +0100329 "../media:rtc_media_config",
Patrik Höglundb874a352017-11-27 14:32:41 +0100330 "../modules/audio_processing:audio_processing_statistics",
Patrik Höglund3e113432017-12-15 14:40:10 +0100331 "../rtc_base:checks",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +0100332 "../rtc_base:ip_address",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +0100333 "../rtc_base:socket_address",
334 "../rtc_base:threading",
Mirko Bonadei3b56ee72018-10-15 17:15:12 +0200335 "../rtc_base/system:rtc_export",
kjellanderc76dc952016-06-03 03:09:32 -0700336 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200337 absl_deps = [
338 "//third_party/abseil-cpp/absl/algorithm:container",
Mirko Bonadei5c9b7da2022-10-10 08:43:36 +0000339 "//third_party/abseil-cpp/absl/base:core_headers",
Florent Castelliacabb362022-10-18 17:05:16 +0200340 "//third_party/abseil-cpp/absl/functional:any_invocable",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200341 "//third_party/abseil-cpp/absl/memory",
342 "//third_party/abseil-cpp/absl/strings",
343 "//third_party/abseil-cpp/absl/types:optional",
344 ]
ossu7bb87ee2017-01-23 04:56:25 -0800345}
kjellanderc76dc952016-06-03 03:09:32 -0700346
Marina Cioceae3e07bf2020-02-27 16:28:51 +0100347rtc_source_set("frame_transformer_interface") {
348 visibility = [ "*" ]
349 sources = [ "frame_transformer_interface.h" ]
350 deps = [
Niels Möller7c8c4db2022-06-13 10:36:38 +0200351 ":make_ref_counted",
Marina Cioceae3e07bf2020-02-27 16:28:51 +0100352 ":scoped_refptr",
353 "../rtc_base:refcount",
354 "video:encoded_frame",
Marina Cioceacdc89b42020-05-14 20:01:02 +0200355 "video:video_frame_metadata",
Marina Cioceae3e07bf2020-02-27 16:28:51 +0100356 ]
357}
358
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200359rtc_library("rtc_error") {
Mirko Bonadei9bc98852019-09-10 10:05:26 +0200360 visibility = [ "*" ]
Mirko Bonadeifcfeefe2019-09-10 10:51:23 +0200361 sources = [
362 "rtc_error.cc",
363 "rtc_error.h",
364 ]
365 deps = [
366 "../rtc_base:checks",
367 "../rtc_base:logging",
368 "../rtc_base:macromagic",
369 "../rtc_base/system:rtc_export",
Mirko Bonadeifcfeefe2019-09-10 10:51:23 +0200370 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200371 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Mirko Bonadei9bc98852019-09-10 10:05:26 +0200372}
373
Patrik Höglund662e31f2019-09-05 14:35:04 +0200374rtc_source_set("packet_socket_factory") {
375 visibility = [ "*" ]
376 sources = [
Patrik Höglund662e31f2019-09-05 14:35:04 +0200377 "async_resolver_factory.h",
378 "packet_socket_factory.h",
379 ]
380 deps = [
Harald Alvestrand0ccfbd22021-04-08 07:25:04 +0000381 ":async_dns_resolver",
Harald Alvestrand985310e2021-10-01 15:11:17 +0000382 ":wrapping_async_dns_resolver",
Florent Castellia138c6c2023-01-04 12:01:09 +0100383 "../rtc_base:async_packet_socket",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +0100384 "../rtc_base:async_resolver_interface",
Florent Castellia138c6c2023-01-04 12:01:09 +0100385 "../rtc_base:proxy_info",
Harald Alvestrande6e2f282021-03-24 12:13:28 +0000386 "../rtc_base:socket_address",
Patrik Höglund662e31f2019-09-05 14:35:04 +0200387 "../rtc_base/system:rtc_export",
388 ]
389}
390
Harald Alvestrand0ccfbd22021-04-08 07:25:04 +0000391rtc_source_set("async_dns_resolver") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +0200392 visibility = [ "*" ]
Harald Alvestrand0ccfbd22021-04-08 07:25:04 +0000393 sources = [ "async_dns_resolver.h" ]
394 deps = [
Sameer Vijaykarb787e262022-08-11 11:52:57 +0200395 "../rtc_base:checks",
Harald Alvestrand0ccfbd22021-04-08 07:25:04 +0000396 "../rtc_base:socket_address",
397 "../rtc_base/system:rtc_export",
398 ]
399}
400
Harald Alvestrand985310e2021-10-01 15:11:17 +0000401rtc_source_set("wrapping_async_dns_resolver") {
402 visibility = [
403 ":*",
404 "../p2p:rtc_p2p",
405 ]
406 sources = [
407 "wrapping_async_dns_resolver.cc",
408 "wrapping_async_dns_resolver.h",
409 ]
410 deps = [
411 ":async_dns_resolver",
412 ":sequence_checker",
413 "../rtc_base:async_resolver_interface",
414 "../rtc_base:checks",
415 "../rtc_base:macromagic",
416 "../rtc_base:socket_address",
417 "../rtc_base:threading",
418 "../rtc_base/third_party/sigslot",
419 ]
420 absl_deps = [ "//third_party/abseil-cpp/absl/memory" ]
421}
422
Mirko Bonadei85340ce2018-11-19 15:51:39 +0100423rtc_source_set("scoped_refptr") {
424 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100425 sources = [ "scoped_refptr.h" ]
Mirko Bonadei85340ce2018-11-19 15:51:39 +0100426}
427
Niels Möller7c8c4db2022-06-13 10:36:38 +0200428rtc_source_set("make_ref_counted") {
429 visibility = [ "*" ]
430 sources = [ "make_ref_counted.h" ]
431 deps = [ "../rtc_base:refcount" ]
432}
433
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200434rtc_source_set("video_quality_test_fixture_api") {
435 visibility = [ "*" ]
436 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100437 sources = [ "test/video_quality_test_fixture.h" ]
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200438 deps = [
Patrik Höglundd8f3c172018-09-26 14:39:17 +0200439 ":fec_controller_api",
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200440 ":libjingle_peerconnection_api",
Ying Wang0810a7c2019-04-10 13:48:24 +0200441 ":network_state_predictor_api",
Niels Möller6dcd4dc2019-08-26 10:45:28 +0200442 ":rtp_parameters",
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200443 ":simulated_network_api",
444 "../call:fake_network",
445 "../call:rtp_interfaces",
446 "../test:test_common",
447 "../test:video_test_common",
Jonas Oreland6c2dae22022-09-29 10:28:24 +0200448 "../video/config:encoder_config",
Mirko Bonadei738bfa72019-09-17 14:47:38 +0200449 "transport:bitrate_settings",
Sebastian Jansson1391ed22019-04-30 14:23:51 +0200450 "transport:network_control",
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200451 "video_codecs:video_codecs_api",
452 ]
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200453}
454
Artem Titovd57628f2019-03-22 12:34:25 +0100455rtc_source_set("video_quality_analyzer_api") {
456 visibility = [ "*" ]
457 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100458 sources = [ "test/video_quality_analyzer_interface.h" ]
Artem Titovd57628f2019-03-22 12:34:25 +0100459
460 deps = [
Artem Titov3b641672020-06-02 17:18:17 +0200461 ":array_view",
Artem Titovd57628f2019-03-22 12:34:25 +0100462 ":stats_observer_interface",
463 "video:encoded_image",
464 "video:video_frame",
Chen Xing5d24b162019-06-10 12:59:38 +0200465 "video:video_rtp_headers",
Artem Titovd57628f2019-03-22 12:34:25 +0100466 "video_codecs:video_codecs_api",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200467 ]
468 absl_deps = [
Artem Titov8a0284e2020-05-29 15:49:44 +0200469 "//third_party/abseil-cpp/absl/strings",
Artem Titovd57628f2019-03-22 12:34:25 +0100470 "//third_party/abseil-cpp/absl/types:optional",
471 ]
472}
473
Andrey Logvin20f45822020-07-01 08:32:15 +0000474rtc_source_set("track_id_stream_info_map") {
Mirko Bonadeif948eb62019-04-05 15:13:23 +0200475 visibility = [ "*" ]
Andrey Logvin20f45822020-07-01 08:32:15 +0000476 sources = [ "test/track_id_stream_info_map.h" ]
477 absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
Mirko Bonadeif948eb62019-04-05 15:13:23 +0200478}
479
Markus Handell0357b3e2020-03-16 13:40:51 +0100480rtc_source_set("rtp_transceiver_direction") {
481 visibility = [ "*" ]
482 sources = [ "rtp_transceiver_direction.h" ]
483}
484
Harald Alvestrandfd5ae7f2020-05-16 08:37:49 +0200485rtc_source_set("priority") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +0200486 visibility = [ "*" ]
Harald Alvestrandfd5ae7f2020-05-16 08:37:49 +0200487 sources = [ "priority.h" ]
488}
489
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200490rtc_library("rtp_parameters") {
Niels Möller184b4af2019-08-23 13:33:50 +0200491 visibility = [ "*" ]
Niels Möller6dcd4dc2019-08-26 10:45:28 +0200492 sources = [
493 "media_types.cc",
494 "media_types.h",
495 "rtp_parameters.cc",
496 "rtp_parameters.h",
497 ]
498 deps = [
499 ":array_view",
Harald Alvestrandfd5ae7f2020-05-16 08:37:49 +0200500 ":priority",
Markus Handell0357b3e2020-03-16 13:40:51 +0100501 ":rtp_transceiver_direction",
Niels Möller6dcd4dc2019-08-26 10:45:28 +0200502 "../rtc_base:checks",
503 "../rtc_base:stringutils",
504 "../rtc_base/system:rtc_export",
Jonas Oreland0deda152022-09-23 12:08:57 +0200505 "video:resolution",
Byoungchan Leea1a7c632022-07-05 21:06:28 +0900506 "video_codecs:scalability_mode",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200507 ]
508 absl_deps = [
Byoungchan Leea1a7c632022-07-05 21:06:28 +0900509 "//third_party/abseil-cpp/absl/container:inlined_vector",
Markus Handelldfeb0df2020-03-16 22:20:47 +0100510 "//third_party/abseil-cpp/absl/strings",
Niels Möller6dcd4dc2019-08-26 10:45:28 +0200511 "//third_party/abseil-cpp/absl/types:optional",
512 ]
Niels Möller184b4af2019-08-23 13:33:50 +0200513}
514
Taylor Brandstettere3a294c2020-03-23 23:16:58 +0000515if (is_android) {
Harald Alvestrandfd5ae7f2020-05-16 08:37:49 +0200516 java_cpp_enum("priority_enums") {
517 sources = [ "priority.h" ]
Taylor Brandstettere3a294c2020-03-23 23:16:58 +0000518 }
519}
520
Artem Titovd57628f2019-03-22 12:34:25 +0100521rtc_source_set("audio_quality_analyzer_api") {
522 visibility = [ "*" ]
523 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100524 sources = [ "test/audio_quality_analyzer_interface.h" ]
Artem Titovd57628f2019-03-22 12:34:25 +0100525
526 deps = [
527 ":stats_observer_interface",
Andrey Logvin20f45822020-07-01 08:32:15 +0000528 ":track_id_stream_info_map",
Artem Titovd57628f2019-03-22 12:34:25 +0100529 ]
530}
531
532rtc_source_set("stats_observer_interface") {
533 visibility = [ "*" ]
534 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100535 sources = [ "test/stats_observer_interface.h" ]
Artem Titovd57628f2019-03-22 12:34:25 +0100536
Andrey Logvin9b526182020-06-15 16:14:07 +0000537 deps = [ ":rtc_stats_api" ]
538
539 absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
Artem Titovd57628f2019-03-22 12:34:25 +0100540}
541
Niels Möllerf47a7242021-11-22 16:07:35 +0100542rtc_source_set("peer_network_dependencies") {
543 visibility = [ "*" ]
544 sources = [ "test/peer_network_dependencies.h" ]
545 deps = [
546 ":packet_socket_factory",
Florent Castellia138c6c2023-01-04 12:01:09 +0100547 "../rtc_base:network",
Niels Möllerf47a7242021-11-22 16:07:35 +0100548 "../rtc_base:threading",
549 ]
550}
551
Artem Titovd57628f2019-03-22 12:34:25 +0100552rtc_source_set("peer_connection_quality_test_fixture_api") {
553 visibility = [ "*" ]
554 testonly = true
Jeremy Lecontee91d4bc2022-11-05 12:56:07 +0100555 sources = [ "test/peerconnection_quality_test_fixture.h" ]
Artem Titovd57628f2019-03-22 12:34:25 +0100556
557 deps = [
Artem Titov0d510522022-04-19 13:01:03 +0200558 ":array_view",
Artem Titovd57628f2019-03-22 12:34:25 +0100559 ":audio_quality_analyzer_api",
560 ":callfactory_api",
561 ":fec_controller_api",
Artem Titov00202262019-12-04 22:34:41 +0100562 ":frame_generator_api",
Artem Titovd57628f2019-03-22 12:34:25 +0100563 ":function_view",
564 ":libjingle_peerconnection_api",
Andrey Logvin435fb9a2020-05-08 08:02:49 +0000565 ":media_stream_interface",
Ying Wang0810a7c2019-04-10 13:48:24 +0200566 ":network_state_predictor_api",
Patrik Höglund7d003422019-09-17 12:16:35 +0200567 ":packet_socket_factory",
Niels Möllerf47a7242021-11-22 16:07:35 +0100568 ":peer_network_dependencies",
Artem Titovf9ed56b2020-05-11 21:17:25 +0200569 ":rtp_parameters",
Artem Titovd57628f2019-03-22 12:34:25 +0100570 ":simulated_network_api",
Artem Titova8549212019-08-19 14:38:06 +0200571 ":stats_observer_interface",
Andrey Logvin20f45822020-07-01 08:32:15 +0000572 ":track_id_stream_info_map",
Artem Titovd57628f2019-03-22 12:34:25 +0100573 ":video_quality_analyzer_api",
Harald Alvestrand794d5992022-12-16 09:54:57 +0000574 "../media:media_constants",
Artem Titovf65a89b2019-05-07 11:56:44 +0200575 "../media:rtc_media_base",
Artem Titov7e04b492022-03-08 01:26:03 +0100576 "../modules/audio_processing:api",
Artem Titov7017a132022-04-20 20:57:56 +0200577 "../rtc_base:checks",
Florent Castellia138c6c2023-01-04 12:01:09 +0100578 "../rtc_base:network",
Florent Castellia138c6c2023-01-04 12:01:09 +0100579 "../rtc_base:rtc_certificate_generator",
580 "../rtc_base:ssl",
Artem Titovbccb4522022-06-01 22:32:15 +0200581 "../rtc_base:stringutils",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +0100582 "../rtc_base:threading",
Artem Titov72bc2e22022-08-02 14:03:03 +0200583 "../test:fileutils",
Artem Titov7e04b492022-03-08 01:26:03 +0100584 "audio:audio_mixer_api",
Danil Chapovalov9305d112019-09-04 13:16:09 +0200585 "rtc_event_log",
Danil Chapovalov1a5fc902019-06-10 12:58:03 +0200586 "task_queue",
Jeremy Lecontee91d4bc2022-11-05 12:56:07 +0100587 "test/pclf:media_configuration",
588 "test/pclf:media_quality_test_params",
Jeremy Leconte389228d2022-11-04 14:01:12 +0100589 "test/pclf:peer_configurer",
Artem Titov2068d0d2022-10-12 15:04:06 +0200590 "test/video:video_frame_writer",
Artem Titovd57628f2019-03-22 12:34:25 +0100591 "transport:network_control",
592 "units:time_delta",
Artem Titovb4463ee2019-11-12 17:27:44 +0100593 "video:video_frame",
Artem Titovd57628f2019-03-22 12:34:25 +0100594 "video_codecs:video_codecs_api",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200595 ]
596 absl_deps = [
Jeremy Lecontea3e51df2022-11-10 15:42:53 +0100597 "//third_party/abseil-cpp/absl/base:core_headers",
Artem Titovd57628f2019-03-22 12:34:25 +0100598 "//third_party/abseil-cpp/absl/memory",
Artem Titov4a6f8182020-02-27 13:24:19 +0100599 "//third_party/abseil-cpp/absl/strings",
Artem Titovd57628f2019-03-22 12:34:25 +0100600 "//third_party/abseil-cpp/absl/types:optional",
601 ]
602}
603
Artem Titov503d7232019-12-04 12:37:13 +0100604rtc_source_set("frame_generator_api") {
605 visibility = [ "*" ]
606 testonly = true
Evan Shrubsole7899e972020-09-28 12:04:11 +0200607 sources = [
608 "test/frame_generator_interface.cc",
609 "test/frame_generator_interface.h",
610 ]
Artem Titov503d7232019-12-04 12:37:13 +0100611
612 deps = [
613 ":scoped_refptr",
614 "video:video_frame",
Artem Titov503d7232019-12-04 12:37:13 +0100615 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200616 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Artem Titov503d7232019-12-04 12:37:13 +0100617}
618
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200619rtc_library("test_dependency_factory") {
Patrik Höglundd8f3c172018-09-26 14:39:17 +0200620 visibility = [ "*" ]
621 testonly = true
622 sources = [
623 "test/test_dependency_factory.cc",
624 "test/test_dependency_factory.h",
625 ]
626 deps = [
627 ":video_quality_test_fixture_api",
Yves Gerey3e707812018-11-28 16:47:49 +0100628 "../rtc_base:checks",
Tommi9b7232a2020-05-15 10:09:27 +0200629 "../rtc_base:platform_thread_types",
Patrik Höglundd8f3c172018-09-26 14:39:17 +0200630 ]
Patrik Höglundd8f3c172018-09-26 14:39:17 +0200631}
632
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200633if (rtc_include_tests) {
Sebastian Janssoncec24332019-12-04 14:26:50 +0100634 # TODO(srte): Move to network_emulation sub directory.
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200635 rtc_library("create_network_emulation_manager") {
Artem Titov7bf8c7f2019-03-15 15:00:37 +0100636 visibility = [ "*" ]
637 testonly = true
638 sources = [
639 "test/create_network_emulation_manager.cc",
640 "test/create_network_emulation_manager.h",
641 ]
642 deps = [
643 ":network_emulation_manager_api",
Artem Titov386802e2019-07-05 10:48:17 +0200644 "../test/network:emulated_network",
Artem Titov7bf8c7f2019-03-15 15:00:37 +0100645 ]
646 }
Artem Titovd57628f2019-03-22 12:34:25 +0100647
Andrey Logvine7c79fd2021-02-01 09:56:37 +0000648 if (!build_with_chromium) {
649 rtc_library("create_video_quality_test_fixture_api") {
650 visibility = [ "*" ]
651 testonly = true
652 sources = [
653 "test/create_video_quality_test_fixture.cc",
654 "test/create_video_quality_test_fixture.h",
655 ]
656 deps = [
657 ":fec_controller_api",
658 ":network_state_predictor_api",
659 ":scoped_refptr",
660 ":video_quality_test_fixture_api",
661 "../video:video_quality_test",
662 ]
663 }
Artem Titovd57628f2019-03-22 12:34:25 +0100664
Andrey Logvine7c79fd2021-02-01 09:56:37 +0000665 rtc_library("create_peerconnection_quality_test_fixture") {
666 visibility = [ "*" ]
667 testonly = true
668 sources = [
669 "test/create_peerconnection_quality_test_fixture.cc",
670 "test/create_peerconnection_quality_test_fixture.h",
671 ]
672
673 deps = [
674 ":audio_quality_analyzer_api",
675 ":peer_connection_quality_test_fixture_api",
676 ":time_controller",
677 ":video_quality_analyzer_api",
678 "../test/pc/e2e:peerconnection_quality_test",
Artem Titov36806052022-09-21 16:08:03 +0200679 "test/metrics:global_metrics_logger_and_exporter",
Andrey Logvine7c79fd2021-02-01 09:56:37 +0000680 ]
681 }
Artem Titovd57628f2019-03-22 12:34:25 +0100682 }
Artem Titov33f9d2b2019-12-05 15:59:00 +0100683}
Artem Titov503d7232019-12-04 12:37:13 +0100684
Artem Titov33f9d2b2019-12-05 15:59:00 +0100685rtc_library("create_frame_generator") {
686 visibility = [ "*" ]
687 testonly = true
688 sources = [
689 "test/create_frame_generator.cc",
690 "test/create_frame_generator.h",
691 ]
692 deps = [
693 ":frame_generator_api",
694 "../rtc_base:checks",
695 "../system_wrappers",
696 "../test:frame_generator_impl",
Artem Titov33f9d2b2019-12-05 15:59:00 +0100697 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200698 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200699}
700
Andrey Logvindad6a942020-05-04 17:27:09 +0000701rtc_library("create_peer_connection_quality_test_frame_generator") {
702 visibility = [ "*" ]
703 testonly = true
704 sources = [
705 "test/create_peer_connection_quality_test_frame_generator.cc",
706 "test/create_peer_connection_quality_test_frame_generator.h",
707 ]
708 deps = [
709 ":create_frame_generator",
710 ":frame_generator_api",
Andrey Logvin1e83d342020-05-07 07:19:15 +0000711 "../rtc_base:checks",
Andrey Logvindad6a942020-05-04 17:27:09 +0000712 "../test:fileutils",
Jeremy Leconte0e2cf6c2022-11-04 11:10:42 +0100713 "test/pclf:media_configuration",
Andrey Logvindad6a942020-05-04 17:27:09 +0000714 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200715 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Andrey Logvindad6a942020-05-04 17:27:09 +0000716}
717
Elad Alon80810732017-10-06 13:07:32 +0200718rtc_source_set("libjingle_logging_api") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000719 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100720 sources = [ "rtc_event_log_output.h" ]
Björn Terelius63299a32022-07-05 10:58:52 +0200721 absl_deps = [ "//third_party/abseil-cpp/absl/strings:strings" ]
Elad Alon80810732017-10-06 13:07:32 +0200722}
723
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200724rtc_library("rtc_event_log_output_file") {
Niels Möllerd8b9ed72019-05-08 13:53:51 +0200725 visibility = [ "*" ]
726 sources = [
727 "rtc_event_log_output_file.cc",
728 "rtc_event_log_output_file.h",
729 ]
730
731 deps = [
732 ":libjingle_logging_api",
Niels Möllerd8b9ed72019-05-08 13:53:51 +0200733 "../rtc_base:checks",
Florent Castelli0af55ba2022-04-04 15:06:30 +0200734 "../rtc_base:logging",
Niels Möllerd8b9ed72019-05-08 13:53:51 +0200735 "../rtc_base/system:file_wrapper",
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200736 "rtc_event_log",
Niels Möllerd8b9ed72019-05-08 13:53:51 +0200737 ]
738}
739
hbos74e1a4f2016-09-15 23:33:01 -0700740rtc_source_set("rtc_stats_api") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000741 visibility = [ "*" ]
hbos74e1a4f2016-09-15 23:33:01 -0700742 cflags = []
743 sources = [
Steve Anton10542f22019-01-11 09:11:00 -0800744 "stats/rtc_stats.h",
745 "stats/rtc_stats_collector_callback.h",
746 "stats/rtc_stats_report.h",
hbos74e1a4f2016-09-15 23:33:01 -0700747 "stats/rtcstats_objects.h",
hbos74e1a4f2016-09-15 23:33:01 -0700748 ]
749
750 deps = [
Niels Möller7c8c4db2022-06-13 10:36:38 +0200751 ":make_ref_counted",
Mirko Bonadeid9708072019-01-25 20:26:48 +0100752 ":scoped_refptr",
Tommi86ee89f2021-04-20 16:58:01 +0200753 "../api:refcountedbase",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100754 "../rtc_base:checks",
Florent Castellif86f6f92022-04-05 02:54:12 +0200755 "../rtc_base:refcount",
Mirko Bonadei3b56ee72018-10-15 17:15:12 +0200756 "../rtc_base/system:rtc_export",
Philipp Hancke036b3fd2022-10-12 19:12:23 +0200757 "units:timestamp",
hbos74e1a4f2016-09-15 23:33:01 -0700758 ]
Philipp Hancke8e7a1052022-10-13 13:14:01 +0200759
760 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
hbos74e1a4f2016-09-15 23:33:01 -0700761}
762
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200763rtc_library("audio_options_api") {
Niels Möllera6fe2612018-01-19 11:28:54 +0100764 visibility = [ "*" ]
765 sources = [
Paulina Hensman11b34f42018-04-09 14:24:52 +0200766 "audio_options.cc",
Niels Möllera6fe2612018-01-19 11:28:54 +0100767 "audio_options.h",
768 ]
769
770 deps = [
Yves Gerey3e707812018-11-28 16:47:49 +0100771 ":array_view",
Danil Chapovalov21652332018-08-31 10:29:07 +0200772 "../rtc_base:stringutils",
Ken MacKay831ce5f2019-12-02 10:26:34 -0800773 "../rtc_base/system:rtc_export",
Niels Möllera6fe2612018-01-19 11:28:54 +0100774 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200775 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Niels Möllera6fe2612018-01-19 11:28:54 +0100776}
777
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200778rtc_library("transport_api") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000779 visibility = [ "*" ]
aleloia8eb7562016-11-28 07:02:13 -0800780 sources = [
Dino Radaković1807d572018-02-22 14:18:06 +0100781 "call/transport.cc",
aleloia8eb7562016-11-28 07:02:13 -0800782 "call/transport.h",
783 ]
Danil Chapovalov5312a8f2021-01-25 17:02:57 +0100784 deps = [
785 ":refcountedbase",
786 ":scoped_refptr",
787 ]
aleloia8eb7562016-11-28 07:02:13 -0800788}
nisseb2250e52016-12-02 04:01:14 -0800789
Sebastian Jansson6736df12018-11-21 19:18:39 +0100790rtc_source_set("bitrate_allocation") {
791 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100792 sources = [ "call/bitrate_allocation.h" ]
Sebastian Jansson6736df12018-11-21 19:18:39 +0100793 deps = [
794 "units:data_rate",
795 "units:time_delta",
796 ]
797}
798
Sebastian Janssoncec24332019-12-04 14:26:50 +0100799# TODO(srte): Move to network_emulation sub directory.
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200800rtc_source_set("simulated_network_api") {
801 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100802 sources = [ "test/simulated_network.h" ]
Florent Castelli4467ad72022-04-04 15:18:46 +0200803 deps = [
Florent Castelli4467ad72022-04-04 15:18:46 +0200804 "../rtc_base:macromagic",
Florent Castelli71337f32022-04-14 12:41:26 +0200805 "../rtc_base:random",
Florent Castelli4467ad72022-04-04 15:18:46 +0200806 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200807 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Patrik Höglundb6b29e02018-06-21 16:58:01 +0200808}
809
Sebastian Janssoncec24332019-12-04 14:26:50 +0100810# TODO(srte): Move to network_emulation sub directory.
Artem Titov7bf8c7f2019-03-15 15:00:37 +0100811rtc_source_set("network_emulation_manager_api") {
812 visibility = [ "*" ]
813 sources = [
Sebastian Janssoncec24332019-12-04 14:26:50 +0100814 "test/network_emulation_manager.cc",
Artem Titov7bf8c7f2019-03-15 15:00:37 +0100815 "test/network_emulation_manager.h",
816 ]
817 deps = [
Artem Titovcf781282020-07-28 13:45:16 +0200818 ":array_view",
Niels Möller5e7a3ae2021-09-09 15:54:42 +0200819 ":packet_socket_factory",
Niels Möllerf47a7242021-11-22 16:07:35 +0100820 ":peer_network_dependencies",
Artem Titov7bf8c7f2019-03-15 15:00:37 +0100821 ":simulated_network_api",
Sebastian Jansson6ce033a2020-01-22 10:12:56 +0100822 ":time_controller",
Sebastian Janssoncec24332019-12-04 14:26:50 +0100823 "../call:simulated_network",
Björn Tereliusb22cabc2022-06-02 10:51:59 +0200824 "../rtc_base:checks",
Florent Castellia138c6c2023-01-04 12:01:09 +0100825 "../rtc_base:network",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +0100826 "../rtc_base:network_constants",
827 "../rtc_base:threading",
Sebastian Janssoncec24332019-12-04 14:26:50 +0100828 "test/network_emulation",
Artem Titov806299e2019-04-12 12:17:19 +0200829 "units:data_rate",
830 "units:data_size",
831 "units:timestamp",
Artem Titov7bf8c7f2019-03-15 15:00:37 +0100832 ]
833}
834
Sebastian Jansson6ce033a2020-01-22 10:12:56 +0100835rtc_source_set("time_controller") {
836 visibility = [ "*" ]
837 sources = [
838 "test/time_controller.cc",
839 "test/time_controller.h",
840 ]
841
842 deps = [
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +0100843 "../rtc_base:threading",
Sebastian Jansson6ce033a2020-01-22 10:12:56 +0100844 "../rtc_base/synchronization:yield_policy",
845 "../system_wrappers",
846 "task_queue",
847 "units:time_delta",
848 "units:timestamp",
849 ]
850}
851
Ying Wang3b790f32018-01-19 17:58:57 +0100852rtc_source_set("fec_controller_api") {
853 visibility = [ "*" ]
854 sources = [
855 "fec_controller.h",
Elad Alon8f01c4e2019-06-28 15:19:43 +0200856 "fec_controller_override.h",
Ying Wang3b790f32018-01-19 17:58:57 +0100857 ]
858
859 deps = [
Ying Wang0dd1b0a2018-02-20 12:50:27 +0100860 "../modules:module_fec_api",
Niels Möller8f7ce222019-03-21 15:43:58 +0100861 "video:video_frame_type",
Ying Wang3b790f32018-01-19 17:58:57 +0100862 ]
863}
864
Ying Wang0810a7c2019-04-10 13:48:24 +0200865rtc_source_set("network_state_predictor_api") {
866 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100867 sources = [ "network_state_predictor.h" ]
Ying Wang0810a7c2019-04-10 13:48:24 +0200868}
869
kwiberg529662a2017-09-04 05:43:17 -0700870rtc_source_set("array_view") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000871 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100872 sources = [ "array_view.h" ]
kwiberg529662a2017-09-04 05:43:17 -0700873 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100874 "../rtc_base:checks",
875 "../rtc_base:type_traits",
kwiberg529662a2017-09-04 05:43:17 -0700876 ]
877}
878
Niels Möller9155e492017-10-23 11:22:30 +0200879rtc_source_set("refcountedbase") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000880 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100881 sources = [ "ref_counted_base.h" ]
Tommi86ee89f2021-04-20 16:58:01 +0200882 deps = [
883 "../rtc_base:macromagic",
884 "../rtc_base:refcount",
885 ]
Niels Möller9155e492017-10-23 11:22:30 +0200886}
887
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200888rtc_library("ice_transport_factory") {
Harald Alvestrand98462622019-01-30 14:57:03 +0100889 visibility = [ "*" ]
890 sources = [
891 "ice_transport_factory.cc",
892 "ice_transport_factory.h",
893 ]
894 deps = [
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000895 ":ice_transport_interface",
Harald Alvestrand98462622019-01-30 14:57:03 +0100896 ":libjingle_peerconnection_api",
Niels Möller7c8c4db2022-06-13 10:36:38 +0200897 ":make_ref_counted",
Patrik Höglund7d003422019-09-17 12:16:35 +0200898 ":packet_socket_factory",
Harald Alvestrand98462622019-01-30 14:57:03 +0100899 ":scoped_refptr",
900 "../p2p:rtc_p2p",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +0100901 "../rtc_base:threading",
Mirko Bonadei66e76792019-04-02 11:33:59 +0200902 "../rtc_base/system:rtc_export",
Steve Anton6fdfec12019-07-01 14:07:33 -0700903 "rtc_event_log:rtc_event_log",
Harald Alvestrand98462622019-01-30 14:57:03 +0100904 ]
905}
906
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200907rtc_library("neteq_simulator_api") {
Ivo Creusen55de08e2018-09-03 11:49:27 +0200908 visibility = [ "*" ]
909 sources = [
910 "test/neteq_simulator.cc",
911 "test/neteq_simulator.h",
912 ]
913}
914
Artem Titov741daaf2019-03-21 14:37:36 +0100915rtc_source_set("function_view") {
916 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100917 sources = [ "function_view.h" ]
918 deps = [ "../rtc_base:checks" ]
Artem Titov741daaf2019-03-21 14:37:36 +0100919}
920
Artem Titovb586d822021-02-04 15:06:50 +0100921rtc_source_set("sequence_checker") {
922 visibility = [ "*" ]
923 sources = [ "sequence_checker.h" ]
924 deps = [
925 "../rtc_base:checks",
926 "../rtc_base:macromagic",
927 "../rtc_base/synchronization:sequence_checker_internal",
928 ]
929}
930
kjellanderfd5b4e92016-06-13 12:08:33 -0700931if (rtc_include_tests) {
Andrey Logvine7c79fd2021-02-01 09:56:37 +0000932 if (rtc_enable_protobuf && !build_with_chromium) {
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200933 rtc_library("audioproc_f_api") {
Ivo Creusen2cb41052018-03-15 12:22:52 +0100934 visibility = [ "*" ]
935 testonly = true
936 sources = [
937 "test/audioproc_float.cc",
938 "test/audioproc_float.h",
939 ]
940
941 deps = [
Artem Titov94b57c02019-03-21 13:35:10 +0100942 "../modules/audio_processing",
Alessio Bazzicab768e882018-11-07 14:29:54 +0000943 "../modules/audio_processing:api",
Ivo Creusen2cb41052018-03-15 12:22:52 +0100944 "../modules/audio_processing:audioproc_f_impl",
945 ]
946 }
Ivo Creusen55de08e2018-09-03 11:49:27 +0200947
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200948 rtc_library("neteq_simulator_factory") {
Ivo Creusen55de08e2018-09-03 11:49:27 +0200949 visibility = [ "*" ]
950 testonly = true
951 sources = [
952 "test/neteq_simulator_factory.cc",
953 "test/neteq_simulator_factory.h",
954 ]
955 deps = [
956 ":neteq_simulator_api",
957 "../modules/audio_coding:neteq_test_factory",
Ivo Creusenf81b0f12018-09-11 10:30:58 +0200958 "../rtc_base:checks",
Ivo Creusencee751a2020-01-16 17:17:09 +0100959 "neteq:neteq_api",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200960 ]
961 absl_deps = [
Mirko Bonadei2ab97f62019-07-18 13:44:12 +0200962 "//third_party/abseil-cpp/absl/flags:flag",
963 "//third_party/abseil-cpp/absl/flags:parse",
Ivo Creusen5ec61562019-03-20 10:52:18 +0100964 "//third_party/abseil-cpp/absl/strings",
Ivo Creusen26d52e12020-03-24 15:59:26 +0100965 "//third_party/abseil-cpp/absl/types:optional",
Ivo Creusen55de08e2018-09-03 11:49:27 +0200966 ]
967 }
Ivo Creusen2cb41052018-03-15 12:22:52 +0100968 }
969
Rasmus Brandt0cedc052018-05-31 12:53:00 +0200970 rtc_source_set("simulcast_test_fixture_api") {
971 visibility = [ "*" ]
972 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100973 sources = [ "test/simulcast_test_fixture.h" ]
Rasmus Brandt0cedc052018-05-31 12:53:00 +0200974 }
975
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200976 rtc_library("create_simulcast_test_fixture_api") {
Rasmus Brandt0cedc052018-05-31 12:53:00 +0200977 visibility = [ "*" ]
978 testonly = true
979 sources = [
980 "test/create_simulcast_test_fixture.cc",
981 "test/create_simulcast_test_fixture.h",
982 ]
983 deps = [
984 ":simulcast_test_fixture_api",
985 "../modules/video_coding:simulcast_test_fixture_impl",
Rasmus Brandt0cedc052018-05-31 12:53:00 +0200986 "video_codecs:video_codecs_api",
987 ]
Rasmus Brandt0cedc052018-05-31 12:53:00 +0200988 }
989
Sergey Silkin2e1a9a42022-12-15 10:15:18 +0100990 rtc_library("videocodec_test_stats_api") {
Kári Tristan Helgason9d96e922018-05-04 11:56:55 +0200991 visibility = [ "*" ]
992 testonly = true
993 sources = [
Kári Tristan Helgason169005d2018-05-22 13:34:14 +0200994 "test/videocodec_test_stats.cc",
995 "test/videocodec_test_stats.h",
Kári Tristan Helgason9d96e922018-05-04 11:56:55 +0200996 ]
997 deps = [
Sergey Silkin2e1a9a42022-12-15 10:15:18 +0100998 "../api/units:data_rate",
999 "../api/units:frequency",
Jonas Olsson366a50c2018-09-06 13:41:30 +02001000 "../rtc_base:stringutils",
Niels Möller8f7ce222019-03-21 15:43:58 +01001001 "video:video_frame_type",
Sergey Silkin2e1a9a42022-12-15 10:15:18 +01001002 ]
1003 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
1004 }
1005
Sergey Silkin6c60f722023-02-02 11:49:13 +01001006 rtc_library("video_codec_stats_api") {
1007 visibility = [ "*" ]
1008 testonly = true
1009 sources = [ "test/video_codec_stats.h" ]
1010 deps = [
1011 "../api/numerics:numerics",
1012 "../api/units:data_rate",
1013 "../api/units:frequency",
1014 "test/metrics:metric",
1015 "test/metrics:metrics_logger",
1016 ]
1017 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
1018 }
1019
Sergey Silkin2e1a9a42022-12-15 10:15:18 +01001020 rtc_library("videocodec_test_fixture_api") {
1021 visibility = [ "*" ]
1022 testonly = true
1023 sources = [ "test/videocodec_test_fixture.h" ]
1024 deps = [
1025 ":videocodec_test_stats_api",
1026 "../modules/video_coding:video_codec_interface",
Kári Tristan Helgason9d96e922018-05-04 11:56:55 +02001027 "video_codecs:video_codecs_api",
1028 ]
1029 }
1030
Sergey Silkin2e1a9a42022-12-15 10:15:18 +01001031 rtc_library("video_codec_tester_api") {
1032 visibility = [ "*" ]
1033 testonly = true
1034 sources = [ "test/video_codec_tester.h" ]
1035 deps = [
Sergey Silkin6c60f722023-02-02 11:49:13 +01001036 ":video_codec_stats_api",
Sergey Silkin2e1a9a42022-12-15 10:15:18 +01001037 "../modules/video_coding/svc:scalability_mode_util",
1038 "video:encoded_image",
1039 "video:resolution",
1040 "video:video_frame",
1041 ]
1042 absl_deps = [
1043 "//third_party/abseil-cpp/absl/functional:any_invocable",
1044 "//third_party/abseil-cpp/absl/types:optional",
1045 ]
1046 }
1047
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001048 rtc_library("create_videocodec_test_fixture_api") {
Kári Tristan Helgason9d96e922018-05-04 11:56:55 +02001049 visibility = [ "*" ]
1050 testonly = true
1051 sources = [
1052 "test/create_videocodec_test_fixture.cc",
1053 "test/create_videocodec_test_fixture.h",
1054 ]
1055 deps = [
1056 ":videocodec_test_fixture_api",
1057 "../modules/video_coding:video_codecs_test_framework",
1058 "../modules/video_coding:videocodec_test_impl",
Kári Tristan Helgason9d96e922018-05-04 11:56:55 +02001059 "video_codecs:video_codecs_api",
1060 ]
Kári Tristan Helgason9d96e922018-05-04 11:56:55 +02001061 }
1062
Sergey Silkin2e1a9a42022-12-15 10:15:18 +01001063 rtc_library("create_video_codec_tester_api") {
1064 visibility = [ "*" ]
1065 testonly = true
1066 sources = [
1067 "test/create_video_codec_tester.cc",
1068 "test/create_video_codec_tester.h",
1069 ]
1070 deps = [
1071 ":video_codec_tester_api",
1072 "../modules/video_coding:videocodec_test_impl",
1073 ]
1074 }
1075
kjellander2f6af9c2017-03-02 22:26:23 -08001076 rtc_source_set("mock_audio_mixer") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001077 visibility = [ "*" ]
kjellander2f6af9c2017-03-02 22:26:23 -08001078 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +01001079 sources = [ "test/mock_audio_mixer.h" ]
kjellander2f6af9c2017-03-02 22:26:23 -08001080
kjellander2f6af9c2017-03-02 22:26:23 -08001081 deps = [
jianjun.zhuc0247402017-07-11 06:20:45 -07001082 "../test:test_support",
Gustaf Ullberg2ae140a2018-02-16 13:43:49 +01001083 "audio:audio_mixer_api",
kjellander2f6af9c2017-03-02 22:26:23 -08001084 ]
1085 }
1086
Florent Castelli2b4f5132021-07-16 17:13:54 +02001087 rtc_source_set("mock_audio_sink") {
Florent Castelli093f5242021-07-17 00:48:10 +02001088 visibility = [ "*" ]
Florent Castelli2b4f5132021-07-16 17:13:54 +02001089 testonly = true
1090 sources = [ "test/mock_audio_sink.h" ]
1091
1092 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001093 "../api:media_stream_interface",
Florent Castelli2b4f5132021-07-16 17:13:54 +02001094 "../test:test_support",
1095 ]
1096 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
1097 }
1098
Steve Antonc49c7d22020-11-04 19:21:49 -08001099 rtc_source_set("mock_data_channel") {
1100 visibility = [ "*" ]
1101 testonly = true
1102 sources = [ "test/mock_data_channel.h" ]
1103
1104 deps = [
1105 ":libjingle_peerconnection_api",
1106 "../test:test_support",
1107 ]
1108 }
1109
Florent Castelli8c6d88f2022-05-11 18:33:28 +02001110 rtc_source_set("mock_dtmf_sender") {
1111 visibility = [ "*" ]
1112 testonly = true
1113 sources = [ "test/mock_dtmf_sender.h" ]
1114
1115 deps = [
Florent Castelliacabb362022-10-18 17:05:16 +02001116 ":dtmf_sender_interface",
Florent Castelli8c6d88f2022-05-11 18:33:28 +02001117 ":libjingle_peerconnection_api",
1118 "../test:test_support",
1119 ]
1120 }
1121
Elad Alon45befc52019-07-02 11:20:09 +02001122 rtc_source_set("mock_fec_controller_override") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001123 visibility = [ "*" ]
Elad Alon45befc52019-07-02 11:20:09 +02001124 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +01001125 sources = [ "test/mock_fec_controller_override.h" ]
Elad Alon45befc52019-07-02 11:20:09 +02001126 deps = [
1127 ":fec_controller_api",
1128 "../test:test_support",
1129 ]
1130 }
1131
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001132 rtc_library("mock_frame_encryptor") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001133 visibility = [ "*" ]
Benjamin Wright78410ad2018-10-25 09:52:57 -07001134 testonly = true
Danil Chapovalovfc115192020-05-08 15:03:03 +02001135 sources = [ "test/mock_frame_encryptor.h" ]
Benjamin Wright78410ad2018-10-25 09:52:57 -07001136 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001137 # For api/crypto/frame_encryptor_interface.h
1138 ":libjingle_peerconnection_api",
Benjamin Wright78410ad2018-10-25 09:52:57 -07001139 "../test:test_support",
Mirko Bonadeieaaaf412019-09-13 14:42:15 +02001140 "crypto:frame_encryptor_interface",
Benjamin Wright78410ad2018-10-25 09:52:57 -07001141 ]
1142 }
1143
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001144 rtc_library("mock_frame_decryptor") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001145 visibility = [ "*" ]
Benjamin Wright78410ad2018-10-25 09:52:57 -07001146 testonly = true
Danil Chapovalovfc115192020-05-08 15:03:03 +02001147 sources = [ "test/mock_frame_decryptor.h" ]
Benjamin Wright78410ad2018-10-25 09:52:57 -07001148 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001149 ":libjingle_peerconnection_api",
Benjamin Wright78410ad2018-10-25 09:52:57 -07001150 "../test:test_support",
Mirko Bonadeieaaaf412019-09-13 14:42:15 +02001151 "crypto:frame_decryptor_interface",
Benjamin Wright78410ad2018-10-25 09:52:57 -07001152 ]
1153 }
1154
Jonas Oreland65455162022-06-08 11:25:46 +02001155 rtc_library("mock_encoder_selector") {
1156 visibility = [ "*" ]
1157 testonly = true
1158 sources = [ "test/mock_encoder_selector.h" ]
1159 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001160 ":libjingle_peerconnection_api",
1161 "../api/video_codecs:video_codecs_api",
Jonas Oreland65455162022-06-08 11:25:46 +02001162 "../test:test_support",
1163 ]
1164 }
1165
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001166 rtc_library("fake_frame_encryptor") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001167 visibility = [ "*" ]
Benjamin Wright78410ad2018-10-25 09:52:57 -07001168 testonly = true
1169 sources = [
1170 "test/fake_frame_encryptor.cc",
1171 "test/fake_frame_encryptor.h",
1172 ]
1173 deps = [
1174 ":array_view",
Florent Castelli123a0ed2022-11-10 13:28:42 +00001175 ":libjingle_peerconnection_api",
1176 ":make_ref_counted",
Niels Möller6dcd4dc2019-08-26 10:45:28 +02001177 ":rtp_parameters",
Benjamin Wright78410ad2018-10-25 09:52:57 -07001178 "../rtc_base:checks",
Florent Castellif86f6f92022-04-05 02:54:12 +02001179 "../rtc_base:refcount",
Mirko Bonadeieaaaf412019-09-13 14:42:15 +02001180 "crypto:frame_encryptor_interface",
Benjamin Wright78410ad2018-10-25 09:52:57 -07001181 ]
1182 }
1183
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001184 rtc_library("fake_frame_decryptor") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001185 visibility = [ "*" ]
Benjamin Wright84583f62018-10-04 14:22:34 -07001186 testonly = true
1187 sources = [
1188 "test/fake_frame_decryptor.cc",
1189 "test/fake_frame_decryptor.h",
Benjamin Wright84583f62018-10-04 14:22:34 -07001190 ]
1191 deps = [
1192 ":array_view",
Florent Castelli123a0ed2022-11-10 13:28:42 +00001193 ":libjingle_peerconnection_api",
1194 ":make_ref_counted",
Niels Möller6dcd4dc2019-08-26 10:45:28 +02001195 ":rtp_parameters",
Benjamin Wright84583f62018-10-04 14:22:34 -07001196 "../rtc_base:checks",
Mirko Bonadeieaaaf412019-09-13 14:42:15 +02001197 "crypto:frame_decryptor_interface",
Benjamin Wright84583f62018-10-04 14:22:34 -07001198 ]
1199 }
1200
Steve Anton60be6a92020-11-05 14:32:18 -08001201 rtc_source_set("mock_media_stream_interface") {
1202 visibility = [ "*" ]
1203 testonly = true
1204 sources = [ "test/mock_media_stream_interface.h" ]
1205
1206 deps = [
1207 ":media_stream_interface",
1208 "../test:test_support",
1209 ]
1210 }
1211
Niels Möller573b1452022-06-21 11:37:29 +02001212 rtc_source_set("mock_packet_socket_factory") {
1213 visibility = [ "*" ]
1214 testonly = true
1215 sources = [ "test/mock_packet_socket_factory.h" ]
1216
1217 deps = [
1218 ":packet_socket_factory",
1219 "../test:test_support",
1220 ]
1221 }
1222
Jiawei Ou651b92e2018-06-29 15:46:44 -07001223 rtc_source_set("mock_peerconnectioninterface") {
Steve Antonaddf6162020-06-02 14:34:17 -07001224 visibility = [ "*" ]
Jiawei Ou651b92e2018-06-29 15:46:44 -07001225 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +01001226 sources = [ "test/mock_peerconnectioninterface.h" ]
Jiawei Ou651b92e2018-06-29 15:46:44 -07001227
1228 deps = [
1229 ":libjingle_peerconnection_api",
Florent Castelli123a0ed2022-11-10 13:28:42 +00001230 "../api:scoped_refptr",
1231 "../rtc_base:refcount",
Jiawei Ou651b92e2018-06-29 15:46:44 -07001232 "../test:test_support",
1233 ]
1234 }
1235
Steve Antonf84ab8e2020-06-03 09:18:24 -07001236 rtc_source_set("mock_peer_connection_factory_interface") {
1237 visibility = [ "*" ]
1238 testonly = true
1239 sources = [ "test/mock_peer_connection_factory_interface.h" ]
1240
1241 deps = [
1242 ":libjingle_peerconnection_api",
1243 "../test:test_support",
1244 ]
1245 }
1246
Harald Alvestrand98fe9852022-10-24 09:43:22 +00001247 rtc_source_set("mock_session_description_interface") {
1248 visibility = [ "*" ]
1249 testonly = true
1250 sources = [ "test/mock_session_description_interface.h" ]
1251 deps = [
1252 ":libjingle_peerconnection_api",
1253 "../test:test_support",
1254 ]
1255 }
1256
Harald Alvestrand0ccfbd22021-04-08 07:25:04 +00001257 rtc_source_set("mock_async_dns_resolver") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001258 visibility = [ "*" ]
Harald Alvestrand0ccfbd22021-04-08 07:25:04 +00001259 testonly = true
1260 sources = [ "test/mock_async_dns_resolver.h" ]
1261 deps = [
1262 ":async_dns_resolver",
1263 "../test:test_support",
1264 ]
1265 }
1266
Patrik Höglund4b9e6ba2017-12-19 10:32:11 +01001267 rtc_source_set("mock_rtp") {
Steve Anton43ef5d92020-11-05 14:37:22 -08001268 visibility = [ "*" ]
Patrik Höglund4b9e6ba2017-12-19 10:32:11 +01001269 testonly = true
1270 sources = [
Steve Anton43ef5d92020-11-05 14:37:22 -08001271 "test/mock_rtp_transceiver.h",
Patrik Höglund4b9e6ba2017-12-19 10:32:11 +01001272 "test/mock_rtpreceiver.h",
1273 "test/mock_rtpsender.h",
1274 ]
1275
1276 deps = [
1277 ":libjingle_peerconnection_api",
Florent Castelliacabb362022-10-18 17:05:16 +02001278 ":rtp_sender_interface",
Jack Smithadf35a32022-11-29 14:42:38 +00001279 "../api/crypto:frame_decryptor_interface",
Patrik Höglund4b9e6ba2017-12-19 10:32:11 +01001280 "../test:test_support",
Patrik Höglund4b9e6ba2017-12-19 10:32:11 +01001281 ]
1282 }
1283
Marina Cioceabb13f382020-05-15 08:24:17 +02001284 rtc_source_set("mock_transformable_video_frame") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001285 visibility = [ "*" ]
Marina Cioceabb13f382020-05-15 08:24:17 +02001286 testonly = true
1287 sources = [ "test/mock_transformable_video_frame.h" ]
1288
1289 deps = [
1290 ":frame_transformer_interface",
1291 "../test:test_support",
1292 ]
1293 }
1294
Jiawei Ou4206a0a2018-07-20 15:49:43 -07001295 rtc_source_set("mock_video_bitrate_allocator") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001296 visibility = [ "*" ]
Jiawei Ou4206a0a2018-07-20 15:49:43 -07001297 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +01001298 sources = [ "test/mock_video_bitrate_allocator.h" ]
Jiawei Ou4206a0a2018-07-20 15:49:43 -07001299
1300 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001301 "../api/video:video_bitrate_allocator",
Jiawei Ou4206a0a2018-07-20 15:49:43 -07001302 "../test:test_support",
1303 ]
1304 }
1305
Jiawei Ouc2ebe212018-11-08 10:02:56 -08001306 rtc_source_set("mock_video_bitrate_allocator_factory") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001307 visibility = [ "*" ]
Jiawei Ouc2ebe212018-11-08 10:02:56 -08001308 testonly = true
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +01001309 sources = [ "test/mock_video_bitrate_allocator_factory.h" ]
Jiawei Ouc2ebe212018-11-08 10:02:56 -08001310
1311 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001312 "../api/video:video_bitrate_allocator_factory",
Jiawei Ouc2ebe212018-11-08 10:02:56 -08001313 "../test:test_support",
1314 ]
1315 }
1316
Emircan Uysalerdbcac7f2017-10-30 23:10:12 -07001317 rtc_source_set("mock_video_codec_factory") {
Florent Castelli4e0d46f2021-07-19 13:43:10 +02001318 visibility = [ "*" ]
Emircan Uysalerdbcac7f2017-10-30 23:10:12 -07001319 testonly = true
1320 sources = [
1321 "test/mock_video_decoder_factory.h",
1322 "test/mock_video_encoder_factory.h",
1323 ]
1324
Emircan Uysalerdbcac7f2017-10-30 23:10:12 -07001325 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001326 "../api/video_codecs:video_codecs_api",
Emircan Uysalerdbcac7f2017-10-30 23:10:12 -07001327 "../test:test_support",
Emircan Uysalerdbcac7f2017-10-30 23:10:12 -07001328 ]
1329 }
1330
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001331 rtc_library("mock_video_decoder") {
Erik Språngc84cd952018-10-15 11:55:13 +02001332 visibility = [ "*" ]
Erik Språngc84cd952018-10-15 11:55:13 +02001333 testonly = true
Danil Chapovalovfc115192020-05-08 15:03:03 +02001334 sources = [ "test/mock_video_decoder.h" ]
Erik Språngc84cd952018-10-15 11:55:13 +02001335
1336 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001337 "../api/video_codecs:video_codecs_api",
Erik Språngc84cd952018-10-15 11:55:13 +02001338 "../test:test_support",
1339 ]
1340 }
1341
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001342 rtc_library("mock_video_encoder") {
Erik Språngc84cd952018-10-15 11:55:13 +02001343 visibility = [ "*" ]
Erik Språng6af1c922018-10-12 10:01:30 +02001344 testonly = true
Danil Chapovalovfc115192020-05-08 15:03:03 +02001345 sources = [ "test/mock_video_encoder.h" ]
Erik Språng6af1c922018-10-12 10:01:30 +02001346
1347 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001348 "../api/video_codecs:video_codecs_api",
Erik Språng6af1c922018-10-12 10:01:30 +02001349 "../test:test_support",
1350 ]
1351 }
1352
Florent Castelli63cc46c2021-07-17 01:32:40 +02001353 rtc_library("mock_video_track") {
1354 visibility = [ "*" ]
Florent Castelli63cc46c2021-07-17 01:32:40 +02001355 testonly = true
1356 sources = [ "test/mock_video_track.h" ]
1357
1358 deps = [
Florent Castelli123a0ed2022-11-10 13:28:42 +00001359 "../api:media_stream_interface",
1360 "../api:scoped_refptr",
1361 "../rtc_base:refcount",
Florent Castelli63cc46c2021-07-17 01:32:40 +02001362 "../test:test_support",
1363 ]
1364 }
1365
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001366 rtc_library("create_time_controller") {
1367 visibility = [ "*" ]
1368 testonly = true
1369 sources = [
1370 "test/create_time_controller.cc",
1371 "test/create_time_controller.h",
1372 ]
1373
1374 deps = [
Sebastian Jansson7aa2edf2020-01-23 10:00:33 +01001375 ":callfactory_api",
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001376 ":time_controller",
Sebastian Jansson09a9f1b2020-02-03 09:30:07 +01001377 "../call",
Sebastian Jansson7aa2edf2020-01-23 10:00:33 +01001378 "../call:call_interfaces",
Vojin Ilic504fc192021-05-31 14:02:28 +02001379 "../call:rtp_interfaces",
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001380 "../test/time_controller",
1381 ]
1382 }
1383
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001384 rtc_library("rtc_api_unittests") {
Niels Möller2e47f7c2018-10-16 10:41:42 +02001385 testonly = true
1386
1387 sources = [
1388 "array_view_unittest.cc",
Jonas Oreland128c4dc2022-03-30 07:57:48 +02001389 "field_trials_unittest.cc",
Artem Titov741daaf2019-03-21 14:37:36 +01001390 "function_view_unittest.cc",
Steve Anton10542f22019-01-11 09:11:00 -08001391 "rtc_error_unittest.cc",
Niels Möllerd8b9ed72019-05-08 13:53:51 +02001392 "rtc_event_log_output_file_unittest.cc",
Chen Xingd2a66862019-06-03 14:53:42 +02001393 "rtp_packet_info_unittest.cc",
1394 "rtp_packet_infos_unittest.cc",
Steve Anton10542f22019-01-11 09:11:00 -08001395 "rtp_parameters_unittest.cc",
Danil Chapovalovba916b72019-11-12 10:24:43 +01001396 "scoped_refptr_unittest.cc",
Artem Titovb586d822021-02-04 15:06:50 +01001397 "sequence_checker_unittest.cc",
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001398 "test/create_time_controller_unittest.cc",
Artem Titov0d510522022-04-19 13:01:03 +02001399 "test/peerconnection_quality_test_fixture_unittest.cc",
Niels Möller2e47f7c2018-10-16 10:41:42 +02001400 ]
1401
Niels Möller2e47f7c2018-10-16 10:41:42 +02001402 deps = [
1403 ":array_view",
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001404 ":create_time_controller",
Jonas Oreland128c4dc2022-03-30 07:57:48 +02001405 ":field_trials",
1406 ":field_trials_view",
Artem Titov741daaf2019-03-21 14:37:36 +01001407 ":function_view",
Niels Möller2e47f7c2018-10-16 10:41:42 +02001408 ":libjingle_peerconnection_api",
Artem Titov0d510522022-04-19 13:01:03 +02001409 ":peer_connection_quality_test_fixture_api",
Mirko Bonadeifcfeefe2019-09-10 10:51:23 +02001410 ":rtc_error",
Niels Möllerd8b9ed72019-05-08 13:53:51 +02001411 ":rtc_event_log_output_file",
Chen Xingd2a66862019-06-03 14:53:42 +02001412 ":rtp_packet_info",
Niels Möller6dcd4dc2019-08-26 10:45:28 +02001413 ":rtp_parameters",
Danil Chapovalovba916b72019-11-12 10:24:43 +01001414 ":scoped_refptr",
Artem Titovb586d822021-02-04 15:06:50 +01001415 ":sequence_checker",
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001416 ":time_controller",
Florent Castellif9c59842022-04-19 17:07:23 +02001417 "../rtc_base:buffer",
Niels Möller2e47f7c2018-10-16 10:41:42 +02001418 "../rtc_base:checks",
Mirko Bonadeie3abb812018-11-23 13:15:08 +01001419 "../rtc_base:gunit_helpers",
Florent Castelli45a05992022-04-14 12:18:28 +02001420 "../rtc_base:platform_thread",
Florent Castelli33d31fb2022-04-04 16:57:52 +02001421 "../rtc_base:rtc_event",
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001422 "../rtc_base:rtc_task_queue",
Artem Titovb586d822021-02-04 15:06:50 +01001423 "../rtc_base:task_queue_for_test",
Emil Lundmark6bf20cc2022-09-21 15:20:22 +02001424 "../rtc_base/containers:flat_set",
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001425 "../rtc_base/task_utils:repeating_task",
Jonas Oreland128c4dc2022-03-30 07:57:48 +02001426 "../system_wrappers:field_trial",
Emil Lundmark2e3069b2022-12-01 16:20:37 +01001427 "../test:field_trial",
Niels Möllerd8b9ed72019-05-08 13:53:51 +02001428 "../test:fileutils",
Jonas Oreland128c4dc2022-03-30 07:57:48 +02001429 "../test:rtc_expect_death",
Niels Möller2e47f7c2018-10-16 10:41:42 +02001430 "../test:test_support",
Danil Chapovalov2684ab32019-02-26 10:18:08 +01001431 "task_queue:task_queue_default_factory_unittests",
Jeremy Lecontee91d4bc2022-11-05 12:56:07 +01001432 "test/pclf:media_configuration",
Artem Titov96002fa2022-10-25 17:04:10 +02001433 "test/video:video_frame_writer",
Jonas Oreland128c4dc2022-03-30 07:57:48 +02001434 "transport:field_trial_based_config",
Bjorn A Mellemc4f86542019-11-21 10:37:18 -08001435 "units:time_delta",
1436 "units:timestamp",
Niels Möller2e47f7c2018-10-16 10:41:42 +02001437 "units:units_unittests",
philipel8615bf02022-05-05 15:12:13 +02001438 "video:frame_buffer_unittest",
philipele9a74c92021-06-24 14:41:23 +02001439 "video:rtp_video_frame_assembler_unittests",
Danil Chapovalovb703db92019-04-08 16:59:28 +02001440 "video:video_unittests",
Niels Möller2e47f7c2018-10-16 10:41:42 +02001441 ]
Emil Lundmark6bf20cc2022-09-21 15:20:22 +02001442 absl_deps = [
1443 "//third_party/abseil-cpp/absl/strings",
1444 "//third_party/abseil-cpp/absl/types:optional",
1445 ]
Niels Möller2e47f7c2018-10-16 10:41:42 +02001446 }
Harald Alvestrand3cc45d42019-03-14 05:42:04 +01001447
Mirko Bonadei86d053c2019-10-17 21:32:04 +02001448 rtc_library("compile_all_headers") {
Harald Alvestrand3cc45d42019-03-14 05:42:04 +01001449 testonly = true
1450
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +01001451 sources = [ "test/compile_all_headers.cc" ]
Harald Alvestrand3cc45d42019-03-14 05:42:04 +01001452
1453 deps = [
1454 ":fake_frame_decryptor",
1455 ":fake_frame_encryptor",
Harald Alvestrand0ccfbd22021-04-08 07:25:04 +00001456 ":mock_async_dns_resolver",
Harald Alvestrand3cc45d42019-03-14 05:42:04 +01001457 ":mock_audio_mixer",
Florent Castelli2b4f5132021-07-16 17:13:54 +02001458 ":mock_audio_sink",
Steve Antonc49c7d22020-11-04 19:21:49 -08001459 ":mock_data_channel",
Florent Castelli8c6d88f2022-05-11 18:33:28 +02001460 ":mock_dtmf_sender",
Harald Alvestrand3cc45d42019-03-14 05:42:04 +01001461 ":mock_frame_decryptor",
1462 ":mock_frame_encryptor",
Steve Anton60be6a92020-11-05 14:32:18 -08001463 ":mock_media_stream_interface",
Niels Möller573b1452022-06-21 11:37:29 +02001464 ":mock_packet_socket_factory",
Steve Antonf84ab8e2020-06-03 09:18:24 -07001465 ":mock_peer_connection_factory_interface",
Harald Alvestrand3cc45d42019-03-14 05:42:04 +01001466 ":mock_peerconnectioninterface",
1467 ":mock_rtp",
Harald Alvestrand98fe9852022-10-24 09:43:22 +00001468 ":mock_session_description_interface",
Marina Cioceabb13f382020-05-15 08:24:17 +02001469 ":mock_transformable_video_frame",
Harald Alvestrand3cc45d42019-03-14 05:42:04 +01001470 ":mock_video_bitrate_allocator",
1471 ":mock_video_bitrate_allocator_factory",
1472 ":mock_video_codec_factory",
1473 ":mock_video_decoder",
1474 ":mock_video_encoder",
Florent Castelli63cc46c2021-07-17 01:32:40 +02001475 ":mock_video_track",
Harald Alvestrand3cc45d42019-03-14 05:42:04 +01001476 ":rtc_api_unittests",
1477 "units:units_unittests",
1478 ]
1479 }
kjellanderfd5b4e92016-06-13 12:08:33 -07001480}
Jonas Orelanded99dae2022-03-09 09:28:10 +01001481
Emil Lundmark1c8103d2022-09-21 15:20:22 +02001482rtc_source_set("field_trials_registry") {
1483 visibility = [ "*" ]
1484 sources = [
1485 "field_trials_registry.cc",
1486 "field_trials_registry.h",
1487 ]
1488 deps = [
1489 ":field_trials_view",
1490 "../experiments:registered_field_trials",
1491 "../rtc_base:checks",
1492 "../rtc_base/containers:flat_set",
1493 "../rtc_base/system:rtc_export",
1494 ]
1495 absl_deps = [
1496 "//third_party/abseil-cpp/absl/algorithm:container",
1497 "//third_party/abseil-cpp/absl/strings",
1498 ]
1499}
1500
Jonas Orelande62c2f22022-03-29 11:04:48 +02001501rtc_source_set("field_trials_view") {
1502 visibility = [ "*" ]
1503 sources = [ "field_trials_view.h" ]
1504 deps = [ "../rtc_base/system:rtc_export" ]
1505 absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
1506}
1507
Jonas Orelanded99dae2022-03-09 09:28:10 +01001508rtc_source_set("webrtc_key_value_config") {
1509 visibility = [ "*" ]
1510 sources = [ "webrtc_key_value_config.h" ]
Jonas Orelande62c2f22022-03-29 11:04:48 +02001511 deps = [ ":field_trials_view" ]
Jonas Orelanded99dae2022-03-09 09:28:10 +01001512}
Jonas Oreland128c4dc2022-03-30 07:57:48 +02001513
1514rtc_library("field_trials") {
1515 visibility = [ "*" ]
1516 sources = [
1517 "field_trials.cc",
1518 "field_trials.h",
1519 ]
1520 deps = [
Emil Lundmark1c8103d2022-09-21 15:20:22 +02001521 ":field_trials_registry",
Jonas Oreland128c4dc2022-03-30 07:57:48 +02001522 "../rtc_base:checks",
1523 "../rtc_base/containers:flat_map",
1524 "../system_wrappers:field_trial",
1525 ]
1526 absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
1527}
Harald Alvestrand5c4509a2022-11-25 10:03:34 +00001528
1529rtc_library("frame_transformer_factory") {
1530 visibility = [ "*" ]
1531 sources = [
1532 "frame_transformer_factory.cc",
1533 "frame_transformer_factory.h",
1534 ]
1535 deps = [
1536 ":frame_transformer_interface",
1537 ":scoped_refptr",
1538 "../modules/rtp_rtcp",
1539 "../rtc_base:refcount",
1540 "video:encoded_frame",
1541 "video:video_frame_metadata",
1542 ]
1543}