blob: 5e3f250e61c97266e26a7588362269863cfdbf82 [file] [log] [blame]
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +00001# Copyright (c) 2012 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
9{
10 'variables': {
turaj@webrtc.org17bf9a22014-05-09 18:04:50 +000011 'codecs': [
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000012 'G711',
13 'G722',
14 'PCM16B',
15 'iLBC',
16 'iSAC',
17 'iSACFix',
18 'CNG',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000019 ],
20 'neteq_defines': [],
21 'conditions': [
22 ['include_opus==1', {
turaj@webrtc.org17bf9a22014-05-09 18:04:50 +000023 'codecs': ['webrtc_opus',],
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000024 'neteq_defines': ['WEBRTC_CODEC_OPUS',],
25 }],
26 ],
turaj@webrtc.org17bf9a22014-05-09 18:04:50 +000027 'neteq_dependencies': [
28 '<@(codecs)',
29 '<(DEPTH)/third_party/opus/opus.gyp:opus',
30 '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
andresp@webrtc.org86e1e482015-01-14 09:30:52 +000031 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
kwiberg@webrtc.orge04a93b2014-12-09 10:12:53 +000032 'audio_decoder_interface',
turaj@webrtc.org17bf9a22014-05-09 18:04:50 +000033 ],
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000034 },
35 'targets': [
36 {
henrik.lundin@webrtc.org9c55f0f2014-06-09 08:10:28 +000037 'target_name': 'neteq',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000038 'type': 'static_library',
39 'dependencies': [
40 '<@(neteq_dependencies)',
41 ],
42 'defines': [
43 '<@(neteq_defines)',
44 ],
45 'include_dirs': [
jan.skoglund@webrtc.orgc3d13d32014-03-10 22:50:19 +000046 # Need Opus header files for the audio classifier.
47 '<(DEPTH)/third_party/opus/src/celt',
sprang@webrtc.orgcf6f46d2014-03-14 16:22:18 +000048 '<(DEPTH)/third_party/opus/src/src',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000049 ],
50 'direct_dependent_settings': {
51 'include_dirs': [
jan.skoglund@webrtc.orgc3d13d32014-03-10 22:50:19 +000052 # Need Opus header files for the audio classifier.
53 '<(DEPTH)/third_party/opus/src/celt',
sprang@webrtc.orgcf6f46d2014-03-14 16:22:18 +000054 '<(DEPTH)/third_party/opus/src/src',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000055 ],
56 },
jan.skoglund@webrtc.orgc3d13d32014-03-10 22:50:19 +000057 'export_dependent_settings': [
58 '<(DEPTH)/third_party/opus/opus.gyp:opus',
59 ],
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000060 'sources': [
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000061 'interface/neteq.h',
62 'accelerate.cc',
63 'accelerate.h',
jan.skoglund@webrtc.orgc3d13d32014-03-10 22:50:19 +000064 'audio_classifier.cc',
65 'audio_classifier.h',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000066 'audio_decoder_impl.cc',
67 'audio_decoder_impl.h',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +000068 'audio_multi_vector.cc',
69 'audio_multi_vector.h',
70 'audio_vector.cc',
71 'audio_vector.h',
72 'background_noise.cc',
73 'background_noise.h',
74 'buffer_level_filter.cc',
75 'buffer_level_filter.h',
76 'comfort_noise.cc',
77 'comfort_noise.h',
78 'decision_logic.cc',
79 'decision_logic.h',
80 'decision_logic_fax.cc',
81 'decision_logic_fax.h',
82 'decision_logic_normal.cc',
83 'decision_logic_normal.h',
84 'decoder_database.cc',
85 'decoder_database.h',
86 'defines.h',
87 'delay_manager.cc',
88 'delay_manager.h',
89 'delay_peak_detector.cc',
90 'delay_peak_detector.h',
91 'dsp_helper.cc',
92 'dsp_helper.h',
93 'dtmf_buffer.cc',
94 'dtmf_buffer.h',
95 'dtmf_tone_generator.cc',
96 'dtmf_tone_generator.h',
97 'expand.cc',
98 'expand.h',
99 'merge.cc',
100 'merge.h',
101 'neteq_impl.cc',
102 'neteq_impl.h',
103 'neteq.cc',
104 'statistics_calculator.cc',
105 'statistics_calculator.h',
106 'normal.cc',
107 'normal.h',
108 'packet_buffer.cc',
109 'packet_buffer.h',
110 'payload_splitter.cc',
111 'payload_splitter.h',
112 'post_decode_vad.cc',
113 'post_decode_vad.h',
114 'preemptive_expand.cc',
115 'preemptive_expand.h',
116 'random_vector.cc',
117 'random_vector.h',
118 'rtcp.cc',
119 'rtcp.h',
120 'sync_buffer.cc',
121 'sync_buffer.h',
122 'timestamp_scaler.cc',
123 'timestamp_scaler.h',
124 'time_stretch.cc',
125 'time_stretch.h',
126 ],
127 },
128 ], # targets
129 'conditions': [
130 ['include_tests==1', {
131 'includes': ['neteq_tests.gypi',],
132 'targets': [
133 {
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000134 'target_name': 'audio_decoder_unittests',
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000135 'type': '<(gtest_target_type)',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000136 'dependencies': [
turaj@webrtc.org17bf9a22014-05-09 18:04:50 +0000137 '<@(codecs)',
kwiberg@webrtc.orge04a93b2014-12-09 10:12:53 +0000138 'audio_decoder_interface',
henrik.lundin@webrtc.orgff8a98e2014-10-28 09:47:13 +0000139 'neteq_unittest_tools',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000140 '<(DEPTH)/testing/gtest.gyp:gtest',
andrew@webrtc.org34235372013-04-30 23:43:26 +0000141 '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000142 '<(webrtc_root)/test/test.gyp:test_support_main',
143 ],
144 'defines': [
145 'AUDIO_DECODER_UNITTEST',
146 'WEBRTC_CODEC_G722',
147 'WEBRTC_CODEC_ILBC',
148 'WEBRTC_CODEC_ISACFX',
149 'WEBRTC_CODEC_ISAC',
150 'WEBRTC_CODEC_PCM16',
151 '<@(neteq_defines)',
152 ],
153 'sources': [
154 'audio_decoder_impl.cc',
155 'audio_decoder_impl.h',
156 'audio_decoder_unittest.cc',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000157 ],
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000158 'conditions': [
kjellander@webrtc.org3bd41562014-09-01 11:06:37 +0000159 ['OS=="android"', {
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000160 'dependencies': [
161 '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
162 ],
163 }],
164 ],
kjellander@webrtc.orgfa53d872013-02-04 10:07:17 +0000165 }, # audio_decoder_unittests
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000166
167 {
168 'target_name': 'neteq_unittest_tools',
169 'type': 'static_library',
170 'dependencies': [
henrik.lundin@webrtc.org810acbc2014-04-14 18:42:23 +0000171 'rtp_rtcp',
henrik.lundin@webrtc.org03499a02014-11-24 14:50:53 +0000172 '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
henrik.lundin@webrtc.orgff8a98e2014-10-28 09:47:13 +0000173 '<(webrtc_root)/test/test.gyp:rtp_test_utils',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000174 ],
175 'direct_dependent_settings': {
176 'include_dirs': [
177 'tools',
178 ],
179 },
180 'include_dirs': [
181 'tools',
182 ],
183 'sources': [
henrik.lundin@webrtc.org496a9842014-06-19 10:02:11 +0000184 'tools/audio_checksum.h',
henrik.lundin@webrtc.orgd1fc5d42013-09-17 08:38:02 +0000185 'tools/audio_loop.cc',
186 'tools/audio_loop.h',
henrik.lundin@webrtc.org496a9842014-06-19 10:02:11 +0000187 'tools/audio_sink.h',
henrik.lundin@webrtc.org81a78932014-10-14 10:49:58 +0000188 'tools/constant_pcm_packet_source.cc',
189 'tools/constant_pcm_packet_source.h',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000190 'tools/input_audio_file.cc',
191 'tools/input_audio_file.h',
henrik.lundin@webrtc.org496a9842014-06-19 10:02:11 +0000192 'tools/output_audio_file.h',
henrik.lundin@webrtc.org03499a02014-11-24 14:50:53 +0000193 'tools/output_wav_file.h',
henrik.lundin@webrtc.org810acbc2014-04-14 18:42:23 +0000194 'tools/packet.cc',
195 'tools/packet.h',
196 'tools/packet_source.h',
henrik.lundin@webrtc.orga37f1dd2014-10-27 12:58:18 +0000197 'tools/resample_input_audio_file.cc',
198 'tools/resample_input_audio_file.h',
henrik.lundin@webrtc.org810acbc2014-04-14 18:42:23 +0000199 'tools/rtp_file_source.cc',
200 'tools/rtp_file_source.h',
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000201 'tools/rtp_generator.cc',
202 'tools/rtp_generator.h',
203 ],
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000204 }, # neteq_unittest_tools
205 ], # targets
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000206 'conditions': [
kjellander@webrtc.org3bd41562014-09-01 11:06:37 +0000207 ['OS=="android"', {
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000208 'targets': [
209 {
kjellander@webrtc.org0372b932014-09-03 14:34:46 +0000210 'target_name': 'audio_decoder_unittests_apk_target',
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000211 'type': 'none',
212 'dependencies': [
kjellander@webrtc.org0372b932014-09-03 14:34:46 +0000213 '<(apk_tests_path):audio_decoder_unittests_apk',
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000214 ],
215 },
216 ],
217 }],
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000218 ['test_isolation_mode != "noop"', {
219 'targets': [
220 {
221 'target_name': 'audio_decoder_unittests_run',
222 'type': 'none',
223 'dependencies': [
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000224 'audio_decoder_unittests',
225 ],
226 'includes': [
kjellander@webrtc.org2a973172013-10-02 19:31:16 +0000227 '../../../build/isolate.gypi',
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000228 ],
229 'sources': [
230 'audio_decoder_unittests.isolate',
231 ],
232 },
233 ],
234 }],
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000235 ],
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000236 }], # include_tests
237 ], # conditions
238}