aleloi | 77ad394 | 2016-07-04 06:33:02 -0700 | [diff] [blame] | 1 | # 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 | |
mbonadei | 9aa3f0a | 2017-01-24 06:58:22 -0800 | [diff] [blame] | 9 | import("../../webrtc.gni") |
ehmaldonado | 38a2132 | 2016-09-02 04:10:34 -0700 | [diff] [blame] | 10 | |
kjellander | 6ceab08 | 2016-10-28 05:44:03 -0700 | [diff] [blame] | 11 | group("audio_mixer") { |
Mirko Bonadei | 03d6f2f | 2017-12-05 15:33:16 +0100 | [diff] [blame] | 12 | deps = [ |
kjellander | 6ceab08 | 2016-10-28 05:44:03 -0700 | [diff] [blame] | 13 | ":audio_frame_manipulator", |
| 14 | ":audio_mixer_impl", |
| 15 | ] |
| 16 | } |
| 17 | |
Mirko Bonadei | 86d053c | 2019-10-17 21:32:04 +0200 | [diff] [blame] | 18 | rtc_library("audio_mixer_impl") { |
Mirko Bonadei | 97c65b7 | 2018-10-05 11:19:58 +0200 | [diff] [blame] | 19 | visibility = [ "*" ] |
aleloi | 77ad394 | 2016-07-04 06:33:02 -0700 | [diff] [blame] | 20 | sources = [ |
aleloi | 5d167d6 | 2016-08-24 02:20:54 -0700 | [diff] [blame] | 21 | "audio_mixer_impl.cc", |
| 22 | "audio_mixer_impl.h", |
aleloi | 623427c | 2016-12-08 02:37:58 -0800 | [diff] [blame] | 23 | "default_output_rate_calculator.cc", |
| 24 | "default_output_rate_calculator.h", |
aleloi | 24899e5 | 2017-02-21 05:06:29 -0800 | [diff] [blame] | 25 | "frame_combiner.cc", |
| 26 | "frame_combiner.h", |
aleloi | 623427c | 2016-12-08 02:37:58 -0800 | [diff] [blame] | 27 | "output_rate_calculator.h", |
aleloi | 77ad394 | 2016-07-04 06:33:02 -0700 | [diff] [blame] | 28 | ] |
| 29 | |
aleloi | 4496809 | 2016-08-08 10:18:58 -0700 | [diff] [blame] | 30 | public = [ |
aleloi | 201dfe9 | 2016-10-20 05:06:39 -0700 | [diff] [blame] | 31 | "audio_mixer_impl.h", |
aleloi | 24899e5 | 2017-02-21 05:06:29 -0800 | [diff] [blame] | 32 | "default_output_rate_calculator.h", # For creating a mixer with limiter disabled. |
| 33 | "frame_combiner.h", |
aleloi | 4496809 | 2016-08-08 10:18:58 -0700 | [diff] [blame] | 34 | ] |
| 35 | |
Alex Loiko | 507e8d1 | 2018-02-27 13:51:47 +0100 | [diff] [blame] | 36 | configs += [ "../audio_processing:apm_debug_dump" ] |
| 37 | |
aleloi | 77ad394 | 2016-07-04 06:33:02 -0700 | [diff] [blame] | 38 | deps = [ |
aleloi | 201dfe9 | 2016-10-20 05:06:39 -0700 | [diff] [blame] | 39 | ":audio_frame_manipulator", |
kwiberg | 529662a | 2017-09-04 05:43:17 -0700 | [diff] [blame] | 40 | "../../api:array_view", |
Mirko Bonadei | d970807 | 2019-01-25 20:26:48 +0100 | [diff] [blame] | 41 | "../../api:scoped_refptr", |
Alex Loiko | 8396e34 | 2018-06-21 12:04:05 +0200 | [diff] [blame] | 42 | "../../api/audio:audio_frame_api", |
Gustaf Ullberg | 2ae140a | 2018-02-16 13:43:49 +0100 | [diff] [blame] | 43 | "../../api/audio:audio_mixer_api", |
aleloi | 6321b49 | 2016-12-05 01:46:09 -0800 | [diff] [blame] | 44 | "../../audio/utility:audio_frame_operations", |
Alex Loiko | 507e8d1 | 2018-02-27 13:51:47 +0100 | [diff] [blame] | 45 | "../../common_audio", |
Patrik Höglund | a8005cf | 2017-12-13 16:05:42 +0100 | [diff] [blame] | 46 | "../../rtc_base:checks", |
ehmaldonado | f6a861a | 2017-07-19 10:40:47 -0700 | [diff] [blame] | 47 | "../../rtc_base:rtc_base_approved", |
aleloi | 77ad394 | 2016-07-04 06:33:02 -0700 | [diff] [blame] | 48 | "../../system_wrappers", |
Mirko Bonadei | 17f4878 | 2018-09-28 08:51:10 +0200 | [diff] [blame] | 49 | "../../system_wrappers:metrics", |
aleloi | 6321b49 | 2016-12-05 01:46:09 -0800 | [diff] [blame] | 50 | "../audio_processing", |
Alessio Bazzica | b768e88 | 2018-11-07 14:29:54 +0000 | [diff] [blame] | 51 | "../audio_processing:api", |
Alex Loiko | 507e8d1 | 2018-02-27 13:51:47 +0100 | [diff] [blame] | 52 | "../audio_processing:apm_logging", |
| 53 | "../audio_processing:audio_frame_view", |
Alex Loiko | 2bac896 | 2018-03-27 13:38:36 +0200 | [diff] [blame] | 54 | "../audio_processing/agc2:fixed_digital", |
aleloi | 201dfe9 | 2016-10-20 05:06:39 -0700 | [diff] [blame] | 55 | ] |
| 56 | } |
| 57 | |
Mirko Bonadei | 86d053c | 2019-10-17 21:32:04 +0200 | [diff] [blame] | 58 | rtc_library("audio_frame_manipulator") { |
aleloi | 201dfe9 | 2016-10-20 05:06:39 -0700 | [diff] [blame] | 59 | visibility = [ |
| 60 | ":*", |
| 61 | "../../modules:*", |
| 62 | ] |
| 63 | |
| 64 | sources = [ |
| 65 | "audio_frame_manipulator.cc", |
| 66 | "audio_frame_manipulator.h", |
| 67 | ] |
| 68 | |
| 69 | deps = [ |
Fredrik Solenberg | bbf21a3 | 2018-04-12 22:44:09 +0200 | [diff] [blame] | 70 | "../../api/audio:audio_frame_api", |
Mirko Bonadei | 5e849cf | 2017-12-05 08:02:53 +0100 | [diff] [blame] | 71 | "../../audio/utility:audio_frame_operations", |
Patrik Höglund | a8005cf | 2017-12-13 16:05:42 +0100 | [diff] [blame] | 72 | "../../rtc_base:checks", |
ehmaldonado | f6a861a | 2017-07-19 10:40:47 -0700 | [diff] [blame] | 73 | "../../rtc_base:rtc_base_approved", |
aleloi | 77ad394 | 2016-07-04 06:33:02 -0700 | [diff] [blame] | 74 | ] |
| 75 | } |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 76 | |
| 77 | if (rtc_include_tests) { |
Mirko Bonadei | 86d053c | 2019-10-17 21:32:04 +0200 | [diff] [blame] | 78 | rtc_library("audio_mixer_test_utils") { |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 79 | testonly = true |
kjellander | e0629c0 | 2017-04-25 04:04:50 -0700 | [diff] [blame] | 80 | |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 81 | sources = [ |
aleloi | 2c9306e | 2017-03-29 04:25:16 -0700 | [diff] [blame] | 82 | "gain_change_calculator.cc", |
| 83 | "gain_change_calculator.h", |
| 84 | "sine_wave_generator.cc", |
| 85 | "sine_wave_generator.h", |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 86 | ] |
Alex Loiko | 507e8d1 | 2018-02-27 13:51:47 +0100 | [diff] [blame] | 87 | |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 88 | deps = [ |
| 89 | ":audio_frame_manipulator", |
| 90 | ":audio_mixer_impl", |
kwiberg | 529662a | 2017-09-04 05:43:17 -0700 | [diff] [blame] | 91 | "../../api:array_view", |
Fredrik Solenberg | bbf21a3 | 2018-04-12 22:44:09 +0200 | [diff] [blame] | 92 | "../../api/audio:audio_frame_api", |
Henrik Boström | d2c336f | 2019-07-03 17:11:10 +0200 | [diff] [blame] | 93 | "../../rtc_base:checks", |
| 94 | "../../rtc_base:rtc_base_approved", |
| 95 | ] |
| 96 | } |
| 97 | |
Mirko Bonadei | 86d053c | 2019-10-17 21:32:04 +0200 | [diff] [blame] | 98 | rtc_library("audio_mixer_unittests") { |
Henrik Boström | d2c336f | 2019-07-03 17:11:10 +0200 | [diff] [blame] | 99 | testonly = true |
| 100 | |
| 101 | sources = [ |
| 102 | "audio_frame_manipulator_unittest.cc", |
| 103 | "audio_mixer_impl_unittest.cc", |
| 104 | "frame_combiner_unittest.cc", |
| 105 | ] |
| 106 | |
| 107 | deps = [ |
| 108 | ":audio_frame_manipulator", |
| 109 | ":audio_mixer_impl", |
| 110 | ":audio_mixer_test_utils", |
| 111 | "../../api:array_view", |
Gustaf Ullberg | 2ae140a | 2018-02-16 13:43:49 +0100 | [diff] [blame] | 112 | "../../api/audio:audio_mixer_api", |
aleloi | 2c9306e | 2017-03-29 04:25:16 -0700 | [diff] [blame] | 113 | "../../audio/utility:audio_frame_operations", |
Patrik Höglund | a8005cf | 2017-12-13 16:05:42 +0100 | [diff] [blame] | 114 | "../../rtc_base:checks", |
ehmaldonado | f6a861a | 2017-07-19 10:40:47 -0700 | [diff] [blame] | 115 | "../../rtc_base:rtc_base_approved", |
Danil Chapovalov | d26a916 | 2019-03-19 18:08:37 +0100 | [diff] [blame] | 116 | "../../rtc_base:task_queue_for_test", |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 117 | "../../test:test_support", |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 118 | ] |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 119 | } |
Alex Loiko | 99a2c5d | 2018-02-27 14:09:47 +0100 | [diff] [blame] | 120 | |
| 121 | rtc_executable("audio_mixer_test") { |
| 122 | testonly = true |
| 123 | sources = [ |
| 124 | "audio_mixer_test.cc", |
| 125 | ] |
| 126 | |
| 127 | deps = [ |
| 128 | ":audio_mixer_impl", |
| 129 | "../../api/audio:audio_mixer_api", |
| 130 | "../../common_audio", |
Mirko Bonadei | 2ab97f6 | 2019-07-18 13:44:12 +0200 | [diff] [blame] | 131 | "../../rtc_base:stringutils", |
| 132 | "//third_party/abseil-cpp/absl/flags:flag", |
| 133 | "//third_party/abseil-cpp/absl/flags:parse", |
Alex Loiko | 99a2c5d | 2018-02-27 14:09:47 +0100 | [diff] [blame] | 134 | ] |
| 135 | } |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 136 | } |