blob: 88c826063c6c1a92c57aeff2600c795a0973aa44 [file] [log] [blame]
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +00001# Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
niklase@google.com470e71d2011-07-07 08:21:25 +00002#
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
9{
niklase@google.com470e71d2011-07-07 08:21:25 +000010 'targets': [
11 {
12 'target_name': 'NetEq',
wjia@webrtc.orga3c82bf2013-01-18 23:42:21 +000013 'type': 'static_library',
niklase@google.com470e71d2011-07-07 08:21:25 +000014 'dependencies': [
xians@google.comd3185fe2011-09-12 12:24:39 +000015 'CNG',
kjellander@webrtc.org0403ef42011-11-17 08:35:47 +000016 '<(webrtc_root)/common_audio/common_audio.gyp:signal_processing',
niklase@google.com470e71d2011-07-07 08:21:25 +000017 ],
18 'defines': [
xians@google.comd3185fe2011-09-12 12:24:39 +000019 'NETEQ_VOICEENGINE_CODECS', # TODO: Should create a Chrome define which
20 'SCRATCH', # specifies a subset of codecs to support.
niklase@google.com470e71d2011-07-07 08:21:25 +000021 ],
22 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000023 'interface',
niklase@google.com470e71d2011-07-07 08:21:25 +000024 ],
25 'direct_dependent_settings': {
26 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000027 'interface',
niklase@google.com470e71d2011-07-07 08:21:25 +000028 ],
29 },
30 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000031 'interface/webrtc_neteq.h',
32 'interface/webrtc_neteq_help_macros.h',
33 'interface/webrtc_neteq_internal.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000034 'accelerate.c',
35 'automode.c',
36 'automode.h',
37 'bgn_update.c',
38 'buffer_stats.h',
39 'bufstats_decision.c',
40 'cng_internal.c',
41 'codec_db.c',
42 'codec_db.h',
43 'codec_db_defines.h',
44 'correlator.c',
45 'delay_logging.h',
46 'dsp.c',
47 'dsp.h',
48 'dsp_helpfunctions.c',
49 'dsp_helpfunctions.h',
50 'dtmf_buffer.c',
51 'dtmf_buffer.h',
52 'dtmf_tonegen.c',
53 'dtmf_tonegen.h',
54 'expand.c',
55 'mcu.h',
56 'mcu_address_init.c',
57 'mcu_dsp_common.c',
58 'mcu_dsp_common.h',
59 'mcu_reset.c',
60 'merge.c',
61 'min_distortion.c',
62 'mix_voice_unvoice.c',
63 'mute_signal.c',
64 'neteq_defines.h',
65 'neteq_error_codes.h',
66 'neteq_statistics.h',
67 'normal.c',
68 'packet_buffer.c',
69 'packet_buffer.h',
70 'peak_detection.c',
71 'preemptive_expand.c',
72 'random_vector.c',
73 'recin.c',
74 'recout.c',
75 'rtcp.c',
76 'rtcp.h',
77 'rtp.c',
78 'rtp.h',
79 'set_fs.c',
80 'signal_mcu.c',
81 'split_and_insert.c',
82 'unmute_signal.c',
83 'webrtc_neteq.c',
84 ],
85 },
xians@google.comf67f1972011-08-08 12:56:26 +000086 ], # targets
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000087 'conditions': [
mflodman@webrtc.org6af95942012-05-24 13:23:35 +000088 ['include_tests==1', {
xians@google.comf67f1972011-08-08 12:56:26 +000089 'targets': [
90 {
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000091 'target_name': 'neteq_unittests',
92 'type': 'executable',
93 'dependencies': [
94 'NetEq',
95 'NetEqTestTools',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +000096 '<(DEPTH)/testing/gtest.gyp:gtest',
97 '<(webrtc_root)/test/test.gyp:test_support_main',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000098 ],
99 'sources': [
henrik.lundin@webrtc.org0fcc2eb2011-11-25 13:43:42 +0000100 'webrtc_neteq_unittest.cc',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000101 ],
102 }, # neteq_unittests
103 {
xians@google.comf67f1972011-08-08 12:56:26 +0000104 'target_name': 'NetEqRTPplay',
105 'type': 'executable',
106 'dependencies': [
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000107 'NetEq', # NetEQ library defined above
108 'NetEqTestTools', # Test helpers
xians@google.comd3185fe2011-09-12 12:24:39 +0000109 'G711',
110 'G722',
111 'PCM16B',
112 'iLBC',
113 'iSAC',
114 'CNG',
niklase@google.com470e71d2011-07-07 08:21:25 +0000115 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000116 'defines': [
117 # TODO: Make codec selection conditional on definitions in target NetEq
118 'CODEC_ILBC',
119 'CODEC_PCM16B',
120 'CODEC_G711',
121 'CODEC_G722',
122 'CODEC_ISAC',
123 'CODEC_PCM16B_WB',
124 'CODEC_ISAC_SWB',
turaj@webrtc.orgb0dff122012-12-03 17:43:52 +0000125 'CODEC_ISAC_FB',
xians@google.comf67f1972011-08-08 12:56:26 +0000126 'CODEC_PCM16B_32KHZ',
127 'CODEC_CNGCODEC8',
128 'CODEC_CNGCODEC16',
129 'CODEC_CNGCODEC32',
130 'CODEC_ATEVENT_DECODE',
131 'CODEC_RED',
132 ],
133 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000134 '.',
135 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000136 ],
137 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000138 'test/NetEqRTPplay.cc',
xians@google.comf67f1972011-08-08 12:56:26 +0000139 ],
140 },
141 {
142 'target_name': 'RTPencode',
143 'type': 'executable',
144 'dependencies': [
145 'NetEqTestTools',# Test helpers
xians@google.comd3185fe2011-09-12 12:24:39 +0000146 'G711',
147 'G722',
148 'PCM16B',
149 'iLBC',
150 'iSAC',
151 'CNG',
152 '<(webrtc_root)/common_audio/common_audio.gyp:vad',
xians@google.comf67f1972011-08-08 12:56:26 +0000153 ],
154 'defines': [
155 # TODO: Make codec selection conditional on definitions in target NetEq
156 'CODEC_ILBC',
157 'CODEC_PCM16B',
158 'CODEC_G711',
159 'CODEC_G722',
160 'CODEC_ISAC',
161 'CODEC_PCM16B_WB',
162 'CODEC_ISAC_SWB',
turaj@webrtc.orgb0dff122012-12-03 17:43:52 +0000163 'CODEC_ISAC_FB',
xians@google.comf67f1972011-08-08 12:56:26 +0000164 'CODEC_PCM16B_32KHZ',
165 'CODEC_CNGCODEC8',
166 'CODEC_CNGCODEC16',
167 'CODEC_CNGCODEC32',
168 'CODEC_ATEVENT_DECODE',
169 'CODEC_RED',
170 ],
171 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000172 'interface',
173 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000174 ],
175 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000176 'test/RTPencode.cc',
xians@google.comf67f1972011-08-08 12:56:26 +0000177 ],
178 },
179 {
180 'target_name': 'RTPjitter',
181 'type': 'executable',
kjellander@webrtc.org543c3ea2011-11-23 12:20:35 +0000182 'dependencies': [
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000183 '<(DEPTH)/testing/gtest.gyp:gtest',
kjellander@webrtc.org543c3ea2011-11-23 12:20:35 +0000184 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000185 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000186 'test/RTPjitter.cc',
xians@google.comf67f1972011-08-08 12:56:26 +0000187 ],
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000188 },
189 {
xians@google.comf67f1972011-08-08 12:56:26 +0000190 'target_name': 'RTPanalyze',
191 'type': 'executable',
192 'dependencies': [
193 'NetEqTestTools',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000194 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.comf67f1972011-08-08 12:56:26 +0000195 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000196 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000197 'test/RTPanalyze.cc',
xians@google.comf67f1972011-08-08 12:56:26 +0000198 ],
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000199 },
xians@google.comf67f1972011-08-08 12:56:26 +0000200 {
201 'target_name': 'RTPchange',
202 'type': 'executable',
203 'dependencies': [
204 'NetEqTestTools',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000205 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.comf67f1972011-08-08 12:56:26 +0000206 ],
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000207 'sources': [
208 'test/RTPchange.cc',
xians@google.comf67f1972011-08-08 12:56:26 +0000209 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000210 },
211 {
212 'target_name': 'RTPtimeshift',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000213 'type': 'executable',
xians@google.comf67f1972011-08-08 12:56:26 +0000214 'dependencies': [
215 'NetEqTestTools',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000216 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.comf67f1972011-08-08 12:56:26 +0000217 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000218 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000219 'test/RTPtimeshift.cc',
220 ],
221 },
xians@google.comf67f1972011-08-08 12:56:26 +0000222 {
223 'target_name': 'RTPcat',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000224 'type': 'executable',
225 'dependencies': [
226 'NetEqTestTools',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000227 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.comf67f1972011-08-08 12:56:26 +0000228 ],
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000229 'sources': [
230 'test/RTPcat.cc',
xians@google.comf67f1972011-08-08 12:56:26 +0000231 ],
232 },
233 {
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000234 'target_name': 'rtp_to_text',
235 'type': 'executable',
236 'dependencies': [
237 'NetEqTestTools',
238 '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
239 ],
240 'sources': [
241 'test/rtp_to_text.cc',
242 ],
243 },
244 {
xians@google.comf67f1972011-08-08 12:56:26 +0000245 'target_name': 'NetEqTestTools',
246 # Collection of useful functions used in other tests
wjia@webrtc.orga3c82bf2013-01-18 23:42:21 +0000247 'type': 'static_library',
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000248 'variables': {
249 # Expects RTP packets without payloads when enabled.
250 'neteq_dummy_rtp%': 0,
251 },
xians@google.comf67f1972011-08-08 12:56:26 +0000252 'dependencies': [
xians@google.comd3185fe2011-09-12 12:24:39 +0000253 'G711',
254 'G722',
255 'PCM16B',
256 'iLBC',
257 'iSAC',
258 'CNG',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000259 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.comf67f1972011-08-08 12:56:26 +0000260 ],
261 'direct_dependent_settings': {
262 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000263 'interface',
264 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000265 ],
266 },
267 'defines': [
268 # TODO: Make codec selection conditional on definitions in target NetEq
269 'CODEC_ILBC',
270 'CODEC_PCM16B',
271 'CODEC_G711',
272 'CODEC_G722',
273 'CODEC_ISAC',
274 'CODEC_PCM16B_WB',
275 'CODEC_ISAC_SWB',
turaj@webrtc.orgb0dff122012-12-03 17:43:52 +0000276 'CODEC_ISAC_FB',
xians@google.comf67f1972011-08-08 12:56:26 +0000277 'CODEC_PCM16B_32KHZ',
278 'CODEC_CNGCODEC8',
279 'CODEC_CNGCODEC16',
280 'CODEC_CNGCODEC32',
281 'CODEC_ATEVENT_DECODE',
282 'CODEC_RED',
283 ],
284 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000285 'interface',
286 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000287 ],
288 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000289 'test/NETEQTEST_CodecClass.cc',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000290 'test/NETEQTEST_CodecClass.h',
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000291 'test/NETEQTEST_DummyRTPpacket.cc',
292 'test/NETEQTEST_DummyRTPpacket.h',
293 'test/NETEQTEST_NetEQClass.cc',
294 'test/NETEQTEST_NetEQClass.h',
295 'test/NETEQTEST_RTPpacket.cc',
296 'test/NETEQTEST_RTPpacket.h',
xians@google.comf67f1972011-08-08 12:56:26 +0000297 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000298 },
299 ], # targets
mflodman@webrtc.org6af95942012-05-24 13:23:35 +0000300 }], # include_tests
xians@google.comf67f1972011-08-08 12:56:26 +0000301 ], # conditions
niklase@google.com470e71d2011-07-07 08:21:25 +0000302}