blob: 8905c4aced8eb00eb5e96a38fe8fe391bb1b8211 [file] [log] [blame]
skvladcc91d282016-10-03 18:31:22 -07001# 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
mbonadei9aa3f0a2017-01-24 06:58:22 -08009import("../webrtc.gni")
Kimmo Kinnunen08f6a6c2019-02-26 11:46:17 +020010if (rtc_enable_protobuf) {
Dan Minor9c686132018-01-15 10:20:00 -050011 import("//third_party/protobuf/proto_library.gni")
12}
skvladcc91d282016-10-03 18:31:22 -070013if (is_android) {
14 import("//build/config/android/config.gni")
15 import("//build/config/android/rules.gni")
16}
17
kjellander6ceab082016-10-28 05:44:03 -070018group("logging") {
Mirko Bonadei818d9102017-12-12 12:46:13 +010019 deps = [
Qingsi Wang970b0882018-02-01 11:04:46 -080020 ":rtc_event_audio",
Björn Tereliusc15bced2022-01-18 16:03:42 +010021 ":rtc_event_begin_end",
Qingsi Wang970b0882018-02-01 11:04:46 -080022 ":rtc_event_bwe",
Qingsi Wang970b0882018-02-01 11:04:46 -080023 ":rtc_event_log_impl_encoder",
Qingsi Wang970b0882018-02-01 11:04:46 -080024 ":rtc_event_pacing",
25 ":rtc_event_rtp_rtcp",
26 ":rtc_event_video",
kjellander6ceab082016-10-28 05:44:03 -070027 ]
kjellander6ceab082016-10-28 05:44:03 -070028}
29
skvladcc91d282016-10-03 18:31:22 -070030rtc_source_set("rtc_event_log_api") {
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +010031 sources = [ "rtc_event_log/encoder/rtc_event_log_encoder.h" ]
Qingsi Wang970b0882018-02-01 11:04:46 -080032
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +010033 deps = [ "../api/rtc_event_log" ]
Qingsi Wang970b0882018-02-01 11:04:46 -080034}
35
Björn Terelius98952d72021-09-22 19:37:22 +020036rtc_library("rtc_event_field") {
37 sources = [
Björn Tereliusfe903d52021-09-27 18:30:44 +020038 "rtc_event_log/events/fixed_length_encoding_parameters_v3.cc",
39 "rtc_event_log/events/fixed_length_encoding_parameters_v3.h",
Björn Terelius01ef37c2022-01-20 14:36:52 +010040 "rtc_event_log/events/rtc_event_definition.h",
Björn Tereliusfe903d52021-09-27 18:30:44 +020041 "rtc_event_log/events/rtc_event_field_encoding.cc",
42 "rtc_event_log/events/rtc_event_field_encoding.h",
43 "rtc_event_log/events/rtc_event_field_encoding_parser.cc",
44 "rtc_event_log/events/rtc_event_field_encoding_parser.h",
Björn Terelius98952d72021-09-22 19:37:22 +020045 "rtc_event_log/events/rtc_event_field_extraction.cc",
46 "rtc_event_log/events/rtc_event_field_extraction.h",
47 ]
48
49 deps = [
50 ":rtc_event_number_encodings",
51 "../api:array_view",
52 "../api/rtc_event_log",
Björn Tereliusc15bced2022-01-18 16:03:42 +010053 "../api/units:timestamp",
Björn Tereliusfe903d52021-09-27 18:30:44 +020054 "../rtc_base:bitstream_reader",
Björn Terelius98952d72021-09-22 19:37:22 +020055 "../rtc_base:checks",
56 "../rtc_base:logging",
Björn Terelius98952d72021-09-22 19:37:22 +020057 ]
58 absl_deps = [
Björn Terelius98952d72021-09-22 19:37:22 +020059 "//third_party/abseil-cpp/absl/strings",
60 "//third_party/abseil-cpp/absl/types:optional",
61 ]
62}
63
Mirko Bonadei86d053c2019-10-17 21:32:04 +020064rtc_library("rtc_stream_config") {
Qingsi Wang970b0882018-02-01 11:04:46 -080065 sources = [
66 "rtc_event_log/rtc_stream_config.cc",
67 "rtc_event_log/rtc_stream_config.h",
68 ]
69
70 deps = [
Niels Mölleref1052a2019-03-20 08:40:23 +010071 "../api:rtp_headers",
Niels Möller6dcd4dc2019-08-26 10:45:28 +020072 "../api:rtp_parameters",
Qingsi Wang970b0882018-02-01 11:04:46 -080073 ]
Ali Tofigh277766f2022-07-15 00:44:02 +020074 absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
Qingsi Wang970b0882018-02-01 11:04:46 -080075}
76
Mirko Bonadei86d053c2019-10-17 21:32:04 +020077rtc_library("rtc_event_pacing") {
Qingsi Wang970b0882018-02-01 11:04:46 -080078 sources = [
Ilya Nikolaevskiya4259f62017-12-05 13:19:45 +010079 "rtc_event_log/events/rtc_event_alr_state.cc",
80 "rtc_event_log/events/rtc_event_alr_state.h",
Qingsi Wang970b0882018-02-01 11:04:46 -080081 ]
82
83 deps = [
Björn Tereliusc15bced2022-01-18 16:03:42 +010084 ":rtc_event_field",
Danil Chapovalov16cb1f62019-09-05 11:29:59 +020085 "../api/rtc_event_log",
Björn Tereliusada810a2021-05-24 10:19:55 +020086 "../api/units:timestamp",
Qingsi Wang970b0882018-02-01 11:04:46 -080087 ]
Björn Tereliusd12a14e2022-02-08 18:20:18 +010088 absl_deps = [
89 "//third_party/abseil-cpp/absl/memory",
90 "//third_party/abseil-cpp/absl/strings",
91 ]
Qingsi Wang970b0882018-02-01 11:04:46 -080092}
93
Mirko Bonadei86d053c2019-10-17 21:32:04 +020094rtc_library("rtc_event_audio") {
Qingsi Wang970b0882018-02-01 11:04:46 -080095 sources = [
Elad Alon652cc842017-10-02 11:27:52 +020096 "rtc_event_log/events/rtc_event_audio_network_adaptation.cc",
97 "rtc_event_log/events/rtc_event_audio_network_adaptation.h",
98 "rtc_event_log/events/rtc_event_audio_playout.cc",
99 "rtc_event_log/events/rtc_event_audio_playout.h",
100 "rtc_event_log/events/rtc_event_audio_receive_stream_config.cc",
101 "rtc_event_log/events/rtc_event_audio_receive_stream_config.h",
102 "rtc_event_log/events/rtc_event_audio_send_stream_config.cc",
103 "rtc_event_log/events/rtc_event_audio_send_stream_config.h",
Qingsi Wang970b0882018-02-01 11:04:46 -0800104 ]
105
106 deps = [
Björn Tereliusd12a14e2022-02-08 18:20:18 +0100107 ":rtc_event_field",
Qingsi Wang970b0882018-02-01 11:04:46 -0800108 ":rtc_stream_config",
Danil Chapovalov16cb1f62019-09-05 11:29:59 +0200109 "../api/rtc_event_log",
Björn Tereliusada810a2021-05-24 10:19:55 +0200110 "../api/units:timestamp",
Qingsi Wang970b0882018-02-01 11:04:46 -0800111 "../modules/audio_coding:audio_network_adaptor_config",
Elad Alon0b1b5c12018-11-09 21:50:14 +0100112 "../rtc_base:checks",
Qingsi Wang970b0882018-02-01 11:04:46 -0800113 ]
Björn Tereliusd12a14e2022-02-08 18:20:18 +0100114 absl_deps = [
115 "//third_party/abseil-cpp/absl/memory",
116 "//third_party/abseil-cpp/absl/strings",
117 ]
Qingsi Wang970b0882018-02-01 11:04:46 -0800118}
119
Björn Tereliusc15bced2022-01-18 16:03:42 +0100120rtc_library("rtc_event_begin_end") {
121 sources = [
122 "rtc_event_log/events/rtc_event_begin_log.cc",
123 "rtc_event_log/events/rtc_event_begin_log.h",
124 "rtc_event_log/events/rtc_event_end_log.cc",
125 "rtc_event_log/events/rtc_event_end_log.h",
126 ]
127 deps = [
128 ":rtc_event_field",
129 "../api:array_view",
130 "../api/rtc_event_log",
131 "../api/units:timestamp",
132 ]
133 absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
134}
135
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200136rtc_library("rtc_event_bwe") {
Qingsi Wang970b0882018-02-01 11:04:46 -0800137 sources = [
Elad Alon652cc842017-10-02 11:27:52 +0200138 "rtc_event_log/events/rtc_event_bwe_update_delay_based.cc",
139 "rtc_event_log/events/rtc_event_bwe_update_delay_based.h",
140 "rtc_event_log/events/rtc_event_bwe_update_loss_based.cc",
141 "rtc_event_log/events/rtc_event_bwe_update_loss_based.h",
Elad Alon652cc842017-10-02 11:27:52 +0200142 "rtc_event_log/events/rtc_event_probe_cluster_created.cc",
143 "rtc_event_log/events/rtc_event_probe_cluster_created.h",
144 "rtc_event_log/events/rtc_event_probe_result_failure.cc",
145 "rtc_event_log/events/rtc_event_probe_result_failure.h",
146 "rtc_event_log/events/rtc_event_probe_result_success.cc",
147 "rtc_event_log/events/rtc_event_probe_result_success.h",
Sebastian Jansson0a5ed892019-09-18 15:37:31 +0200148 "rtc_event_log/events/rtc_event_remote_estimate.h",
Sebastian Jansson166b45d2019-05-13 11:57:42 +0200149 "rtc_event_log/events/rtc_event_route_change.cc",
150 "rtc_event_log/events/rtc_event_route_change.h",
Qingsi Wang970b0882018-02-01 11:04:46 -0800151 ]
152
153 deps = [
Björn Tereliusd12a14e2022-02-08 18:20:18 +0100154 ":rtc_event_field",
Niels Möller0d863f72020-11-24 17:50:31 +0100155 "../api:network_state_predictor_api",
Danil Chapovalov16cb1f62019-09-05 11:29:59 +0200156 "../api/rtc_event_log",
Sebastian Jansson0a5ed892019-09-18 15:37:31 +0200157 "../api/units:data_rate",
Björn Tereliusada810a2021-05-24 10:19:55 +0200158 "../api/units:timestamp",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200159 ]
160 absl_deps = [
Karl Wiberg918f50c2018-07-05 11:40:33 +0200161 "//third_party/abseil-cpp/absl/memory",
Björn Tereliusd12a14e2022-02-08 18:20:18 +0100162 "//third_party/abseil-cpp/absl/strings",
Sebastian Jansson0a5ed892019-09-18 15:37:31 +0200163 "//third_party/abseil-cpp/absl/types:optional",
Qingsi Wang970b0882018-02-01 11:04:46 -0800164 ]
165}
166
Björn Terelius00c12f62020-08-06 12:37:08 +0200167rtc_library("rtc_event_frame_events") {
168 sources = [
169 "rtc_event_log/events/rtc_event_frame_decoded.cc",
170 "rtc_event_log/events/rtc_event_frame_decoded.h",
171 ]
172 deps = [
Björn Terelius9a609702022-02-11 14:25:49 +0100173 ":rtc_event_field",
Björn Terelius00c12f62020-08-06 12:37:08 +0200174 "../api/rtc_event_log",
Björn Tereliusada810a2021-05-24 10:19:55 +0200175 "../api/units:timestamp",
Björn Terelius00c12f62020-08-06 12:37:08 +0200176 "../api/video:video_frame",
177 "../rtc_base:timeutils",
178 ]
179 absl_deps = [
180 "//third_party/abseil-cpp/absl/memory",
Björn Terelius9a609702022-02-11 14:25:49 +0100181 "//third_party/abseil-cpp/absl/strings",
Björn Terelius00c12f62020-08-06 12:37:08 +0200182 "//third_party/abseil-cpp/absl/types:optional",
183 ]
184}
185
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200186rtc_library("rtc_event_generic_packet_events") {
Piotr (Peter) Slatalaf6adac82019-02-08 10:31:35 -0800187 visibility = [ "*" ]
188 sources = [
189 "rtc_event_log/events/rtc_event_generic_ack_received.cc",
190 "rtc_event_log/events/rtc_event_generic_ack_received.h",
191 "rtc_event_log/events/rtc_event_generic_packet_received.cc",
192 "rtc_event_log/events/rtc_event_generic_packet_received.h",
193 "rtc_event_log/events/rtc_event_generic_packet_sent.cc",
194 "rtc_event_log/events/rtc_event_generic_packet_sent.h",
195 ]
196 deps = [
Björn Terelius9a609702022-02-11 14:25:49 +0100197 ":rtc_event_field",
Danil Chapovalov16cb1f62019-09-05 11:29:59 +0200198 "../api/rtc_event_log",
Björn Tereliusada810a2021-05-24 10:19:55 +0200199 "../api/units:timestamp",
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200200 "../rtc_base:timeutils",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200201 ]
202 absl_deps = [
tzik8aa00f02019-02-18 22:28:26 +0900203 "//third_party/abseil-cpp/absl/memory",
Björn Terelius9a609702022-02-11 14:25:49 +0100204 "//third_party/abseil-cpp/absl/strings",
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200205 "//third_party/abseil-cpp/absl/types:optional",
Piotr (Peter) Slatalaf6adac82019-02-08 10:31:35 -0800206 ]
Piotr (Peter) Slatalaf6adac82019-02-08 10:31:35 -0800207}
208
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200209rtc_library("rtc_event_rtp_rtcp") {
Qingsi Wang970b0882018-02-01 11:04:46 -0800210 sources = [
Björn Terelius9a609702022-02-11 14:25:49 +0100211 "rtc_event_log/events/logged_rtp_rtcp.h",
Elad Alon652cc842017-10-02 11:27:52 +0200212 "rtc_event_log/events/rtc_event_rtcp_packet_incoming.cc",
213 "rtc_event_log/events/rtc_event_rtcp_packet_incoming.h",
214 "rtc_event_log/events/rtc_event_rtcp_packet_outgoing.cc",
215 "rtc_event_log/events/rtc_event_rtcp_packet_outgoing.h",
216 "rtc_event_log/events/rtc_event_rtp_packet_incoming.cc",
217 "rtc_event_log/events/rtc_event_rtp_packet_incoming.h",
218 "rtc_event_log/events/rtc_event_rtp_packet_outgoing.cc",
219 "rtc_event_log/events/rtc_event_rtp_packet_outgoing.h",
Qingsi Wang970b0882018-02-01 11:04:46 -0800220 ]
221
222 deps = [
Björn Terelius9a609702022-02-11 14:25:49 +0100223 ":rtc_event_field",
Qingsi Wang970b0882018-02-01 11:04:46 -0800224 "../api:array_view",
Björn Terelius9a609702022-02-11 14:25:49 +0100225 "../api:rtp_headers",
Danil Chapovalov16cb1f62019-09-05 11:29:59 +0200226 "../api/rtc_event_log",
Björn Terelius9a609702022-02-11 14:25:49 +0100227 "../api/units:timestamp",
Qingsi Wang970b0882018-02-01 11:04:46 -0800228 "../modules/rtp_rtcp:rtp_rtcp_format",
Florent Castellif9c59842022-04-19 17:07:23 +0200229 "../rtc_base:buffer",
Elad Alon0b1b5c12018-11-09 21:50:14 +0100230 "../rtc_base:checks",
Qingsi Wang970b0882018-02-01 11:04:46 -0800231 ]
Björn Terelius9a609702022-02-11 14:25:49 +0100232 absl_deps = [
233 "//third_party/abseil-cpp/absl/memory",
234 "//third_party/abseil-cpp/absl/strings",
235 ]
Qingsi Wang970b0882018-02-01 11:04:46 -0800236}
237
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200238rtc_library("rtc_event_video") {
Qingsi Wang970b0882018-02-01 11:04:46 -0800239 sources = [
Elad Alon652cc842017-10-02 11:27:52 +0200240 "rtc_event_log/events/rtc_event_video_receive_stream_config.cc",
241 "rtc_event_log/events/rtc_event_video_receive_stream_config.h",
242 "rtc_event_log/events/rtc_event_video_send_stream_config.cc",
243 "rtc_event_log/events/rtc_event_video_send_stream_config.h",
skvladcc91d282016-10-03 18:31:22 -0700244 ]
Elad Alon83ccca12017-10-04 13:18:26 +0200245
kjellander727ac1d2017-03-08 02:12:11 -0800246 deps = [
Björn Terelius9a609702022-02-11 14:25:49 +0100247 ":rtc_event_field",
Qingsi Wang970b0882018-02-01 11:04:46 -0800248 ":rtc_stream_config",
Danil Chapovalov16cb1f62019-09-05 11:29:59 +0200249 "../api/rtc_event_log",
Björn Tereliusada810a2021-05-24 10:19:55 +0200250 "../api/units:timestamp",
Elad Alon0b1b5c12018-11-09 21:50:14 +0100251 "../rtc_base:checks",
kjellander727ac1d2017-03-08 02:12:11 -0800252 ]
Björn Terelius9a609702022-02-11 14:25:49 +0100253 absl_deps = [
254 "//third_party/abseil-cpp/absl/memory",
255 "//third_party/abseil-cpp/absl/strings",
256 ]
skvladcc91d282016-10-03 18:31:22 -0700257}
258
Björn Terelius98952d72021-09-22 19:37:22 +0200259rtc_library("rtc_event_number_encodings") {
skvladcc91d282016-10-03 18:31:22 -0700260 sources = [
Björn Terelius98952d72021-09-22 19:37:22 +0200261 "rtc_event_log/encoder/bit_writer.cc",
262 "rtc_event_log/encoder/bit_writer.h",
Elad Alond95b0a22018-11-09 16:38:54 +0100263 "rtc_event_log/encoder/rtc_event_log_encoder_common.cc",
264 "rtc_event_log/encoder/rtc_event_log_encoder_common.h",
Steve Anton10542f22019-01-11 09:11:00 -0800265 "rtc_event_log/encoder/var_int.cc",
266 "rtc_event_log/encoder/var_int.h",
skvladcc91d282016-10-03 18:31:22 -0700267 ]
268
269 defines = []
270
271 deps = [
Florent Castelli7f623b02022-04-14 13:34:56 +0200272 "../rtc_base:bit_buffer",
Björn Terelius98952d72021-09-22 19:37:22 +0200273 "../rtc_base:bitstream_reader",
274 "../rtc_base:checks",
275 "../rtc_base:ignore_wundef",
276 "../rtc_base:macromagic",
Björn Terelius98952d72021-09-22 19:37:22 +0200277 ]
278 absl_deps = [
279 "//third_party/abseil-cpp/absl/memory",
280 "//third_party/abseil-cpp/absl/strings",
281 "//third_party/abseil-cpp/absl/types:optional",
282 ]
283}
284
285# TODO(eladalon): Break down into (1) encoder and (2) decoder; we don't need
286# the decoder code in the WebRTC library, only in unit tests and tools.
287rtc_library("rtc_event_log_impl_encoder") {
288 sources = [
289 "rtc_event_log/encoder/blob_encoding.cc",
290 "rtc_event_log/encoder/blob_encoding.h",
291 "rtc_event_log/encoder/delta_encoding.cc",
292 "rtc_event_log/encoder/delta_encoding.h",
293 ]
294
295 defines = []
296
297 deps = [
298 ":rtc_event_number_encodings",
Niels Mölleref1052a2019-03-20 08:40:23 +0100299 "../api:rtp_headers",
Niels Möller6dcd4dc2019-08-26 10:45:28 +0200300 "../api:rtp_parameters",
Yves Gerey3e707812018-11-28 16:47:49 +0100301 "../api/transport:network_control",
Florent Castelli7f623b02022-04-14 13:34:56 +0200302 "../rtc_base:bit_buffer",
Danil Chapovalov707e3d12021-09-07 15:19:16 +0200303 "../rtc_base:bitstream_reader",
Florent Castellif9c59842022-04-19 17:07:23 +0200304 "../rtc_base:buffer",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100305 "../rtc_base:checks",
Mirko Bonadei3663ed32019-10-19 12:03:23 +0200306 "../rtc_base:ignore_wundef",
Florent Castelli0af55ba2022-04-04 15:06:30 +0200307 "../rtc_base:logging",
Florent Castellie10a9f62022-04-04 17:04:37 +0200308 "../rtc_base:safe_conversions",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200309 ]
310 absl_deps = [
Elad Alon50b1e6b2018-10-18 13:43:35 +0200311 "//third_party/abseil-cpp/absl/memory",
Artem Titov94b57c02019-03-21 13:35:10 +0100312 "//third_party/abseil-cpp/absl/strings",
Elad Alon73f39172018-10-23 18:24:10 +0200313 "//third_party/abseil-cpp/absl/types:optional",
skvladcc91d282016-10-03 18:31:22 -0700314 ]
315
316 if (rtc_enable_protobuf) {
Bjorn Tereliusc35096d2018-10-24 13:51:56 +0200317 deps += [
318 ":ice_log",
319 ":rtc_event_audio",
Björn Tereliusc15bced2022-01-18 16:03:42 +0100320 ":rtc_event_begin_end",
Bjorn Tereliusc35096d2018-10-24 13:51:56 +0200321 ":rtc_event_bwe",
Björn Terelius01ef37c2022-01-20 14:36:52 +0100322 ":rtc_event_field",
Björn Terelius00c12f62020-08-06 12:37:08 +0200323 ":rtc_event_frame_events",
Piotr (Peter) Slatalaf6adac82019-02-08 10:31:35 -0800324 ":rtc_event_generic_packet_events",
Bjorn Tereliusc35096d2018-10-24 13:51:56 +0200325 ":rtc_event_log2_proto",
326 ":rtc_event_log_api",
Bjorn Tereliusc35096d2018-10-24 13:51:56 +0200327 ":rtc_event_log_proto",
328 ":rtc_event_pacing",
329 ":rtc_event_rtp_rtcp",
330 ":rtc_event_video",
331 ":rtc_stream_config",
332 "../api:array_view",
Niels Möller0d863f72020-11-24 17:50:31 +0100333 "../api:network_state_predictor_api",
Bjorn Tereliusc35096d2018-10-24 13:51:56 +0200334 "../modules/audio_coding:audio_network_adaptor",
Bjorn Tereliusc35096d2018-10-24 13:51:56 +0200335 "../modules/rtp_rtcp:rtp_rtcp_format",
336 ]
337 sources += [
338 "rtc_event_log/encoder/rtc_event_log_encoder_legacy.cc",
339 "rtc_event_log/encoder/rtc_event_log_encoder_legacy.h",
340 "rtc_event_log/encoder/rtc_event_log_encoder_new_format.cc",
341 "rtc_event_log/encoder/rtc_event_log_encoder_new_format.h",
Björn Terelius01ef37c2022-01-20 14:36:52 +0100342 "rtc_event_log/encoder/rtc_event_log_encoder_v3.cc",
343 "rtc_event_log/encoder/rtc_event_log_encoder_v3.h",
Bjorn Tereliusc35096d2018-10-24 13:51:56 +0200344 ]
skvladcc91d282016-10-03 18:31:22 -0700345 }
skvladcc91d282016-10-03 18:31:22 -0700346}
347
Niels Möllerd8b9ed72019-05-08 13:53:51 +0200348# TODO(bugs.webrtc.org/6463): For backwards compatibility; delete as
349# soon as downstream dependencies are updated.
Qingsi Wang970b0882018-02-01 11:04:46 -0800350rtc_source_set("rtc_event_log_impl_output") {
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100351 sources = [ "rtc_event_log/output/rtc_event_log_output_file.h" ]
352 deps = [ "../api:rtc_event_log_output_file" ]
Qingsi Wang970b0882018-02-01 11:04:46 -0800353}
354
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200355if (rtc_enable_protobuf) {
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200356 rtc_library("rtc_event_log_impl") {
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200357 visibility = [ "../api/rtc_event_log:rtc_event_log_factory" ]
358 sources = [
359 "rtc_event_log/rtc_event_log_impl.cc",
360 "rtc_event_log/rtc_event_log_impl.h",
361 ]
362 deps = [
363 ":ice_log",
364 ":rtc_event_log_api",
365 ":rtc_event_log_impl_encoder",
366 "../api:libjingle_logging_api",
Artem Titovd15a5752021-02-10 14:31:24 +0100367 "../api:sequence_checker",
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200368 "../api/rtc_event_log",
369 "../api/task_queue",
370 "../rtc_base:checks",
Florent Castelli0af55ba2022-04-04 15:06:30 +0200371 "../rtc_base:logging",
Florent Castelli4467ad72022-04-04 15:18:46 +0200372 "../rtc_base:macromagic",
Florent Castelli33d31fb2022-04-04 16:57:52 +0200373 "../rtc_base:rtc_event",
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200374 "../rtc_base:rtc_task_queue",
Florent Castellie10a9f62022-04-04 17:04:37 +0200375 "../rtc_base:safe_conversions",
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200376 "../rtc_base:safe_minmax",
Florent Castellidd837e22022-04-04 17:16:15 +0200377 "../rtc_base:timeutils",
Mirko Bonadei20e4c802020-11-23 11:07:42 +0100378 "../rtc_base/system:no_unique_address",
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200379 ]
Ali Tofigh277766f2022-07-15 00:44:02 +0200380 absl_deps = [
381 "//third_party/abseil-cpp/absl/strings",
382 "//third_party/abseil-cpp/absl/types:optional",
383 ]
Danil Chapovalovb32f2c72019-05-22 13:39:25 +0200384 }
385}
386
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200387rtc_library("fake_rtc_event_log") {
Qingsi Wang7685e862018-06-11 20:15:46 -0700388 testonly = true
389 sources = [
390 "rtc_event_log/fake_rtc_event_log.cc",
391 "rtc_event_log/fake_rtc_event_log.h",
392 "rtc_event_log/fake_rtc_event_log_factory.cc",
393 "rtc_event_log/fake_rtc_event_log_factory.h",
394 ]
395
396 deps = [
Danil Chapovalov83bbe912019-08-07 12:24:53 +0200397 "../api/rtc_event_log",
Artem Titov94b57c02019-03-21 13:35:10 +0100398 "../rtc_base",
Florent Castelli4467ad72022-04-04 15:18:46 +0200399 "../rtc_base:macromagic",
Danil Chapovalov4f281f12021-01-18 13:29:00 +0100400 "../rtc_base/synchronization:mutex",
Qingsi Wang7685e862018-06-11 20:15:46 -0700401 ]
402}
403
skvladcc91d282016-10-03 18:31:22 -0700404if (rtc_enable_protobuf) {
405 proto_library("rtc_event_log_proto") {
Mirko Bonadeid4746722018-11-19 12:00:51 +0100406 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100407 sources = [ "rtc_event_log/rtc_event_log.proto" ]
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200408 proto_out_dir = "logging/rtc_event_log"
skvladcc91d282016-10-03 18:31:22 -0700409 }
skvladcc91d282016-10-03 18:31:22 -0700410
Mirko Bonadeib3c210f2017-12-15 17:12:42 +0100411 proto_library("rtc_event_log2_proto") {
Mirko Bonadeid4746722018-11-19 12:00:51 +0100412 visibility = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +0100413 sources = [ "rtc_event_log/rtc_event_log2.proto" ]
Mirko Bonadeib3c210f2017-12-15 17:12:42 +0100414 proto_out_dir = "logging/rtc_event_log"
415 }
416
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200417 rtc_library("rtc_event_log_parser") {
Bjorn Terelius73df8832018-04-26 14:46:06 +0200418 visibility = [ "*" ]
skvladcc91d282016-10-03 18:31:22 -0700419 sources = [
Sebastian Jansson3f2b9aa2019-01-03 14:42:15 +0100420 "rtc_event_log/logged_events.h",
Sebastian Janssonb290a6d2019-01-03 14:46:23 +0100421 "rtc_event_log/rtc_event_log_parser.cc",
422 "rtc_event_log/rtc_event_log_parser.h",
Sebastian Jansson03fbf1e2019-01-08 15:31:06 +0100423 "rtc_event_log/rtc_event_processor.cc",
Bjorn Terelius60d629f2018-09-24 17:10:27 +0200424 "rtc_event_log/rtc_event_processor.h",
skvladcc91d282016-10-03 18:31:22 -0700425 ]
426
Mirko Bonadei818d9102017-12-12 12:46:13 +0100427 deps = [
Qingsi Wang8eca1ff2018-02-02 11:49:44 -0800428 ":ice_log",
Björn Terelius6f597bd2021-01-12 16:05:06 +0100429 ":rtc_event_audio",
Björn Tereliusc15bced2022-01-18 16:03:42 +0100430 ":rtc_event_begin_end",
Qingsi Wang970b0882018-02-01 11:04:46 -0800431 ":rtc_event_bwe",
Björn Terelius6f597bd2021-01-12 16:05:06 +0100432 ":rtc_event_frame_events",
433 ":rtc_event_generic_packet_events",
Mirko Bonadeib3c210f2017-12-15 17:12:42 +0100434 ":rtc_event_log2_proto",
Elad Alond95b0a22018-11-09 16:38:54 +0100435 ":rtc_event_log_impl_encoder",
skvladcc91d282016-10-03 18:31:22 -0700436 ":rtc_event_log_proto",
Björn Terelius98952d72021-09-22 19:37:22 +0200437 ":rtc_event_number_encodings",
Björn Terelius6f597bd2021-01-12 16:05:06 +0100438 ":rtc_event_pacing",
439 ":rtc_event_rtp_rtcp",
440 ":rtc_event_video",
Qingsi Wang970b0882018-02-01 11:04:46 -0800441 ":rtc_stream_config",
Artem Titov741daaf2019-03-21 14:37:36 +0100442 "../api:function_view",
Niels Möller0d863f72020-11-24 17:50:31 +0100443 "../api:network_state_predictor_api",
Niels Mölleref1052a2019-03-20 08:40:23 +0100444 "../api:rtp_headers",
Niels Möller6dcd4dc2019-08-26 10:45:28 +0200445 "../api:rtp_parameters",
Danil Chapovalov83bbe912019-08-07 12:24:53 +0200446 "../api/rtc_event_log",
Sebastian Jansson7e4341d2019-01-22 08:42:27 +0100447 "../api/units:data_rate",
448 "../api/units:time_delta",
449 "../api/units:timestamp",
Björn Terelius00c12f62020-08-06 12:37:08 +0200450 "../api/video:video_frame",
Mirko Bonadei818d9102017-12-12 12:46:13 +0100451 "../call:video_stream_api",
Danil Chapovalov7c067772019-10-07 12:56:24 +0200452 "../modules:module_api_public",
michaeltcde46b72017-04-06 05:59:10 -0700453 "../modules/audio_coding:audio_network_adaptor",
Mirko Bonadei818d9102017-12-12 12:46:13 +0100454 "../modules/rtp_rtcp:rtp_rtcp_format",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100455 "../rtc_base:checks",
Ali Tofighe00d7d02022-05-09 13:33:36 +0200456 "../rtc_base:copy_on_write_buffer",
Mirko Bonadei3663ed32019-10-19 12:03:23 +0200457 "../rtc_base:ignore_wundef",
Florent Castelli0af55ba2022-04-04 15:06:30 +0200458 "../rtc_base:logging",
Mirko Bonadei818d9102017-12-12 12:46:13 +0100459 "../rtc_base:protobuf_utils",
Sebastian Jansson7e4341d2019-01-22 08:42:27 +0100460 "../rtc_base:rtc_numerics",
Florent Castellie10a9f62022-04-04 17:04:37 +0200461 "../rtc_base:safe_conversions",
Björn Tereliusb37180f2021-03-31 13:56:57 +0200462 "../rtc_base/system:file_wrapper",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200463 ]
464 absl_deps = [
Karl Wiberg918f50c2018-07-05 11:40:33 +0200465 "//third_party/abseil-cpp/absl/memory",
Ali Tofigh277766f2022-07-15 00:44:02 +0200466 "//third_party/abseil-cpp/absl/strings",
Elad Alon1ac95542018-10-02 13:20:40 +0200467 "//third_party/abseil-cpp/absl/types:optional",
skvladcc91d282016-10-03 18:31:22 -0700468 ]
skvladcc91d282016-10-03 18:31:22 -0700469 }
ehmaldonado1fd08c12017-01-17 02:37:34 -0800470
471 if (rtc_include_tests) {
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200472 rtc_library("rtc_event_log_tests") {
ehmaldonado1fd08c12017-01-17 02:37:34 -0800473 testonly = true
Elad Alon1d87b0e2017-10-03 15:01:03 +0200474 assert(rtc_enable_protobuf)
ehmaldonado1fd08c12017-01-17 02:37:34 -0800475 sources = [
Elad Aloncb21ffe2018-10-19 18:30:30 +0200476 "rtc_event_log/encoder/blob_encoding_unittest.cc",
Elad Alon50b1e6b2018-10-18 13:43:35 +0200477 "rtc_event_log/encoder/delta_encoding_unittest.cc",
Elad Alond95b0a22018-11-09 16:38:54 +0100478 "rtc_event_log/encoder/rtc_event_log_encoder_common_unittest.cc",
Elad Alon1d87b0e2017-10-03 15:01:03 +0200479 "rtc_event_log/encoder/rtc_event_log_encoder_unittest.cc",
Björn Tereliusfe903d52021-09-27 18:30:44 +0200480 "rtc_event_log/events/rtc_event_field_encoding_unittest.cc",
Björn Terelius98952d72021-09-22 19:37:22 +0200481 "rtc_event_log/events/rtc_event_field_extraction_unittest.cc",
ehmaldonado1fd08c12017-01-17 02:37:34 -0800482 "rtc_event_log/rtc_event_log_unittest.cc",
483 "rtc_event_log/rtc_event_log_unittest_helper.cc",
eladalonb5c319a2017-08-17 08:32:39 -0700484 "rtc_event_log/rtc_event_log_unittest_helper.h",
Bjorn Terelius60d629f2018-09-24 17:10:27 +0200485 "rtc_event_log/rtc_event_processor_unittest.cc",
ehmaldonado1fd08c12017-01-17 02:37:34 -0800486 ]
487 deps = [
Bjorn Tereliusf4db5422018-06-26 11:41:27 +0200488 ":ice_log",
Qingsi Wang970b0882018-02-01 11:04:46 -0800489 ":rtc_event_audio",
490 ":rtc_event_bwe",
Björn Terelius98952d72021-09-22 19:37:22 +0200491 ":rtc_event_field",
Björn Terelius00c12f62020-08-06 12:37:08 +0200492 ":rtc_event_frame_events",
Piotr (Peter) Slatala5e2aad12019-02-13 07:49:30 -0800493 ":rtc_event_generic_packet_events",
Bjorn Tereliusc35096d2018-10-24 13:51:56 +0200494 ":rtc_event_log2_proto",
Qingsi Wang970b0882018-02-01 11:04:46 -0800495 ":rtc_event_log_impl_encoder",
ehmaldonado1fd08c12017-01-17 02:37:34 -0800496 ":rtc_event_log_parser",
Mirko Bonadei818d9102017-12-12 12:46:13 +0100497 ":rtc_event_log_proto",
Björn Terelius98952d72021-09-22 19:37:22 +0200498 ":rtc_event_number_encodings",
Bjorn Tereliusf4db5422018-06-26 11:41:27 +0200499 ":rtc_event_pacing",
Qingsi Wang970b0882018-02-01 11:04:46 -0800500 ":rtc_event_rtp_rtcp",
501 ":rtc_event_video",
502 ":rtc_stream_config",
Yves Gerey3e707812018-11-28 16:47:49 +0100503 "../api:array_view",
Niels Möller0d863f72020-11-24 17:50:31 +0100504 "../api:network_state_predictor_api",
Niels Möllerd8b9ed72019-05-08 13:53:51 +0200505 "../api:rtc_event_log_output_file",
Niels Mölleref1052a2019-03-20 08:40:23 +0100506 "../api:rtp_headers",
Niels Möller6dcd4dc2019-08-26 10:45:28 +0200507 "../api:rtp_parameters",
Danil Chapovalov83bbe912019-08-07 12:24:53 +0200508 "../api/rtc_event_log",
Danil Chapovalov4ba04b72019-06-26 15:49:47 +0200509 "../api/rtc_event_log:rtc_event_log_factory",
Danil Chapovalov304ea5f2019-04-11 15:18:18 +0200510 "../api/task_queue:default_task_queue_factory",
Danil Chapovalov640b51e2022-06-08 12:27:51 +0200511 "../api/units:time_delta",
512 "../api/units:timestamp",
ehmaldonado1fd08c12017-01-17 02:37:34 -0800513 "../call",
Mirko Bonadeia0e1a552017-12-04 10:50:51 +0100514 "../call:call_interfaces",
michaeltcde46b72017-04-06 05:59:10 -0700515 "../modules/audio_coding:audio_network_adaptor",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100516 "../modules/rtp_rtcp:rtp_rtcp_format",
Florent Castellif9c59842022-04-19 17:07:23 +0200517 "../rtc_base:buffer",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100518 "../rtc_base:checks",
Florent Castelli4467ad72022-04-04 15:18:46 +0200519 "../rtc_base:macromagic",
Florent Castelli71337f32022-04-14 12:41:26 +0200520 "../rtc_base:random",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700521 "../rtc_base:rtc_base_tests_utils",
Florent Castellidd837e22022-04-04 17:16:15 +0200522 "../rtc_base:timeutils",
Artem Titov94b57c02019-03-21 13:35:10 +0100523 "../system_wrappers",
Patrik Höglund7696bef2018-03-15 15:05:39 +0100524 "../test:fileutils",
kjellander727ac1d2017-03-08 02:12:11 -0800525 "../test:test_support",
Björn Tereliuscc5532f2022-02-10 19:24:14 +0100526 "../test/logging:log_writer",
ehmaldonado1fd08c12017-01-17 02:37:34 -0800527 "//testing/gtest",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200528 ]
529 absl_deps = [
Karl Wiberg918f50c2018-07-05 11:40:33 +0200530 "//third_party/abseil-cpp/absl/memory",
Ali Tofigh277766f2022-07-15 00:44:02 +0200531 "//third_party/abseil-cpp/absl/strings",
Yves Gerey69807e82018-10-30 22:23:02 +0100532 "//third_party/abseil-cpp/absl/types:optional",
ehmaldonado1fd08c12017-01-17 02:37:34 -0800533 ]
ehmaldonado1fd08c12017-01-17 02:37:34 -0800534 }
Mirko Bonadei9d764e82018-07-16 15:38:06 +0200535
Andrey Logvine7c79fd2021-02-01 09:56:37 +0000536 if (!build_with_chromium) {
537 rtc_executable("rtc_event_log_rtp_dump") {
538 testonly = true
539 sources = [ "rtc_event_log/rtc_event_log2rtp_dump.cc" ]
540 deps = [
541 ":rtc_event_log_parser",
542 "../api:array_view",
543 "../api:rtp_headers",
544 "../api/rtc_event_log",
545 "../modules/rtp_rtcp",
546 "../modules/rtp_rtcp:rtp_rtcp_format",
547 "../rtc_base:checks",
548 "../rtc_base:protobuf_utils",
Andrey Logvine7c79fd2021-02-01 09:56:37 +0000549 "../test:rtp_test_utils",
550 "//third_party/abseil-cpp/absl/flags:flag",
551 "//third_party/abseil-cpp/absl/flags:parse",
552 "//third_party/abseil-cpp/absl/flags:usage",
553 "//third_party/abseil-cpp/absl/memory",
Ali Tofigh277766f2022-07-15 00:44:02 +0200554 "//third_party/abseil-cpp/absl/strings",
Andrey Logvine7c79fd2021-02-01 09:56:37 +0000555 "//third_party/abseil-cpp/absl/types:optional",
556 ]
557 }
ivoc54b6e982017-02-08 00:28:09 -0800558 }
ehmaldonado1fd08c12017-01-17 02:37:34 -0800559 }
skvladcc91d282016-10-03 18:31:22 -0700560}
Patrik Höglund731082c2018-01-03 09:08:20 +0100561
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200562rtc_library("ice_log") {
Qingsi Wang8eca1ff2018-02-02 11:49:44 -0800563 sources = [
Zach Steinc64078f2018-11-27 15:53:01 -0800564 "rtc_event_log/events/rtc_event_dtls_transport_state.cc",
565 "rtc_event_log/events/rtc_event_dtls_transport_state.h",
Zach Stein846dfdf2018-11-29 14:12:17 -0800566 "rtc_event_log/events/rtc_event_dtls_writable_state.cc",
567 "rtc_event_log/events/rtc_event_dtls_writable_state.h",
Qingsi Wang8eca1ff2018-02-02 11:49:44 -0800568 "rtc_event_log/events/rtc_event_ice_candidate_pair.cc",
569 "rtc_event_log/events/rtc_event_ice_candidate_pair.h",
570 "rtc_event_log/events/rtc_event_ice_candidate_pair_config.cc",
571 "rtc_event_log/events/rtc_event_ice_candidate_pair_config.h",
Steve Anton10542f22019-01-11 09:11:00 -0800572 "rtc_event_log/ice_logger.cc",
573 "rtc_event_log/ice_logger.h",
Qingsi Wang8eca1ff2018-02-02 11:49:44 -0800574 ]
575
576 deps = [
Björn Terelius9a609702022-02-11 14:25:49 +0100577 ":rtc_event_field",
Mirko Bonadeid151cc62022-06-20 06:35:28 +0000578 "../api:dtls_transport_interface",
Qingsi Wang8eca1ff2018-02-02 11:49:44 -0800579 "../api:libjingle_logging_api",
Danil Chapovalov83bbe912019-08-07 12:24:53 +0200580 "../api/rtc_event_log",
Björn Tereliusada810a2021-05-24 10:19:55 +0200581 "../api/units:timestamp",
Qingsi Wang8eca1ff2018-02-02 11:49:44 -0800582 ]
Björn Terelius9a609702022-02-11 14:25:49 +0100583 absl_deps = [
584 "//third_party/abseil-cpp/absl/memory",
585 "//third_party/abseil-cpp/absl/strings",
586 ]
Qingsi Wang8eca1ff2018-02-02 11:49:44 -0800587}
588
Patrik Höglund731082c2018-01-03 09:08:20 +0100589if (rtc_include_tests) {
Mirko Bonadei86d053c2019-10-17 21:32:04 +0200590 rtc_library("mocks") {
Patrik Höglund731082c2018-01-03 09:08:20 +0100591 testonly = true
592 sources = [
Danil Chapovalovdd7e2842018-03-09 15:37:03 +0000593 "rtc_event_log/mock/mock_rtc_event_log.cc",
Patrik Höglund731082c2018-01-03 09:08:20 +0100594 "rtc_event_log/mock/mock_rtc_event_log.h",
595 ]
596 deps = [
Danil Chapovalov83bbe912019-08-07 12:24:53 +0200597 "../api/rtc_event_log",
Oleh Prypinda04e062018-07-23 10:04:12 +0200598 "../test:test_support",
Patrik Höglund731082c2018-01-03 09:08:20 +0100599 ]
600 }
601}