blob: 61cb0f385429c9ee56c012bab729777b686ba325 [file] [log] [blame]
kjellanderc76dc952016-06-03 10:09:321# Copyright (c) 2016 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
Harald Alvestrande47493b2022-02-15 12:45:029# Visibility considerations:
10#
11# Most targets in this file should have visibility ":*", as they are only
12# used internally.
13# Some functions are cleared for wider webrtc usage; these have default
14# visibility (set to "//*", not the gn default of "*").
15# These are:
Harald Alvestrande47493b2022-02-15 12:45:0216# - rtc_pc
17# - session_description
18# - simulcast_description
Harald Alvestrande47493b2022-02-15 12:45:0219# - sdp_utils
20# - media_stream_observer
21# - video_track_source
22# - libjingle_peerconnection
23#
24# Some targets are depended on by external users for historical reasons,
25# and are therefore marked with visibility "*". This is in the process
26# of being removed.
27#
28# Some targets are only publicly visible in Chrome builds.
29# These are marked up as such.
30
mbonadei9aa3f0a2017-01-24 14:58:2231import("../webrtc.gni")
ossu7bb87ee2017-01-23 12:56:2532if (is_android) {
33 import("//build/config/android/config.gni")
34 import("//build/config/android/rules.gni")
35}
kjellanderc76dc952016-06-03 10:09:3236
37group("pc") {
Danil Chapovalov64f1f3f2020-01-16 13:41:1038 deps = [ ":rtc_pc" ]
kjellanderc76dc952016-06-03 10:09:3239}
40
Evan Shrubsolea06e7ee2024-03-13 12:31:1141rtc_source_set("proxy") {
Harald Alvestrande47493b2022-02-15 12:45:0242 visibility = [ ":*" ]
Evan Shrubsolea06e7ee2024-03-13 12:31:1143 sources = [ "proxy.h" ]
Markus Handella1b82012021-05-26 16:56:3044 deps = [
45 "../api:scoped_refptr",
46 "../api/task_queue",
Florent Castellia30aef32022-04-19 15:47:1347 "../rtc_base:event_tracer",
Florent Castelli33d31fb2022-04-04 14:57:5248 "../rtc_base:rtc_event",
Florent Castelli57aa81b2022-04-04 15:14:0249 "../rtc_base:stringutils",
Markus Handella1b82012021-05-26 16:56:3050 "../rtc_base:threading",
51 "../rtc_base/system:rtc_export",
52 ]
53}
54
Harald Alvestrand03fad382022-03-10 07:30:3155rtc_source_set("channel") {
Harald Alvestrand65685a62022-04-27 12:15:4956 visibility = [
57 ":*",
58 "../test/peer_scenario",
59 ]
Harald Alvestrand8e1ae8c2022-03-17 13:13:5160 sources = [
61 "channel.cc",
62 "channel.h",
63 ]
64 deps = [
65 ":channel_interface",
66 ":rtp_media_utils",
67 ":rtp_transport_internal",
68 ":session_description",
69 "../api:libjingle_peerconnection_api",
70 "../api:rtp_parameters",
71 "../api:rtp_transceiver_direction",
72 "../api:scoped_refptr",
73 "../api:sequence_checker",
74 "../api/crypto:options",
Artem Titovc374d112022-06-16 19:27:4575 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrand8e1ae8c2022-03-17 13:13:5176 "../api/units:timestamp",
77 "../call:rtp_interfaces",
78 "../call:rtp_receiver",
Harald Alvestrand794d5992022-12-16 09:54:5779 "../media:codec",
80 "../media:media_channel",
81 "../media:media_channel_impl",
82 "../media:rid_description",
Harald Alvestrand794d5992022-12-16 09:54:5783 "../media:rtp_utils",
84 "../media:stream_params",
Harald Alvestrand8e1ae8c2022-03-17 13:13:5185 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestrand8bb54c12024-02-06 15:24:0386 "../p2p:dtls_transport_internal",
Harald Alvestrand8e1ae8c2022-03-17 13:13:5187 "../p2p:rtc_p2p",
Florent Castellia138c6c2023-01-04 11:01:0988 "../rtc_base:async_packet_socket",
Harald Alvestrand8e1ae8c2022-03-17 13:13:5189 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:4690 "../rtc_base:copy_on_write_buffer",
Florent Castellia30aef32022-04-19 15:47:1391 "../rtc_base:event_tracer",
Harald Alvestrand8e1ae8c2022-03-17 13:13:5192 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:4693 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:0994 "../rtc_base:network_route",
Harald Alvestrand8e1ae8c2022-03-17 13:13:5195 "../rtc_base:socket",
Florent Castelli57aa81b2022-04-04 15:14:0296 "../rtc_base:stringutils",
Harald Alvestrand8e1ae8c2022-03-17 13:13:5197 "../rtc_base:threading",
Florent Castellia138c6c2023-01-04 11:01:0998 "../rtc_base:unique_id_generator",
Harald Alvestrand8e1ae8c2022-03-17 13:13:5199 "../rtc_base/containers:flat_set",
100 "../rtc_base/network:sent_packet",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51101 "../rtc_base/third_party/sigslot",
Emil Lundmark17304c32023-09-15 14:33:03102 "//third_party/abseil-cpp/absl/algorithm:container",
Florent Castelli99c519b2024-05-23 11:21:53103 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51104 "//third_party/abseil-cpp/absl/types:optional",
105 ]
Harald Alvestrand03fad382022-03-10 07:30:31106}
Harald Alvestrand8e1ae8c2022-03-17 13:13:51107
Harald Alvestrand03fad382022-03-10 07:30:31108rtc_source_set("channel_interface") {
109 visibility = [ ":*" ]
Harald Alvestrandc5b9c952022-03-14 07:16:40110 sources = [ "channel_interface.h" ]
111 deps = [
112 ":rtp_transport_internal",
113 "../api:libjingle_peerconnection_api",
114 "../api:rtp_parameters",
Harald Alvestrand794d5992022-12-16 09:54:57115 "../media:media_channel",
Florent Castelli99c519b2024-05-23 11:21:53116 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrandc5b9c952022-03-14 07:16:40117 ]
Harald Alvestrand03fad382022-03-10 07:30:31118}
Harald Alvestrand8e1ae8c2022-03-17 13:13:51119
Harald Alvestrand03fad382022-03-10 07:30:31120rtc_source_set("dtls_srtp_transport") {
121 visibility = [ ":*" ]
Harald Alvestrand8e1ae8c2022-03-17 13:13:51122 sources = [
123 "dtls_srtp_transport.cc",
124 "dtls_srtp_transport.h",
125 ]
126 deps = [
127 ":srtp_transport",
Mirko Bonadeid151cc62022-06-20 06:35:28128 "../api:dtls_transport_interface",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51129 "../api:libjingle_peerconnection_api",
130 "../api:rtc_error",
Harald Alvestrand8bb54c12024-02-06 15:24:03131 "../p2p:dtls_transport_internal",
Harald Alvestranda310d782024-01-25 12:27:18132 "../p2p:packet_transport_internal",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51133 "../p2p:rtc_p2p",
Florent Castellif9c59842022-04-19 15:07:23134 "../rtc_base:buffer",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51135 "../rtc_base:checks",
136 "../rtc_base:logging",
Philipp Hanckec7fd5af2024-05-17 20:49:05137 "../rtc_base:ssl_adapter",
Florent Castelli99c519b2024-05-23 11:21:53138 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51139 ]
Harald Alvestrand03fad382022-03-10 07:30:31140}
Harald Alvestrand8e1ae8c2022-03-17 13:13:51141
Harald Alvestrand03fad382022-03-10 07:30:31142rtc_source_set("dtls_transport") {
143 visibility = [ ":*" ]
Harald Alvestrandc5b9c952022-03-14 07:16:40144 sources = [
145 "dtls_transport.cc",
146 "dtls_transport.h",
147 ]
148 deps = [
149 ":ice_transport",
Mirko Bonadeid151cc62022-06-20 06:35:28150 "../api:dtls_transport_interface",
151 "../api:ice_transport_interface",
Harald Alvestrandc5b9c952022-03-14 07:16:40152 "../api:libjingle_peerconnection_api",
Niels Möller105711e2022-06-14 13:48:26153 "../api:make_ref_counted",
Harald Alvestrandc5b9c952022-03-14 07:16:40154 "../api:scoped_refptr",
155 "../api:sequence_checker",
Harald Alvestrand8bb54c12024-02-06 15:24:03156 "../p2p:dtls_transport",
157 "../p2p:dtls_transport_internal",
Harald Alvestrandc5b9c952022-03-14 07:16:40158 "../p2p:rtc_p2p",
Harald Alvestrandc5b9c952022-03-14 07:16:40159 "../rtc_base:checks",
160 "../rtc_base:logging",
161 "../rtc_base:macromagic",
Philipp Hanckec7fd5af2024-05-17 20:49:05162 "../rtc_base:ssl_adapter",
Harald Alvestrandc5b9c952022-03-14 07:16:40163 "../rtc_base:threading",
164 "../rtc_base/synchronization:mutex",
Florent Castelli99c519b2024-05-23 11:21:53165 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrandc5b9c952022-03-14 07:16:40166 ]
Harald Alvestrand03fad382022-03-10 07:30:31167}
Harald Alvestrand8e1ae8c2022-03-17 13:13:51168
Harald Alvestrand03fad382022-03-10 07:30:31169rtc_source_set("external_hmac") {
170 visibility = [ ":*" ]
Harald Alvestrand7ee138e2022-03-10 13:21:28171 sources = [
172 "external_hmac.cc",
173 "external_hmac.h",
174 ]
Florent Castelli0af55ba2022-04-04 13:06:30175 deps = [
176 "../rtc_base:logging",
Florent Castellid119b9e2022-04-14 11:23:51177 "../rtc_base:zero_memory",
Florent Castelli0af55ba2022-04-04 13:06:30178 ]
Harald Alvestrand7ee138e2022-03-10 13:21:28179 if (rtc_build_libsrtp) {
180 deps += [ "//third_party/libsrtp" ]
181 }
Harald Alvestrand03fad382022-03-10 07:30:31182}
Harald Alvestrand8e1ae8c2022-03-17 13:13:51183
Harald Alvestrand03fad382022-03-10 07:30:31184rtc_source_set("ice_transport") {
185 visibility = [ ":*" ]
Harald Alvestrand7ee138e2022-03-10 13:21:28186 sources = [
187 "ice_transport.cc",
188 "ice_transport.h",
189 ]
190 deps = [
Mirko Bonadeid151cc62022-06-20 06:35:28191 "../api:ice_transport_interface",
Harald Alvestrand7ee138e2022-03-10 13:21:28192 "../api:libjingle_peerconnection_api",
193 "../api:sequence_checker",
194 "../rtc_base:checks",
195 "../rtc_base:macromagic",
196 "../rtc_base:threading",
197 ]
Harald Alvestrand03fad382022-03-10 07:30:31198}
Harald Alvestrande5a73f52022-03-28 12:06:34199
Harald Alvestrand03fad382022-03-10 07:30:31200rtc_source_set("jsep_transport") {
201 visibility = [ ":*" ]
Harald Alvestrand8e1ae8c2022-03-17 13:13:51202 sources = [
203 "jsep_transport.cc",
204 "jsep_transport.h",
205 ]
206 deps = [
207 ":dtls_srtp_transport",
208 ":dtls_transport",
209 ":rtcp_mux_filter",
210 ":rtp_transport",
211 ":rtp_transport_internal",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51212 ":sctp_transport",
213 ":session_description",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51214 ":srtp_transport",
215 ":transport_stats",
216 "../api:array_view",
Mirko Bonadeid151cc62022-06-20 06:35:28217 "../api:candidate",
218 "../api:ice_transport_interface",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51219 "../api:libjingle_peerconnection_api",
220 "../api:rtc_error",
221 "../api:scoped_refptr",
Florent Castelli8d4e9fb2022-04-04 15:18:21222 "../api:sequence_checker",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51223 "../api/transport:datagram_transport_interface",
224 "../media:rtc_data_sctp_transport_internal",
Harald Alvestrand8bb54c12024-02-06 15:24:03225 "../p2p:dtls_transport",
226 "../p2p:dtls_transport_internal",
Harald Alvestranda310d782024-01-25 12:27:18227 "../p2p:ice_transport_internal",
228 "../p2p:p2p_constants",
229 "../p2p:p2p_transport_channel",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51230 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:18231 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:03232 "../p2p:transport_info",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51233 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:46234 "../rtc_base:copy_on_write_buffer",
Florent Castellia30aef32022-04-19 15:47:13235 "../rtc_base:event_tracer",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51236 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:46237 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:09238 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:05239 "../rtc_base:ssl_adapter",
Florent Castelli57aa81b2022-04-04 15:14:02240 "../rtc_base:stringutils",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51241 "../rtc_base:threading",
Florent Castelli99c519b2024-05-23 11:21:53242 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand8e1ae8c2022-03-17 13:13:51243 ]
Harald Alvestrand03fad382022-03-10 07:30:31244}
Harald Alvestrande5a73f52022-03-28 12:06:34245
Harald Alvestrand03fad382022-03-10 07:30:31246rtc_source_set("jsep_transport_collection") {
247 visibility = [ ":*" ]
Harald Alvestrande5a73f52022-03-28 12:06:34248 sources = [
249 "jsep_transport_collection.cc",
250 "jsep_transport_collection.h",
251 ]
252 deps = [
253 ":jsep_transport",
254 ":session_description",
255 "../api:libjingle_peerconnection_api",
256 "../api:sequence_checker",
Harald Alvestranda310d782024-01-25 12:27:18257 "../p2p:p2p_constants",
Harald Alvestrande5a73f52022-03-28 12:06:34258 "../p2p:rtc_p2p",
259 "../rtc_base:checks",
260 "../rtc_base:logging",
261 "../rtc_base:macromagic",
262 "../rtc_base/system:no_unique_address",
263 ]
Harald Alvestrand03fad382022-03-10 07:30:31264}
Harald Alvestrande5a73f52022-03-28 12:06:34265
Harald Alvestrand03fad382022-03-10 07:30:31266rtc_source_set("jsep_transport_controller") {
Harald Alvestrande5a73f52022-03-28 12:06:34267 visibility = [
268 ":*",
269 "../test/peer_scenario:*",
270 ]
271 sources = [
272 "jsep_transport_controller.cc",
273 "jsep_transport_controller.h",
274 ]
275 deps = [
276 ":channel",
277 ":dtls_srtp_transport",
278 ":dtls_transport",
279 ":jsep_transport",
280 ":jsep_transport_collection",
281 ":rtp_transport",
282 ":rtp_transport_internal",
283 ":sctp_transport",
284 ":session_description",
285 ":srtp_transport",
286 ":transport_stats",
287 "../api:async_dns_resolver",
Mirko Bonadeid151cc62022-06-20 06:35:28288 "../api:candidate",
289 "../api:dtls_transport_interface",
Harald Alvestrande5a73f52022-03-28 12:06:34290 "../api:ice_transport_factory",
Mirko Bonadeid151cc62022-06-20 06:35:28291 "../api:ice_transport_interface",
Harald Alvestrande5a73f52022-03-28 12:06:34292 "../api:libjingle_peerconnection_api",
293 "../api:rtc_error",
294 "../api:rtp_parameters",
295 "../api:scoped_refptr",
296 "../api:sequence_checker",
297 "../api/crypto:options",
Victor Boiviecd54fd82024-02-28 11:16:15298 "../api/environment",
Harald Alvestrande5a73f52022-03-28 12:06:34299 "../api/rtc_event_log",
300 "../api/transport:datagram_transport_interface",
301 "../api/transport:enums",
302 "../api/transport:sctp_transport_factory_interface",
303 "../media:rtc_data_sctp_transport_internal",
Harald Alvestrand9a953b22024-01-26 07:11:50304 "../p2p:connection",
Harald Alvestrand8bb54c12024-02-06 15:24:03305 "../p2p:dtls_transport",
306 "../p2p:dtls_transport_factory",
307 "../p2p:dtls_transport_internal",
Harald Alvestranda310d782024-01-25 12:27:18308 "../p2p:ice_transport_internal",
309 "../p2p:p2p_constants",
310 "../p2p:p2p_transport_channel",
311 "../p2p:packet_transport_internal",
Harald Alvestrand3bddaed2024-02-06 22:54:25312 "../p2p:port",
313 "../p2p:port_allocator",
Harald Alvestrande5a73f52022-03-28 12:06:34314 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:18315 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:03316 "../p2p:transport_info",
Harald Alvestrande5a73f52022-03-28 12:06:34317 "../rtc_base:callback_list",
318 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:46319 "../rtc_base:copy_on_write_buffer",
Philipp Hancke41586782024-06-06 14:31:07320 "../rtc_base:crypto_random",
Florent Castellia30aef32022-04-19 15:47:13321 "../rtc_base:event_tracer",
Harald Alvestrande5a73f52022-03-28 12:06:34322 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:46323 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:09324 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:05325 "../rtc_base:ssl_adapter",
Harald Alvestrande5a73f52022-03-28 12:06:34326 "../rtc_base:threading",
327 "../rtc_base/third_party/sigslot",
Harald Alvestrande5a73f52022-03-28 12:06:34328 "//third_party/abseil-cpp/absl/algorithm:container",
Per Ke1e94ad2023-03-30 14:53:59329 "//third_party/abseil-cpp/absl/functional:any_invocable",
Harald Alvestrande5a73f52022-03-28 12:06:34330 "//third_party/abseil-cpp/absl/types:optional",
331 ]
Harald Alvestrand03fad382022-03-10 07:30:31332}
Harald Alvestrande5a73f52022-03-28 12:06:34333
Danil Chapovalov082cb562023-10-31 12:51:16334rtc_source_set("media_factory") {
335 sources = [ "media_factory.h" ]
336 deps = [
Danil Chapovalov680f1032023-11-27 16:56:49337 "../api/environment",
Danil Chapovalov082cb562023-10-31 12:51:16338 "../call:call_interfaces",
Harald Alvestrandfb4ad292024-02-28 11:01:25339 "../media:media_engine",
Danil Chapovalov082cb562023-10-31 12:51:16340 ]
341}
342
Harald Alvestrand03fad382022-03-10 07:30:31343rtc_source_set("media_session") {
Harald Alvestrand66ddd5a2022-03-18 09:02:59344 visibility = [ "*" ] # Used by Chrome
Harald Alvestrande5a73f52022-03-28 12:06:34345 sources = [
346 "media_session.cc",
347 "media_session.h",
348 ]
349 deps = [
Harald Alvestrande5a73f52022-03-28 12:06:34350 ":jsep_transport",
351 ":media_protocol_names",
352 ":rtp_media_utils",
353 ":session_description",
354 ":simulcast_description",
355 ":used_ids",
Jonas Orelande62c2f22022-03-29 09:04:48356 "../api:field_trials_view",
Harald Alvestrande5a73f52022-03-28 12:06:34357 "../api:libjingle_peerconnection_api",
Harald Alvestrandf42d2b92024-05-08 06:52:16358 "../api:rtc_error",
Harald Alvestrande5a73f52022-03-28 12:06:34359 "../api:rtp_parameters",
360 "../api:rtp_transceiver_direction",
Harald Alvestrande5a73f52022-03-28 12:06:34361 "../api/crypto:options",
Harald Alvestrand794d5992022-12-16 09:54:57362 "../media:codec",
363 "../media:media_constants",
Harald Alvestrandfb4ad292024-02-28 11:01:25364 "../media:media_engine",
Harald Alvestrand794d5992022-12-16 09:54:57365 "../media:rid_description",
Harald Alvestrande5a73f52022-03-28 12:06:34366 "../media:rtc_data_sctp_transport_internal",
Harald Alvestrande5a73f52022-03-28 12:06:34367 "../media:rtc_sdp_video_format_utils",
Harald Alvestrand794d5992022-12-16 09:54:57368 "../media:stream_params",
Harald Alvestranda310d782024-01-25 12:27:18369 "../p2p:ice_credentials_iterator",
370 "../p2p:p2p_constants",
Harald Alvestrande5a73f52022-03-28 12:06:34371 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:18372 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:03373 "../p2p:transport_description_factory",
374 "../p2p:transport_info",
Harald Alvestrande5a73f52022-03-28 12:06:34375 "../rtc_base:checks",
Florent Castelli0af55ba2022-04-04 13:06:30376 "../rtc_base:logging",
Florent Castellia138c6c2023-01-04 11:01:09377 "../rtc_base:ssl",
Florent Castelli57aa81b2022-04-04 15:14:02378 "../rtc_base:stringutils",
Florent Castellia138c6c2023-01-04 11:01:09379 "../rtc_base:unique_id_generator",
Harald Alvestrand8101e7b2022-05-23 14:57:47380 "../rtc_base/memory:always_valid_pointer",
Harald Alvestrande5a73f52022-03-28 12:06:34381 "../rtc_base/third_party/base64",
Harald Alvestrande5a73f52022-03-28 12:06:34382 "//third_party/abseil-cpp/absl/algorithm:container",
383 "//third_party/abseil-cpp/absl/strings",
Florent Castelli99c519b2024-05-23 11:21:53384 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrande5a73f52022-03-28 12:06:34385 "//third_party/abseil-cpp/absl/types:optional",
386 ]
Harald Alvestrand03fad382022-03-10 07:30:31387}
Harald Alvestrande5a73f52022-03-28 12:06:34388
Harald Alvestrand03fad382022-03-10 07:30:31389rtc_source_set("media_stream_proxy") {
390 visibility = [ ":*" ]
Harald Alvestrandd9f68462022-03-10 10:09:51391 sources = [ "media_stream_proxy.h" ]
392 deps = [
393 ":proxy",
394 "../api:media_stream_interface",
395 ]
Harald Alvestrand03fad382022-03-10 07:30:31396}
Harald Alvestrande5a73f52022-03-28 12:06:34397
Harald Alvestrand03fad382022-03-10 07:30:31398rtc_source_set("media_stream_track_proxy") {
399 visibility = [ ":*" ]
Harald Alvestrandd9f68462022-03-10 10:09:51400 sources = [ "media_stream_track_proxy.h" ]
401 deps = [
402 ":proxy",
403 "../api:media_stream_interface",
404 ]
Harald Alvestrand03fad382022-03-10 07:30:31405}
Harald Alvestrande5a73f52022-03-28 12:06:34406
Harald Alvestrand03fad382022-03-10 07:30:31407rtc_source_set("peer_connection_factory_proxy") {
408 visibility = [ ":*" ]
Harald Alvestrandd9f68462022-03-10 10:09:51409 sources = [ "peer_connection_factory_proxy.h" ]
410 deps = [
411 ":proxy",
412 "../api:libjingle_peerconnection_api",
413 ]
Harald Alvestrand03fad382022-03-10 07:30:31414}
Harald Alvestrande5a73f52022-03-28 12:06:34415
Harald Alvestrand03fad382022-03-10 07:30:31416rtc_source_set("peer_connection_proxy") {
417 visibility = [ ":*" ]
Harald Alvestrandd9f68462022-03-10 10:09:51418 sources = [ "peer_connection_proxy.h" ]
419 deps = [
420 ":proxy",
421 "../api:libjingle_peerconnection_api",
Per K39ac25d2024-02-07 13:16:20422 "../api/transport:bandwidth_estimation_settings",
Harald Alvestrandd9f68462022-03-10 10:09:51423 ]
Harald Alvestrand03fad382022-03-10 07:30:31424}
Harald Alvestrande5a73f52022-03-28 12:06:34425
Harald Alvestrand03fad382022-03-10 07:30:31426rtc_source_set("rtcp_mux_filter") {
427 visibility = [ ":*" ]
Harald Alvestrand7ee138e2022-03-10 13:21:28428 sources = [
429 "rtcp_mux_filter.cc",
430 "rtcp_mux_filter.h",
431 ]
432 deps = [
433 ":session_description",
434 "../rtc_base:logging",
435 ]
Harald Alvestrand03fad382022-03-10 07:30:31436}
Harald Alvestrande5a73f52022-03-28 12:06:34437
Harald Alvestrand03fad382022-03-10 07:30:31438rtc_source_set("rtp_media_utils") {
439 visibility = [ ":*" ]
Harald Alvestrand7ee138e2022-03-10 13:21:28440 sources = [
441 "rtp_media_utils.cc",
442 "rtp_media_utils.h",
443 ]
444 deps = [
445 "../api:rtp_transceiver_direction",
446 "../rtc_base:checks",
447 ]
Harald Alvestrand03fad382022-03-10 07:30:31448}
Harald Alvestrande5a73f52022-03-28 12:06:34449
Harald Alvestrand03fad382022-03-10 07:30:31450rtc_source_set("rtp_receiver_proxy") {
451 visibility = [ ":*" ]
Harald Alvestrandd9f68462022-03-10 10:09:51452 sources = [ "rtp_receiver_proxy.h" ]
453 deps = [
454 ":proxy",
Harald Alvestrand6431a642024-06-04 21:29:14455 "../api:dtls_transport_interface",
456 "../api:frame_transformer_interface",
Harald Alvestrandd9f68462022-03-10 10:09:51457 "../api:libjingle_peerconnection_api",
Harald Alvestrand6431a642024-06-04 21:29:14458 "../api:media_stream_interface",
459 "../api:rtp_parameters",
460 "../api:scoped_refptr",
461 "../api/crypto:frame_decryptor_interface",
462 "../api/transport/rtp:rtp_source",
463 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrandd9f68462022-03-10 10:09:51464 ]
Harald Alvestrand03fad382022-03-10 07:30:31465}
Harald Alvestrande5a73f52022-03-28 12:06:34466
Harald Alvestrand03fad382022-03-10 07:30:31467rtc_source_set("rtp_sender_proxy") {
468 visibility = [ ":*" ]
Harald Alvestrandd9f68462022-03-10 10:09:51469 sources = [ "rtp_sender_proxy.h" ]
470 deps = [
471 ":proxy",
472 "../api:libjingle_peerconnection_api",
Florent Castelliacabb362022-10-18 15:05:16473 "../api:rtp_sender_interface",
Harald Alvestrandd9f68462022-03-10 10:09:51474 ]
Harald Alvestrand03fad382022-03-10 07:30:31475}
Harald Alvestrande5a73f52022-03-28 12:06:34476
Harald Alvestrand03fad382022-03-10 07:30:31477rtc_source_set("rtp_transport") {
478 visibility = [ ":*" ]
Harald Alvestrand4bac0bb2022-03-15 13:21:59479 sources = [
480 "rtp_transport.cc",
481 "rtp_transport.h",
482 ]
483 deps = [
484 ":rtp_transport_internal",
485 ":session_description",
486 "../api:array_view",
Harald Alvestrand83894d32023-09-26 19:38:19487 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrand4bac0bb2022-03-15 13:21:59488 "../api/units:timestamp",
489 "../call:rtp_receiver",
490 "../call:video_stream_api",
Harald Alvestrand794d5992022-12-16 09:54:57491 "../media:rtp_utils",
Harald Alvestrand4bac0bb2022-03-15 13:21:59492 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestranda310d782024-01-25 12:27:18493 "../p2p:packet_transport_internal",
Harald Alvestrand4bac0bb2022-03-15 13:21:59494 "../p2p:rtc_p2p",
Florent Castellia138c6c2023-01-04 11:01:09495 "../rtc_base:async_packet_socket",
Harald Alvestrand4bac0bb2022-03-15 13:21:59496 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:46497 "../rtc_base:copy_on_write_buffer",
Florent Castellia30aef32022-04-19 15:47:13498 "../rtc_base:event_tracer",
Harald Alvestrand4bac0bb2022-03-15 13:21:59499 "../rtc_base:logging",
Florent Castellia138c6c2023-01-04 11:01:09500 "../rtc_base:network_route",
Harald Alvestrand4bac0bb2022-03-15 13:21:59501 "../rtc_base:socket",
Per K9e0bf9b2024-02-27 08:25:11502 "../rtc_base/network:received_packet",
Harald Alvestrand4bac0bb2022-03-15 13:21:59503 "../rtc_base/network:sent_packet",
Florent Castelli99c519b2024-05-23 11:21:53504 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrand4bac0bb2022-03-15 13:21:59505 "//third_party/abseil-cpp/absl/types:optional",
506 ]
Harald Alvestrand03fad382022-03-10 07:30:31507}
Harald Alvestrande5a73f52022-03-28 12:06:34508
Harald Alvestrand03fad382022-03-10 07:30:31509rtc_source_set("rtp_transport_internal") {
Harald Alvestrand2ea4d372022-03-10 22:15:42510 visibility = [
511 ":*",
512 "../test/peer_scenario",
513 ]
514 sources = [ "rtp_transport_internal.h" ]
515 deps = [
516 ":session_description",
517 "../call:rtp_receiver",
Harald Alvestranda310d782024-01-25 12:27:18518 "../p2p:ice_transport_internal",
Harald Alvestrand2ea4d372022-03-10 22:15:42519 "../p2p:rtc_p2p",
Harald Alvestrandff281aa2023-09-05 09:49:32520 "../rtc_base:callback_list",
Florent Castellia138c6c2023-01-04 11:01:09521 "../rtc_base:network_route",
Philipp Hanckec7fd5af2024-05-17 20:49:05522 "../rtc_base:ssl_adapter",
Harald Alvestrand2ea4d372022-03-10 22:15:42523 ]
Harald Alvestrand03fad382022-03-10 07:30:31524}
Harald Alvestrande5a73f52022-03-28 12:06:34525
Harald Alvestrand03fad382022-03-10 07:30:31526rtc_source_set("sctp_transport") {
527 visibility = [ ":*" ]
Harald Alvestrand7e539922022-03-17 06:26:03528 sources = [
529 "sctp_transport.cc",
530 "sctp_transport.h",
531 ]
532 deps = [
533 ":dtls_transport",
Mirko Bonadeid151cc62022-06-20 06:35:28534 "../api:dtls_transport_interface",
Harald Alvestrand7e539922022-03-17 06:26:03535 "../api:libjingle_peerconnection_api",
Florent Castelli0012bfa2024-07-26 16:16:41536 "../api:priority",
Harald Alvestrand7e539922022-03-17 06:26:03537 "../api:scoped_refptr",
538 "../api:sequence_checker",
Fredrik Solenberg5cb3a902022-08-22 09:34:29539 "../api/transport:datagram_transport_interface",
Harald Alvestrand7e539922022-03-17 06:26:03540 "../media:rtc_data_sctp_transport_internal",
Harald Alvestrand8bb54c12024-02-06 15:24:03541 "../p2p:dtls_transport_internal",
Harald Alvestrand7e539922022-03-17 06:26:03542 "../p2p:rtc_p2p",
Harald Alvestrand7e539922022-03-17 06:26:03543 "../rtc_base:checks",
Florent Castelli0af55ba2022-04-04 13:06:30544 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:46545 "../rtc_base:macromagic",
Harald Alvestrand7e539922022-03-17 06:26:03546 "../rtc_base:threading",
547 "../rtc_base/third_party/sigslot",
Florent Castelli99c519b2024-05-23 11:21:53548 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand7e539922022-03-17 06:26:03549 ]
Harald Alvestrand03fad382022-03-10 07:30:31550}
Harald Alvestrande5a73f52022-03-28 12:06:34551
Harald Alvestrand03fad382022-03-10 07:30:31552rtc_source_set("sctp_utils") {
Harald Alvestrand2ea4d372022-03-10 22:15:42553 visibility = [
554 ":*",
Harald Alvestrandbc8c0952022-03-15 06:53:07555 "../test/fuzzers:*",
Harald Alvestrand2ea4d372022-03-10 22:15:42556 ]
557 sources = [
558 "sctp_utils.cc",
559 "sctp_utils.h",
560 ]
561 deps = [
562 "../api:libjingle_peerconnection_api",
563 "../api:priority",
564 "../api/transport:datagram_transport_interface",
Harald Alvestrand794d5992022-12-16 09:54:57565 "../media:media_channel",
Tommi492296c2023-03-12 15:59:25566 "../media:rtc_data_sctp_transport_internal",
Tommi492296c2023-03-12 15:59:25567 "../net/dcsctp/public:types",
Florent Castelliceb7b362022-04-19 15:35:04568 "../rtc_base:byte_buffer",
Florent Castellied4aadc2022-04-19 15:40:46569 "../rtc_base:copy_on_write_buffer",
Florent Castelli0af55ba2022-04-04 13:06:30570 "../rtc_base:logging",
Philipp Hanckec7fd5af2024-05-17 20:49:05571 "../rtc_base:ssl_adapter",
Florent Castelli99c519b2024-05-23 11:21:53572 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand2ea4d372022-03-10 22:15:42573 ]
Harald Alvestrand03fad382022-03-10 07:30:31574}
Harald Alvestrand03fad382022-03-10 07:30:31575rtc_source_set("srtp_session") {
576 visibility = [ ":*" ]
Harald Alvestrand4bac0bb2022-03-15 13:21:59577 sources = [
578 "srtp_session.cc",
579 "srtp_session.h",
580 ]
581 deps = [
582 ":external_hmac",
583 "../api:array_view",
Jonas Orelande62c2f22022-03-29 09:04:48584 "../api:field_trials_view",
Harald Alvestrand4bac0bb2022-03-15 13:21:59585 "../api:scoped_refptr",
586 "../api:sequence_checker",
Harald Alvestrand4bac0bb2022-03-15 13:21:59587 "../modules/rtp_rtcp:rtp_rtcp_format",
Florent Castellia876a922022-04-19 15:18:36588 "../rtc_base:byte_order",
Harald Alvestrand4bac0bb2022-03-15 13:21:59589 "../rtc_base:checks",
590 "../rtc_base:logging",
Niels Möller2d6c4d02022-04-05 14:14:21591 "../rtc_base:macromagic",
Philipp Hanckec7fd5af2024-05-17 20:49:05592 "../rtc_base:ssl_adapter",
Florent Castelli57aa81b2022-04-04 15:14:02593 "../rtc_base:stringutils",
Florent Castellidd837e22022-04-04 15:16:15594 "../rtc_base:timeutils",
Harald Alvestrand4bac0bb2022-03-15 13:21:59595 "../rtc_base/synchronization:mutex",
596 "../system_wrappers:metrics",
Ali Tofighfd6a4d62022-03-31 08:36:48597 "//third_party/abseil-cpp/absl/base:core_headers",
Florent Castelli99c519b2024-05-23 11:21:53598 "//third_party/abseil-cpp/absl/strings:string_view",
Ali Tofighfd6a4d62022-03-31 08:36:48599 ]
Harald Alvestrand4bac0bb2022-03-15 13:21:59600 if (rtc_build_libsrtp) {
601 deps += [ "//third_party/libsrtp" ]
602 }
Harald Alvestrand03fad382022-03-10 07:30:31603}
604rtc_source_set("srtp_transport") {
605 visibility = [ ":*" ]
Harald Alvestrand7e539922022-03-17 06:26:03606 sources = [
607 "srtp_transport.cc",
608 "srtp_transport.h",
609 ]
610 deps = [
611 ":rtp_transport",
612 ":srtp_session",
Jonas Orelande62c2f22022-03-29 09:04:48613 "../api:field_trials_view",
Harald Alvestrand7e539922022-03-17 06:26:03614 "../api:libjingle_peerconnection_api",
615 "../api:rtc_error",
Harald Alvestrand794d5992022-12-16 09:54:57616 "../media:rtp_utils",
Harald Alvestrand7e539922022-03-17 06:26:03617 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestranda310d782024-01-25 12:27:18618 "../p2p:packet_transport_internal",
Harald Alvestrand7e539922022-03-17 06:26:03619 "../p2p:rtc_p2p",
Florent Castellia138c6c2023-01-04 11:01:09620 "../rtc_base:async_packet_socket",
Florent Castellif9c59842022-04-19 15:07:23621 "../rtc_base:buffer",
Harald Alvestrand7e539922022-03-17 06:26:03622 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:46623 "../rtc_base:copy_on_write_buffer",
Florent Castellia30aef32022-04-19 15:47:13624 "../rtc_base:event_tracer",
Florent Castelli0af55ba2022-04-04 13:06:30625 "../rtc_base:logging",
Florent Castellia138c6c2023-01-04 11:01:09626 "../rtc_base:network_route",
Florent Castellie10a9f62022-04-04 15:04:37627 "../rtc_base:safe_conversions",
Philipp Hanckec7fd5af2024-05-17 20:49:05628 "../rtc_base:ssl_adapter",
Florent Castellid119b9e2022-04-14 11:23:51629 "../rtc_base:zero_memory",
Harald Alvestrand7e539922022-03-17 06:26:03630 "../rtc_base/third_party/base64",
Harald Alvestrand7e539922022-03-17 06:26:03631 "//third_party/abseil-cpp/absl/strings",
632 "//third_party/abseil-cpp/absl/types:optional",
633 ]
Harald Alvestrand03fad382022-03-10 07:30:31634}
Harald Alvestrande5a73f52022-03-28 12:06:34635
Harald Alvestrand03fad382022-03-10 07:30:31636rtc_source_set("transport_stats") {
637 visibility = [ ":*" ]
Harald Alvestrand2ea4d372022-03-10 22:15:42638 sources = [
639 "transport_stats.cc",
640 "transport_stats.h",
641 ]
642 deps = [
Mirko Bonadeid151cc62022-06-20 06:35:28643 "../api:dtls_transport_interface",
Harald Alvestrand2ea4d372022-03-10 22:15:42644 "../api:libjingle_peerconnection_api",
Harald Alvestrand9a953b22024-01-26 07:11:50645 "../p2p:connection",
Harald Alvestrand8bb54c12024-02-06 15:24:03646 "../p2p:dtls_transport_internal",
Harald Alvestranda310d782024-01-25 12:27:18647 "../p2p:ice_transport_internal",
Harald Alvestrand3bddaed2024-02-06 22:54:25648 "../p2p:port",
Harald Alvestrand2ea4d372022-03-10 22:15:42649 "../p2p:rtc_p2p",
Philipp Hanckec7fd5af2024-05-17 20:49:05650 "../rtc_base:ssl_adapter",
Harald Alvestrand2ea4d372022-03-10 22:15:42651 ]
Harald Alvestrand03fad382022-03-10 07:30:31652}
Harald Alvestrande5a73f52022-03-28 12:06:34653
Harald Alvestrand03fad382022-03-10 07:30:31654rtc_source_set("used_ids") {
655 visibility = [ ":*" ]
Harald Alvestrandc5b9c952022-03-14 07:16:40656 sources = [ "used_ids.h" ]
657 deps = [
658 "../api:rtp_parameters",
Harald Alvestrand794d5992022-12-16 09:54:57659 "../media:codec",
Harald Alvestrandc5b9c952022-03-14 07:16:40660 "../rtc_base:checks",
661 "../rtc_base:logging",
662 ]
Harald Alvestrand03fad382022-03-10 07:30:31663}
Harald Alvestrande5a73f52022-03-28 12:06:34664
Harald Alvestrand03fad382022-03-10 07:30:31665rtc_source_set("video_track_source_proxy") {
Harald Alvestrande5a73f52022-03-28 12:06:34666 visibility = [ "*" ] # Used by Chrome
667 sources = [
668 "video_track_source_proxy.cc",
669 "video_track_source_proxy.h",
670 ]
671 deps = [
672 ":proxy",
673 "../api:libjingle_peerconnection_api",
674 "../api:media_stream_interface",
675 "../api:scoped_refptr",
676 "../api:video_track_source_constraints",
677 "../api/video:recordable_encoded_frame",
678 "../api/video:video_frame",
679 "../rtc_base:threading",
Florent Castelli99c519b2024-05-23 11:21:53680 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrande5a73f52022-03-28 12:06:34681 ]
Harald Alvestrand03fad382022-03-10 07:30:31682}
683
Harald Alvestrandc0a95862021-06-09 09:33:56684rtc_source_set("session_description") {
Harald Alvestrande79f85c2022-02-07 08:39:52685 # TODO(bugs.webrtc.org/13661): Reduce visibility if possible
Harald Alvestrande47493b2022-02-15 12:45:02686 visibility = [ "*" ] # Used by Chrome and others
687
Harald Alvestrandc0a95862021-06-09 09:33:56688 sources = [
Harald Alvestrandec6b6552021-06-10 06:51:48689 "session_description.cc",
690 "session_description.h",
Harald Alvestrandc0a95862021-06-09 09:33:56691 ]
692 deps = [
693 ":media_protocol_names",
694 ":simulcast_description",
695 "../api:libjingle_peerconnection_api",
696 "../api:rtp_parameters",
697 "../api:rtp_transceiver_direction",
Harald Alvestrand794d5992022-12-16 09:54:57698 "../media:codec",
699 "../media:media_channel",
700 "../media:media_constants",
701 "../media:rid_description",
Harald Alvestrand794d5992022-12-16 09:54:57702 "../media:stream_params",
Harald Alvestrandc0a95862021-06-09 09:33:56703 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:18704 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:03705 "../p2p:transport_info",
Harald Alvestrandc0a95862021-06-09 09:33:56706 "../rtc_base:checks",
707 "../rtc_base:socket_address",
Harald Alvestrandc24a2182022-02-23 13:44:59708 "../rtc_base:stringutils",
Harald Alvestrandc0a95862021-06-09 09:33:56709 "../rtc_base/system:rtc_export",
Harald Alvestrandc0a95862021-06-09 09:33:56710 "//third_party/abseil-cpp/absl/algorithm:container",
Florent Castelli99c519b2024-05-23 11:21:53711 "//third_party/abseil-cpp/absl/memory",
712 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrandc0a95862021-06-09 09:33:56713 ]
714}
715
716rtc_source_set("simulcast_description") {
717 sources = [
Harald Alvestrandec6b6552021-06-10 06:51:48718 "simulcast_description.cc",
719 "simulcast_description.h",
Harald Alvestrandc0a95862021-06-09 09:33:56720 ]
721 deps = [
722 "../rtc_base:checks",
723 "../rtc_base:socket_address",
724 "../rtc_base/system:rtc_export",
Florent Castelli99c519b2024-05-23 11:21:53725 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrandc0a95862021-06-09 09:33:56726 ]
727}
728
zhihuang38ede132017-06-15 19:52:32729rtc_source_set("rtc_pc") {
Harald Alvestrande47493b2022-02-15 12:45:02730 if (build_with_chromium) {
731 visibility = [ "*" ]
732 }
Anders Carlsson45340ca2019-01-14 13:23:23733 allow_poison = [ "audio_codecs" ] # TODO(bugs.webrtc.org/8396): Remove.
Harald Alvestrand8df19572022-03-29 07:53:50734 deps = [ "../media:rtc_audio_video" ]
zhihuang38ede132017-06-15 19:52:32735}
736
Mirko Bonadei86d053c2019-10-17 19:32:04737rtc_library("media_protocol_names") {
Harald Alvestrande47493b2022-02-15 12:45:02738 visibility = [ ":*" ]
Harald Alvestrand5fc28b12019-05-13 11:36:16739 sources = [
740 "media_protocol_names.cc",
741 "media_protocol_names.h",
742 ]
Florent Castelli99c519b2024-05-23 11:21:53743 deps = [ "//third_party/abseil-cpp/absl/strings:string_view" ]
Harald Alvestrand5fc28b12019-05-13 11:36:16744}
745
Harald Alvestrandad3b3232022-02-07 02:59:36746rtc_library("sctp_data_channel") {
Harald Alvestrande47493b2022-02-15 12:45:02747 visibility = [ ":*" ]
Harald Alvestrandad3b3232022-02-07 02:59:36748 sources = [
749 "sctp_data_channel.cc",
750 "sctp_data_channel.h",
751 ]
752 deps = [
753 ":data_channel_utils",
754 ":proxy",
Harald Alvestrand2ea4d372022-03-10 22:15:42755 ":sctp_utils",
Harald Alvestrandad3b3232022-02-07 02:59:36756 "../api:libjingle_peerconnection_api",
757 "../api:priority",
758 "../api:rtc_error",
759 "../api:scoped_refptr",
Tommi8efaec62023-03-21 17:45:24760 "../api:sequence_checker",
Tommia50a81a2023-04-11 15:32:34761 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrandad3b3232022-02-07 02:59:36762 "../api/transport:datagram_transport_interface",
Harald Alvestrand794d5992022-12-16 09:54:57763 "../media:media_channel",
Harald Alvestrandad3b3232022-02-07 02:59:36764 "../media:rtc_data_sctp_transport_internal",
Harald Alvestrandad3b3232022-02-07 02:59:36765 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:46766 "../rtc_base:copy_on_write_buffer",
Harald Alvestrandad3b3232022-02-07 02:59:36767 "../rtc_base:logging",
768 "../rtc_base:macromagic",
Philipp Hanckec7fd5af2024-05-17 20:49:05769 "../rtc_base:ssl_adapter",
Harald Alvestrandad3b3232022-02-07 02:59:36770 "../rtc_base:threading",
Tommi1c0d91f2023-03-02 14:42:06771 "../rtc_base:weak_ptr",
Tommi492296c2023-03-12 15:59:25772 "../rtc_base/containers:flat_set",
Tommi8efaec62023-03-21 17:45:24773 "../rtc_base/system:no_unique_address",
Harald Alvestrandad3b3232022-02-07 02:59:36774 "../rtc_base/system:unused",
Florent Castelli99c519b2024-05-23 11:21:53775 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrandad3b3232022-02-07 02:59:36776 ]
Harald Alvestrandad3b3232022-02-07 02:59:36777}
778
779rtc_library("data_channel_utils") {
Harald Alvestrande47493b2022-02-15 12:45:02780 # TODO(bugs.webrtc.org/13661): Reduce visibility if possible
Harald Alvestrandad3b3232022-02-07 02:59:36781 visibility = [ "*" ] # Known to be used externally
Harald Alvestrande79f85c2022-02-07 08:39:52782
Harald Alvestrandad3b3232022-02-07 02:59:36783 sources = [
784 "data_channel_utils.cc",
785 "data_channel_utils.h",
786 ]
787 deps = [
788 "../api:libjingle_peerconnection_api",
Harald Alvestrandfb4ad292024-02-28 11:01:25789 "../media:media_engine",
Harald Alvestrandad3b3232022-02-07 02:59:36790 "../rtc_base:checks",
791 ]
792}
793
Harald Alvestranda39689c2020-10-15 08:34:31794rtc_library("connection_context") {
Harald Alvestrande47493b2022-02-15 12:45:02795 visibility = [ ":*" ]
Harald Alvestranda39689c2020-10-15 08:34:31796 sources = [
797 "connection_context.cc",
798 "connection_context.h",
799 ]
800 deps = [
Danil Chapovalov082cb562023-10-31 12:51:16801 ":media_factory",
Harald Alvestranda39689c2020-10-15 08:34:31802 "../api:libjingle_peerconnection_api",
803 "../api:media_stream_interface",
Tommi86ee89f2021-04-20 14:58:01804 "../api:refcountedbase",
Harald Alvestranda39689c2020-10-15 08:34:31805 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:24806 "../api:sequence_checker",
Danil Chapovalov7eaa9dc2023-11-27 14:00:21807 "../api/environment",
Harald Alvestrandffd5dc72020-10-20 15:35:31808 "../api/neteq:neteq_api",
Harald Alvestrandffd5dc72020-10-20 15:35:31809 "../api/transport:sctp_transport_factory_interface",
Harald Alvestrandfb4ad292024-02-28 11:01:25810 "../media:media_engine",
Florent Castellia80c3e52021-04-15 13:02:56811 "../media:rtc_data_sctp_transport_factory",
Harald Alvestrand8bb54c12024-02-06 15:24:03812 "../p2p:basic_packet_socket_factory",
Harald Alvestranda39689c2020-10-15 08:34:31813 "../p2p:rtc_p2p",
Harald Alvestrandffd5dc72020-10-20 15:35:31814 "../rtc_base:checks",
Philipp Hancke41586782024-06-06 14:31:07815 "../rtc_base:crypto_random",
Florent Castelli4467ad72022-04-04 13:18:46816 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:09817 "../rtc_base:network",
818 "../rtc_base:rtc_certificate_generator",
Harald Alvestrandc24a2182022-02-23 13:44:59819 "../rtc_base:socket_factory",
820 "../rtc_base:socket_server",
Mirko Bonadeie5f4c6b2021-01-15 09:41:01821 "../rtc_base:threading",
Florent Castellidd837e22022-04-04 15:16:15822 "../rtc_base:timeutils",
Harald Alvestrand00579e82022-05-03 11:37:34823 "../rtc_base/memory:always_valid_pointer",
Harald Alvestranda39689c2020-10-15 08:34:31824 ]
825}
826
Harald Alvestrand48e1b292022-01-31 10:58:51827rtc_source_set("data_channel_controller") {
828 visibility = [ ":*" ]
Harald Alvestrand5b84f382022-02-08 10:49:09829 sources = [
830 "data_channel_controller.cc",
831 "data_channel_controller.h",
832 ]
833 deps = [
834 ":data_channel_utils",
835 ":peer_connection_internal",
Harald Alvestrand5b84f382022-02-08 10:49:09836 ":sctp_data_channel",
Harald Alvestrand2ea4d372022-03-10 22:15:42837 ":sctp_utils",
Harald Alvestrand5b84f382022-02-08 10:49:09838 "../api:libjingle_peerconnection_api",
Florent Castelli0012bfa2024-07-26 16:16:41839 "../api:priority",
Harald Alvestrand5b84f382022-02-08 10:49:09840 "../api:rtc_error",
841 "../api:scoped_refptr",
842 "../api:sequence_checker",
Tommi13759ba2023-03-06 11:51:39843 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrand5b84f382022-02-08 10:49:09844 "../api/transport:datagram_transport_interface",
Harald Alvestrand794d5992022-12-16 09:54:57845 "../media:media_channel",
Harald Alvestrand5b84f382022-02-08 10:49:09846 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:46847 "../rtc_base:copy_on_write_buffer",
Harald Alvestrand5b84f382022-02-08 10:49:09848 "../rtc_base:logging",
849 "../rtc_base:macromagic",
Philipp Hanckec7fd5af2024-05-17 20:49:05850 "../rtc_base:ssl_adapter",
Harald Alvestrand5b84f382022-02-08 10:49:09851 "../rtc_base:threading",
852 "../rtc_base:weak_ptr",
Harald Alvestrand5b84f382022-02-08 10:49:09853 "//third_party/abseil-cpp/absl/algorithm:container",
854 "//third_party/abseil-cpp/absl/types:optional",
855 ]
Harald Alvestrand48e1b292022-01-31 10:58:51856}
Harald Alvestrand15ad4ed2022-02-09 05:52:11857
Harald Alvestrandae940a52022-02-01 13:37:08858rtc_source_set("peer_connection_internal") {
859 visibility = [ ":*" ]
Harald Alvestrand67a68d52022-02-07 05:07:03860 sources = [ "peer_connection_internal.h" ]
861 deps = [
Harald Alvestrande5a73f52022-03-28 12:06:34862 ":jsep_transport_controller",
Harald Alvestrand67a68d52022-02-07 05:07:03863 ":peer_connection_message_handler",
Harald Alvestrand67a68d52022-02-07 05:07:03864 ":rtp_transceiver",
865 ":rtp_transmission_manager",
866 ":sctp_data_channel",
867 "../api:libjingle_peerconnection_api",
Florent Castellif4673f92024-04-19 19:46:03868 "../api/audio:audio_device",
Harald Alvestrand67a68d52022-02-07 05:07:03869 "../call:call_interfaces",
Fredrik Hernqvistefbe7532023-01-13 15:42:36870 "../modules/audio_device",
Florent Castelli99c519b2024-05-23 11:21:53871 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand67a68d52022-02-07 05:07:03872 ]
Harald Alvestrandae940a52022-02-01 13:37:08873}
Harald Alvestrand8f429922022-05-04 10:32:30874
Harald Alvestrandae940a52022-02-01 13:37:08875rtc_source_set("rtc_stats_collector") {
Harald Alvestrandc1e8aeb2022-03-31 19:53:50876 visibility = [
877 ":*",
878 "../api:*",
879 ]
Harald Alvestrandfd6c7442022-02-08 07:52:10880 sources = [
881 "rtc_stats_collector.cc",
882 "rtc_stats_collector.h",
883 ]
884 deps = [
Harald Alvestrand8e1ae8c2022-03-17 13:13:51885 ":channel",
Harald Alvestrandc5b9c952022-03-14 07:16:40886 ":channel_interface",
Harald Alvestrandfd6c7442022-02-08 07:52:10887 ":data_channel_utils",
888 ":peer_connection_internal",
Harald Alvestrandfd6c7442022-02-08 07:52:10889 ":rtc_stats_traversal",
890 ":rtp_receiver",
Harald Alvestrandd9f68462022-03-10 10:09:51891 ":rtp_receiver_proxy",
Harald Alvestrandfd6c7442022-02-08 07:52:10892 ":rtp_sender",
Harald Alvestrandd9f68462022-03-10 10:09:51893 ":rtp_sender_proxy",
Harald Alvestrandfd6c7442022-02-08 07:52:10894 ":rtp_transceiver",
895 ":sctp_data_channel",
896 ":track_media_info_map",
Harald Alvestrand2ea4d372022-03-10 22:15:42897 ":transport_stats",
Harald Alvestrandfd6c7442022-02-08 07:52:10898 ":webrtc_sdp",
899 "../api:array_view",
Mirko Bonadeid151cc62022-06-20 06:35:28900 "../api:candidate",
901 "../api:dtls_transport_interface",
Harald Alvestrandfd6c7442022-02-08 07:52:10902 "../api:libjingle_peerconnection_api",
903 "../api:media_stream_interface",
904 "../api:rtc_stats_api",
905 "../api:rtp_parameters",
906 "../api:scoped_refptr",
907 "../api:sequence_checker",
Florent Castellif4673f92024-04-19 19:46:03908 "../api/audio:audio_device",
Florent Castelli0afde762024-04-19 15:07:08909 "../api/audio:audio_processing_statistics",
Harald Alvestrandfd6c7442022-02-08 07:52:10910 "../api/task_queue:task_queue",
Harald Alvestrandc24a2182022-02-23 13:44:59911 "../api/units:time_delta",
Harald Alvestrandfd6c7442022-02-08 07:52:10912 "../api/video:video_rtp_headers",
Evan Shrubsole9b235cd2022-12-06 10:09:10913 "../api/video_codecs:scalability_mode",
Harald Alvestrandfd6c7442022-02-08 07:52:10914 "../call:call_interfaces",
915 "../common_video:common_video",
Harald Alvestrand794d5992022-12-16 09:54:57916 "../media:media_channel",
917 "../media:media_channel_impl",
Fredrik Hernqvistefbe7532023-01-13 15:42:36918 "../modules/audio_device",
Harald Alvestrandfd6c7442022-02-08 07:52:10919 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestrand9a953b22024-01-26 07:11:50920 "../p2p:connection",
Harald Alvestranda310d782024-01-25 12:27:18921 "../p2p:connection_info",
922 "../p2p:ice_transport_internal",
923 "../p2p:p2p_constants",
Harald Alvestrand3bddaed2024-02-06 22:54:25924 "../p2p:port",
Harald Alvestrandfd6c7442022-02-08 07:52:10925 "../p2p:rtc_p2p",
926 "../rtc_base:checks",
Florent Castellia30aef32022-04-19 15:47:13927 "../rtc_base:event_tracer",
Harald Alvestrandfd6c7442022-02-08 07:52:10928 "../rtc_base:ip_address",
929 "../rtc_base:logging",
930 "../rtc_base:network_constants",
931 "../rtc_base:refcount",
Harald Alvestrandfd6c7442022-02-08 07:52:10932 "../rtc_base:rtc_event",
933 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 11:01:09934 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:05935 "../rtc_base:ssl_adapter",
Harald Alvestrandfd6c7442022-02-08 07:52:10936 "../rtc_base:stringutils",
937 "../rtc_base:threading",
938 "../rtc_base:timeutils",
Tommi60d4adc2023-03-03 12:34:42939 "../rtc_base/containers:flat_set",
Henrik Boströmb3dd1732022-09-30 15:22:44940 "../rtc_base/synchronization:mutex",
Danil Chapovalova30439b2022-07-07 08:08:49941 "//third_party/abseil-cpp/absl/functional:bind_front",
Florent Castelli99c519b2024-05-23 11:21:53942 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrandc24a2182022-02-23 13:44:59943 "//third_party/abseil-cpp/absl/types:optional",
944 ]
Harald Alvestrandae940a52022-02-01 13:37:08945}
Harald Alvestrandfd6c7442022-02-08 07:52:10946
947rtc_source_set("rtc_stats_traversal") {
948 visibility = [ ":*" ]
949 sources = [
950 "rtc_stats_traversal.cc",
951 "rtc_stats_traversal.h",
952 ]
953 deps = [
954 "../api:rtc_stats_api",
955 "../api:scoped_refptr",
956 "../rtc_base:checks",
Florent Castelli99c519b2024-05-23 11:21:53957 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrandfd6c7442022-02-08 07:52:10958 ]
959}
960
Harald Alvestrandae940a52022-02-01 13:37:08961rtc_source_set("sdp_offer_answer") {
962 visibility = [ ":*" ]
Harald Alvestrand8e344192022-02-08 12:55:42963 sources = [
964 "sdp_offer_answer.cc", # TODO: Make separate target when not circular
965 "sdp_offer_answer.h", # dependent on peerconnection.h
966 ]
967 deps = [
Harald Alvestrand8e1ae8c2022-03-17 13:13:51968 ":channel",
Harald Alvestrandc5b9c952022-03-14 07:16:40969 ":channel_interface",
Harald Alvestrand8e344192022-02-08 12:55:42970 ":connection_context",
971 ":data_channel_controller",
Harald Alvestrandc5b9c952022-03-14 07:16:40972 ":dtls_transport",
Harald Alvestrande5a73f52022-03-28 12:06:34973 ":jsep_transport_controller",
Henrik Boströmf7859892022-07-04 12:36:37974 ":legacy_stats_collector",
Harald Alvestrande5a73f52022-03-28 12:06:34975 ":media_session",
Harald Alvestrand8e344192022-02-08 12:55:42976 ":media_stream",
977 ":media_stream_observer",
Harald Alvestrandd9f68462022-03-10 10:09:51978 ":media_stream_proxy",
Harald Alvestrand8e344192022-02-08 12:55:42979 ":peer_connection_internal",
980 ":peer_connection_message_handler",
Harald Alvestrand7ee138e2022-03-10 13:21:28981 ":rtp_media_utils",
Harald Alvestrand8e344192022-02-08 12:55:42982 ":rtp_receiver",
Harald Alvestrandd9f68462022-03-10 10:09:51983 ":rtp_receiver_proxy",
Harald Alvestrand8e344192022-02-08 12:55:42984 ":rtp_sender",
Harald Alvestrandd9f68462022-03-10 10:09:51985 ":rtp_sender_proxy",
Harald Alvestrand8e344192022-02-08 12:55:42986 ":rtp_transceiver",
987 ":rtp_transmission_manager",
988 ":sdp_state_provider",
989 ":session_description",
990 ":simulcast_description",
Harald Alvestrand8e344192022-02-08 12:55:42991 ":stream_collection",
992 ":transceiver_list",
993 ":usage_pattern",
Philipp Hancke7d1aff62023-09-25 12:42:51994 ":used_ids",
Harald Alvestrand8e344192022-02-08 12:55:42995 ":webrtc_session_description_factory",
996 "../api:array_view",
997 "../api:audio_options_api",
Mirko Bonadeid151cc62022-06-20 06:35:28998 "../api:candidate",
999 "../api:dtls_transport_interface",
Harald Alvestrand8f429922022-05-04 10:32:301000 "../api:field_trials_view",
Harald Alvestrand8e344192022-02-08 12:55:421001 "../api:libjingle_peerconnection_api",
Harald Alvestrand6431a642024-06-04 21:29:141002 "../api:make_ref_counted",
Harald Alvestrand8e344192022-02-08 12:55:421003 "../api:media_stream_interface",
1004 "../api:rtc_error",
1005 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:161006 "../api:rtp_sender_interface",
Harald Alvestrand8e344192022-02-08 12:55:421007 "../api:rtp_transceiver_direction",
1008 "../api:scoped_refptr",
1009 "../api:sequence_checker",
1010 "../api/crypto:options",
Harald Alvestrand8e344192022-02-08 12:55:421011 "../api/video:builtin_video_bitrate_allocator_factory",
1012 "../api/video:video_bitrate_allocator_factory",
Harald Alvestrand6431a642024-06-04 21:29:141013 "../api/video:video_codec_constants",
Harald Alvestrand794d5992022-12-16 09:54:571014 "../media:codec",
1015 "../media:media_channel",
Harald Alvestrand6431a642024-06-04 21:29:141016 "../media:media_engine",
Harald Alvestrand794d5992022-12-16 09:54:571017 "../media:rid_description",
Harald Alvestrand794d5992022-12-16 09:54:571018 "../media:stream_params",
Harald Alvestrand9a953b22024-01-26 07:11:501019 "../p2p:connection",
Harald Alvestranda310d782024-01-25 12:27:181020 "../p2p:ice_transport_internal",
1021 "../p2p:p2p_constants",
1022 "../p2p:p2p_transport_channel",
Harald Alvestrand3bddaed2024-02-06 22:54:251023 "../p2p:port",
1024 "../p2p:port_allocator",
Harald Alvestrand8e344192022-02-08 12:55:421025 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:181026 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:031027 "../p2p:transport_description_factory",
1028 "../p2p:transport_info",
Harald Alvestrand8e344192022-02-08 12:55:421029 "../rtc_base:checks",
Philipp Hancke41586782024-06-06 14:31:071030 "../rtc_base:crypto_random",
Florent Castellia30aef32022-04-19 15:47:131031 "../rtc_base:event_tracer",
Harald Alvestrand8e344192022-02-08 12:55:421032 "../rtc_base:logging",
1033 "../rtc_base:macromagic",
Harald Alvestrand8e344192022-02-08 12:55:421034 "../rtc_base:rtc_operations_chain",
Florent Castellia138c6c2023-01-04 11:01:091035 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:051036 "../rtc_base:ssl_adapter",
Harald Alvestrand8e344192022-02-08 12:55:421037 "../rtc_base:stringutils",
1038 "../rtc_base:threading",
Florent Castellia138c6c2023-01-04 11:01:091039 "../rtc_base:unique_id_generator",
Harald Alvestrand8e344192022-02-08 12:55:421040 "../rtc_base:weak_ptr",
Harald Alvestrand8e344192022-02-08 12:55:421041 "../system_wrappers:metrics",
Harald Alvestrand8e344192022-02-08 12:55:421042 "//third_party/abseil-cpp/absl/algorithm:container",
Florent Castelli99c519b2024-05-23 11:21:531043 "//third_party/abseil-cpp/absl/memory",
1044 "//third_party/abseil-cpp/absl/strings",
1045 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrand8e344192022-02-08 12:55:421046 "//third_party/abseil-cpp/absl/types:optional",
1047 ]
Harald Alvestrandae940a52022-02-01 13:37:081048}
1049rtc_source_set("jsep_ice_candidate") {
1050 visibility = [ ":*" ]
1051}
1052rtc_source_set("jsep_session_description") {
1053 visibility = [ ":*" ]
1054}
1055rtc_source_set("local_audio_source") {
1056 visibility = [ ":*" ]
Harald Alvestrand7766ab12022-02-02 11:26:031057 sources = [
1058 "local_audio_source.cc",
1059 "local_audio_source.h",
1060 ]
1061 deps = [
1062 "../api:audio_options_api",
1063 "../api:media_stream_interface",
1064 "../api:scoped_refptr",
Harald Alvestrand7766ab12022-02-02 11:26:031065 ]
Harald Alvestrandae940a52022-02-01 13:37:081066}
1067rtc_source_set("peer_connection") {
1068 visibility = [ ":*" ]
Harald Alvestrand15ad4ed2022-02-09 05:52:111069 sources = [
1070 "peer_connection.cc",
1071 "peer_connection.h",
1072 ]
1073 deps = [
Harald Alvestrand8e1ae8c2022-03-17 13:13:511074 ":channel",
Harald Alvestrandc5b9c952022-03-14 07:16:401075 ":channel_interface",
Harald Alvestrand15ad4ed2022-02-09 05:52:111076 ":connection_context",
1077 ":data_channel_controller",
1078 ":data_channel_utils",
Harald Alvestrandc5b9c952022-03-14 07:16:401079 ":dtls_transport",
Harald Alvestrand15ad4ed2022-02-09 05:52:111080 ":ice_server_parsing",
Harald Alvestrande5a73f52022-03-28 12:06:341081 ":jsep_transport_controller",
Henrik Boströmf7859892022-07-04 12:36:371082 ":legacy_stats_collector",
Harald Alvestrand15ad4ed2022-02-09 05:52:111083 ":peer_connection_internal",
1084 ":peer_connection_message_handler",
Harald Alvestrand15ad4ed2022-02-09 05:52:111085 ":rtc_stats_collector",
1086 ":rtp_receiver",
Harald Alvestrandd9f68462022-03-10 10:09:511087 ":rtp_receiver_proxy",
Harald Alvestrand15ad4ed2022-02-09 05:52:111088 ":rtp_sender",
Harald Alvestrandd9f68462022-03-10 10:09:511089 ":rtp_sender_proxy",
Harald Alvestrand15ad4ed2022-02-09 05:52:111090 ":rtp_transceiver",
1091 ":rtp_transmission_manager",
Harald Alvestrand2ea4d372022-03-10 22:15:421092 ":rtp_transport_internal",
Harald Alvestrand15ad4ed2022-02-09 05:52:111093 ":sctp_data_channel",
Harald Alvestrand7e539922022-03-17 06:26:031094 ":sctp_transport",
Harald Alvestrand15ad4ed2022-02-09 05:52:111095 ":sdp_offer_answer",
1096 ":session_description",
1097 ":simulcast_description",
Harald Alvestrand15ad4ed2022-02-09 05:52:111098 ":transceiver_list",
Harald Alvestrand2ea4d372022-03-10 22:15:421099 ":transport_stats",
Harald Alvestrand15ad4ed2022-02-09 05:52:111100 ":usage_pattern",
1101 ":webrtc_session_description_factory",
1102 "../api:async_dns_resolver",
Mirko Bonadeid151cc62022-06-20 06:35:281103 "../api:candidate",
1104 "../api:dtls_transport_interface",
Jonas Orelande62c2f22022-03-29 09:04:481105 "../api:field_trials_view",
Mirko Bonadeid151cc62022-06-20 06:35:281106 "../api:ice_transport_interface",
Harald Alvestrand15ad4ed2022-02-09 05:52:111107 "../api:libjingle_logging_api",
1108 "../api:libjingle_peerconnection_api",
1109 "../api:media_stream_interface",
Harald Alvestrand15ad4ed2022-02-09 05:52:111110 "../api:rtc_error",
1111 "../api:rtc_stats_api",
1112 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:161113 "../api:rtp_sender_interface",
Harald Alvestrand15ad4ed2022-02-09 05:52:111114 "../api:rtp_transceiver_direction",
1115 "../api:scoped_refptr",
1116 "../api:sequence_checker",
Mirko Bonadeid151cc62022-06-20 06:35:281117 "../api:turn_customizer",
Harald Alvestrand15ad4ed2022-02-09 05:52:111118 "../api/adaptation:resource_adaptation_api",
1119 "../api/crypto:options",
Danil Chapovalov3bdb49b2023-11-30 07:59:391120 "../api/environment",
Harald Alvestrand09bdd952022-04-05 13:00:541121 "../api/rtc_event_log",
Artem Titovc374d112022-06-16 19:27:451122 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrand15ad4ed2022-02-09 05:52:111123 "../api/transport:bitrate_settings",
1124 "../api/transport:datagram_transport_interface",
1125 "../api/transport:enums",
Harald Alvestrand15ad4ed2022-02-09 05:52:111126 "../api/video:video_codec_constants",
1127 "../call:call_interfaces",
Harald Alvestrand794d5992022-12-16 09:54:571128 "../media:media_channel",
Harald Alvestrandfb4ad292024-02-28 11:01:251129 "../media:media_engine",
Harald Alvestrand794d5992022-12-16 09:54:571130 "../media:rid_description",
Harald Alvestrand15ad4ed2022-02-09 05:52:111131 "../media:rtc_media_config",
Harald Alvestrand794d5992022-12-16 09:54:571132 "../media:stream_params",
Harald Alvestrand15ad4ed2022-02-09 05:52:111133 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestranda310d782024-01-25 12:27:181134 "../p2p:basic_async_resolver_factory",
Harald Alvestrand9a953b22024-01-26 07:11:501135 "../p2p:connection",
Harald Alvestranda310d782024-01-25 12:27:181136 "../p2p:connection_info",
Harald Alvestrand8bb54c12024-02-06 15:24:031137 "../p2p:dtls_transport_internal",
Harald Alvestranda310d782024-01-25 12:27:181138 "../p2p:ice_transport_internal",
1139 "../p2p:p2p_constants",
1140 "../p2p:p2p_transport_channel",
Harald Alvestrand3bddaed2024-02-06 22:54:251141 "../p2p:port",
1142 "../p2p:port_allocator",
Harald Alvestrand15ad4ed2022-02-09 05:52:111143 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:181144 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:031145 "../p2p:transport_info",
Harald Alvestrand15ad4ed2022-02-09 05:52:111146 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:461147 "../rtc_base:copy_on_write_buffer",
Philipp Hancke41586782024-06-06 14:31:071148 "../rtc_base:crypto_random",
Florent Castellia30aef32022-04-19 15:47:131149 "../rtc_base:event_tracer",
Harald Alvestrand15ad4ed2022-02-09 05:52:111150 "../rtc_base:ip_address",
1151 "../rtc_base:logging",
1152 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:091153 "../rtc_base:net_helper",
1154 "../rtc_base:network",
Harald Alvestrand15ad4ed2022-02-09 05:52:111155 "../rtc_base:network_constants",
Harald Alvestrand15ad4ed2022-02-09 05:52:111156 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 11:01:091157 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:051158 "../rtc_base:ssl_adapter",
Harald Alvestrand15ad4ed2022-02-09 05:52:111159 "../rtc_base:stringutils",
1160 "../rtc_base:threading",
Florent Castellia138c6c2023-01-04 11:01:091161 "../rtc_base:unique_id_generator",
Harald Alvestrand15ad4ed2022-02-09 05:52:111162 "../rtc_base:weak_ptr",
Harald Alvestrand15ad4ed2022-02-09 05:52:111163 "../system_wrappers:metrics",
Harald Alvestrand15ad4ed2022-02-09 05:52:111164 "//third_party/abseil-cpp/absl/algorithm:container",
Florent Castelli99c519b2024-05-23 11:21:531165 "//third_party/abseil-cpp/absl/strings",
1166 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrand15ad4ed2022-02-09 05:52:111167 "//third_party/abseil-cpp/absl/types:optional",
1168 ]
Harald Alvestrandae940a52022-02-01 13:37:081169}
Harald Alvestrandfd6c7442022-02-08 07:52:101170
Philipp Hancke96bc0942023-09-14 15:23:591171rtc_source_set("simulcast_sdp_serializer") {
Harald Alvestrandae940a52022-02-01 13:37:081172 visibility = [ ":*" ]
Harald Alvestrand2f122e42022-02-01 20:59:511173 sources = [
Philipp Hancke96bc0942023-09-14 15:23:591174 "simulcast_sdp_serializer.cc",
1175 "simulcast_sdp_serializer.h",
Harald Alvestrand2f122e42022-02-01 20:59:511176 ]
1177 deps = [
1178 ":session_description",
1179 ":simulcast_description",
1180 "../api:rtc_error",
Harald Alvestrand794d5992022-12-16 09:54:571181 "../media:rid_description",
Harald Alvestrand2f122e42022-02-01 20:59:511182 "../modules/rtp_rtcp:rtp_rtcp_format",
1183 "../rtc_base:checks",
1184 "../rtc_base:stringutils",
Harald Alvestrand2f122e42022-02-01 20:59:511185 "//third_party/abseil-cpp/absl/algorithm:container",
Florent Castelli99c519b2024-05-23 11:21:531186 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrand2f122e42022-02-01 20:59:511187 "//third_party/abseil-cpp/absl/types:optional",
1188 ]
Harald Alvestrandae940a52022-02-01 13:37:081189}
1190rtc_source_set("sdp_utils") {
Harald Alvestrand63c3b132022-02-03 07:56:221191 sources = [
1192 "sdp_utils.cc",
1193 "sdp_utils.h",
1194 ]
1195 deps = [
Harald Alvestrand67a68d52022-02-07 05:07:031196 ":session_description",
Harald Alvestrand63c3b132022-02-03 07:56:221197 "../api:libjingle_peerconnection_api",
1198 "../p2p:rtc_p2p",
Harald Alvestrand8bb54c12024-02-06 15:24:031199 "../p2p:transport_info",
Harald Alvestrand63c3b132022-02-03 07:56:221200 "../rtc_base:checks",
1201 "../rtc_base/system:rtc_export",
1202 ]
Harald Alvestrandae940a52022-02-01 13:37:081203}
Henrik Boströmf7859892022-07-04 12:36:371204rtc_source_set("legacy_stats_collector") {
Harald Alvestrandae940a52022-02-01 13:37:081205 visibility = [ ":*" ]
Harald Alvestranda7fc7652022-02-08 09:30:411206 sources = [
Henrik Boströmf7859892022-07-04 12:36:371207 "legacy_stats_collector.cc",
1208 "legacy_stats_collector.h",
Harald Alvestranda7fc7652022-02-08 09:30:411209 ]
1210 deps = [
Harald Alvestrand8e1ae8c2022-03-17 13:13:511211 ":channel",
Harald Alvestrandc5b9c952022-03-14 07:16:401212 ":channel_interface",
Harald Alvestranda7fc7652022-02-08 09:30:411213 ":data_channel_utils",
Henrik Boströmf7859892022-07-04 12:36:371214 ":legacy_stats_collector_interface",
Harald Alvestranda7fc7652022-02-08 09:30:411215 ":peer_connection_internal",
Harald Alvestranda7fc7652022-02-08 09:30:411216 ":rtp_receiver",
Harald Alvestrandd9f68462022-03-10 10:09:511217 ":rtp_receiver_proxy",
1218 ":rtp_sender_proxy",
Harald Alvestranda7fc7652022-02-08 09:30:411219 ":rtp_transceiver",
Harald Alvestrand2ea4d372022-03-10 22:15:421220 ":transport_stats",
Mirko Bonadeid151cc62022-06-20 06:35:281221 "../api:candidate",
Jonas Orelande62c2f22022-03-29 09:04:481222 "../api:field_trials_view",
Harald Alvestranda7fc7652022-02-08 09:30:411223 "../api:libjingle_peerconnection_api",
1224 "../api:media_stream_interface",
1225 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:161226 "../api:rtp_sender_interface",
Harald Alvestranda7fc7652022-02-08 09:30:411227 "../api:scoped_refptr",
1228 "../api:sequence_checker",
Florent Castelli0afde762024-04-19 15:07:081229 "../api/audio:audio_processing_statistics",
Harald Alvestranda7fc7652022-02-08 09:30:411230 "../api/audio_codecs:audio_codecs_api",
1231 "../api/video:video_rtp_headers",
1232 "../call:call_interfaces",
Harald Alvestrand794d5992022-12-16 09:54:571233 "../media:media_channel",
Harald Alvestrand9a953b22024-01-26 07:11:501234 "../p2p:connection",
Harald Alvestranda310d782024-01-25 12:27:181235 "../p2p:connection_info",
1236 "../p2p:ice_transport_internal",
1237 "../p2p:p2p_constants",
Harald Alvestrand3bddaed2024-02-06 22:54:251238 "../p2p:port",
Harald Alvestranda7fc7652022-02-08 09:30:411239 "../p2p:rtc_p2p",
1240 "../rtc_base:checks",
Florent Castellia30aef32022-04-19 15:47:131241 "../rtc_base:event_tracer",
Harald Alvestranda7fc7652022-02-08 09:30:411242 "../rtc_base:ip_address",
1243 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:461244 "../rtc_base:macromagic",
Harald Alvestranda7fc7652022-02-08 09:30:411245 "../rtc_base:network_constants",
Harald Alvestranda7fc7652022-02-08 09:30:411246 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 11:01:091247 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:051248 "../rtc_base:ssl_adapter",
Harald Alvestranda7fc7652022-02-08 09:30:411249 "../rtc_base:stringutils",
1250 "../rtc_base:threading",
1251 "../rtc_base:timeutils",
Florent Castelli99c519b2024-05-23 11:21:531252 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrandc24a2182022-02-23 13:44:591253 "//third_party/abseil-cpp/absl/types:optional",
1254 ]
Harald Alvestrandae940a52022-02-01 13:37:081255}
1256rtc_source_set("stream_collection") {
1257 visibility = [ ":*" ]
Harald Alvestrandab0152d2022-02-07 06:43:481258 sources = [ "stream_collection.h" ]
1259 deps = [ "../api:libjingle_peerconnection_api" ]
Harald Alvestrandae940a52022-02-01 13:37:081260}
1261rtc_source_set("track_media_info_map") {
1262 visibility = [ ":*" ]
Harald Alvestrand59427ad2022-02-03 19:02:381263 sources = [
1264 "track_media_info_map.cc",
1265 "track_media_info_map.h",
1266 ]
1267 deps = [
1268 ":rtp_receiver",
1269 ":rtp_sender",
Henrik Boström808a8fc2022-07-27 09:32:141270 "../api:array_view",
Harald Alvestrand59427ad2022-02-03 19:02:381271 "../api:media_stream_interface",
1272 "../api:rtp_parameters",
1273 "../api:scoped_refptr",
Harald Alvestrand794d5992022-12-16 09:54:571274 "../media:media_channel",
Harald Alvestrand794d5992022-12-16 09:54:571275 "../media:stream_params",
Harald Alvestrand59427ad2022-02-03 19:02:381276 "../rtc_base:checks",
1277 "../rtc_base:refcount",
1278 "../rtc_base:threading",
Florent Castelli99c519b2024-05-23 11:21:531279 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand59427ad2022-02-03 19:02:381280 ]
Harald Alvestrandae940a52022-02-01 13:37:081281}
1282rtc_source_set("webrtc_sdp") {
Harald Alvestrande47493b2022-02-15 12:45:021283 # TODO(bugs.webrtc.org/13661): Reduce visibility if possible
Harald Alvestrande79f85c2022-02-07 08:39:521284 visibility = [ "*" ] # Used by Chrome and more
Harald Alvestrandb6f39162022-02-08 05:56:551285
Harald Alvestrandb6f39162022-02-08 05:56:551286 sources = [
1287 "jsep_ice_candidate.cc",
1288 "jsep_session_description.cc",
1289 "webrtc_sdp.cc",
1290 "webrtc_sdp.h",
1291 ]
1292 deps = [
1293 ":media_protocol_names",
Harald Alvestrande5a73f52022-03-28 12:06:341294 ":media_session",
Harald Alvestrandb6f39162022-02-08 05:56:551295 ":session_description",
1296 ":simulcast_description",
Philipp Hancke96bc0942023-09-14 15:23:591297 ":simulcast_sdp_serializer",
Mirko Bonadeid151cc62022-06-20 06:35:281298 "../api:candidate",
Harald Alvestrandb6f39162022-02-08 05:56:551299 "../api:libjingle_peerconnection_api",
1300 "../api:rtc_error",
1301 "../api:rtp_parameters",
1302 "../api:rtp_transceiver_direction",
Harald Alvestrand794d5992022-12-16 09:54:571303 "../media:codec",
1304 "../media:media_constants",
1305 "../media:rid_description",
Harald Alvestrandb6f39162022-02-08 05:56:551306 "../media:rtc_data_sctp_transport_internal",
Harald Alvestrand794d5992022-12-16 09:54:571307 "../media:rtp_utils",
1308 "../media:stream_params",
Harald Alvestranda310d782024-01-25 12:27:181309 "../p2p:candidate_pair_interface",
Harald Alvestrand9a953b22024-01-26 07:11:501310 "../p2p:connection",
Harald Alvestranda310d782024-01-25 12:27:181311 "../p2p:ice_transport_internal",
1312 "../p2p:p2p_constants",
Harald Alvestrand3bddaed2024-02-06 22:54:251313 "../p2p:port",
Harald Alvestranda310d782024-01-25 12:27:181314 "../p2p:port_interface",
Harald Alvestrandb6f39162022-02-08 05:56:551315 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:181316 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:031317 "../p2p:transport_info",
Harald Alvestrandb6f39162022-02-08 05:56:551318 "../rtc_base:checks",
Philipp Hancke41586782024-06-06 14:31:071319 "../rtc_base:crypto_random",
Harald Alvestrandb6f39162022-02-08 05:56:551320 "../rtc_base:ip_address",
1321 "../rtc_base:logging",
1322 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:091323 "../rtc_base:net_helper",
Harald Alvestrandb6f39162022-02-08 05:56:551324 "../rtc_base:network_constants",
Harald Alvestrandb6f39162022-02-08 05:56:551325 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 11:01:091326 "../rtc_base:ssl",
Harald Alvestrandb6f39162022-02-08 05:56:551327 "../rtc_base:stringutils",
1328 "../rtc_base/system:rtc_export",
Harald Alvestrandb6f39162022-02-08 05:56:551329 "//third_party/abseil-cpp/absl/algorithm:container",
Harald Alvestrandc24a2182022-02-23 13:44:591330 "//third_party/abseil-cpp/absl/strings",
Florent Castelli99c519b2024-05-23 11:21:531331 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrandb6f39162022-02-08 05:56:551332 "//third_party/abseil-cpp/absl/types:optional",
1333 ]
Harald Alvestrandae940a52022-02-01 13:37:081334}
1335rtc_source_set("webrtc_session_description_factory") {
1336 visibility = [ ":*" ]
Harald Alvestrand65d89e82022-02-03 09:48:251337 sources = [
1338 "webrtc_session_description_factory.cc",
1339 "webrtc_session_description_factory.h",
1340 ]
1341 deps = [
Jonas Orelanded99dae2022-03-09 08:28:101342 ":connection_context",
Harald Alvestrande5a73f52022-03-28 12:06:341343 ":media_session",
Harald Alvestrand65d89e82022-02-03 09:48:251344 ":sdp_state_provider",
1345 ":session_description",
1346 "../api:libjingle_peerconnection_api",
1347 "../api:rtc_error",
1348 "../api:scoped_refptr",
Florent Castelli8d4e9fb2022-04-04 15:18:211349 "../api:sequence_checker",
Danil Chapovalov97bdfa32022-08-22 17:45:431350 "../api/task_queue",
Harald Alvestrand65d89e82022-02-03 09:48:251351 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:181352 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:031353 "../p2p:transport_description_factory",
Harald Alvestrand65d89e82022-02-03 09:48:251354 "../rtc_base:checks",
1355 "../rtc_base:logging",
Florent Castellia138c6c2023-01-04 11:01:091356 "../rtc_base:rtc_certificate_generator",
1357 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:051358 "../rtc_base:ssl_adapter",
Harald Alvestrand65d89e82022-02-03 09:48:251359 "../rtc_base:stringutils",
Florent Castellia138c6c2023-01-04 11:01:091360 "../rtc_base:unique_id_generator",
Danil Chapovalovb22f0c22022-08-19 12:03:541361 "../rtc_base:weak_ptr",
Harald Alvestrand65d89e82022-02-03 09:48:251362 "//third_party/abseil-cpp/absl/algorithm:container",
Danil Chapovalov97bdfa32022-08-22 17:45:431363 "//third_party/abseil-cpp/absl/functional:any_invocable",
Harald Alvestrand65d89e82022-02-03 09:48:251364 "//third_party/abseil-cpp/absl/types:optional",
1365 ]
Harald Alvestrandae940a52022-02-01 13:37:081366}
1367
1368rtc_library("ice_server_parsing") {
Harald Alvestrande47493b2022-02-15 12:45:021369 # TODO(bugs.webrtc.org/13661): Reduce visibility if possible
Harald Alvestrandae940a52022-02-01 13:37:081370 visibility = [ "*" ] # Known to be used externally
Harald Alvestrande79f85c2022-02-07 08:39:521371
Harald Alvestrandae940a52022-02-01 13:37:081372 sources = [
1373 "ice_server_parsing.cc",
1374 "ice_server_parsing.h",
1375 ]
1376 deps = [
1377 "../api:libjingle_peerconnection_api",
1378 "../api:rtc_error",
Harald Alvestrand9a953b22024-01-26 07:11:501379 "../p2p:connection",
Harald Alvestrand3bddaed2024-02-06 22:54:251380 "../p2p:port",
1381 "../p2p:port_allocator",
Harald Alvestranda310d782024-01-25 12:27:181382 "../p2p:port_interface",
Harald Alvestrandae940a52022-02-01 13:37:081383 "../p2p:rtc_p2p",
1384 "../rtc_base:checks",
1385 "../rtc_base:ip_address",
1386 "../rtc_base:logging",
1387 "../rtc_base:macromagic",
1388 "../rtc_base:socket_address",
1389 "../rtc_base:stringutils",
1390 "../rtc_base/system:rtc_export",
1391 ]
1392}
1393
1394rtc_library("media_stream_observer") {
Harald Alvestrand13b62c22022-02-01 07:47:531395 sources = [
1396 "media_stream_observer.cc",
1397 "media_stream_observer.h",
1398 ]
1399 deps = [
1400 "../api:media_stream_interface",
1401 "../api:scoped_refptr",
Florent Castelli99c519b2024-05-23 11:21:531402 "//third_party/abseil-cpp/absl/algorithm:container",
Harald Alvestrand13b62c22022-02-01 07:47:531403 ]
Harald Alvestrand48e1b292022-01-31 10:58:511404}
Harald Alvestrand15ad4ed2022-02-09 05:52:111405rtc_source_set("peer_connection_factory") {
Harald Alvestrande47493b2022-02-15 12:45:021406 # TODO(bugs.webrtc.org/13661): Reduce visibility if possible
Harald Alvestrand15ad4ed2022-02-09 05:52:111407 visibility = [ "*" ] # Known to be used externally
Danil Chapovalov9fdceb82023-11-27 09:57:221408 allow_poison = [ "environment_construction" ]
Harald Alvestrand15ad4ed2022-02-09 05:52:111409 sources = [
1410 "peer_connection_factory.cc",
1411 "peer_connection_factory.h",
1412 ]
1413 deps = [
1414 ":local_audio_source",
Harald Alvestrandd9f68462022-03-10 10:09:511415 ":media_stream_proxy",
1416 ":media_stream_track_proxy",
Harald Alvestrand15ad4ed2022-02-09 05:52:111417 ":peer_connection",
Harald Alvestrandd9f68462022-03-10 10:09:511418 ":peer_connection_factory_proxy",
1419 ":peer_connection_proxy",
Harald Alvestrand15ad4ed2022-02-09 05:52:111420 "../api:audio_options_api",
Harald Alvestrand15ad4ed2022-02-09 05:52:111421 "../api:fec_controller_api",
Jonas Orelande62c2f22022-03-29 09:04:481422 "../api:field_trials_view",
Mirko Bonadeid151cc62022-06-20 06:35:281423 "../api:ice_transport_interface",
Harald Alvestrand15ad4ed2022-02-09 05:52:111424 "../api:libjingle_peerconnection_api",
1425 "../api:media_stream_interface",
1426 "../api:network_state_predictor_api",
1427 "../api:packet_socket_factory",
1428 "../api:rtc_error",
1429 "../api:rtp_parameters",
1430 "../api:scoped_refptr",
1431 "../api:sequence_checker",
Danil Chapovalov7eaa9dc2023-11-27 14:00:211432 "../api/environment",
Danil Chapovalov9fdceb82023-11-27 09:57:221433 "../api/environment:environment_factory",
Harald Alvestrandc24a2182022-02-23 13:44:591434 "../api/metronome",
Harald Alvestrand15ad4ed2022-02-09 05:52:111435 "../api/neteq:neteq_api",
1436 "../api/rtc_event_log:rtc_event_log",
Harald Alvestrand15ad4ed2022-02-09 05:52:111437 "../api/transport:bitrate_settings",
1438 "../api/transport:network_control",
1439 "../api/transport:sctp_transport_factory_interface",
Harald Alvestrand15ad4ed2022-02-09 05:52:111440 "../api/units:data_rate",
1441 "../call:call_interfaces",
1442 "../call:rtp_interfaces",
1443 "../call:rtp_sender",
Harald Alvestrandfb4ad292024-02-28 11:01:251444 "../media:media_engine",
Harald Alvestrand8bb54c12024-02-06 15:24:031445 "../p2p:basic_packet_socket_factory",
Harald Alvestrand3bddaed2024-02-06 22:54:251446 "../p2p:basic_port_allocator",
Harald Alvestrand9a953b22024-01-26 07:11:501447 "../p2p:connection",
Harald Alvestrand8bb54c12024-02-06 15:24:031448 "../p2p:default_ice_transport_factory",
Harald Alvestrand3bddaed2024-02-06 22:54:251449 "../p2p:port_allocator",
Harald Alvestrand15ad4ed2022-02-09 05:52:111450 "../p2p:rtc_p2p",
1451 "../pc:audio_track",
1452 "../pc:connection_context",
Danil Chapovalovfe66dda2023-12-04 11:05:381453 "../pc:media_factory",
Harald Alvestrand15ad4ed2022-02-09 05:52:111454 "../pc:media_stream",
Harald Alvestrand15ad4ed2022-02-09 05:52:111455 "../pc:rtp_parameters_conversion",
1456 "../pc:session_description",
1457 "../pc:video_track",
1458 "../rtc_base:checks",
1459 "../rtc_base:logging",
1460 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:091461 "../rtc_base:rtc_certificate_generator",
Harald Alvestrand15ad4ed2022-02-09 05:52:111462 "../rtc_base:safe_conversions",
1463 "../rtc_base:threading",
1464 "../rtc_base/experiments:field_trial_parser",
1465 "../rtc_base/system:file_wrapper",
Florent Castelli99c519b2024-05-23 11:21:531466 "//third_party/abseil-cpp/absl/strings",
1467 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrand15ad4ed2022-02-09 05:52:111468 ]
Harald Alvestrand15ad4ed2022-02-09 05:52:111469}
Harald Alvestrand48e1b292022-01-31 10:58:511470
Harald Alvestrand1090e442020-10-05 07:01:091471rtc_library("peer_connection_message_handler") {
Harald Alvestrande47493b2022-02-15 12:45:021472 visibility = [ ":*" ]
Harald Alvestrand1090e442020-10-05 07:01:091473 sources = [
1474 "peer_connection_message_handler.cc",
1475 "peer_connection_message_handler.h",
1476 ]
1477 deps = [
Henrik Boströmf7859892022-07-04 12:36:371478 ":legacy_stats_collector_interface",
Harald Alvestrand1090e442020-10-05 07:01:091479 "../api:libjingle_peerconnection_api",
1480 "../api:media_stream_interface",
1481 "../api:rtc_error",
Harald Alvestrand5761e7b2021-01-29 14:45:081482 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:241483 "../api:sequence_checker",
Danil Chapovalov5d37ba22022-08-17 12:58:401484 "../api/task_queue",
1485 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrand5761e7b2021-01-29 14:45:081486 "../rtc_base:checks",
Harald Alvestrand1090e442020-10-05 07:01:091487 ]
1488}
1489
Harald Alvestrand44d0dff2020-10-09 05:43:531490rtc_library("usage_pattern") {
Harald Alvestrande47493b2022-02-15 12:45:021491 visibility = [ ":*" ]
Harald Alvestrand44d0dff2020-10-09 05:43:531492 sources = [
1493 "usage_pattern.cc",
1494 "usage_pattern.h",
1495 ]
1496 deps = [
1497 "../api:libjingle_peerconnection_api",
1498 "../rtc_base:logging",
1499 "../system_wrappers:metrics",
1500 ]
1501}
1502
Harald Alvestrandbb02db22020-10-08 16:35:181503rtc_library("rtp_transceiver") {
Harald Alvestrande47493b2022-02-15 12:45:021504 visibility = [ ":*" ]
Harald Alvestrandbb02db22020-10-08 16:35:181505 sources = [
1506 "rtp_transceiver.cc",
1507 "rtp_transceiver.h",
1508 ]
1509 deps = [
Harald Alvestrand8f429922022-05-04 10:32:301510 ":channel",
Harald Alvestrandc5b9c952022-03-14 07:16:401511 ":channel_interface",
Harald Alvestrandc3fa7c32022-05-22 10:57:011512 ":connection_context",
Markus Handella1b82012021-05-26 16:56:301513 ":proxy",
Harald Alvestrand7ee138e2022-03-10 13:21:281514 ":rtp_media_utils",
Harald Alvestrandbb02db22020-10-08 16:35:181515 ":rtp_parameters_conversion",
1516 ":rtp_receiver",
Harald Alvestrandd9f68462022-03-10 10:09:511517 ":rtp_receiver_proxy",
Harald Alvestrandbb02db22020-10-08 16:35:181518 ":rtp_sender",
Harald Alvestrandd9f68462022-03-10 10:09:511519 ":rtp_sender_proxy",
Harald Alvestrand2ea4d372022-03-10 22:15:421520 ":rtp_transport_internal",
Harald Alvestrandc0a95862021-06-09 09:33:561521 ":session_description",
Harald Alvestrand5761e7b2021-01-29 14:45:081522 "../api:array_view",
Harald Alvestrand8f429922022-05-04 10:32:301523 "../api:audio_options_api",
Harald Alvestrand13897e62023-05-22 12:49:051524 "../api:field_trials_view",
Harald Alvestrandbb02db22020-10-08 16:35:181525 "../api:libjingle_peerconnection_api",
Harald Alvestrand5761e7b2021-01-29 14:45:081526 "../api:rtc_error",
Harald Alvestrandbb02db22020-10-08 16:35:181527 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:161528 "../api:rtp_sender_interface",
Harald Alvestrand5761e7b2021-01-29 14:45:081529 "../api:rtp_transceiver_direction",
1530 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:241531 "../api:sequence_checker",
Harald Alvestrand13897e62023-05-22 12:49:051532 "../api/audio_codecs:audio_codecs_api",
1533 "../api/crypto:options",
Harald Alvestrand5761e7b2021-01-29 14:45:081534 "../api/task_queue",
Artem Titovc374d112022-06-16 19:27:451535 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrand8f429922022-05-04 10:32:301536 "../api/video:video_bitrate_allocator_factory",
Harald Alvestrand6431a642024-06-04 21:29:141537 "../api/video_codecs:scalability_mode",
Harald Alvestrand794d5992022-12-16 09:54:571538 "../media:codec",
1539 "../media:media_channel",
Harald Alvestrand13897e62023-05-22 12:49:051540 "../media:media_channel_impl",
Harald Alvestrand794d5992022-12-16 09:54:571541 "../media:media_constants",
Harald Alvestrandfb4ad292024-02-28 11:01:251542 "../media:media_engine",
Harald Alvestrand13897e62023-05-22 12:49:051543 "../media:rtc_media_config",
Harald Alvestrandbb02db22020-10-08 16:35:181544 "../rtc_base:checks",
1545 "../rtc_base:logging",
Harald Alvestrand5761e7b2021-01-29 14:45:081546 "../rtc_base:macromagic",
Harald Alvestrand5761e7b2021-01-29 14:45:081547 "../rtc_base:threading",
Harald Alvestrand5761e7b2021-01-29 14:45:081548 "../rtc_base/third_party/sigslot",
Harald Alvestrandbb02db22020-10-08 16:35:181549 "//third_party/abseil-cpp/absl/algorithm:container",
Oleh Prypin752436f2022-06-23 22:51:281550 "//third_party/abseil-cpp/absl/memory",
Florent Castelli99c519b2024-05-23 11:21:531551 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrandbb02db22020-10-08 16:35:181552 "//third_party/abseil-cpp/absl/types:optional",
1553 ]
Harald Alvestrand2d058782020-10-08 12:01:061554}
1555
Harald Alvestrande15fb152020-10-19 13:28:051556rtc_library("rtp_transmission_manager") {
Harald Alvestrande47493b2022-02-15 12:45:021557 visibility = [ ":*" ]
Harald Alvestrande15fb152020-10-19 13:28:051558 sources = [
1559 "rtp_transmission_manager.cc",
1560 "rtp_transmission_manager.h",
1561 ]
1562 deps = [
1563 ":audio_rtp_receiver",
Harald Alvestrand8e1ae8c2022-03-17 13:13:511564 ":channel",
Harald Alvestrand25adc8e2022-05-03 13:44:341565 ":channel_interface",
Henrik Boströmf7859892022-07-04 12:36:371566 ":legacy_stats_collector_interface",
Harald Alvestrande15fb152020-10-19 13:28:051567 ":rtp_receiver",
Harald Alvestrandd9f68462022-03-10 10:09:511568 ":rtp_receiver_proxy",
Harald Alvestrande15fb152020-10-19 13:28:051569 ":rtp_sender",
Harald Alvestrandd9f68462022-03-10 10:09:511570 ":rtp_sender_proxy",
Harald Alvestrande15fb152020-10-19 13:28:051571 ":rtp_transceiver",
Harald Alvestrande15fb152020-10-19 13:28:051572 ":transceiver_list",
1573 ":usage_pattern",
1574 ":video_rtp_receiver",
1575 "../api:libjingle_peerconnection_api",
1576 "../api:media_stream_interface",
1577 "../api:rtc_error",
1578 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:161579 "../api:rtp_sender_interface",
Harald Alvestrande15fb152020-10-19 13:28:051580 "../api:rtp_transceiver_direction",
1581 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:241582 "../api:sequence_checker",
Harald Alvestrand794d5992022-12-16 09:54:571583 "../media:media_channel",
Harald Alvestrande15fb152020-10-19 13:28:051584 "../rtc_base:checks",
Philipp Hancke41586782024-06-06 14:31:071585 "../rtc_base:crypto_random",
Florent Castelli0af55ba2022-04-04 13:06:301586 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:461587 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:091588 "../rtc_base:ssl",
Mirko Bonadeie5f4c6b2021-01-15 09:41:011589 "../rtc_base:threading",
Harald Alvestrand5761e7b2021-01-29 14:45:081590 "../rtc_base:weak_ptr",
Harald Alvestrande15fb152020-10-19 13:28:051591 "//third_party/abseil-cpp/absl/types:optional",
1592 ]
1593}
1594
1595rtc_library("transceiver_list") {
Harald Alvestrande47493b2022-02-15 12:45:021596 visibility = [ ":*" ]
Harald Alvestrande15fb152020-10-19 13:28:051597 sources = [
1598 "transceiver_list.cc",
1599 "transceiver_list.h",
1600 ]
Harald Alvestrand5761e7b2021-01-29 14:45:081601 deps = [
1602 ":rtp_transceiver",
1603 "../api:libjingle_peerconnection_api",
1604 "../api:rtc_error",
1605 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:161606 "../api:rtp_sender_interface",
Harald Alvestrand5761e7b2021-01-29 14:45:081607 "../api:scoped_refptr",
Harald Alvestrand85466662021-04-19 21:21:361608 "../api:sequence_checker",
Harald Alvestrand5761e7b2021-01-29 14:45:081609 "../rtc_base:checks",
Harald Alvestrand85466662021-04-19 21:21:361610 "../rtc_base:macromagic",
1611 "../rtc_base/system:no_unique_address",
Florent Castelli99c519b2024-05-23 11:21:531612 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand5761e7b2021-01-29 14:45:081613 ]
Harald Alvestrande15fb152020-10-19 13:28:051614}
1615
Harald Alvestrand445e6b02020-09-29 14:21:471616rtc_library("rtp_receiver") {
Harald Alvestrande47493b2022-02-15 12:45:021617 visibility = [ ":*" ]
Harald Alvestrand445e6b02020-09-29 14:21:471618 sources = [
1619 "rtp_receiver.cc",
1620 "rtp_receiver.h",
1621 ]
1622 deps = [
1623 ":media_stream",
Harald Alvestrandd9f68462022-03-10 10:09:511624 ":media_stream_proxy",
Harald Alvestrand445e6b02020-09-29 14:21:471625 ":video_track_source",
Mirko Bonadeid151cc62022-06-20 06:35:281626 "../api:dtls_transport_interface",
Harald Alvestrand445e6b02020-09-29 14:21:471627 "../api:libjingle_peerconnection_api",
1628 "../api:media_stream_interface",
1629 "../api:rtp_parameters",
1630 "../api:scoped_refptr",
1631 "../api/crypto:frame_decryptor_interface",
1632 "../api/video:video_frame",
Harald Alvestrand794d5992022-12-16 09:54:571633 "../media:media_channel",
Harald Alvestrandafaae4e2024-03-12 12:06:161634 "../media:video_broadcaster",
Harald Alvestrand445e6b02020-09-29 14:21:471635 "../rtc_base:checks",
1636 "../rtc_base:logging",
Mirko Bonadeie5f4c6b2021-01-15 09:41:011637 "../rtc_base:threading",
Harald Alvestrand445e6b02020-09-29 14:21:471638 "//third_party/abseil-cpp/absl/types:optional",
1639 ]
1640}
1641
Harald Alvestrand7165f482020-10-12 07:37:311642rtc_library("audio_rtp_receiver") {
Harald Alvestrande47493b2022-02-15 12:45:021643 visibility = [ ":*" ]
Harald Alvestrand7165f482020-10-12 07:37:311644 sources = [
1645 "audio_rtp_receiver.cc",
1646 "audio_rtp_receiver.h",
1647 ]
1648 deps = [
1649 ":audio_track",
1650 ":jitter_buffer_delay",
Harald Alvestrand7165f482020-10-12 07:37:311651 ":media_stream",
Harald Alvestrandd9f68462022-03-10 10:09:511652 ":media_stream_track_proxy",
Harald Alvestrand7165f482020-10-12 07:37:311653 ":remote_audio_source",
1654 ":rtp_receiver",
Mirko Bonadeid151cc62022-06-20 06:35:281655 "../api:dtls_transport_interface",
Harald Alvestrand5761e7b2021-01-29 14:45:081656 "../api:frame_transformer_interface",
Harald Alvestrand7165f482020-10-12 07:37:311657 "../api:libjingle_peerconnection_api",
1658 "../api:media_stream_interface",
1659 "../api:rtp_parameters",
1660 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:241661 "../api:sequence_checker",
Harald Alvestrand7165f482020-10-12 07:37:311662 "../api/crypto:frame_decryptor_interface",
Artem Titovc374d112022-06-16 19:27:451663 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrand5761e7b2021-01-29 14:45:081664 "../api/transport/rtp:rtp_source",
Harald Alvestrand794d5992022-12-16 09:54:571665 "../media:media_channel",
Harald Alvestrand7165f482020-10-12 07:37:311666 "../rtc_base:checks",
Florent Castelli4467ad72022-04-04 13:18:461667 "../rtc_base:macromagic",
Mirko Bonadeie5f4c6b2021-01-15 09:41:011668 "../rtc_base:threading",
Tommi4ccdf9322021-05-17 12:50:101669 "../rtc_base/system:no_unique_address",
Harald Alvestrand7165f482020-10-12 07:37:311670 "//third_party/abseil-cpp/absl/types:optional",
1671 ]
1672}
1673
1674rtc_library("video_rtp_receiver") {
Harald Alvestrande47493b2022-02-15 12:45:021675 visibility = [ ":*" ]
Harald Alvestrand7165f482020-10-12 07:37:311676 sources = [
1677 "video_rtp_receiver.cc",
1678 "video_rtp_receiver.h",
1679 ]
1680 deps = [
1681 ":jitter_buffer_delay",
Harald Alvestrand7165f482020-10-12 07:37:311682 ":media_stream",
Harald Alvestrandd9f68462022-03-10 10:09:511683 ":media_stream_track_proxy",
Harald Alvestrand7165f482020-10-12 07:37:311684 ":rtp_receiver",
1685 ":video_rtp_track_source",
1686 ":video_track",
Mirko Bonadeid151cc62022-06-20 06:35:281687 "../api:dtls_transport_interface",
Harald Alvestrand7165f482020-10-12 07:37:311688 "../api:frame_transformer_interface",
1689 "../api:libjingle_peerconnection_api",
1690 "../api:media_stream_interface",
1691 "../api:rtp_parameters",
1692 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:241693 "../api:sequence_checker",
Harald Alvestrand7165f482020-10-12 07:37:311694 "../api/crypto:frame_decryptor_interface",
Harald Alvestrand5761e7b2021-01-29 14:45:081695 "../api/transport/rtp:rtp_source",
1696 "../api/video:recordable_encoded_frame",
Harald Alvestrand7165f482020-10-12 07:37:311697 "../api/video:video_frame",
Harald Alvestrand794d5992022-12-16 09:54:571698 "../media:media_channel",
Harald Alvestrand7165f482020-10-12 07:37:311699 "../rtc_base:checks",
Florent Castelli0af55ba2022-04-04 13:06:301700 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:461701 "../rtc_base:macromagic",
Mirko Bonadeie5f4c6b2021-01-15 09:41:011702 "../rtc_base:threading",
Tommi4ccdf9322021-05-17 12:50:101703 "../rtc_base/system:no_unique_address",
Harald Alvestrand7165f482020-10-12 07:37:311704 "//third_party/abseil-cpp/absl/types:optional",
1705 ]
1706}
1707
1708rtc_library("video_rtp_track_source") {
Harald Alvestrande47493b2022-02-15 12:45:021709 visibility = [ ":*" ]
Harald Alvestrand7165f482020-10-12 07:37:311710 sources = [
1711 "video_rtp_track_source.cc",
1712 "video_rtp_track_source.h",
1713 ]
1714 deps = [
1715 ":video_track_source",
Artem Titovd15a5752021-02-10 13:31:241716 "../api:sequence_checker",
Harald Alvestrand5761e7b2021-01-29 14:45:081717 "../api/video:recordable_encoded_frame",
1718 "../api/video:video_frame",
Harald Alvestrandafaae4e2024-03-12 12:06:161719 "../media:video_broadcaster",
Harald Alvestrand5761e7b2021-01-29 14:45:081720 "../rtc_base:checks",
Florent Castelli4467ad72022-04-04 13:18:461721 "../rtc_base:macromagic",
Harald Alvestrand7165f482020-10-12 07:37:311722 "../rtc_base/synchronization:mutex",
Mirko Bonadei20e4c802020-11-23 10:07:421723 "../rtc_base/system:no_unique_address",
Harald Alvestrand7165f482020-10-12 07:37:311724 ]
1725}
1726
1727rtc_library("audio_track") {
Harald Alvestrande47493b2022-02-15 12:45:021728 visibility = [ ":*" ]
Harald Alvestrand7165f482020-10-12 07:37:311729 sources = [
1730 "audio_track.cc",
1731 "audio_track.h",
1732 ]
1733 deps = [
1734 "../api:media_stream_interface",
1735 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:241736 "../api:sequence_checker",
Harald Alvestrand7165f482020-10-12 07:37:311737 "../rtc_base:checks",
Tomas Gunnarssonfe328ca2022-02-16 19:02:121738 "../rtc_base/system:no_unique_address",
Harald Alvestrand7165f482020-10-12 07:37:311739 ]
1740}
1741
1742rtc_library("video_track") {
Harald Alvestrande47493b2022-02-15 12:45:021743 visibility = [ ":*" ]
Harald Alvestrand7165f482020-10-12 07:37:311744 sources = [
1745 "video_track.cc",
1746 "video_track.h",
1747 ]
1748 deps = [
Harald Alvestrande5a73f52022-03-28 12:06:341749 ":video_track_source_proxy",
Harald Alvestrand7165f482020-10-12 07:37:311750 "../api:media_stream_interface",
1751 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:241752 "../api:sequence_checker",
Harald Alvestrand7165f482020-10-12 07:37:311753 "../api/video:video_frame",
Harald Alvestrandfb4ad292024-02-28 11:01:251754 "../media:video_source_base",
Harald Alvestrand7165f482020-10-12 07:37:311755 "../rtc_base:checks",
Florent Castelli4467ad72022-04-04 13:18:461756 "../rtc_base:macromagic",
Mirko Bonadeie5f4c6b2021-01-15 09:41:011757 "../rtc_base:threading",
Tomas Gunnarssonfe328ca2022-02-16 19:02:121758 "../rtc_base/system:no_unique_address",
Florent Castelli99c519b2024-05-23 11:21:531759 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand7165f482020-10-12 07:37:311760 ]
1761}
1762
Harald Alvestrandf01bd6c2020-10-23 13:30:461763rtc_source_set("sdp_state_provider") {
Harald Alvestrande47493b2022-02-15 12:45:021764 visibility = [ ":*" ]
Harald Alvestrandf01bd6c2020-10-23 13:30:461765 sources = [ "sdp_state_provider.h" ]
Harald Alvestrand7b260372022-03-30 07:33:521766 deps = [ "../api:libjingle_peerconnection_api" ]
Harald Alvestrandf01bd6c2020-10-23 13:30:461767}
1768
Harald Alvestrand7165f482020-10-12 07:37:311769rtc_library("jitter_buffer_delay") {
Harald Alvestrande47493b2022-02-15 12:45:021770 visibility = [ ":*" ]
Harald Alvestrand7165f482020-10-12 07:37:311771 sources = [
1772 "jitter_buffer_delay.cc",
1773 "jitter_buffer_delay.h",
1774 ]
1775 deps = [
Artem Titovd15a5752021-02-10 13:31:241776 "../api:sequence_checker",
Harald Alvestrand7165f482020-10-12 07:37:311777 "../rtc_base:checks",
Harald Alvestrandc24a2182022-02-23 13:44:591778 "../rtc_base:macromagic",
Tommi4ccdf9322021-05-17 12:50:101779 "../rtc_base:safe_conversions",
Harald Alvestrand7165f482020-10-12 07:37:311780 "../rtc_base:safe_minmax",
Tommi4ccdf9322021-05-17 12:50:101781 "../rtc_base/system:no_unique_address",
Florent Castelli99c519b2024-05-23 11:21:531782 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand7165f482020-10-12 07:37:311783 ]
Harald Alvestrand7165f482020-10-12 07:37:311784}
1785
1786rtc_library("remote_audio_source") {
Harald Alvestrande47493b2022-02-15 12:45:021787 visibility = [ ":*" ]
Harald Alvestrand7165f482020-10-12 07:37:311788 sources = [
1789 "remote_audio_source.cc",
1790 "remote_audio_source.h",
1791 ]
1792 deps = [
Harald Alvestrand8e1ae8c2022-03-17 13:13:511793 ":channel",
Harald Alvestrand7165f482020-10-12 07:37:311794 "../api:call_api",
1795 "../api:media_stream_interface",
1796 "../api:scoped_refptr",
Artem Titovd15a5752021-02-10 13:31:241797 "../api:sequence_checker",
Danil Chapovalovc6c346d2022-08-22 08:22:401798 "../api/task_queue",
Harald Alvestrand794d5992022-12-16 09:54:571799 "../media:media_channel",
Harald Alvestrand7165f482020-10-12 07:37:311800 "../rtc_base:checks",
Olga Sharonova2d0ba282022-09-27 13:22:341801 "../rtc_base:event_tracer",
Harald Alvestrand7165f482020-10-12 07:37:311802 "../rtc_base:logging",
Harald Alvestrand7165f482020-10-12 07:37:311803 "../rtc_base:safe_conversions",
1804 "../rtc_base:stringutils",
1805 "../rtc_base/synchronization:mutex",
Harald Alvestrand7165f482020-10-12 07:37:311806 "//third_party/abseil-cpp/absl/algorithm:container",
Harald Alvestrand7165f482020-10-12 07:37:311807 "//third_party/abseil-cpp/absl/types:optional",
1808 ]
1809}
1810
Harald Alvestrand445e6b02020-09-29 14:21:471811rtc_library("rtp_sender") {
Harald Alvestrande47493b2022-02-15 12:45:021812 visibility = [ ":*" ]
Harald Alvestrand445e6b02020-09-29 14:21:471813 sources = [
1814 "rtp_sender.cc",
1815 "rtp_sender.h",
1816 ]
1817 deps = [
1818 ":dtmf_sender",
Henrik Boströmf7859892022-07-04 12:36:371819 ":legacy_stats_collector_interface",
Harald Alvestrand445e6b02020-09-29 14:21:471820 "../api:audio_options_api",
Mirko Bonadeid151cc62022-06-20 06:35:281821 "../api:dtls_transport_interface",
Florent Castelliacabb362022-10-18 15:05:161822 "../api:dtmf_sender_interface",
Harald Alvestrand5761e7b2021-01-29 14:45:081823 "../api:frame_transformer_interface",
Harald Alvestrand445e6b02020-09-29 14:21:471824 "../api:libjingle_peerconnection_api",
1825 "../api:media_stream_interface",
Harald Alvestrand5761e7b2021-01-29 14:45:081826 "../api:priority",
1827 "../api:rtc_error",
1828 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:161829 "../api:rtp_sender_interface",
Harald Alvestrand5761e7b2021-01-29 14:45:081830 "../api:scoped_refptr",
Florent Castelli8d4e9fb2022-04-04 15:18:211831 "../api:sequence_checker",
Harald Alvestrand5761e7b2021-01-29 14:45:081832 "../api/crypto:frame_encryptor_interface",
Harald Alvestrandfb4ad292024-02-28 11:01:251833 "../media:audio_source",
Harald Alvestrand794d5992022-12-16 09:54:571834 "../media:media_channel",
Harald Alvestrandfb4ad292024-02-28 11:01:251835 "../media:media_engine",
Harald Alvestrand445e6b02020-09-29 14:21:471836 "../rtc_base:checks",
Philipp Hancke41586782024-06-06 14:31:071837 "../rtc_base:crypto_random",
Florent Castellia30aef32022-04-19 15:47:131838 "../rtc_base:event_tracer",
Florent Castelli0af55ba2022-04-04 13:06:301839 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:461840 "../rtc_base:macromagic",
Harald Alvestrand5761e7b2021-01-29 14:45:081841 "../rtc_base:threading",
Harald Alvestrand445e6b02020-09-29 14:21:471842 "../rtc_base/synchronization:mutex",
Harald Alvestrand5761e7b2021-01-29 14:45:081843 "../rtc_base/third_party/sigslot",
Harald Alvestrand445e6b02020-09-29 14:21:471844 "//third_party/abseil-cpp/absl/algorithm:container",
Harald Alvestrand445e6b02020-09-29 14:21:471845 "//third_party/abseil-cpp/absl/types:optional",
1846 ]
1847}
1848
Harald Alvestrandbb02db22020-10-08 16:35:181849rtc_library("rtp_parameters_conversion") {
Harald Alvestrande47493b2022-02-15 12:45:021850 visibility = [ ":*" ]
Harald Alvestrandbb02db22020-10-08 16:35:181851 sources = [
1852 "rtp_parameters_conversion.cc",
1853 "rtp_parameters_conversion.h",
1854 ]
1855 deps = [
Harald Alvestrandc0a95862021-06-09 09:33:561856 ":session_description",
Harald Alvestrandbb02db22020-10-08 16:35:181857 "../api:array_view",
1858 "../api:libjingle_peerconnection_api",
1859 "../api:rtc_error",
1860 "../api:rtp_parameters",
Harald Alvestrand794d5992022-12-16 09:54:571861 "../media:codec",
1862 "../media:media_constants",
Harald Alvestrand794d5992022-12-16 09:54:571863 "../media:rtp_utils",
1864 "../media:stream_params",
Harald Alvestrandbb02db22020-10-08 16:35:181865 "../rtc_base:checks",
Florent Castelli0af55ba2022-04-04 13:06:301866 "../rtc_base:logging",
Florent Castelli57aa81b2022-04-04 15:14:021867 "../rtc_base:stringutils",
Harald Alvestrandbb02db22020-10-08 16:35:181868 "//third_party/abseil-cpp/absl/types:optional",
1869 ]
1870}
1871
Harald Alvestrand445e6b02020-09-29 14:21:471872rtc_library("dtmf_sender") {
Harald Alvestrande47493b2022-02-15 12:45:021873 visibility = [ ":*" ]
Harald Alvestrand445e6b02020-09-29 14:21:471874 sources = [
1875 "dtmf_sender.cc",
1876 "dtmf_sender.h",
1877 ]
1878 deps = [
Markus Handella1b82012021-05-26 16:56:301879 ":proxy",
Florent Castelliacabb362022-10-18 15:05:161880 "../api:dtmf_sender_interface",
Harald Alvestrand445e6b02020-09-29 14:21:471881 "../api:libjingle_peerconnection_api",
Harald Alvestrand5761e7b2021-01-29 14:45:081882 "../api:scoped_refptr",
Florent Castelli8d4e9fb2022-04-04 15:18:211883 "../api:sequence_checker",
Danil Chapovalova30439b2022-07-07 08:08:491884 "../api/task_queue",
Artem Titovc374d112022-06-16 19:27:451885 "../api/task_queue:pending_task_safety_flag",
Danil Chapovalova30439b2022-07-07 08:08:491886 "../api/units:time_delta",
Harald Alvestrand445e6b02020-09-29 14:21:471887 "../rtc_base:checks",
Florent Castelli0af55ba2022-04-04 13:06:301888 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:461889 "../rtc_base:macromagic",
Florent Castellif86f6f92022-04-05 00:54:121890 "../rtc_base:refcount",
Harald Alvestrand5761e7b2021-01-29 14:45:081891 "../rtc_base/third_party/sigslot",
Harald Alvestrand445e6b02020-09-29 14:21:471892 ]
Harald Alvestrand445e6b02020-09-29 14:21:471893}
1894
1895rtc_library("media_stream") {
Harald Alvestrande47493b2022-02-15 12:45:021896 visibility = [ ":*" ]
Harald Alvestrand445e6b02020-09-29 14:21:471897 sources = [
1898 "media_stream.cc",
1899 "media_stream.h",
1900 ]
1901 deps = [
1902 "../api:libjingle_peerconnection_api",
1903 "../api:media_stream_interface",
1904 "../api:scoped_refptr",
1905 "../rtc_base:checks",
Harald Alvestrand445e6b02020-09-29 14:21:471906 ]
Harald Alvestrand445e6b02020-09-29 14:21:471907}
1908
1909rtc_library("video_track_source") {
1910 sources = [
1911 "video_track_source.cc",
1912 "video_track_source.h",
1913 ]
1914 deps = [
1915 "../api:media_stream_interface",
Artem Titovd15a5752021-02-10 13:31:241916 "../api:sequence_checker",
Harald Alvestrand5761e7b2021-01-29 14:45:081917 "../api/video:recordable_encoded_frame",
Harald Alvestrand445e6b02020-09-29 14:21:471918 "../api/video:video_frame",
Harald Alvestrand794d5992022-12-16 09:54:571919 "../media:media_channel",
Harald Alvestrand445e6b02020-09-29 14:21:471920 "../rtc_base:checks",
Florent Castelli4467ad72022-04-04 13:18:461921 "../rtc_base:macromagic",
Tommi20d8d912022-02-08 20:12:151922 "../rtc_base/system:no_unique_address",
Harald Alvestrand445e6b02020-09-29 14:21:471923 "../rtc_base/system:rtc_export",
Florent Castelli99c519b2024-05-23 11:21:531924 "//third_party/abseil-cpp/absl/types:optional",
Harald Alvestrand445e6b02020-09-29 14:21:471925 ]
1926}
1927
Henrik Boströmf7859892022-07-04 12:36:371928rtc_source_set("legacy_stats_collector_interface") {
Harald Alvestrande47493b2022-02-15 12:45:021929 visibility = [ ":*" ]
Henrik Boströmf7859892022-07-04 12:36:371930 sources = [ "legacy_stats_collector_interface.h" ]
Harald Alvestrand1090e442020-10-05 07:01:091931 deps = [
1932 "../api:libjingle_peerconnection_api",
1933 "../api:media_stream_interface",
1934 ]
Harald Alvestrand445e6b02020-09-29 14:21:471935}
1936
Harald Alvestrand8f59f542023-12-15 14:39:181937# This target contains the libraries that are required in order to get an
1938# usable peerconnection-using binary.
zhihuang38ede132017-06-15 19:52:321939rtc_source_set("libjingle_peerconnection") {
Harald Alvestrande79f85c2022-02-07 08:39:521940 # TODO(bugs.webrtc.org/13661): Reduce visibility if possible
Harald Alvestrande47493b2022-02-15 12:45:021941 visibility = [ "*" ] # Used by Chrome and others
Danil Chapovalov9fdceb82023-11-27 09:57:221942 allow_poison = [ "environment_construction" ]
Harald Alvestrande47493b2022-02-15 12:45:021943
Mirko Bonadeie51f7852017-12-06 10:23:191944 deps = [
Harald Alvestrand8f59f542023-12-15 14:39:181945 ":jsep_session_description",
1946 ":peer_connection_factory",
1947 ":rtc_stats_collector",
zhihuang38ede132017-06-15 19:52:321948 "../api:libjingle_peerconnection_api",
Harald Alvestrand8f59f542023-12-15 14:39:181949 "../stats",
zhihuang38ede132017-06-15 19:52:321950 ]
ossu7bb87ee2017-01-23 12:56:251951}
1952
Andrey Logvine7c79fd2021-02-01 09:56:371953if (rtc_include_tests && !build_with_chromium) {
ehmaldonado38a21322016-09-02 11:10:341954 rtc_test("rtc_pc_unittests") {
kjellander142f8c52016-06-13 07:08:241955 testonly = true
1956
1957 sources = [
Tony Herree2044662021-11-29 10:33:421958 "audio_rtp_receiver_unittest.cc",
kjellander142f8c52016-06-13 07:08:241959 "channel_unittest.cc",
Steve Anton10542f22019-01-11 17:11:001960 "dtls_srtp_transport_unittest.cc",
Benjamin Wright4f6ef182019-02-27 02:20:051961 "dtls_transport_unittest.cc",
Harald Alvestrand98462622019-01-30 13:57:031962 "ice_transport_unittest.cc",
Steve Anton10542f22019-01-11 17:11:001963 "jsep_transport_controller_unittest.cc",
1964 "jsep_transport_unittest.cc",
1965 "media_session_unittest.cc",
1966 "rtcp_mux_filter_unittest.cc",
1967 "rtp_transport_unittest.cc",
Harald Alvestrandc85328f2019-02-28 06:51:001968 "sctp_transport_unittest.cc",
Steve Anton10542f22019-01-11 17:11:001969 "session_description_unittest.cc",
Steve Anton10542f22019-01-11 17:11:001970 "srtp_session_unittest.cc",
1971 "srtp_transport_unittest.cc",
1972 "test/rtp_transport_test_util.h",
1973 "test/srtp_test_util.h",
Johannes Kron746dd0d2019-06-20 13:37:521974 "used_ids_unittest.cc",
Markus Handell9c27ed22019-12-04 11:57:581975 "video_rtp_receiver_unittest.cc",
kjellander142f8c52016-06-13 07:08:241976 ]
1977
1978 include_dirs = [ "//third_party/libsrtp/srtp" ]
1979
kjellander142f8c52016-06-13 07:08:241980 if (is_win) {
1981 libs = [ "strmiids.lib" ]
1982 }
1983
1984 deps = [
Tony Herree2044662021-11-29 10:33:421985 ":audio_rtp_receiver",
Harald Alvestrand8e1ae8c2022-03-17 13:13:511986 ":channel",
1987 ":dtls_srtp_transport",
Harald Alvestrandc5b9c952022-03-14 07:16:401988 ":dtls_transport",
Harald Alvestrand7ee138e2022-03-10 13:21:281989 ":ice_transport",
Harald Alvestrand8e1ae8c2022-03-17 13:13:511990 ":jsep_transport",
Harald Alvestrande5a73f52022-03-28 12:06:341991 ":jsep_transport_controller",
ossu7bb87ee2017-01-23 12:56:251992 ":libjingle_peerconnection",
Harald Alvestrandc24a2182022-02-23 13:44:591993 ":media_protocol_names",
Harald Alvestrande5a73f52022-03-28 12:06:341994 ":media_session",
Zhi Huangb5261582017-09-29 17:51:431995 ":pc_test_utils",
kjellander142f8c52016-06-13 07:08:241996 ":rtc_pc",
Harald Alvestrand7ee138e2022-03-10 13:21:281997 ":rtcp_mux_filter",
1998 ":rtp_media_utils",
Tomas Lundqvista26d6ed2023-10-27 12:25:571999 ":rtp_parameters_conversion",
Harald Alvestrand4bac0bb2022-03-15 13:21:592000 ":rtp_transport",
Harald Alvestrand2ea4d372022-03-10 22:15:422001 ":rtp_transport_internal",
Harald Alvestrand7e539922022-03-17 06:26:032002 ":sctp_transport",
Harald Alvestrandc0a95862021-06-09 09:33:562003 ":session_description",
Harald Alvestrand4bac0bb2022-03-15 13:21:592004 ":srtp_session",
Harald Alvestrand7e539922022-03-17 06:26:032005 ":srtp_transport",
Harald Alvestrandc5b9c952022-03-14 07:16:402006 ":used_ids",
Harald Alvestrand7165f482020-10-12 07:37:312007 ":video_rtp_receiver",
kwiberg529662a2017-09-04 12:43:172008 "../api:array_view",
Yves Gerey3e707812018-11-28 15:47:492009 "../api:audio_options_api",
Mirko Bonadeid151cc62022-06-20 06:35:282010 "../api:candidate",
2011 "../api:dtls_transport_interface",
Harald Alvestrand98462622019-01-30 13:57:032012 "../api:ice_transport_factory",
Mirko Bonadeie51f7852017-12-06 10:23:192013 "../api:libjingle_peerconnection_api",
Niels Möller105711e2022-06-14 13:48:262014 "../api:make_ref_counted",
2015 "../api:make_ref_counted",
Florent Castelli0012bfa2024-07-26 16:16:412016 "../api:priority",
Mirko Bonadeifcfeefe2019-09-10 08:51:232017 "../api:rtc_error",
Niels Mölleref1052a2019-03-20 07:40:232018 "../api:rtp_headers",
Niels Möller6dcd4dc2019-08-26 08:45:282019 "../api:rtp_parameters",
Harald Alvestrandc24a2182022-02-23 13:44:592020 "../api:scoped_refptr",
Florent Castelli8d4e9fb2022-04-04 15:18:212021 "../api:sequence_checker",
Victor Boiviecd54fd82024-02-28 11:16:152022 "../api/environment:environment_factory",
Artem Titovc374d112022-06-16 19:27:452023 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrandc24a2182022-02-23 13:44:592024 "../api/task_queue:task_queue",
2025 "../api/transport:datagram_transport_interface",
2026 "../api/transport:enums",
Jonas Orelanda3aa9bd2019-04-17 05:38:402027 "../api/video:builtin_video_bitrate_allocator_factory",
Harald Alvestrandc24a2182022-02-23 13:44:592028 "../api/video:recordable_encoded_frame",
Markus Handell9c27ed22019-12-04 11:57:582029 "../api/video/test:mock_recordable_encoded_frame",
Zhi Huang365381f2018-04-13 23:44:342030 "../call:rtp_interfaces",
Yves Gerey3e707812018-11-28 15:47:492031 "../call:rtp_receiver",
Harald Alvestrand794d5992022-12-16 09:54:572032 "../media:codec",
2033 "../media:media_channel",
2034 "../media:media_constants",
2035 "../media:rid_description",
Florent Castellia80c3e52021-04-15 13:02:562036 "../media:rtc_data_sctp_transport_internal",
mbonadei9087d492017-04-25 07:35:352037 "../media:rtc_media_tests_utils",
Zhi Huang365381f2018-04-13 23:44:342038 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestranda310d782024-01-25 12:27:182039 "../p2p:candidate_pair_interface",
Harald Alvestrand8bb54c12024-02-06 15:24:032040 "../p2p:dtls_transport_factory",
2041 "../p2p:dtls_transport_internal",
Piotr (Peter) Slatala4de17832019-01-29 21:35:052042 "../p2p:fake_ice_transport",
Qingsi Wang8af1f742019-04-22 05:08:262043 "../p2p:fake_port_allocator",
Harald Alvestranda310d782024-01-25 12:27:182044 "../p2p:ice_transport_internal",
2045 "../p2p:p2p_constants",
mbonadei7d9a55b2017-06-01 20:01:482046 "../p2p:p2p_test_utils",
Harald Alvestranda310d782024-01-25 12:27:182047 "../p2p:packet_transport_internal",
mbonadei7d9a55b2017-06-01 20:01:482048 "../p2p:rtc_p2p",
Harald Alvestranda310d782024-01-25 12:27:182049 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:032050 "../p2p:transport_info",
Florent Castellia138c6c2023-01-04 11:01:092051 "../rtc_base:async_packet_socket",
Florent Castellif9c59842022-04-19 15:07:232052 "../rtc_base:buffer",
Florent Castellia876a922022-04-19 15:18:362053 "../rtc_base:byte_order",
Patrik Höglunda8005cf2017-12-13 15:05:422054 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:462055 "../rtc_base:copy_on_write_buffer",
Philipp Hancke41586782024-06-06 14:31:072056 "../rtc_base:crypto_random",
Mirko Bonadeie3abb812018-11-23 12:15:082057 "../rtc_base:gunit_helpers",
Florent Castelli0af55ba2022-04-04 13:06:302058 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:462059 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:092060 "../rtc_base:net_helper",
ehmaldonadof6a861a2017-07-19 17:40:472061 "../rtc_base:rtc_base_tests_utils",
Harald Alvestrandc24a2182022-02-23 13:44:592062 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 11:01:092063 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:052064 "../rtc_base:ssl_adapter",
Florent Castelli57aa81b2022-04-04 15:14:022065 "../rtc_base:stringutils",
Danil Chapovalov2aaef452022-08-12 13:55:112066 "../rtc_base:task_queue_for_test",
Mirko Bonadeie5f4c6b2021-01-15 09:41:012067 "../rtc_base:threading",
Florent Castellia138c6c2023-01-04 11:01:092068 "../rtc_base:unique_id_generator",
Harald Alvestrandc24a2182022-02-23 13:44:592069 "../rtc_base/containers:flat_set",
Per Kf4aadf32024-02-27 08:01:152070 "../rtc_base/network:received_packet",
Artem Titove41c4332018-07-25 13:04:282071 "../rtc_base/third_party/sigslot",
Mirko Bonadei17f48782018-09-28 06:51:102072 "../system_wrappers:metrics",
Jonas Orelanded99dae2022-03-09 08:28:102073 "../test:explicit_key_value_config",
Niels Möller65b2d8a2022-05-19 14:06:232074 "../test:run_loop",
Jonas Orelanded99dae2022-03-09 08:28:102075 "../test:scoped_key_value_config",
Niels Möller04a3cc12019-05-21 11:01:582076 "../test:test_main",
zstein398c3fd2017-07-19 20:38:022077 "../test:test_support",
Steve Anton64b626b2019-01-29 01:25:262078 "//third_party/abseil-cpp/absl/algorithm:container",
Danil Chapovalova30439b2022-07-07 08:08:492079 "//third_party/abseil-cpp/absl/functional:any_invocable",
Karl Wiberg918f50c2018-07-05 09:40:332080 "//third_party/abseil-cpp/absl/memory",
Mirko Bonadei57cabed2020-04-01 10:03:112081 "//third_party/abseil-cpp/absl/strings",
Florent Castelli99c519b2024-05-23 11:21:532082 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrandc24a2182022-02-23 13:44:592083 "//third_party/abseil-cpp/absl/types:optional",
kjellander142f8c52016-06-13 07:08:242084 ]
2085
2086 if (rtc_build_libsrtp) {
2087 deps += [ "//third_party/libsrtp" ]
2088 }
2089
2090 if (is_android) {
Björn Terelius0c68a7a2022-04-19 13:32:372091 use_default_launcher = false
2092 deps += [
2093 "//build/android/gtest_apk:native_test_instrumentation_test_runner_java",
2094 "//testing/android/native_test:native_test_java",
2095 "//testing/android/native_test:native_test_support",
2096 ]
kjellander142f8c52016-06-13 07:08:242097 }
2098 }
ossu7bb87ee2017-01-23 12:56:252099
Mirko Bonadei86d053c2019-10-17 19:32:042100 rtc_library("peerconnection_perf_tests") {
Seth Hampsond1003d72018-06-22 22:40:162101 testonly = true
Danil Chapovalov64f1f3f2020-01-16 13:41:102102 sources = [ "peer_connection_rampup_tests.cc" ]
Seth Hampsond1003d72018-06-22 22:40:162103 deps = [
2104 ":pc_test_utils",
Harald Alvestrand15ad4ed2022-02-09 05:52:112105 ":peer_connection",
Artem Titoveb02ecd2018-12-17 13:22:062106 ":peerconnection_wrapper",
Yves Gerey3e707812018-11-28 15:47:492107 "../api:audio_options_api",
Mirko Bonadei2ff3f492018-11-22 08:00:132108 "../api:create_peerconnection_factory",
Seth Hampsond1003d72018-06-22 22:40:162109 "../api:libjingle_peerconnection_api",
Niels Möllere942b142019-09-17 12:30:412110 "../api:media_stream_interface",
Harald Alvestrandc24a2182022-02-23 13:44:592111 "../api:rtc_error",
Seth Hampsond1003d72018-06-22 22:40:162112 "../api:rtc_stats_api",
Mirko Bonadeid9708072019-01-25 19:26:482113 "../api:scoped_refptr",
Florent Castellif4673f92024-04-19 19:46:032114 "../api/audio:audio_device",
Yves Gerey3e707812018-11-28 15:47:492115 "../api/audio:audio_mixer_api",
Florent Castelli0afde762024-04-19 15:07:082116 "../api/audio:audio_processing",
Yves Gerey3e707812018-11-28 15:47:492117 "../api/audio_codecs:audio_codecs_api",
Seth Hampsond1003d72018-06-22 22:40:162118 "../api/audio_codecs:builtin_audio_decoder_factory",
2119 "../api/audio_codecs:builtin_audio_encoder_factory",
Artem Titov2ae3f7b2022-09-24 23:13:102120 "../api/test/metrics:global_metrics_logger_and_exporter",
2121 "../api/test/metrics:metric",
Yves Gerey3e707812018-11-28 15:47:492122 "../api/video_codecs:video_codecs_api",
Åsa Perssondc806fd2023-03-31 13:42:382123 "../api/video_codecs:video_decoder_factory_template",
2124 "../api/video_codecs:video_decoder_factory_template_dav1d_adapter",
2125 "../api/video_codecs:video_decoder_factory_template_libvpx_vp8_adapter",
2126 "../api/video_codecs:video_decoder_factory_template_libvpx_vp9_adapter",
2127 "../api/video_codecs:video_decoder_factory_template_open_h264_adapter",
2128 "../api/video_codecs:video_encoder_factory_template",
2129 "../api/video_codecs:video_encoder_factory_template_libaom_av1_adapter",
2130 "../api/video_codecs:video_encoder_factory_template_libvpx_vp8_adapter",
2131 "../api/video_codecs:video_encoder_factory_template_libvpx_vp9_adapter",
2132 "../api/video_codecs:video_encoder_factory_template_open_h264_adapter",
Seth Hampsond1003d72018-06-22 22:40:162133 "../media:rtc_media_tests_utils",
Harald Alvestrand3bddaed2024-02-06 22:54:252134 "../p2p:basic_port_allocator",
Harald Alvestrand9a953b22024-01-26 07:11:502135 "../p2p:connection",
Seth Hampsond1003d72018-06-22 22:40:162136 "../p2p:p2p_test_utils",
Harald Alvestrand3bddaed2024-02-06 22:54:252137 "../p2p:port_allocator",
Harald Alvestranda310d782024-01-25 12:27:182138 "../p2p:port_interface",
Seth Hampsond1003d72018-06-22 22:40:162139 "../p2p:rtc_p2p",
Yves Gerey3e707812018-11-28 15:47:492140 "../rtc_base:checks",
Philipp Hancke41586782024-06-06 14:31:072141 "../rtc_base:crypto_random",
Mirko Bonadeie3abb812018-11-23 12:15:082142 "../rtc_base:gunit_helpers",
Seth Hampsond1003d72018-06-22 22:40:162143 "../rtc_base:rtc_base_tests_utils",
Mirko Bonadeie5f4c6b2021-01-15 09:41:012144 "../rtc_base:socket_address",
Harald Alvestrandc24a2182022-02-23 13:44:592145 "../rtc_base:socket_factory",
Florent Castellia138c6c2023-01-04 11:01:092146 "../rtc_base:ssl",
Danil Chapovalov2aaef452022-08-12 13:55:112147 "../rtc_base:task_queue_for_test",
Mirko Bonadeie5f4c6b2021-01-15 09:41:012148 "../rtc_base:threading",
Artem Titov94b57c02019-03-21 12:35:102149 "../system_wrappers",
Seth Hampsond1003d72018-06-22 22:40:162150 "../test:test_support",
Florent Castelli99c519b2024-05-23 11:21:532151 "//third_party/abseil-cpp/absl/types:optional",
Seth Hampsond1003d72018-06-22 22:40:162152 ]
Seth Hampsond1003d72018-06-22 22:40:162153 }
2154
Mirko Bonadei86d053c2019-10-17 19:32:042155 rtc_library("peerconnection_wrapper") {
Artem Titoveb02ecd2018-12-17 13:22:062156 testonly = true
2157 sources = [
Steve Anton10542f22019-01-11 17:11:002158 "peer_connection_wrapper.cc",
2159 "peer_connection_wrapper.h",
Artem Titoveb02ecd2018-12-17 13:22:062160 ]
2161 deps = [
2162 ":pc_test_utils",
Harald Alvestrand63c3b132022-02-03 07:56:222163 ":sdp_utils",
Artem Titov741daaf2019-03-21 13:37:362164 "../api:function_view",
Artem Titoveb02ecd2018-12-17 13:22:062165 "../api:libjingle_peerconnection_api",
Niels Möllere942b142019-09-17 12:30:412166 "../api:media_stream_interface",
Mirko Bonadeifcfeefe2019-09-10 08:51:232167 "../api:rtc_error",
Artem Titoveb02ecd2018-12-17 13:22:062168 "../api:rtc_stats_api",
Niels Möller6dcd4dc2019-08-26 08:45:282169 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:162170 "../api:rtp_sender_interface",
Mirko Bonadeid9708072019-01-25 19:26:482171 "../api:scoped_refptr",
Artem Titoveb02ecd2018-12-17 13:22:062172 "../rtc_base:checks",
2173 "../rtc_base:gunit_helpers",
Florent Castelli0af55ba2022-04-04 13:06:302174 "../rtc_base:logging",
Artem Titoveb02ecd2018-12-17 13:22:062175 "../test:test_support",
Florent Castelli99c519b2024-05-23 11:21:532176 "//third_party/abseil-cpp/absl/types:optional",
Artem Titoveb02ecd2018-12-17 13:22:062177 ]
Artem Titoveb02ecd2018-12-17 13:22:062178 }
2179
Harald Alvestrandf8f7b702022-05-05 13:21:192180 rtc_test("slow_peer_connection_unittests") {
2181 testonly = true
2182 sources = [ "slow_peer_connection_integration_test.cc" ]
2183 deps = [
2184 ":integration_test_helpers",
2185 ":pc_test_utils",
Florent Castelliacabb362022-10-18 15:05:162186 "../api:dtmf_sender_interface",
Harald Alvestrandf8f7b702022-05-05 13:21:192187 "../api:libjingle_peerconnection_api",
2188 "../api:scoped_refptr",
2189 "../api/units:time_delta",
Harald Alvestrand9a953b22024-01-26 07:11:502190 "../p2p:connection",
Harald Alvestrandf8f7b702022-05-05 13:21:192191 "../p2p:p2p_server_utils",
2192 "../p2p:p2p_test_utils",
Harald Alvestrand3bddaed2024-02-06 22:54:252193 "../p2p:port_allocator",
Harald Alvestranda310d782024-01-25 12:27:182194 "../p2p:port_interface",
Harald Alvestrandf8f7b702022-05-05 13:21:192195 "../p2p:rtc_p2p",
Harald Alvestrandf8f7b702022-05-05 13:21:192196 "../rtc_base:gunit_helpers",
2197 "../rtc_base:logging",
2198 "../rtc_base:rtc_base_tests_utils",
2199 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 11:01:092200 "../rtc_base:ssl",
Harald Alvestrandf8f7b702022-05-05 13:21:192201 "../test:test_main",
2202 "../test:test_support",
Tommicde4b672023-04-25 06:53:422203 "../test/time_controller:time_controller",
Harald Alvestrandf8f7b702022-05-05 13:21:192204 "//third_party/abseil-cpp/absl/algorithm:container",
2205 "//third_party/abseil-cpp/absl/strings",
2206 "//third_party/abseil-cpp/absl/types:optional",
2207 ]
2208 }
2209
ossu7bb87ee2017-01-23 12:56:252210 rtc_test("peerconnection_unittests") {
ossu7bb87ee2017-01-23 12:56:252211 testonly = true
2212 sources = [
Harald Alvestrand39993842021-02-17 09:05:312213 "data_channel_integrationtest.cc",
Steve Anton10542f22019-01-11 17:11:002214 "data_channel_unittest.cc",
2215 "dtmf_sender_unittest.cc",
2216 "ice_server_parsing_unittest.cc",
Ruslan Burakov428dcb22019-04-18 15:49:492217 "jitter_buffer_delay_unittest.cc",
Steve Anton10542f22019-01-11 17:11:002218 "jsep_session_description_unittest.cc",
Henrik Boströmf7859892022-07-04 12:36:372219 "legacy_stats_collector_unittest.cc",
Steve Anton10542f22019-01-11 17:11:002220 "local_audio_source_unittest.cc",
Steve Anton10542f22019-01-11 17:11:002221 "media_stream_unittest.cc",
Henrik Boström4c1e7cc2020-06-11 10:26:532222 "peer_connection_adaptation_integrationtest.cc",
Steve Anton10542f22019-01-11 17:11:002223 "peer_connection_bundle_unittest.cc",
2224 "peer_connection_crypto_unittest.cc",
2225 "peer_connection_data_channel_unittest.cc",
Henrik Boströmda9e2842023-04-06 13:27:332226 "peer_connection_encodings_integrationtest.cc",
Steve Anton10542f22019-01-11 17:11:002227 "peer_connection_end_to_end_unittest.cc",
2228 "peer_connection_factory_unittest.cc",
Byoungchan Lee8f17f732022-08-25 12:35:302229 "peer_connection_field_trial_tests.cc",
Markus Handell0357b3e2020-03-16 12:40:512230 "peer_connection_header_extension_unittest.cc",
Steve Anton10542f22019-01-11 17:11:002231 "peer_connection_histogram_unittest.cc",
2232 "peer_connection_ice_unittest.cc",
2233 "peer_connection_integrationtest.cc",
2234 "peer_connection_interface_unittest.cc",
2235 "peer_connection_jsep_unittest.cc",
2236 "peer_connection_media_unittest.cc",
2237 "peer_connection_rtp_unittest.cc",
2238 "peer_connection_signaling_unittest.cc",
Amit Hilbuchaa584152019-02-07 01:09:522239 "peer_connection_simulcast_unittest.cc",
Florent Castelli725ee242022-10-18 15:05:582240 "peer_connection_svc_integrationtest.cc",
Steve Anton10542f22019-01-11 17:11:002241 "peer_connection_wrapper.cc",
2242 "peer_connection_wrapper.h",
ossu7bb87ee2017-01-23 12:56:252243 "proxy_unittest.cc",
Steve Anton10542f22019-01-11 17:11:002244 "rtc_stats_collector_unittest.cc",
2245 "rtc_stats_integrationtest.cc",
2246 "rtc_stats_traversal_unittest.cc",
2247 "rtp_media_utils_unittest.cc",
2248 "rtp_parameters_conversion_unittest.cc",
2249 "rtp_sender_receiver_unittest.cc",
2250 "rtp_transceiver_unittest.cc",
2251 "sctp_utils_unittest.cc",
Harald Alvestrande61d4c82021-09-16 08:59:112252 "sdp_offer_answer_unittest.cc",
Philipp Hancke96bc0942023-09-14 15:23:592253 "simulcast_sdp_serializer_unittest.cc",
Steve Anton10542f22019-01-11 17:11:002254 "test/fake_audio_capture_module_unittest.cc",
2255 "test/test_sdp_strings.h",
2256 "track_media_info_map_unittest.cc",
Markus Handell15f2ff42019-11-22 09:34:372257 "video_rtp_track_source_unittest.cc",
Steve Anton10542f22019-01-11 17:11:002258 "video_track_unittest.cc",
2259 "webrtc_sdp_unittest.cc",
ossu7bb87ee2017-01-23 12:56:252260 ]
2261
Mirko Bonadeie51f7852017-12-06 10:23:192262 deps = [
Harald Alvestrand7165f482020-10-12 07:37:312263 ":audio_rtp_receiver",
2264 ":audio_track",
Harald Alvestrand8e1ae8c2022-03-17 13:13:512265 ":channel",
Harald Alvestrandc5b9c952022-03-14 07:16:402266 ":channel_interface",
Harald Alvestranda45c8f42022-05-10 08:44:482267 ":data_channel_controller_unittest",
Harald Alvestrand8e1ae8c2022-03-17 13:13:512268 ":dtls_srtp_transport",
Harald Alvestrandc5b9c952022-03-14 07:16:402269 ":dtls_transport",
Harald Alvestrand445e6b02020-09-29 14:21:472270 ":dtmf_sender",
Danil Chapovalovc63120a2023-11-03 10:32:242271 ":enable_fake_media",
Harald Alvestrandae940a52022-02-01 13:37:082272 ":ice_server_parsing",
Harald Alvestrand82a94122021-03-08 07:01:482273 ":integration_test_helpers",
Harald Alvestrand7165f482020-10-12 07:37:312274 ":jitter_buffer_delay",
Henrik Boströmf7859892022-07-04 12:36:372275 ":legacy_stats_collector",
Harald Alvestrand7766ab12022-02-02 11:26:032276 ":local_audio_source",
Harald Alvestrandc24a2182022-02-23 13:44:592277 ":media_protocol_names",
Harald Alvestrande5a73f52022-03-28 12:06:342278 ":media_session",
Harald Alvestrand445e6b02020-09-29 14:21:472279 ":media_stream",
Harald Alvestrand15ad4ed2022-02-09 05:52:112280 ":peer_connection",
2281 ":peer_connection_factory",
Harald Alvestrandd9f68462022-03-10 10:09:512282 ":peer_connection_proxy",
Markus Handella1b82012021-05-26 16:56:302283 ":proxy",
Harald Alvestrandfd6c7442022-02-08 07:52:102284 ":rtc_stats_collector",
2285 ":rtc_stats_traversal",
Harald Alvestrand7ee138e2022-03-10 13:21:282286 ":rtp_media_utils",
Harald Alvestrandbb02db22020-10-08 16:35:182287 ":rtp_parameters_conversion",
Harald Alvestrand445e6b02020-09-29 14:21:472288 ":rtp_receiver",
2289 ":rtp_sender",
Harald Alvestrandd9f68462022-03-10 10:09:512290 ":rtp_sender_proxy",
Harald Alvestrandbb02db22020-10-08 16:35:182291 ":rtp_transceiver",
Harald Alvestrand2ea4d372022-03-10 22:15:422292 ":rtp_transport_internal",
Harald Alvestrandad3b3232022-02-07 02:59:362293 ":sctp_data_channel",
Harald Alvestrand7e539922022-03-17 06:26:032294 ":sctp_transport",
Harald Alvestrand2ea4d372022-03-10 22:15:422295 ":sctp_utils",
Harald Alvestrand63c3b132022-02-03 07:56:222296 ":sdp_utils",
Harald Alvestrandc0a95862021-06-09 09:33:562297 ":session_description",
Harald Alvestrandc24a2182022-02-23 13:44:592298 ":simulcast_description",
Philipp Hancke96bc0942023-09-14 15:23:592299 ":simulcast_sdp_serializer",
Harald Alvestrandab0152d2022-02-07 06:43:482300 ":stream_collection",
Harald Alvestrand59427ad2022-02-03 19:02:382301 ":track_media_info_map",
Harald Alvestrand2ea4d372022-03-10 22:15:422302 ":transport_stats",
Harald Alvestrand44d0dff2020-10-09 05:43:532303 ":usage_pattern",
Harald Alvestrand7165f482020-10-12 07:37:312304 ":video_rtp_receiver",
2305 ":video_rtp_track_source",
2306 ":video_track",
Harald Alvestrand445e6b02020-09-29 14:21:472307 ":video_track_source",
Harald Alvestrandb6f39162022-02-08 05:56:552308 ":webrtc_sdp",
Yves Gerey3e707812018-11-28 15:47:492309 "../api:array_view",
2310 "../api:audio_options_api",
Mirko Bonadeid151cc62022-06-20 06:35:282311 "../api:candidate",
Mirko Bonadei2ff3f492018-11-22 08:00:132312 "../api:create_peerconnection_factory",
Mirko Bonadeid151cc62022-06-20 06:35:282313 "../api:dtls_transport_interface",
Florent Castelliacabb362022-10-18 15:05:162314 "../api:dtmf_sender_interface",
Danil Chapovalov082cb562023-10-31 12:51:162315 "../api:enable_media",
Danil Chapovalov554f7db2023-11-01 10:08:202316 "../api:enable_media_with_defaults",
Benjamin Wright78410ad2018-10-25 16:52:572317 "../api:fake_frame_decryptor",
2318 "../api:fake_frame_encryptor",
Jonas Orelande62c2f22022-03-29 09:04:482319 "../api:field_trials_view",
Artem Titov741daaf2019-03-21 13:37:362320 "../api:function_view",
Mirko Bonadeid151cc62022-06-20 06:35:282321 "../api:ice_transport_interface",
Yves Gerey3e707812018-11-28 15:47:492322 "../api:libjingle_logging_api",
Mirko Bonadei34814c72018-01-11 09:13:562323 "../api:libjingle_peerconnection_api",
Niels Möller105711e2022-06-14 13:48:262324 "../api:make_ref_counted",
Niels Möllere942b142019-09-17 12:30:412325 "../api:media_stream_interface",
Harald Alvestrand4d25a772023-08-25 11:07:282326 "../api:mock_async_dns_resolver",
Jonas Oreland65455162022-06-08 09:25:462327 "../api:mock_encoder_selector",
Niels Möller573b1452022-06-21 09:37:292328 "../api:mock_packet_socket_factory",
Florent Castelli63cc46c2021-07-16 23:32:402329 "../api:mock_video_track",
Harald Alvestrand39993842021-02-17 09:05:312330 "../api:packet_socket_factory",
Harald Alvestrandc24a2182022-02-23 13:44:592331 "../api:priority",
Mirko Bonadeifcfeefe2019-09-10 08:51:232332 "../api:rtc_error",
Florent Castelliacabb362022-10-18 15:05:162333 "../api:rtp_sender_interface",
Harald Alvestrand39993842021-02-17 09:05:312334 "../api:rtp_transceiver_direction",
Mirko Bonadeid9708072019-01-25 19:26:482335 "../api:scoped_refptr",
Harald Alvestrandc24a2182022-02-23 13:44:592336 "../api/adaptation:resource_adaptation_api",
Florent Castellif4673f92024-04-19 19:46:032337 "../api/audio:audio_device",
Yves Gerey3e707812018-11-28 15:47:492338 "../api/audio:audio_mixer_api",
Florent Castelli0afde762024-04-19 15:07:082339 "../api/audio:audio_processing",
2340 "../api/audio:audio_processing_statistics",
Mirko Bonadeieaaaf412019-09-13 12:42:152341 "../api/crypto:frame_decryptor_interface",
2342 "../api/crypto:frame_encryptor_interface",
2343 "../api/crypto:options",
Danil Chapovalov1030eaa2024-06-18 09:20:402344 "../api/environment",
Danil Chapovalov7eaa9dc2023-11-27 14:00:212345 "../api/environment:environment_factory",
Danil Chapovalov9da25bd2019-06-20 08:19:422346 "../api/rtc_event_log",
2347 "../api/rtc_event_log:rtc_event_log_factory",
Harald Alvestrand39993842021-02-17 09:05:312348 "../api/task_queue",
Danil Chapovalov9da25bd2019-06-20 08:19:422349 "../api/task_queue:default_task_queue_factory",
Harald Alvestrandc24a2182022-02-23 13:44:592350 "../api/transport:datagram_transport_interface",
Erik Språngceb44952020-09-22 09:36:352351 "../api/transport:field_trial_based_config",
Harald Alvestrandc24a2182022-02-23 13:44:592352 "../api/transport:sctp_transport_factory_interface",
Niels Möllera8370302019-09-02 13:16:492353 "../api/transport/rtp:rtp_source",
Henrik Boström2fec6442023-06-15 10:49:262354 "../api/units:data_rate",
Sebastian Jansson5f83cf02018-05-08 12:52:222355 "../api/units:time_delta",
Harald Alvestrandc24a2182022-02-23 13:44:592356 "../api/units:timestamp",
Jonas Orelanda3aa9bd2019-04-17 05:38:402357 "../api/video:builtin_video_bitrate_allocator_factory",
Harald Alvestrandc24a2182022-02-23 13:44:592358 "../api/video:encoded_image",
2359 "../api/video:recordable_encoded_frame",
2360 "../api/video:video_bitrate_allocator_factory",
2361 "../api/video:video_codec_constants",
2362 "../api/video:video_frame",
Harald Alvestrand39993842021-02-17 09:05:312363 "../api/video:video_rtp_headers",
Evan Shrubsole9b235cd2022-12-06 10:09:102364 "../api/video_codecs:scalability_mode",
Henrik Boström4c1e7cc2020-06-11 10:26:532365 "../call/adaptation:resource_adaptation_test_utilities",
Harald Alvestrandc24a2182022-02-23 13:44:592366 "../common_video",
Qingsi Wang7685e862018-06-12 03:15:462367 "../logging:fake_rtc_event_log",
Harald Alvestrand794d5992022-12-16 09:54:572368 "../media:codec",
Harald Alvestrand794d5992022-12-16 09:54:572369 "../media:media_channel",
2370 "../media:media_constants",
Harald Alvestrandfb4ad292024-02-28 11:01:252371 "../media:media_engine",
Harald Alvestrand794d5992022-12-16 09:54:572372 "../media:rid_description",
Florent Castellia80c3e52021-04-15 13:02:562373 "../media:rtc_data_sctp_transport_internal",
Yves Gerey3e707812018-11-28 15:47:492374 "../media:rtc_media_config",
Harald Alvestrand794d5992022-12-16 09:54:572375 "../media:stream_params",
Henrik Boström883eefc2019-05-27 11:40:252376 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestrand3bddaed2024-02-06 22:54:252377 "../p2p:basic_port_allocator",
Harald Alvestrand9a953b22024-01-26 07:11:502378 "../p2p:connection",
Harald Alvestranda310d782024-01-25 12:27:182379 "../p2p:connection_info",
Harald Alvestrand8bb54c12024-02-06 15:24:032380 "../p2p:dtls_transport_internal",
Qingsi Wang8af1f742019-04-22 05:08:262381 "../p2p:fake_port_allocator",
Harald Alvestranda310d782024-01-25 12:27:182382 "../p2p:ice_transport_internal",
2383 "../p2p:p2p_constants",
Harald Alvestrand39993842021-02-17 09:05:312384 "../p2p:p2p_server_utils",
Harald Alvestrand3bddaed2024-02-06 22:54:252385 "../p2p:port",
2386 "../p2p:port_allocator",
Harald Alvestranda310d782024-01-25 12:27:182387 "../p2p:port_interface",
2388 "../p2p:transport_description",
Harald Alvestrand8bb54c12024-02-06 15:24:032389 "../p2p:transport_info",
Florent Castelliceb7b362022-04-19 15:35:042390 "../rtc_base:byte_buffer",
Patrik Höglunda8005cf2017-12-13 15:05:422391 "../rtc_base:checks",
Florent Castellied4aadc2022-04-19 15:40:462392 "../rtc_base:copy_on_write_buffer",
Philipp Hancke41586782024-06-06 14:31:072393 "../rtc_base:crypto_random",
Philipp Hancke57dbb1e2024-05-14 15:35:242394 "../rtc_base:digest",
Florent Castellia30aef32022-04-19 15:47:132395 "../rtc_base:event_tracer",
Mirko Bonadeie3abb812018-11-23 12:15:082396 "../rtc_base:gunit_helpers",
Mirko Bonadeie5f4c6b2021-01-15 09:41:012397 "../rtc_base:ip_address",
Florent Castelli0af55ba2022-04-04 13:06:302398 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:462399 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:092400 "../rtc_base:mdns_responder_interface",
2401 "../rtc_base:net_helper",
2402 "../rtc_base:network",
Harald Alvestrandc24a2182022-02-23 13:44:592403 "../rtc_base:network_constants",
Tommi55f72802023-03-27 10:39:332404 "../rtc_base:null_socket_server",
Florent Castellif86f6f92022-04-05 00:54:122405 "../rtc_base:refcount",
Mirko Bonadeie3abb812018-11-23 12:15:082406 "../rtc_base:rtc_base_tests_utils",
Florent Castellia138c6c2023-01-04 11:01:092407 "../rtc_base:rtc_certificate_generator",
Harald Alvestrand910cdc22020-01-09 11:58:232408 "../rtc_base:rtc_json",
Mirko Bonadeie5f4c6b2021-01-15 09:41:012409 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 11:01:092410 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:052411 "../rtc_base:ssl_adapter",
Florent Castelli57aa81b2022-04-04 15:14:022412 "../rtc_base:stringutils",
Danil Chapovalov2aaef452022-08-12 13:55:112413 "../rtc_base:task_queue_for_test",
Mirko Bonadeie5f4c6b2021-01-15 09:41:012414 "../rtc_base:threading",
Florent Castellidd837e22022-04-04 15:16:152415 "../rtc_base:timeutils",
Florent Castellia138c6c2023-01-04 11:01:092416 "../rtc_base:unique_id_generator",
Markus Handell6fcd0f82020-07-07 17:08:532417 "../rtc_base/synchronization:mutex",
Artem Titova76af0c2018-07-23 15:38:122418 "../rtc_base/third_party/base64",
Artem Titov94b57c02019-03-21 12:35:102419 "../rtc_base/third_party/sigslot",
Mirko Bonadei17f48782018-09-28 06:51:102420 "../system_wrappers:metrics",
Henrik Boström9a5de952023-03-14 08:50:192421 "../test:field_trial",
Tommia50a81a2023-04-11 15:32:342422 "../test:rtc_expect_death",
Niels Möller65b2d8a2022-05-19 14:06:232423 "../test:run_loop",
Jonas Orelanded99dae2022-03-09 08:28:102424 "../test:scoped_key_value_config",
Per Kjellander2bca0082020-08-28 07:15:152425 "../test/pc/sctp:fake_sctp_transport",
Harald Alvestrand6431a642024-06-04 21:29:142426 "//testing/gtest",
Steve Anton64b626b2019-01-29 01:25:262427 "//third_party/abseil-cpp/absl/algorithm:container",
Karl Wiberg918f50c2018-07-05 09:40:332428 "//third_party/abseil-cpp/absl/memory",
Yves Gerey69807e82018-10-30 21:23:022429 "//third_party/abseil-cpp/absl/strings",
Mirko Bonadei2dcf3482020-06-05 12:30:412430 "//third_party/abseil-cpp/absl/types:optional",
Mirko Bonadeie51f7852017-12-06 10:23:192431 ]
Björn Terelius0c68a7a2022-04-19 13:32:372432
ossu7bb87ee2017-01-23 12:56:252433 if (is_android) {
Björn Terelius0c68a7a2022-04-19 13:32:372434 use_default_launcher = false
2435 deps += [
2436 ":android_black_magic",
2437
2438 # We need to depend on this one directly, or classloads will fail for
2439 # the voice engine BuildInfo, for instance.
2440 "//sdk/android:libjingle_peerconnection_java",
2441 "//sdk/android:native_test_jni_onload",
2442 ]
2443 shard_timeout = 900
ossu7bb87ee2017-01-23 12:56:252444 }
2445
2446 deps += [
2447 ":libjingle_peerconnection",
deadbeefe814a0d2017-02-26 02:15:092448 ":pc_test_utils",
Harald Alvestrand67a68d52022-02-07 05:07:032449 ":rtc_pc",
Niels Möllerd8b9ed72019-05-08 11:53:512450 "../api:rtc_event_log_output_file",
Patrik Höglund563934e2017-09-15 07:04:282451 "../api:rtc_stats_api",
Niels Möller6dcd4dc2019-08-26 08:45:282452 "../api:rtp_parameters",
Karl Wibergc5bb00b2017-10-10 21:17:172453 "../api/audio_codecs:audio_codecs_api",
Patrik Höglund563934e2017-09-15 07:04:282454 "../api/audio_codecs:builtin_audio_decoder_factory",
2455 "../api/audio_codecs:builtin_audio_encoder_factory",
Karl Wiberg44d7ec02019-11-26 13:00:412456 "../api/audio_codecs:opus_audio_decoder_factory",
2457 "../api/audio_codecs:opus_audio_encoder_factory",
Karl Wibergc5bb00b2017-10-10 21:17:172458 "../api/audio_codecs/L16:audio_decoder_L16",
2459 "../api/audio_codecs/L16:audio_encoder_L16",
Anders Carlsson67537952018-05-03 09:28:292460 "../api/video_codecs:builtin_video_decoder_factory",
2461 "../api/video_codecs:builtin_video_encoder_factory",
2462 "../api/video_codecs:video_codecs_api",
Åsa Persson0587aae2023-03-31 14:49:142463 "../api/video_codecs:video_decoder_factory_template",
2464 "../api/video_codecs:video_decoder_factory_template_dav1d_adapter",
2465 "../api/video_codecs:video_decoder_factory_template_libvpx_vp8_adapter",
2466 "../api/video_codecs:video_decoder_factory_template_libvpx_vp9_adapter",
2467 "../api/video_codecs:video_decoder_factory_template_open_h264_adapter",
2468 "../api/video_codecs:video_encoder_factory_template",
2469 "../api/video_codecs:video_encoder_factory_template_libaom_av1_adapter",
2470 "../api/video_codecs:video_encoder_factory_template_libvpx_vp8_adapter",
2471 "../api/video_codecs:video_encoder_factory_template_libvpx_vp9_adapter",
2472 "../api/video_codecs:video_encoder_factory_template_open_h264_adapter",
Steve Anton8d3444d2017-10-20 22:30:512473 "../call:call_interfaces",
Patrik Höglund563934e2017-09-15 07:04:282474 "../media:rtc_audio_video",
mbonadei9087d492017-04-25 07:35:352475 "../media:rtc_media_tests_utils",
Artem Titov94b57c02019-03-21 12:35:102476 "../modules/audio_processing",
Patrik Höglund563934e2017-09-15 07:04:282477 "../p2p:p2p_test_utils",
2478 "../p2p:rtc_p2p",
Mirko Bonadeie12c1fe2018-07-03 10:53:232479 "../rtc_base:safe_conversions",
kwiberg2b3aa142017-06-14 10:31:172480 "../test:audio_codec_mocks",
Niels Möller04a3cc12019-05-21 11:01:582481 "../test:test_main",
Patrik Höglund563934e2017-09-15 07:04:282482 "../test:test_support",
ossu7bb87ee2017-01-23 12:56:252483 ]
ossu7bb87ee2017-01-23 12:56:252484 }
Patrik Höglund563934e2017-09-15 07:04:282485
Harald Alvestranda45c8f42022-05-10 08:44:482486 rtc_library("data_channel_controller_unittest") {
2487 testonly = true
2488 sources = [ "data_channel_controller_unittest.cc" ]
2489 deps = [
2490 ":data_channel_controller",
2491 ":pc_test_utils",
2492 ":peer_connection_internal",
Harald Alvestrand9e5aeb92022-05-11 09:35:362493 ":sctp_data_channel",
Florent Castelli0012bfa2024-07-26 16:16:412494 "../api:priority",
Tommi55f72802023-03-27 10:39:332495 "../rtc_base:null_socket_server",
Tommi2a448722023-03-09 22:52:432496 "../test:run_loop",
Harald Alvestranda45c8f42022-05-10 08:44:482497 "../test:test_support",
2498 ]
2499 }
2500
Patrik Höglund563934e2017-09-15 07:04:282501 if (is_android) {
Mirko Bonadei86d053c2019-10-17 19:32:042502 rtc_library("android_black_magic") {
Björn Terelius0c68a7a2022-04-19 13:32:372503 # The android code uses hacky includes to ssl code. Having this in a
2504 # separate target enables us to keep the peerconnection unit tests clean.
Patrik Höglund563934e2017-09-15 07:04:282505 testonly = true
2506 sources = [
Steve Anton10542f22019-01-11 17:11:002507 "test/android_test_initializer.cc",
2508 "test/android_test_initializer.h",
Patrik Höglund563934e2017-09-15 07:04:282509 ]
2510 deps = [
Philipp Hanckec7fd5af2024-05-17 20:49:052511 "../rtc_base:ssl_adapter",
Björn Terelius0c68a7a2022-04-19 13:32:372512 "../sdk/android:internal_jni",
Patrik Höglund563934e2017-09-15 07:04:282513 "../sdk/android:libjingle_peerconnection_jni",
Björn Terelius0c68a7a2022-04-19 13:32:372514 "//modules/utility:utility",
2515 "//rtc_base:checks",
Patrik Höglund563934e2017-09-15 07:04:282516 "//testing/android/native_test:native_test_support",
2517 ]
2518 }
2519 }
Harald Alvestrand82a94122021-03-08 07:01:482520
2521 rtc_library("integration_test_helpers") {
2522 testonly = true
2523 sources = [
2524 "test/integration_test_helpers.cc",
2525 "test/integration_test_helpers.h",
2526 ]
2527 deps = [
2528 ":audio_rtp_receiver",
2529 ":audio_track",
2530 ":dtmf_sender",
2531 ":jitter_buffer_delay",
Harald Alvestrand7766ab12022-02-02 11:26:032532 ":local_audio_source",
Harald Alvestrande5a73f52022-03-28 12:06:342533 ":media_session",
Harald Alvestrand82a94122021-03-08 07:01:482534 ":media_stream",
2535 ":pc_test_utils",
Harald Alvestrand15ad4ed2022-02-09 05:52:112536 ":peer_connection",
2537 ":peer_connection_factory",
Harald Alvestrandd9f68462022-03-10 10:09:512538 ":peer_connection_proxy",
Harald Alvestrand82a94122021-03-08 07:01:482539 ":remote_audio_source",
Harald Alvestrand7ee138e2022-03-10 13:21:282540 ":rtp_media_utils",
Harald Alvestrand82a94122021-03-08 07:01:482541 ":rtp_parameters_conversion",
2542 ":rtp_receiver",
2543 ":rtp_sender",
2544 ":rtp_transceiver",
Harald Alvestrandc0a95862021-06-09 09:33:562545 ":session_description",
Harald Alvestrand82a94122021-03-08 07:01:482546 ":usage_pattern",
2547 ":video_rtp_receiver",
2548 ":video_rtp_track_source",
2549 ":video_track",
2550 ":video_track_source",
2551 "../api:array_view",
2552 "../api:audio_options_api",
Mirko Bonadeid151cc62022-06-20 06:35:282553 "../api:candidate",
Harald Alvestrand82a94122021-03-08 07:01:482554 "../api:create_peerconnection_factory",
Danil Chapovalov166111d2023-11-01 13:43:072555 "../api:enable_media_with_defaults",
Harald Alvestrand82a94122021-03-08 07:01:482556 "../api:fake_frame_decryptor",
2557 "../api:fake_frame_encryptor",
Jonas Orelande62c2f22022-03-29 09:04:482558 "../api:field_trials_view",
Harald Alvestrand82a94122021-03-08 07:01:482559 "../api:function_view",
Mirko Bonadeid151cc62022-06-20 06:35:282560 "../api:ice_transport_interface",
Harald Alvestrand82a94122021-03-08 07:01:482561 "../api:libjingle_logging_api",
2562 "../api:libjingle_peerconnection_api",
2563 "../api:media_stream_interface",
Harald Alvestrand4d25a772023-08-25 11:07:282564 "../api:mock_async_dns_resolver",
Harald Alvestrand82a94122021-03-08 07:01:482565 "../api:mock_rtp",
2566 "../api:packet_socket_factory",
2567 "../api:rtc_error",
2568 "../api:rtc_stats_api",
2569 "../api:rtp_parameters",
Florent Castelliacabb362022-10-18 15:05:162570 "../api:rtp_sender_interface",
Harald Alvestrand82a94122021-03-08 07:01:482571 "../api:rtp_transceiver_direction",
2572 "../api:scoped_refptr",
Florent Castellif4673f92024-04-19 19:46:032573 "../api/audio:audio_device",
Harald Alvestrand82a94122021-03-08 07:01:482574 "../api/audio:audio_mixer_api",
Florent Castelli0afde762024-04-19 15:07:082575 "../api/audio:audio_processing",
Harald Alvestrand82a94122021-03-08 07:01:482576 "../api/crypto:frame_decryptor_interface",
2577 "../api/crypto:frame_encryptor_interface",
2578 "../api/crypto:options",
2579 "../api/rtc_event_log",
2580 "../api/rtc_event_log:rtc_event_log_factory",
2581 "../api/task_queue",
2582 "../api/task_queue:default_task_queue_factory",
Artem Titovc374d112022-06-16 19:27:452583 "../api/task_queue:pending_task_safety_flag",
Harald Alvestrand82a94122021-03-08 07:01:482584 "../api/transport:field_trial_based_config",
Harald Alvestrand82a94122021-03-08 07:01:482585 "../api/transport/rtp:rtp_source",
2586 "../api/units:time_delta",
2587 "../api/video:builtin_video_bitrate_allocator_factory",
2588 "../api/video:video_rtp_headers",
2589 "../api/video_codecs:video_codecs_api",
2590 "../call:call_interfaces",
2591 "../call/adaptation:resource_adaptation_test_utilities",
2592 "../logging:fake_rtc_event_log",
Harald Alvestrandfb4ad292024-02-28 11:01:252593 "../media:media_engine",
Harald Alvestrand82a94122021-03-08 07:01:482594 "../media:rtc_media_config",
Harald Alvestrand82a94122021-03-08 07:01:482595 "../media:rtc_media_tests_utils",
Harald Alvestrand794d5992022-12-16 09:54:572596 "../media:stream_params",
Harald Alvestrand82a94122021-03-08 07:01:482597 "../modules/audio_processing:audioproc_test_utils",
2598 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestrand3bddaed2024-02-06 22:54:252599 "../p2p:basic_port_allocator",
Harald Alvestrand9a953b22024-01-26 07:11:502600 "../p2p:connection",
Harald Alvestrand82a94122021-03-08 07:01:482601 "../p2p:fake_ice_transport",
2602 "../p2p:fake_port_allocator",
Harald Alvestranda310d782024-01-25 12:27:182603 "../p2p:ice_transport_internal",
2604 "../p2p:p2p_constants",
Harald Alvestrand82a94122021-03-08 07:01:482605 "../p2p:p2p_server_utils",
2606 "../p2p:p2p_test_utils",
Harald Alvestrand3bddaed2024-02-06 22:54:252607 "../p2p:port",
2608 "../p2p:port_allocator",
Harald Alvestranda310d782024-01-25 12:27:182609 "../p2p:port_interface",
Harald Alvestrand82a94122021-03-08 07:01:482610 "../p2p:rtc_p2p",
Harald Alvestrand82a94122021-03-08 07:01:482611 "../rtc_base:checks",
Philipp Hancke41586782024-06-06 14:31:072612 "../rtc_base:crypto_random",
Harald Alvestrand82a94122021-03-08 07:01:482613 "../rtc_base:gunit_helpers",
2614 "../rtc_base:ip_address",
Florent Castelli0af55ba2022-04-04 13:06:302615 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:462616 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:092617 "../rtc_base:mdns_responder_interface",
Tommicde4b672023-04-25 06:53:422618 "../rtc_base:null_socket_server",
Harald Alvestrand82a94122021-03-08 07:01:482619 "../rtc_base:rtc_base_tests_utils",
Florent Castellia138c6c2023-01-04 11:01:092620 "../rtc_base:rtc_certificate_generator",
Florent Castelli33d31fb2022-04-04 14:57:522621 "../rtc_base:rtc_event",
Harald Alvestrand82a94122021-03-08 07:01:482622 "../rtc_base:rtc_json",
Florent Castellie10a9f62022-04-04 15:04:372623 "../rtc_base:safe_conversions",
Harald Alvestrand82a94122021-03-08 07:01:482624 "../rtc_base:socket_address",
Florent Castellia138c6c2023-01-04 11:01:092625 "../rtc_base:ssl",
Philipp Hanckec7fd5af2024-05-17 20:49:052626 "../rtc_base:ssl_adapter",
Danil Chapovalov2aaef452022-08-12 13:55:112627 "../rtc_base:task_queue_for_test",
Harald Alvestrand82a94122021-03-08 07:01:482628 "../rtc_base:threading",
2629 "../rtc_base:timeutils",
2630 "../rtc_base/synchronization:mutex",
Evan Shrubsole7619b7c2022-03-01 09:42:442631 "../rtc_base/task_utils:repeating_task",
Harald Alvestrand82a94122021-03-08 07:01:482632 "../rtc_base/third_party/base64",
2633 "../rtc_base/third_party/sigslot",
2634 "../system_wrappers:metrics",
Jonas Orelanded99dae2022-03-09 08:28:102635 "../test:explicit_key_value_config",
Harald Alvestrand82a94122021-03-08 07:01:482636 "../test:fileutils",
2637 "../test:rtp_test_utils",
Jonas Orelanded99dae2022-03-09 08:28:102638 "../test:scoped_key_value_config",
Harald Alvestrand82a94122021-03-08 07:01:482639 "../test:test_support",
2640 "../test/pc/sctp:fake_sctp_transport",
Tommicde4b672023-04-25 06:53:422641 "../test/time_controller",
Harald Alvestrand82a94122021-03-08 07:01:482642 "//third_party/abseil-cpp/absl/algorithm:container",
2643 "//third_party/abseil-cpp/absl/memory",
Florent Castelli99c519b2024-05-23 11:21:532644 "//third_party/abseil-cpp/absl/strings:string_view",
Harald Alvestrand82a94122021-03-08 07:01:482645 "//third_party/abseil-cpp/absl/types:optional",
2646 ]
2647 }
2648
Danil Chapovalovc63120a2023-11-03 10:32:242649 rtc_library("enable_fake_media") {
2650 testonly = true
2651 visibility = [ ":*" ]
2652 sources = [
2653 "test/enable_fake_media.cc",
2654 "test/enable_fake_media.h",
2655 ]
2656 deps = [
2657 ":media_factory",
2658 "../api:libjingle_peerconnection_api",
Danil Chapovalov680f1032023-11-27 16:56:492659 "../api/environment",
Danil Chapovalovc63120a2023-11-03 10:32:242660 "../call:call_interfaces",
2661 "../media:rtc_media_tests_utils",
2662 "../rtc_base:checks",
Florent Castelli99c519b2024-05-23 11:21:532663 "//third_party/abseil-cpp/absl/base:nullability",
Danil Chapovalovc63120a2023-11-03 10:32:242664 ]
Danil Chapovalovc63120a2023-11-03 10:32:242665 }
2666
Harald Alvestrand82a94122021-03-08 07:01:482667 rtc_library("pc_test_utils") {
2668 testonly = true
2669 sources = [
2670 "test/fake_audio_capture_module.cc",
2671 "test/fake_audio_capture_module.h",
Harald Alvestrand9e5aeb92022-05-11 09:35:362672 "test/fake_data_channel_controller.h",
Harald Alvestrand82a94122021-03-08 07:01:482673 "test/fake_peer_connection_base.h",
2674 "test/fake_peer_connection_for_stats.h",
2675 "test/fake_periodic_video_source.h",
2676 "test/fake_periodic_video_track_source.h",
2677 "test/fake_rtc_certificate_generator.h",
2678 "test/fake_video_track_renderer.h",
2679 "test/fake_video_track_source.h",
2680 "test/frame_generator_capturer_video_track_source.h",
2681 "test/mock_channel_interface.h",
2682 "test/mock_data_channel.h",
Harald Alvestranda45c8f42022-05-10 08:44:482683 "test/mock_peer_connection_internal.h",
Harald Alvestrand82a94122021-03-08 07:01:482684 "test/mock_peer_connection_observers.h",
2685 "test/mock_rtp_receiver_internal.h",
2686 "test/mock_rtp_sender_internal.h",
Florent Castellid797cb62023-06-27 20:07:092687 "test/mock_voice_media_receive_channel_interface.h",
Harald Alvestrand82a94122021-03-08 07:01:482688 "test/peer_connection_test_wrapper.cc",
2689 "test/peer_connection_test_wrapper.h",
2690 "test/rtc_stats_obtainer.h",
Henrik Boströmda9e2842023-04-06 13:27:332691 "test/simulcast_layer_util.cc",
2692 "test/simulcast_layer_util.h",
Harald Alvestrand82a94122021-03-08 07:01:482693 "test/test_sdp_strings.h",
2694 ]
2695
2696 deps = [
Harald Alvestrand65685a62022-04-27 12:15:492697 ":channel",
Harald Alvestrandc5b9c952022-03-14 07:16:402698 ":channel_interface",
Danil Chapovalovc63120a2023-11-03 10:32:242699 ":enable_fake_media",
Harald Alvestrand82a94122021-03-08 07:01:482700 ":jitter_buffer_delay",
Harald Alvestrand82a94122021-03-08 07:01:482701 ":libjingle_peerconnection",
Harald Alvestrand67a68d52022-02-07 05:07:032702 ":peer_connection_internal",
Harald Alvestrand82a94122021-03-08 07:01:482703 ":rtp_receiver",
2704 ":rtp_sender",
Harald Alvestrandad3b3232022-02-07 02:59:362705 ":sctp_data_channel",
Henrik Boströmda9e2842023-04-06 13:27:332706 ":session_description",
2707 ":simulcast_description",
Harald Alvestrandab0152d2022-02-07 06:43:482708 ":stream_collection",
Harald Alvestrand82a94122021-03-08 07:01:482709 ":video_track_source",
2710 "../api:audio_options_api",
Mirko Bonadei9d9c2d52022-10-07 21:47:492711 "../api:call_api",
Harald Alvestrand82a94122021-03-08 07:01:482712 "../api:create_frame_generator",
2713 "../api:create_peerconnection_factory",
Jonas Orelande62c2f22022-03-29 09:04:482714 "../api:field_trials_view",
2715 "../api:field_trials_view",
Harald Alvestrand82a94122021-03-08 07:01:482716 "../api:libjingle_peerconnection_api",
Niels Möller105711e2022-06-14 13:48:262717 "../api:make_ref_counted",
Harald Alvestrand82a94122021-03-08 07:01:482718 "../api:media_stream_interface",
Florent Castelli0012bfa2024-07-26 16:16:412719 "../api:priority",
Harald Alvestrand82a94122021-03-08 07:01:482720 "../api:rtc_error",
2721 "../api:rtc_stats_api",
Florent Castelli43a5dd82023-04-12 10:45:072722 "../api:rtp_parameters",
Harald Alvestrand82a94122021-03-08 07:01:482723 "../api:scoped_refptr",
2724 "../api:sequence_checker",
Florent Castellif4673f92024-04-19 19:46:032725 "../api/audio:audio_device",
Harald Alvestrand82a94122021-03-08 07:01:482726 "../api/audio:audio_mixer_api",
Florent Castelli0afde762024-04-19 15:07:082727 "../api/audio:audio_processing",
Harald Alvestrand82a94122021-03-08 07:01:482728 "../api/audio_codecs:audio_codecs_api",
Danil Chapovalov27253172024-03-12 15:58:182729 "../api/environment",
Danil Chapovalov7eaa9dc2023-11-27 14:00:212730 "../api/environment:environment_factory",
Harald Alvestrand82a94122021-03-08 07:01:482731 "../api/task_queue",
2732 "../api/task_queue:default_task_queue_factory",
Danil Chapovalov372ecc32022-08-19 16:22:152733 "../api/units:time_delta",
Harald Alvestrand82a94122021-03-08 07:01:482734 "../api/video:builtin_video_bitrate_allocator_factory",
Henrik Boströmfd4ddd12023-02-08 10:29:202735 "../api/video:resolution",
Harald Alvestrand82a94122021-03-08 07:01:482736 "../api/video:video_frame",
2737 "../api/video:video_rtp_headers",
Harald Alvestrand82a94122021-03-08 07:01:482738 "../api/video_codecs:video_codecs_api",
Åsa Persson13fffbb2023-03-31 11:13:372739 "../api/video_codecs:video_decoder_factory_template",
2740 "../api/video_codecs:video_decoder_factory_template_dav1d_adapter",
2741 "../api/video_codecs:video_decoder_factory_template_libvpx_vp8_adapter",
2742 "../api/video_codecs:video_decoder_factory_template_libvpx_vp9_adapter",
2743 "../api/video_codecs:video_decoder_factory_template_open_h264_adapter",
philipel2cafacf2023-04-03 13:17:172744 "../api/video_codecs:video_encoder_factory_template",
2745 "../api/video_codecs:video_encoder_factory_template_libaom_av1_adapter",
2746 "../api/video_codecs:video_encoder_factory_template_libvpx_vp8_adapter",
2747 "../api/video_codecs:video_encoder_factory_template_libvpx_vp9_adapter",
2748 "../api/video_codecs:video_encoder_factory_template_open_h264_adapter",
Harald Alvestrand82a94122021-03-08 07:01:482749 "../call:call_interfaces",
Harald Alvestrand794d5992022-12-16 09:54:572750 "../media:media_channel",
2751 "../media:media_channel_impl",
Harald Alvestrand82a94122021-03-08 07:01:482752 "../media:rtc_media",
Harald Alvestrand82a94122021-03-08 07:01:482753 "../media:rtc_media_tests_utils",
philipel2cafacf2023-04-03 13:17:172754 "../media:rtc_simulcast_encoder_adapter",
Harald Alvestrandafaae4e2024-03-12 12:06:162755 "../media:video_broadcaster",
Harald Alvestrand82a94122021-03-08 07:01:482756 "../modules/audio_device",
2757 "../modules/audio_processing",
Per K89ca2992023-01-10 13:28:252758 "../modules/rtp_rtcp:rtp_rtcp_format",
Harald Alvestrand9a953b22024-01-26 07:11:502759 "../p2p:connection",
Harald Alvestrand82a94122021-03-08 07:01:482760 "../p2p:fake_port_allocator",
2761 "../p2p:p2p_test_utils",
Harald Alvestrand3bddaed2024-02-06 22:54:252762 "../p2p:port_allocator",
Harald Alvestrand82a94122021-03-08 07:01:482763 "../p2p:rtc_p2p",
Harald Alvestrand82a94122021-03-08 07:01:482764 "../rtc_base:checks",
2765 "../rtc_base:gunit_helpers",
Florent Castelli0af55ba2022-04-04 13:06:302766 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 13:18:462767 "../rtc_base:macromagic",
Florent Castellia138c6c2023-01-04 11:01:092768 "../rtc_base:rtc_certificate_generator",
Florent Castellia138c6c2023-01-04 11:01:092769 "../rtc_base:ssl",
Florent Castelli57aa81b2022-04-04 15:14:022770 "../rtc_base:stringutils",
Harald Alvestrand82a94122021-03-08 07:01:482771 "../rtc_base:task_queue_for_test",
2772 "../rtc_base:threading",
Florent Castellidd837e22022-04-04 15:16:152773 "../rtc_base:timeutils",
Tommi1c0d91f2023-03-02 14:42:062774 "../rtc_base:weak_ptr",
Harald Alvestrand82a94122021-03-08 07:01:482775 "../rtc_base/synchronization:mutex",
2776 "../rtc_base/task_utils:repeating_task",
2777 "../rtc_base/third_party/sigslot",
Artem Titovd12582a2023-04-12 13:29:072778 "../test:frame_generator_capturer",
Jonas Orelanded99dae2022-03-09 08:28:102779 "../test:scoped_key_value_config",
Harald Alvestrand82a94122021-03-08 07:01:482780 "../test:test_support",
Henrik Boströmda9e2842023-04-06 13:27:332781 "//third_party/abseil-cpp/absl/algorithm:container",
Florent Castelli43a5dd82023-04-12 10:45:072782 "//third_party/abseil-cpp/absl/strings",
Henrik Boströmda9e2842023-04-06 13:27:332783 "//third_party/abseil-cpp/absl/types:optional",
2784 ]
Harald Alvestrand82a94122021-03-08 07:01:482785 }
Florent Castelli90b74382022-04-25 15:28:002786
2787 svc_tests_resources = [
2788 "../resources/difficult_photo_1850_1110.yuv",
2789 "../resources/photo_1850_1110.yuv",
2790 "../resources/presentation_1850_1110.yuv",
2791 "../resources/web_screenshot_1850_1110.yuv",
2792 ]
2793
2794 if (is_ios) {
2795 bundle_data("svc_tests_bundle_data") {
2796 testonly = true
2797 sources = svc_tests_resources
2798 outputs = [ "{{bundle_resources_dir}}/{{source_file_part}}" ]
2799 }
2800 }
2801
2802 rtc_test("svc_tests") {
2803 sources = [ "test/svc_e2e_tests.cc" ]
2804 data = svc_tests_resources
2805 deps = [
Per K569849e2024-04-29 08:37:372806 "..//test/network:simulated_network",
Florent Castelli90b74382022-04-25 15:28:002807 "../api:create_network_emulation_manager",
2808 "../api:create_peer_connection_quality_test_frame_generator",
2809 "../api:create_peerconnection_quality_test_fixture",
2810 "../api:frame_generator_api",
2811 "../api:media_stream_interface",
2812 "../api:network_emulation_manager_api",
2813 "../api:peer_connection_quality_test_fixture_api",
Evan Shrubsole9b235cd2022-12-06 10:09:102814 "../api:rtc_stats_api",
Florent Castelli90b74382022-04-25 15:28:002815 "../api:simulated_network_api",
2816 "../api:time_controller",
Artem Titovc45f4e42022-09-24 14:56:072817 "../api/test/metrics:global_metrics_logger_and_exporter",
Jeremy Lecontea3e51df2022-11-10 14:42:532818 "../api/test/pclf:media_configuration",
2819 "../api/test/pclf:media_quality_test_params",
2820 "../api/test/pclf:peer_configurer",
Florent Castelli90b74382022-04-25 15:28:002821 "../api/video_codecs:video_codecs_api",
Florent Castelli90b74382022-04-25 15:28:002822 "../modules/video_coding:webrtc_vp9",
Byoungchan Leef22c6b42022-09-20 23:56:402823 "../modules/video_coding/svc:scalability_mode_util",
Florent Castelli90b74382022-04-25 15:28:002824 "../rtc_base/containers:flat_map",
2825 "../system_wrappers:field_trial",
2826 "../test:field_trial",
2827 "../test:fileutils",
2828 "../test:test_main",
2829 "../test:test_support",
Florent Castelli90b74382022-04-25 15:28:002830 "../test/pc/e2e:network_quality_metrics_reporter",
Ilya Nikolaevskiy6eb1e702022-11-18 09:47:402831 "../test/pc/e2e/analyzer/video:default_video_quality_analyzer",
Florent Castelli90b74382022-04-25 15:28:002832 ]
2833
2834 if (is_ios) {
2835 deps += [ ":svc_tests_bundle_data" ]
2836 }
2837 }
kjellander142f8c52016-06-13 07:08:242838}