blob: 923f00a74c74286533dca0493f5caf737c4c3aea [file] [log] [blame]
kjellander@webrtc.org1227ab82014-06-23 19:21:071# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
mbonadei9aa3f0a2017-01-24 14:58:229import("../../webrtc.gni")
kjellanderfb114242016-06-13 07:19:4810
Mirko Bonadei86d053c2019-10-17 19:32:0411rtc_library("remote_bitrate_estimator") {
kjellander@webrtc.org1227ab82014-06-23 19:21:0712 sources = [
pbos@webrtc.org9f79fe62014-12-04 15:34:0613 "aimd_rate_control.cc",
14 "aimd_rate_control.h",
stefan64636dd2016-08-03 07:29:0315 "bwe_defines.cc",
kjellander5c1d0432016-06-09 09:40:5816 "include/bwe_defines.h",
17 "include/remote_bitrate_estimator.h",
pbos@webrtc.org9f79fe62014-12-04 15:34:0618 "inter_arrival.cc",
19 "inter_arrival.h",
kjellander@webrtc.org1227ab82014-06-23 19:21:0720 "overuse_detector.cc",
21 "overuse_detector.h",
pbos@webrtc.org9f79fe62014-12-04 15:34:0622 "overuse_estimator.cc",
23 "overuse_estimator.h",
Victor Boivieae1f8f52021-05-04 13:52:3224 "packet_arrival_map.cc",
25 "packet_arrival_map.h",
pbos@webrtc.org9f79fe62014-12-04 15:34:0626 "remote_bitrate_estimator_abs_send_time.cc",
kjellander5c1d0432016-06-09 09:40:5827 "remote_bitrate_estimator_abs_send_time.h",
kjellander@webrtc.org1227ab82014-06-23 19:21:0728 "remote_bitrate_estimator_single_stream.cc",
kjellander5c1d0432016-06-09 09:40:5829 "remote_bitrate_estimator_single_stream.h",
Erik Språng6b8d3552015-09-24 13:06:5730 "remote_estimator_proxy.cc",
31 "remote_estimator_proxy.h",
kjellander5c1d0432016-06-09 09:40:5832 "test/bwe_test_logging.h",
kjellander@webrtc.org1227ab82014-06-23 19:21:0733 ]
kjellander@webrtc.org9bef5512014-07-13 09:02:5434
gaetano.carlucci61050f62016-09-30 13:29:5435 if (rtc_enable_bwe_test_logging) {
36 defines = [ "BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=1" ]
Mirko Bonadei7255fef2018-09-11 08:49:4137
gaetano.carlucci61050f62016-09-30 13:29:5438 sources += [ "test/bwe_test_logging.cc" ]
39 } else {
40 defines = [ "BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=0" ]
brucedawson07df20b2016-05-23 00:15:0241 }
42
kjellander5c1d0432016-06-09 09:40:5843 deps = [
Ying Wang0810a7c2019-04-10 11:48:2444 "../../api:network_state_predictor_api",
Niels Mölleref1052a2019-03-20 07:40:2345 "../../api:rtp_headers",
Per Kjellander494947b2019-04-16 12:50:0846 "../../api/transport:field_trial_based_config",
Sebastian Janssondf88cc02019-04-15 13:42:2547 "../../api/transport:network_control",
Per Kjellander494947b2019-04-16 12:50:0848 "../../api/transport:webrtc_key_value_config",
Sebastian Jansson7c1744d2018-10-08 09:00:5049 "../../api/units:data_rate",
Danil Chapovalov52c7fd62021-06-03 13:52:2750 "../../api/units:data_size",
51 "../../api/units:time_delta",
Sebastian Jansson5f009952018-11-19 17:02:2052 "../../api/units:timestamp",
Danil Chapovalov599df852017-09-25 13:19:3553 "../../modules:module_api",
Yves Gerey988cc082018-10-23 10:03:0154 "../../modules:module_api_public",
Sebastian Jansson051251f2018-11-29 17:36:4255 "../../modules/congestion_controller/goog_cc:link_capacity_estimator",
Danil Chapovalov599df852017-09-25 13:19:3556 "../../modules/rtp_rtcp:rtp_rtcp_format",
Patrik Höglunda8005cf2017-12-13 15:05:4257 "../../rtc_base:checks",
ehmaldonadof6a861a2017-07-19 17:40:4758 "../../rtc_base:rtc_base_approved",
Johannes Kron3c15f462019-04-02 13:54:2259 "../../rtc_base:rtc_numerics",
Karl Wiberg12edf4c2018-03-07 13:18:5660 "../../rtc_base:safe_minmax",
Christoffer Rodbroed2207a2019-03-27 15:18:3961 "../../rtc_base/experiments:field_trial_parser",
Markus Handelledcb9072020-07-07 12:12:1562 "../../rtc_base/synchronization:mutex",
kjellander5c1d0432016-06-09 09:40:5863 "../../system_wrappers",
Mirko Bonadei17f48782018-09-28 06:51:1064 "../../system_wrappers:field_trial",
65 "../../system_wrappers:metrics",
Mirko Bonadei2dcf3482020-06-05 12:30:4166 ]
67 absl_deps = [
Mirko Bonadei06d35592020-04-01 11:43:0868 "//third_party/abseil-cpp/absl/strings",
Danil Chapovalov0040b662018-06-18 08:48:1669 "//third_party/abseil-cpp/absl/types:optional",
kjellander5c1d0432016-06-09 09:40:5870 ]
kjellander@webrtc.org1227ab82014-06-23 19:21:0771}
kjellanderfb114242016-06-13 07:19:4872
mbonadei2877eaf2017-09-05 10:01:4573if (!build_with_chromium) {
Mirko Bonadei86d053c2019-10-17 19:32:0474 rtc_library("bwe_rtp") {
mbonadei2877eaf2017-09-05 10:01:4575 testonly = true
76 sources = [
77 "tools/bwe_rtp.cc",
78 "tools/bwe_rtp.h",
79 ]
80 deps = [
mbonadei2877eaf2017-09-05 10:01:4581 "../../rtc_base:rtc_base_approved",
82 "../../test:rtp_test_utils",
Danil Chapovalov1a778a22021-06-03 11:27:3583 "../rtp_rtcp:rtp_rtcp_format",
Mirko Bonadei2dcf3482020-06-05 12:30:4184 ]
85 absl_deps = [
Mirko Bonadei79e4c922019-07-08 09:52:2486 "//third_party/abseil-cpp/absl/flags:flag",
87 "//third_party/abseil-cpp/absl/flags:parse",
88 ]
89 }
90
91 rtc_executable("rtp_to_text") {
92 testonly = true
Mirko Bonadeiccbe95f2020-01-21 11:10:1093 sources = [ "tools/rtp_to_text.cc" ]
Mirko Bonadei79e4c922019-07-08 09:52:2494 deps = [
95 ":bwe_rtp",
Mirko Bonadei79e4c922019-07-08 09:52:2496 "../../rtc_base:macromagic",
97 "../../rtc_base:stringutils",
98 "../../test:rtp_test_utils",
Danil Chapovalov1a778a22021-06-03 11:27:3599 "../rtp_rtcp:rtp_rtcp_format",
mbonadei2877eaf2017-09-05 10:01:45100 ]
mbonadei2877eaf2017-09-05 10:01:45101 }
102}
103
kjellanderfb114242016-06-13 07:19:48104if (rtc_include_tests) {
Mirko Bonadei86d053c2019-10-17 19:32:04105 rtc_library("remote_bitrate_estimator_unittests") {
ehmaldonado36268652017-01-19 16:27:11106 testonly = true
kjellandere0629c02017-04-25 11:04:50107
ehmaldonado36268652017-01-19 16:27:11108 sources = [
109 "aimd_rate_control_unittest.cc",
ehmaldonado36268652017-01-19 16:27:11110 "inter_arrival_unittest.cc",
111 "overuse_detector_unittest.cc",
Victor Boivieae1f8f52021-05-04 13:52:32112 "packet_arrival_map_test.cc",
ehmaldonado36268652017-01-19 16:27:11113 "remote_bitrate_estimator_abs_send_time_unittest.cc",
114 "remote_bitrate_estimator_single_stream_unittest.cc",
115 "remote_bitrate_estimator_unittest_helper.cc",
116 "remote_bitrate_estimator_unittest_helper.h",
117 "remote_estimator_proxy_unittest.cc",
ehmaldonado36268652017-01-19 16:27:11118 ]
119 deps = [
ehmaldonado36268652017-01-19 16:27:11120 ":remote_bitrate_estimator",
Yves Gerey3e707812018-11-28 15:47:49121 "..:module_api_public",
Per Kjellander494947b2019-04-16 12:50:08122 "../../api/transport:field_trial_based_config",
Per Kjellander52f7ae72019-09-10 17:28:06123 "../../api/transport:mock_network_control",
Per Kjellanderee153c92019-10-10 14:43:46124 "../../api/transport:network_control",
Artem Titov94b57c02019-03-21 12:35:10125 "../../rtc_base",
Patrik Höglunda8005cf2017-12-13 15:05:42126 "../../rtc_base:checks",
ehmaldonadof6a861a2017-07-19 17:40:47127 "../../rtc_base:rtc_base_approved",
Mirko Bonadeia498ae82017-12-06 08:17:14128 "../../system_wrappers",
ehmaldonado36268652017-01-19 16:27:11129 "../../test:field_trial",
Patrik Höglund7696bef2018-03-15 14:05:39130 "../../test:fileutils",
ehmaldonado36268652017-01-19 16:27:11131 "../../test:test_support",
Artem Titov94b57c02019-03-21 12:35:10132 "../pacing",
Mirko Bonadeib5728d92017-12-06 06:51:33133 "../rtp_rtcp:rtp_rtcp_format",
ehmaldonado36268652017-01-19 16:27:11134 ]
ehmaldonado36268652017-01-19 16:27:11135 }
kjellanderfb114242016-06-13 07:19:48136}