blob: cc092eff01eb6ca31a8b51ba7abaa430ced46533 [file] [log] [blame]
hjonaa32c3e2015-12-14 03:58:111# 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 14:58:229import("../webrtc.gni")
Sami Kalliomaki9c0c75b2016-06-29 12:55:0010if (is_android) {
11 import("//build/config/android/config.gni")
12 import("//build/config/android/rules.gni")
13}
kjellanderc76dc952016-06-03 10:09:3214
15group("api") {
Per Kjellandera7f2d842018-01-10 15:54:5316 visibility = [ "*" ]
Dan Minor9c686132018-01-15 15:20:0017 deps = []
18
19 if (!build_with_mozilla) {
20 deps += [ ":libjingle_peerconnection_api" ]
21 }
kjellanderc76dc952016-06-03 10:09:3222}
23
ehmaldonado38a21322016-09-02 11:10:3424rtc_source_set("call_api") {
Per Kjellandera7f2d842018-01-10 15:54:5325 visibility = [ "*" ]
kjellandera69d9732016-08-31 14:33:0526 sources = [
kjellandera69d9732016-08-31 14:33:0527 "call/audio_sink.h",
kjellandera69d9732016-08-31 14:33:0528 ]
kjellandera69d9732016-08-31 14:33:0529}
30
Niels Möller8366e172018-02-14 11:20:1331rtc_source_set("callfactory_api") {
32 visibility = [ "*" ]
33 sources = [
Steve Anton10542f22019-01-11 17:11:0034 "call/call_factory_interface.h",
Niels Möller8366e172018-02-14 11:20:1335 ]
36}
37
Danil Chapovalov5bf58062019-06-18 14:43:3738if (!build_with_chromium) {
39 rtc_static_library("create_peerconnection_factory") {
40 visibility = [ "*" ]
Danil Chapovalov41300af2019-07-10 10:44:4341 allow_poison = [ "default_task_queue" ]
Danil Chapovalov5bf58062019-06-18 14:43:3742 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",
55 "../pc:peerconnection",
56 "../rtc_base",
57 "../rtc_base:rtc_base_approved",
58 "audio:audio_mixer_api",
59 "audio_codecs:audio_codecs_api",
60 "task_queue:default_task_queue_factory",
61 "video_codecs:video_codecs_api",
62 "//third_party/abseil-cpp/absl/memory",
63 ]
64 }
Mirko Bonadei3cf8f3e2018-11-19 08:17:5165}
66
Niels Möllerb8389522019-03-19 13:27:0367rtc_source_set("rtp_headers") {
68 visibility = [ "*" ]
Niels Mölleref1052a2019-03-20 07:40:2369 sources = [
70 "rtp_headers.cc",
71 "rtp_headers.h",
72 ]
73 deps = [
74 ":array_view",
75 "..:webrtc_common",
Sebastian Jansson3d61ab12019-06-14 11:35:5176 "units:timestamp",
Chen Xing5d24b162019-06-10 10:59:3877 "video:video_rtp_headers",
Niels Mölleref1052a2019-03-20 07:40:2378 "//third_party/abseil-cpp/absl/types:optional",
79 ]
Niels Möllerb8389522019-03-19 13:27:0380}
81
Chen Xingd2a66862019-06-03 12:53:4282rtc_source_set("rtp_packet_info") {
83 visibility = [ "*" ]
84 sources = [
85 "rtp_packet_info.cc",
86 "rtp_packet_info.h",
87 "rtp_packet_infos.h",
88 ]
89 deps = [
90 ":array_view",
91 ":refcountedbase",
92 ":rtp_headers",
93 ":scoped_refptr",
94 "..:webrtc_common",
Chen Xinge08648d2019-08-05 14:29:1395 "../rtc_base:deprecation",
Chen Xingd2a66862019-06-03 12:53:4296 "../rtc_base:rtc_base_approved",
97 "//third_party/abseil-cpp/absl/types:optional",
98 ]
99}
100
Niels Möllerc1c62842019-09-17 08:16:05101rtc_source_set("media_stream_interface") {
102 visibility = [ "*" ]
103 # TODO(bugs.webrtc.org/8733): The files "media_stream_interface.cc",
104 # "media_stream_interface.h", and "notifier.h" should be moved into
105 # this target.
106}
107
ossu7bb87ee2017-01-23 12:56:25108rtc_static_library("libjingle_peerconnection_api") {
Per Kjellandera7f2d842018-01-10 15:54:53109 visibility = [ "*" ]
kjellanderc76dc952016-06-03 10:09:32110 cflags = []
111 sources = [
Patrik Höglundb6b29e02018-06-21 14:58:01112 "bitrate_constraints.h",
Steve Anton36b28db2017-10-26 18:27:17113 "candidate.cc",
Patrik Höglunde2d6a062017-10-05 12:53:33114 "candidate.h",
Anton Sukhanovc136b062019-05-14 21:53:42115 "congestion_control_interface.h",
Steve Anton10542f22019-01-11 17:11:00116 "crypto_params.h",
117 "data_channel_interface.cc",
118 "data_channel_interface.h",
Bjorn A Mellem05497f22019-08-01 17:48:20119 "data_channel_transport_interface.h",
Anton Sukhanovc136b062019-05-14 21:53:42120 "datagram_transport_interface.h",
Harald Alvestrand7061e512019-04-10 15:20:42121 "dtls_transport_interface.cc",
Steve Anton10542f22019-01-11 17:11:00122 "dtls_transport_interface.h",
123 "dtmf_sender_interface.h",
Harald Alvestrand98462622019-01-30 13:57:03124 "ice_transport_interface.h",
Steve Anton845bb732017-12-05 20:50:26125 "jsep.cc",
kjellanderc76dc952016-06-03 10:09:32126 "jsep.h",
Steve Anton10542f22019-01-11 17:11:00127 "jsep_ice_candidate.cc",
128 "jsep_ice_candidate.h",
129 "jsep_session_description.h",
Steve Anton10542f22019-01-11 17:11:00130 "media_stream_interface.cc",
131 "media_stream_interface.h",
132 "media_stream_proxy.h",
133 "media_stream_track_proxy.h",
Anton Sukhanov4f08faa2019-05-21 18:12:57134 "media_transport_config.h",
Anton Sukhanovf60bd4b2018-09-05 17:41:46135 "media_transport_interface.h",
kjellanderc76dc952016-06-03 10:09:32136 "notifier.h",
Steve Anton10542f22019-01-11 17:11:00137 "peer_connection_factory_proxy.h",
138 "peer_connection_interface.cc",
139 "peer_connection_interface.h",
140 "peer_connection_proxy.h",
Steve Antonf2737d22017-10-31 23:27:34141 "proxy.cc",
kjellanderc76dc952016-06-03 10:09:32142 "proxy.h",
Steve Anton10542f22019-01-11 17:11:00143 "rtp_receiver_interface.cc",
144 "rtp_receiver_interface.h",
145 "rtp_sender_interface.cc",
146 "rtp_sender_interface.h",
147 "rtp_transceiver_interface.cc",
148 "rtp_transceiver_interface.h",
Harald Alvestrandc85328f2019-02-28 06:51:00149 "sctp_transport_interface.cc",
150 "sctp_transport_interface.h",
Steve Anton10542f22019-01-11 17:11:00151 "set_remote_description_observer_interface.h",
152 "stats_types.cc",
153 "stats_types.h",
154 "turn_customizer.h",
155 "uma_metrics.h",
156 "video_track_source_proxy.h",
kjellanderc76dc952016-06-03 10:09:32157 ]
kjellanderc76dc952016-06-03 10:09:32158 deps = [
Patrik Höglund3e113432017-12-15 13:40:10159 ":array_view",
Niels Möllera6fe2612018-01-19 10:28:54160 ":audio_options_api",
Niels Möller8366e172018-02-14 11:20:13161 ":callfactory_api",
Ying Wang0dd1b0a2018-02-20 11:50:27162 ":fec_controller_api",
Niels Möller8366e172018-02-14 11:20:13163 ":libjingle_logging_api",
Ying Wang0810a7c2019-04-10 11:48:24164 ":network_state_predictor_api",
Patrik Höglund662e31f2019-09-05 12:35:04165 ":packet_socket_factory",
Mirko Bonadeifcfeefe2019-09-10 08:51:23166 ":rtc_error",
hbos74e1a4f2016-09-16 06:33:01167 ":rtc_stats_api",
Chen Xingd2a66862019-06-03 12:53:42168 ":rtp_packet_info",
Niels Möller184b4af2019-08-23 11:33:50169 ":rtp_parameters",
Mirko Bonadeid9708072019-01-25 19:26:48170 ":scoped_refptr",
Gustaf Ullberg2ae140a2018-02-16 12:43:49171 "audio:audio_mixer_api",
Patrik Höglundb5b5bce2017-11-13 09:19:58172 "audio_codecs:audio_codecs_api",
Mirko Bonadeieaaaf412019-09-13 12:42:15173 "crypto:frame_decryptor_interface",
174 "crypto:frame_encryptor_interface",
175 "crypto:options",
Danil Chapovalovb32f2c72019-05-22 11:39:25176 "rtc_event_log",
Danil Chapovalov9435c6102019-04-01 08:33:16177 "task_queue",
Niels Möller0c4f7be2018-05-07 12:01:37178 "transport:bitrate_settings",
Niels Möller65f17ca2019-09-12 11:59:36179 "transport:datagram_transport_interface",
Sebastian Janssondfce03a2018-05-18 16:05:10180 "transport:network_control",
Niels Möllerec3b9ff2019-02-07 23:28:39181 "transport/media:audio_interfaces",
Niels Möller65f17ca2019-09-12 11:59:36182 "transport/media:media_transport_interface",
Niels Möller7e0e44f2019-02-12 13:04:11183 "transport/media:video_interfaces",
Niels Möllera8370302019-09-02 13:16:49184 "transport/rtp:rtp_source",
Piotr (Peter) Slatala48c54932019-01-28 14:50:38185 "units:data_rate",
Bjorn A Mellem57dc02a2019-05-30 16:15:37186 "units:timestamp",
Niels Möller3a742392018-10-08 09:13:58187 "video:encoded_image",
Niels Möllerc6ce9c52018-05-11 09:15:30188 "video:video_frame",
Chen Xing5d24b162019-06-10 10:59:38189 "video:video_rtp_headers",
Steve Anton2c9ebef2019-01-29 01:27:58190 "//third_party/abseil-cpp/absl/algorithm:container",
Steve Anton8e967df2019-07-31 01:07:40191 "//third_party/abseil-cpp/absl/memory",
Steve Anton6fe1fba2018-12-11 18:15:23192 "//third_party/abseil-cpp/absl/strings",
Danil Chapovalov0bc58cf2018-06-21 11:32:56193 "//third_party/abseil-cpp/absl/types:optional",
Patrik Höglundb5b5bce2017-11-13 09:19:58194
195 # Basically, don't add stuff here. You might break sensitive downstream
196 # targets like pnacl. API should not depend on anything outside of this
197 # file, really. All these should arguably go away in time.
kjellander8a116632017-04-21 12:17:08198 "..:webrtc_common",
Niels Möller6daa2782018-01-23 09:37:42199 "../media:rtc_media_config",
Patrik Höglundb874a352017-11-27 13:32:41200 "../modules/audio_processing:audio_processing_statistics",
Artem Titov94b57c02019-03-21 12:35:10201 "../rtc_base",
Patrik Höglund3e113432017-12-15 13:40:10202 "../rtc_base:checks",
203 "../rtc_base:deprecation",
ehmaldonadof6a861a2017-07-19 17:40:47204 "../rtc_base:rtc_base_approved",
Mirko Bonadei3b56ee72018-10-15 15:15:12205 "../rtc_base/system:rtc_export",
kjellanderc76dc952016-06-03 10:09:32206 ]
ossu7bb87ee2017-01-23 12:56:25207}
kjellanderc76dc952016-06-03 10:09:32208
Mirko Bonadei9bc98852019-09-10 08:05:26209rtc_source_set("rtc_error") {
210 visibility = [ "*" ]
Mirko Bonadeifcfeefe2019-09-10 08:51:23211 sources = [
212 "rtc_error.cc",
213 "rtc_error.h",
214 ]
215 deps = [
216 "../rtc_base:checks",
217 "../rtc_base:logging",
218 "../rtc_base:macromagic",
219 "../rtc_base/system:rtc_export",
220 "//third_party/abseil-cpp/absl/strings",
221 ]
Mirko Bonadei9bc98852019-09-10 08:05:26222}
223
Patrik Höglund662e31f2019-09-05 12:35:04224rtc_source_set("packet_socket_factory") {
225 visibility = [ "*" ]
226 sources = [
Patrik Höglund662e31f2019-09-05 12:35:04227 "async_resolver_factory.h",
228 "packet_socket_factory.h",
229 ]
230 deps = [
231 "../rtc_base:rtc_base",
232 "../rtc_base/system:rtc_export",
233 ]
234}
235
Mirko Bonadei85340ce2018-11-19 14:51:39236rtc_source_set("scoped_refptr") {
237 visibility = [ "*" ]
238 sources = [
239 "scoped_refptr.h",
240 ]
241}
242
Patrik Höglundb6b29e02018-06-21 14:58:01243rtc_source_set("video_quality_test_fixture_api") {
244 visibility = [ "*" ]
245 testonly = true
246 sources = [
247 "test/video_quality_test_fixture.h",
248 ]
249 deps = [
Patrik Höglundd8f3c172018-09-26 12:39:17250 ":fec_controller_api",
Patrik Höglundb6b29e02018-06-21 14:58:01251 ":libjingle_peerconnection_api",
Ying Wang0810a7c2019-04-10 11:48:24252 ":network_state_predictor_api",
Niels Möller6dcd4dc2019-08-26 08:45:28253 ":rtp_parameters",
Patrik Höglundb6b29e02018-06-21 14:58:01254 ":simulated_network_api",
255 "../call:fake_network",
256 "../call:rtp_interfaces",
257 "../test:test_common",
258 "../test:video_test_common",
Sebastian Jansson1391ed22019-04-30 12:23:51259 "transport:network_control",
Niels Möller65f17ca2019-09-12 11:59:36260 "transport/media:media_transport_interface",
Patrik Höglundb6b29e02018-06-21 14:58:01261 "video_codecs:video_codecs_api",
262 ]
Patrik Höglundb6b29e02018-06-21 14:58:01263}
264
Artem Titovd57628f2019-03-22 11:34:25265rtc_source_set("video_quality_analyzer_api") {
266 visibility = [ "*" ]
267 testonly = true
268 sources = [
269 "test/video_quality_analyzer_interface.h",
270 ]
271
272 deps = [
273 ":stats_observer_interface",
274 "video:encoded_image",
275 "video:video_frame",
Chen Xing5d24b162019-06-10 10:59:38276 "video:video_rtp_headers",
Artem Titovd57628f2019-03-22 11:34:25277 "video_codecs:video_codecs_api",
Artem Titovd57628f2019-03-22 11:34:25278 "//third_party/abseil-cpp/absl/types:optional",
279 ]
280}
281
Mirko Bonadeif948eb62019-04-05 13:13:23282rtc_source_set("track_id_stream_label_map") {
283 visibility = [ "*" ]
284 sources = [
285 "test/track_id_stream_label_map.h",
286 ]
287}
288
Niels Möller184b4af2019-08-23 11:33:50289rtc_source_set("rtp_parameters") {
290 visibility = [ "*" ]
Niels Möller6dcd4dc2019-08-26 08:45:28291 sources = [
292 "media_types.cc",
293 "media_types.h",
294 "rtp_parameters.cc",
295 "rtp_parameters.h",
296 ]
297 deps = [
298 ":array_view",
299 "../rtc_base:checks",
300 "../rtc_base:stringutils",
301 "../rtc_base/system:rtc_export",
302 "//third_party/abseil-cpp/absl/types:optional",
303 ]
Niels Möller184b4af2019-08-23 11:33:50304}
305
Artem Titovd57628f2019-03-22 11:34:25306rtc_source_set("audio_quality_analyzer_api") {
307 visibility = [ "*" ]
308 testonly = true
309 sources = [
310 "test/audio_quality_analyzer_interface.h",
311 ]
312
313 deps = [
314 ":stats_observer_interface",
Mirko Bonadeif948eb62019-04-05 13:13:23315 ":track_id_stream_label_map",
Artem Titovd57628f2019-03-22 11:34:25316 ]
317}
318
319rtc_source_set("stats_observer_interface") {
320 visibility = [ "*" ]
321 testonly = true
322 sources = [
323 "test/stats_observer_interface.h",
324 ]
325
326 deps = [
Niels Möllerb4a61282019-08-29 10:16:56327 # For api/stats_types.h
Artem Titovd57628f2019-03-22 11:34:25328 ":libjingle_peerconnection_api",
Niels Möller6dcd4dc2019-08-26 08:45:28329 ":rtp_parameters",
Artem Titovd57628f2019-03-22 11:34:25330 ]
331}
332
333rtc_source_set("peer_connection_quality_test_fixture_api") {
334 visibility = [ "*" ]
335 testonly = true
336 sources = [
337 "test/peerconnection_quality_test_fixture.h",
338 ]
339
340 deps = [
341 ":audio_quality_analyzer_api",
342 ":callfactory_api",
343 ":fec_controller_api",
344 ":function_view",
345 ":libjingle_peerconnection_api",
Ying Wang0810a7c2019-04-10 11:48:24346 ":network_state_predictor_api",
Patrik Höglund7d003422019-09-17 10:16:35347 ":packet_socket_factory",
Artem Titovd57628f2019-03-22 11:34:25348 ":simulated_network_api",
Artem Titova8549212019-08-19 12:38:06349 ":stats_observer_interface",
Artem Titovd57628f2019-03-22 11:34:25350 ":video_quality_analyzer_api",
Artem Titovf65a89b2019-05-07 09:56:44351 "../media:rtc_media_base",
Artem Titovd57628f2019-03-22 11:34:25352 "../rtc_base:rtc_base",
Danil Chapovalov9305d112019-09-04 11:16:09353 "rtc_event_log",
Danil Chapovalov1a5fc902019-06-10 10:58:03354 "task_queue",
Artem Titovd57628f2019-03-22 11:34:25355 "transport:network_control",
Niels Möller65f17ca2019-09-12 11:59:36356 "transport/media:media_transport_interface",
Artem Titovd57628f2019-03-22 11:34:25357 "units:time_delta",
358 "video_codecs:video_codecs_api",
359 "//third_party/abseil-cpp/absl/memory",
360 "//third_party/abseil-cpp/absl/types:optional",
361 ]
362}
363
Patrik Höglundd8f3c172018-09-26 12:39:17364rtc_source_set("test_dependency_factory") {
365 visibility = [ "*" ]
366 testonly = true
367 sources = [
368 "test/test_dependency_factory.cc",
369 "test/test_dependency_factory.h",
370 ]
371 deps = [
372 ":video_quality_test_fixture_api",
Yves Gerey3e707812018-11-28 15:47:49373 "../rtc_base:checks",
Patrik Höglundd8f3c172018-09-26 12:39:17374 "../rtc_base:thread_checker",
tzikf0e926f2018-10-15 04:52:10375 "//third_party/abseil-cpp/absl/memory",
Patrik Höglundd8f3c172018-09-26 12:39:17376 ]
Patrik Höglundd8f3c172018-09-26 12:39:17377}
378
Patrik Höglundb6b29e02018-06-21 14:58:01379if (rtc_include_tests) {
380 rtc_source_set("create_video_quality_test_fixture_api") {
381 visibility = [ "*" ]
382 testonly = true
383 sources = [
384 "test/create_video_quality_test_fixture.cc",
385 "test/create_video_quality_test_fixture.h",
386 ]
387 deps = [
388 ":fec_controller_api",
Ying Wang0810a7c2019-04-10 11:48:24389 ":network_state_predictor_api",
Mirko Bonadeid9708072019-01-25 19:26:48390 ":scoped_refptr",
Patrik Höglundb6b29e02018-06-21 14:58:01391 ":video_quality_test_fixture_api",
Patrik Höglundb6b29e02018-06-21 14:58:01392 "../video:video_quality_test",
Karl Wiberg918f50c2018-07-05 09:40:33393 "//third_party/abseil-cpp/absl/memory",
Patrik Höglundb6b29e02018-06-21 14:58:01394 ]
Patrik Höglundb6b29e02018-06-21 14:58:01395 }
Artem Titov7bf8c7f2019-03-15 14:00:37396
Artem Titov8ea8dcb2019-03-26 12:38:02397 rtc_source_set("create_network_emulation_manager") {
Artem Titov7bf8c7f2019-03-15 14:00:37398 visibility = [ "*" ]
399 testonly = true
400 sources = [
401 "test/create_network_emulation_manager.cc",
402 "test/create_network_emulation_manager.h",
403 ]
404 deps = [
405 ":network_emulation_manager_api",
Artem Titov386802e2019-07-05 08:48:17406 "../test/network:emulated_network",
Artem Titov533a9fe2019-03-21 11:18:05407 "//third_party/abseil-cpp/absl/memory",
Artem Titov7bf8c7f2019-03-15 14:00:37408 ]
409 }
Artem Titovd57628f2019-03-22 11:34:25410
411 rtc_source_set("create_peerconnection_quality_test_fixture") {
412 visibility = [ "*" ]
413 testonly = true
414 sources = [
415 "test/create_peerconnection_quality_test_fixture.cc",
416 "test/create_peerconnection_quality_test_fixture.h",
417 ]
418
419 deps = [
420 ":audio_quality_analyzer_api",
421 ":peer_connection_quality_test_fixture_api",
422 ":video_quality_analyzer_api",
423 "../test/pc/e2e:peerconnection_quality_test",
424 "//third_party/abseil-cpp/absl/memory",
425 ]
426 }
Patrik Höglundb6b29e02018-06-21 14:58:01427}
428
Elad Alon80810732017-10-06 11:07:32429rtc_source_set("libjingle_logging_api") {
Per Kjellandera7f2d842018-01-10 15:54:53430 visibility = [ "*" ]
Elad Alon80810732017-10-06 11:07:32431 sources = [
Steve Anton10542f22019-01-11 17:11:00432 "rtc_event_log_output.h",
Elad Alon80810732017-10-06 11:07:32433 ]
434}
435
Niels Möllerd8b9ed72019-05-08 11:53:51436rtc_source_set("rtc_event_log_output_file") {
437 visibility = [ "*" ]
438 sources = [
439 "rtc_event_log_output_file.cc",
440 "rtc_event_log_output_file.h",
441 ]
442
443 deps = [
444 ":libjingle_logging_api",
Niels Möllerd8b9ed72019-05-08 11:53:51445 "../rtc_base:checks",
446 "../rtc_base:rtc_base_approved",
447 "../rtc_base/system:file_wrapper",
Danil Chapovalovb32f2c72019-05-22 11:39:25448 "rtc_event_log",
Niels Möllerd8b9ed72019-05-08 11:53:51449 ]
450}
451
hbos74e1a4f2016-09-16 06:33:01452rtc_source_set("rtc_stats_api") {
Per Kjellandera7f2d842018-01-10 15:54:53453 visibility = [ "*" ]
hbos74e1a4f2016-09-16 06:33:01454 cflags = []
455 sources = [
Steve Anton10542f22019-01-11 17:11:00456 "stats/rtc_stats.h",
457 "stats/rtc_stats_collector_callback.h",
458 "stats/rtc_stats_report.h",
hbos74e1a4f2016-09-16 06:33:01459 "stats/rtcstats_objects.h",
hbos74e1a4f2016-09-16 06:33:01460 ]
461
462 deps = [
Mirko Bonadeid9708072019-01-25 19:26:48463 ":scoped_refptr",
Patrik Höglunda8005cf2017-12-13 15:05:42464 "../rtc_base:checks",
ehmaldonadof6a861a2017-07-19 17:40:47465 "../rtc_base:rtc_base_approved",
Mirko Bonadei3b56ee72018-10-15 15:15:12466 "../rtc_base/system:rtc_export",
hbos74e1a4f2016-09-16 06:33:01467 ]
468}
469
Niels Möllera6fe2612018-01-19 10:28:54470rtc_source_set("audio_options_api") {
471 visibility = [ "*" ]
472 sources = [
Paulina Hensman11b34f42018-04-09 12:24:52473 "audio_options.cc",
Niels Möllera6fe2612018-01-19 10:28:54474 "audio_options.h",
475 ]
476
477 deps = [
Yves Gerey3e707812018-11-28 15:47:49478 ":array_view",
Danil Chapovalov21652332018-08-31 08:29:07479 "../rtc_base:stringutils",
Danil Chapovalov0bc58cf2018-06-21 11:32:56480 "//third_party/abseil-cpp/absl/types:optional",
Niels Möllera6fe2612018-01-19 10:28:54481 ]
482}
483
aleloia8eb7562016-11-28 15:02:13484rtc_source_set("transport_api") {
Per Kjellandera7f2d842018-01-10 15:54:53485 visibility = [ "*" ]
aleloia8eb7562016-11-28 15:02:13486 sources = [
Dino Radaković1807d572018-02-22 13:18:06487 "call/transport.cc",
aleloia8eb7562016-11-28 15:02:13488 "call/transport.h",
489 ]
490}
nisseb2250e52016-12-02 12:01:14491
Sebastian Jansson6736df12018-11-21 18:18:39492rtc_source_set("bitrate_allocation") {
493 visibility = [ "*" ]
494 sources = [
495 "call/bitrate_allocation.h",
496 ]
497 deps = [
498 "units:data_rate",
499 "units:time_delta",
500 ]
501}
502
Patrik Höglundb6b29e02018-06-21 14:58:01503rtc_source_set("simulated_network_api") {
504 visibility = [ "*" ]
505 sources = [
506 "test/simulated_network.h",
507 ]
508 deps = [
Artem Titov94b57c02019-03-21 12:35:10509 "../rtc_base",
Patrik Höglundb6b29e02018-06-21 14:58:01510 "../rtc_base:criticalsection",
Danil Chapovalov065a52a2018-07-09 08:58:54511 "//third_party/abseil-cpp/absl/types:optional",
Patrik Höglundb6b29e02018-06-21 14:58:01512 ]
513}
514
Artem Titov7bf8c7f2019-03-15 14:00:37515rtc_source_set("network_emulation_manager_api") {
516 visibility = [ "*" ]
517 sources = [
518 "test/network_emulation_manager.h",
519 ]
520 deps = [
521 ":simulated_network_api",
Artem Titov94b57c02019-03-21 12:35:10522 "../rtc_base",
Artem Titov806299e2019-04-12 10:17:19523 "units:data_rate",
524 "units:data_size",
525 "units:timestamp",
Artem Titov7bf8c7f2019-03-15 14:00:37526 ]
527}
528
Ying Wang3b790f32018-01-19 16:58:57529rtc_source_set("fec_controller_api") {
530 visibility = [ "*" ]
531 sources = [
532 "fec_controller.h",
Elad Alon8f01c4e2019-06-28 13:19:43533 "fec_controller_override.h",
Ying Wang3b790f32018-01-19 16:58:57534 ]
535
536 deps = [
Ying Wang0dd1b0a2018-02-20 11:50:27537 "../modules:module_fec_api",
Niels Möller8f7ce222019-03-21 14:43:58538 "video:video_frame_type",
Ying Wang3b790f32018-01-19 16:58:57539 ]
540}
541
Ying Wang0810a7c2019-04-10 11:48:24542rtc_source_set("network_state_predictor_api") {
543 visibility = [ "*" ]
544 sources = [
545 "network_state_predictor.h",
546 ]
547}
548
kwiberg529662a2017-09-04 12:43:17549rtc_source_set("array_view") {
Per Kjellandera7f2d842018-01-10 15:54:53550 visibility = [ "*" ]
kwiberg529662a2017-09-04 12:43:17551 sources = [
552 "array_view.h",
553 ]
554 deps = [
Patrik Höglunda8005cf2017-12-13 15:05:42555 "../rtc_base:checks",
556 "../rtc_base:type_traits",
kwiberg529662a2017-09-04 12:43:17557 ]
558}
559
Niels Möller9155e492017-10-23 09:22:30560rtc_source_set("refcountedbase") {
Per Kjellandera7f2d842018-01-10 15:54:53561 visibility = [ "*" ]
Niels Möller9155e492017-10-23 09:22:30562 sources = [
Steve Anton10542f22019-01-11 17:11:00563 "ref_counted_base.h",
Niels Möller9155e492017-10-23 09:22:30564 ]
565 deps = [
566 "../rtc_base:rtc_base_approved",
567 ]
568}
569
Harald Alvestrand98462622019-01-30 13:57:03570rtc_source_set("ice_transport_factory") {
571 visibility = [ "*" ]
572 sources = [
573 "ice_transport_factory.cc",
574 "ice_transport_factory.h",
575 ]
576 deps = [
577 ":libjingle_peerconnection_api",
Patrik Höglund7d003422019-09-17 10:16:35578 ":packet_socket_factory",
Harald Alvestrand98462622019-01-30 13:57:03579 ":scoped_refptr",
580 "../p2p:rtc_p2p",
Artem Titov94b57c02019-03-21 12:35:10581 "../rtc_base",
Mirko Bonadei66e76792019-04-02 09:33:59582 "../rtc_base/system:rtc_export",
Steve Anton6fdfec12019-07-01 21:07:33583 "rtc_event_log:rtc_event_log",
Artem Titov533a9fe2019-03-21 11:18:05584 "//third_party/abseil-cpp/absl/memory",
Harald Alvestrand98462622019-01-30 13:57:03585 ]
586}
587
Ivo Creusen55de08e2018-09-03 09:49:27588rtc_source_set("neteq_simulator_api") {
589 visibility = [ "*" ]
590 sources = [
591 "test/neteq_simulator.cc",
592 "test/neteq_simulator.h",
593 ]
594}
595
Artem Titov741daaf2019-03-21 13:37:36596rtc_source_set("function_view") {
597 visibility = [ "*" ]
598 sources = [
599 "function_view.h",
600 ]
601 deps = [
602 "../rtc_base:checks",
603 ]
604}
605
kjellanderfd5b4e92016-06-13 19:08:33606if (rtc_include_tests) {
Ivo Creusen2cb41052018-03-15 11:22:52607 if (rtc_enable_protobuf) {
608 rtc_source_set("audioproc_f_api") {
609 visibility = [ "*" ]
610 testonly = true
611 sources = [
612 "test/audioproc_float.cc",
613 "test/audioproc_float.h",
614 ]
615
616 deps = [
Artem Titov94b57c02019-03-21 12:35:10617 "../modules/audio_processing",
Alessio Bazzicab768e882018-11-07 14:29:54618 "../modules/audio_processing:api",
Ivo Creusen2cb41052018-03-15 11:22:52619 "../modules/audio_processing:audioproc_f_impl",
620 ]
621 }
Ivo Creusen55de08e2018-09-03 09:49:27622
623 rtc_source_set("neteq_simulator_factory") {
624 visibility = [ "*" ]
625 testonly = true
626 sources = [
627 "test/neteq_simulator_factory.cc",
628 "test/neteq_simulator_factory.h",
629 ]
630 deps = [
631 ":neteq_simulator_api",
632 "../modules/audio_coding:neteq_test_factory",
Ivo Creusenf81b0f12018-09-11 08:30:58633 "../rtc_base:checks",
Mirko Bonadei2ab97f62019-07-18 11:44:12634 "//third_party/abseil-cpp/absl/flags:flag",
635 "//third_party/abseil-cpp/absl/flags:parse",
Ivo Creusen55de08e2018-09-03 09:49:27636 "//third_party/abseil-cpp/absl/memory",
Ivo Creusen5ec61562019-03-20 09:52:18637 "//third_party/abseil-cpp/absl/strings",
Ivo Creusen55de08e2018-09-03 09:49:27638 ]
639 }
Ivo Creusen2cb41052018-03-15 11:22:52640 }
641
Rasmus Brandt0cedc052018-05-31 10:53:00642 rtc_source_set("simulcast_test_fixture_api") {
643 visibility = [ "*" ]
644 testonly = true
645 sources = [
646 "test/simulcast_test_fixture.h",
647 ]
648 }
649
650 rtc_source_set("create_simulcast_test_fixture_api") {
651 visibility = [ "*" ]
652 testonly = true
653 sources = [
654 "test/create_simulcast_test_fixture.cc",
655 "test/create_simulcast_test_fixture.h",
656 ]
657 deps = [
658 ":simulcast_test_fixture_api",
659 "../modules/video_coding:simulcast_test_fixture_impl",
660 "../rtc_base:rtc_base_approved",
661 "video_codecs:video_codecs_api",
Karl Wiberg918f50c2018-07-05 09:40:33662 "//third_party/abseil-cpp/absl/memory",
Rasmus Brandt0cedc052018-05-31 10:53:00663 ]
Rasmus Brandt0cedc052018-05-31 10:53:00664 }
665
Kári Tristan Helgason9d96e922018-05-04 09:56:55666 rtc_source_set("videocodec_test_fixture_api") {
667 visibility = [ "*" ]
668 testonly = true
669 sources = [
670 "test/videocodec_test_fixture.h",
Kári Tristan Helgason169005d2018-05-22 11:34:14671 "test/videocodec_test_stats.cc",
672 "test/videocodec_test_stats.h",
Kári Tristan Helgason9d96e922018-05-04 09:56:55673 ]
674 deps = [
Kári Tristan Helgason169005d2018-05-22 11:34:14675 "..:webrtc_common",
676 "../modules/video_coding:video_codec_interface",
Jonas Olsson366a50c2018-09-06 11:41:30677 "../rtc_base:stringutils",
Niels Möller8f7ce222019-03-21 14:43:58678 "video:video_frame_type",
Kári Tristan Helgason9d96e922018-05-04 09:56:55679 "video_codecs:video_codecs_api",
680 ]
681 }
682
683 rtc_source_set("create_videocodec_test_fixture_api") {
684 visibility = [ "*" ]
685 testonly = true
686 sources = [
687 "test/create_videocodec_test_fixture.cc",
688 "test/create_videocodec_test_fixture.h",
689 ]
690 deps = [
691 ":videocodec_test_fixture_api",
692 "../modules/video_coding:video_codecs_test_framework",
693 "../modules/video_coding:videocodec_test_impl",
694 "../rtc_base:rtc_base_approved",
695 "video_codecs:video_codecs_api",
Karl Wiberg918f50c2018-07-05 09:40:33696 "//third_party/abseil-cpp/absl/memory",
Kári Tristan Helgason9d96e922018-05-04 09:56:55697 ]
Kári Tristan Helgason9d96e922018-05-04 09:56:55698 }
699
kjellander2f6af9c2017-03-03 06:26:23700 rtc_source_set("mock_audio_mixer") {
701 testonly = true
702 sources = [
703 "test/mock_audio_mixer.h",
704 ]
705
kjellander2f6af9c2017-03-03 06:26:23706 deps = [
jianjun.zhuc0247402017-07-11 13:20:45707 "../test:test_support",
Gustaf Ullberg2ae140a2018-02-16 12:43:49708 "audio:audio_mixer_api",
kjellander2f6af9c2017-03-03 06:26:23709 ]
710 }
711
Elad Alon45befc52019-07-02 09:20:09712 rtc_source_set("mock_fec_controller_override") {
713 testonly = true
714 sources = [
715 "test/mock_fec_controller_override.h",
716 ]
717 deps = [
718 ":fec_controller_api",
719 "../test:test_support",
720 ]
721 }
722
Benjamin Wright78410ad2018-10-25 16:52:57723 rtc_source_set("mock_frame_encryptor") {
724 testonly = true
725 sources = [
726 "test/mock_frame_encryptor.cc",
727 "test/mock_frame_encryptor.h",
728 ]
729 deps = [
Niels Möllerb4a61282019-08-29 10:16:56730 # For api/crypto/frame_encryptor_interface.h
Benjamin Wright78410ad2018-10-25 16:52:57731 ":libjingle_peerconnection_api",
732 "../test:test_support",
Mirko Bonadeieaaaf412019-09-13 12:42:15733 "crypto:frame_encryptor_interface",
Benjamin Wright78410ad2018-10-25 16:52:57734 ]
735 }
736
737 rtc_source_set("mock_frame_decryptor") {
738 testonly = true
739 sources = [
740 "test/mock_frame_decryptor.cc",
741 "test/mock_frame_decryptor.h",
742 ]
743 deps = [
744 ":libjingle_peerconnection_api",
745 "../test:test_support",
Mirko Bonadeieaaaf412019-09-13 12:42:15746 "crypto:frame_decryptor_interface",
Benjamin Wright78410ad2018-10-25 16:52:57747 ]
748 }
749
750 rtc_source_set("fake_frame_encryptor") {
751 testonly = true
752 sources = [
753 "test/fake_frame_encryptor.cc",
754 "test/fake_frame_encryptor.h",
755 ]
756 deps = [
757 ":array_view",
758 ":libjingle_peerconnection_api",
Niels Möller6dcd4dc2019-08-26 08:45:28759 ":rtp_parameters",
Benjamin Wright78410ad2018-10-25 16:52:57760 "..:webrtc_common",
761 "../rtc_base:checks",
762 "../rtc_base:rtc_base_approved",
Mirko Bonadeieaaaf412019-09-13 12:42:15763 "crypto:frame_encryptor_interface",
Benjamin Wright78410ad2018-10-25 16:52:57764 ]
765 }
766
767 rtc_source_set("fake_frame_decryptor") {
Benjamin Wright84583f62018-10-04 21:22:34768 testonly = true
769 sources = [
770 "test/fake_frame_decryptor.cc",
771 "test/fake_frame_decryptor.h",
Benjamin Wright84583f62018-10-04 21:22:34772 ]
773 deps = [
774 ":array_view",
775 ":libjingle_peerconnection_api",
Niels Möller6dcd4dc2019-08-26 08:45:28776 ":rtp_parameters",
Benjamin Wright84583f62018-10-04 21:22:34777 "..:webrtc_common",
778 "../rtc_base:checks",
779 "../rtc_base:rtc_base_approved",
Mirko Bonadeieaaaf412019-09-13 12:42:15780 "crypto:frame_decryptor_interface",
Benjamin Wright84583f62018-10-04 21:22:34781 ]
782 }
783
Niels Möllere78fd802019-09-13 12:45:55784 rtc_source_set("dummy_peer_connection") {
785 visibility = [ "*" ]
786 testonly = true
787 sources = [
788 "test/dummy_peer_connection.h",
789 ]
790
791 deps = [
792 ":libjingle_peerconnection_api",
793 ":rtc_error",
794 "../rtc_base:checks",
795 "../rtc_base:refcount",
796 ]
797 }
798
Jiawei Ou651b92e2018-06-29 22:46:44799 rtc_source_set("mock_peerconnectioninterface") {
800 testonly = true
801 sources = [
802 "test/mock_peerconnectioninterface.h",
803 ]
804
805 deps = [
806 ":libjingle_peerconnection_api",
807 "../test:test_support",
808 ]
809 }
810
Patrik Höglund4b9e6ba2017-12-19 09:32:11811 rtc_source_set("mock_rtp") {
812 testonly = true
813 sources = [
814 "test/mock_rtpreceiver.h",
815 "test/mock_rtpsender.h",
816 ]
817
818 deps = [
819 ":libjingle_peerconnection_api",
820 "../test:test_support",
Patrik Höglund4b9e6ba2017-12-19 09:32:11821 ]
822 }
823
Jiawei Ou4206a0a2018-07-20 22:49:43824 rtc_source_set("mock_video_bitrate_allocator") {
825 testonly = true
826 sources = [
827 "test/mock_video_bitrate_allocator.h",
828 ]
829
830 deps = [
831 "../api/video:video_bitrate_allocator",
832 "../test:test_support",
833 ]
834 }
835
Jiawei Ouc2ebe212018-11-08 18:02:56836 rtc_source_set("mock_video_bitrate_allocator_factory") {
837 testonly = true
838 sources = [
839 "test/mock_video_bitrate_allocator_factory.h",
840 ]
841
842 deps = [
843 "../api/video:video_bitrate_allocator_factory",
844 "../test:test_support",
845 ]
846 }
847
Emircan Uysalerdbcac7f2017-10-31 06:10:12848 rtc_source_set("mock_video_codec_factory") {
849 testonly = true
850 sources = [
851 "test/mock_video_decoder_factory.h",
852 "test/mock_video_encoder_factory.h",
853 ]
854
Emircan Uysalerdbcac7f2017-10-31 06:10:12855 deps = [
Mirko Bonadei34814c72018-01-11 09:13:56856 "../api/video_codecs:video_codecs_api",
Emircan Uysalerdbcac7f2017-10-31 06:10:12857 "../test:test_support",
Emircan Uysalerdbcac7f2017-10-31 06:10:12858 ]
859 }
860
Erik Språngc84cd952018-10-15 09:55:13861 rtc_source_set("mock_video_decoder") {
862 visibility = [ "*" ]
863
864 testonly = true
865 sources = [
866 "test/mock_video_decoder.cc",
867 "test/mock_video_decoder.h",
868 ]
869
870 deps = [
871 "../api/video_codecs:video_codecs_api",
872 "../test:test_support",
873 ]
874 }
875
Erik Språng6af1c922018-10-12 08:01:30876 rtc_source_set("mock_video_encoder") {
Erik Språngc84cd952018-10-15 09:55:13877 visibility = [ "*" ]
878
Erik Språng6af1c922018-10-12 08:01:30879 testonly = true
880 sources = [
881 "test/mock_video_encoder.cc",
882 "test/mock_video_encoder.h",
883 ]
884
885 deps = [
886 "../api/video_codecs:video_codecs_api",
887 "../test:test_support",
888 ]
889 }
890
Anton Sukhanov7940da02018-10-10 17:34:49891 rtc_source_set("fake_media_transport") {
892 testonly = true
893
894 sources = [
Bjorn A Mellemc85ebbe2019-06-07 17:28:06895 "test/fake_datagram_transport.h",
Anton Sukhanov7940da02018-10-10 17:34:49896 "test/fake_media_transport.h",
897 ]
898
899 deps = [
Anton Sukhanov7940da02018-10-10 17:34:49900 "../rtc_base:checks",
Niels Möller65f17ca2019-09-12 11:59:36901 "transport:datagram_transport_interface",
902 "transport/media:media_transport_interface",
Steve Antona59dcc32019-03-25 20:53:07903 "//third_party/abseil-cpp/absl/algorithm:container",
Yves Gerey3e707812018-11-28 15:47:49904 "//third_party/abseil-cpp/absl/memory",
Anton Sukhanov7940da02018-10-10 17:34:49905 ]
906 }
Niels Möller2e47f7c2018-10-16 08:41:42907
908 rtc_source_set("loopback_media_transport") {
909 testonly = true
910
911 sources = [
Niels Möllere0446cb2018-11-30 08:35:52912 "test/loopback_media_transport.cc",
Niels Möller2e47f7c2018-10-16 08:41:42913 "test/loopback_media_transport.h",
914 ]
915
916 deps = [
Artem Titov94b57c02019-03-21 12:35:10917 "../rtc_base",
Niels Möller2e47f7c2018-10-16 08:41:42918 "../rtc_base:checks",
Niels Möller65f17ca2019-09-12 11:59:36919 "transport:datagram_transport_interface",
920 "transport/media:media_transport_interface",
Steve Antona59dcc32019-03-25 20:53:07921 "//third_party/abseil-cpp/absl/algorithm:container",
Niels Möllere0446cb2018-11-30 08:35:52922 "//third_party/abseil-cpp/absl/memory",
Niels Möller2e47f7c2018-10-16 08:41:42923 ]
924 }
925
926 rtc_source_set("rtc_api_unittests") {
927 testonly = true
928
929 sources = [
930 "array_view_unittest.cc",
Artem Titov741daaf2019-03-21 13:37:36931 "function_view_unittest.cc",
Steve Anton10542f22019-01-11 17:11:00932 "rtc_error_unittest.cc",
Niels Möllerd8b9ed72019-05-08 11:53:51933 "rtc_event_log_output_file_unittest.cc",
Chen Xingd2a66862019-06-03 12:53:42934 "rtp_packet_info_unittest.cc",
935 "rtp_packet_infos_unittest.cc",
Steve Anton10542f22019-01-11 17:11:00936 "rtp_parameters_unittest.cc",
Niels Möller2e47f7c2018-10-16 08:41:42937 "test/loopback_media_transport_unittest.cc",
938 ]
939
Niels Möller2e47f7c2018-10-16 08:41:42940 deps = [
941 ":array_view",
Artem Titov741daaf2019-03-21 13:37:36942 ":function_view",
Niels Möller2e47f7c2018-10-16 08:41:42943 ":libjingle_peerconnection_api",
944 ":loopback_media_transport",
Mirko Bonadeifcfeefe2019-09-10 08:51:23945 ":rtc_error",
Niels Möllerd8b9ed72019-05-08 11:53:51946 ":rtc_event_log_output_file",
Chen Xingd2a66862019-06-03 12:53:42947 ":rtp_packet_info",
Niels Möller6dcd4dc2019-08-26 08:45:28948 ":rtp_parameters",
Niels Möller2e47f7c2018-10-16 08:41:42949 "../rtc_base:checks",
Mirko Bonadeie3abb812018-11-23 12:15:08950 "../rtc_base:gunit_helpers",
Niels Möller2e47f7c2018-10-16 08:41:42951 "../rtc_base:rtc_base_approved",
Niels Möllerd8b9ed72019-05-08 11:53:51952 "../test:fileutils",
Niels Möller2e47f7c2018-10-16 08:41:42953 "../test:test_support",
Danil Chapovalov2684ab32019-02-26 09:18:08954 "task_queue:task_queue_default_factory_unittests",
Niels Möller2e47f7c2018-10-16 08:41:42955 "units:units_unittests",
Danil Chapovalovb703db92019-04-08 14:59:28956 "video:video_unittests",
Niels Möllerd8b9ed72019-05-08 11:53:51957 "//third_party/abseil-cpp/absl/memory",
Niels Möller2e47f7c2018-10-16 08:41:42958 ]
959 }
Harald Alvestrand3cc45d42019-03-14 04:42:04960
961 rtc_source_set("compile_all_headers") {
962 testonly = true
963
964 sources = [
965 "test/compile_all_headers.cc",
966 ]
967
968 deps = [
969 ":fake_frame_decryptor",
970 ":fake_frame_encryptor",
971 ":fake_media_transport",
972 ":loopback_media_transport",
973 ":mock_audio_mixer",
974 ":mock_frame_decryptor",
975 ":mock_frame_encryptor",
976 ":mock_peerconnectioninterface",
977 ":mock_rtp",
978 ":mock_video_bitrate_allocator",
979 ":mock_video_bitrate_allocator_factory",
980 ":mock_video_codec_factory",
981 ":mock_video_decoder",
982 ":mock_video_encoder",
983 ":rtc_api_unittests",
984 "units:units_unittests",
985 ]
986 }
kjellanderfd5b4e92016-06-13 19:08:33987}