1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
12 # Common code shared by all cast components.
13 source_set("common") {
18 "cast_environment.cc",
20 "common/clock_drift_smoother.cc",
21 "common/clock_drift_smoother.h",
22 "common/transport_encryption_handler.cc",
23 "common/transport_encryption_handler.h",
24 "logging/encoding_event_subscriber.cc",
25 "logging/encoding_event_subscriber.h",
26 "logging/log_deserializer.cc",
27 "logging/log_deserializer.h",
28 "logging/log_serializer.cc",
29 "logging/log_serializer.h",
30 "logging/logging_defines.cc",
31 "logging/logging_defines.h",
32 "logging/logging_impl.cc",
33 "logging/logging_impl.h",
34 "logging/logging_raw.cc",
35 "logging/logging_raw.h",
36 "logging/raw_event_subscriber.h",
37 "logging/raw_event_subscriber_bundle.cc",
38 "logging/raw_event_subscriber_bundle.h",
39 "logging/receiver_time_offset_estimator.h",
40 "logging/receiver_time_offset_estimator_impl.cc",
41 "logging/receiver_time_offset_estimator_impl.h",
42 "logging/simple_event_subscriber.cc",
43 "logging/simple_event_subscriber.h",
44 "logging/stats_event_subscriber.cc",
45 "logging/stats_event_subscriber.h",
49 "//media/cast/logging/proto",
60 "net/cast_transport_config.cc",
61 "net/cast_transport_config.h",
62 "net/cast_transport_defines.h",
63 "net/cast_transport_sender.h",
64 "net/cast_transport_sender_impl.cc",
65 "net/cast_transport_sender_impl.h",
66 "net/pacing/paced_sender.cc",
67 "net/pacing/paced_sender.h",
68 "net/rtcp/receiver_rtcp_event_subscriber.cc",
69 "net/rtcp/rtcp_defines.cc",
70 "net/rtcp/rtcp_defines.h",
73 "net/rtcp/rtcp_builder.cc",
74 "net/rtcp/rtcp_builder.h",
75 "net/rtcp/rtcp_utility.cc",
76 "net/rtcp/rtcp_utility.h",
77 "net/rtp/packet_storage.cc",
78 "net/rtp/packet_storage.h",
79 "net/rtp/rtp_packetizer.cc",
80 "net/rtp/rtp_packetizer.h",
81 "net/rtp/rtp_sender.cc",
82 "net/rtp/rtp_sender.h",
83 "net/udp_transport.cc",
84 "net/udp_transport.h",
85 "net/rtp/cast_message_builder.cc",
86 "net/rtp/cast_message_builder.h",
87 "net/rtp/frame_buffer.cc",
88 "net/rtp/frame_buffer.h",
91 "net/rtp/receiver_stats.cc",
92 "net/rtp/receiver_stats.h",
93 "net/rtp/rtp_parser.cc",
94 "net/rtp/rtp_parser.h",
95 "net/rtp/rtp_receiver_defines.cc",
96 "net/rtp/rtp_receiver_defines.h",
104 source_set("sender") {
107 "cast_sender_impl.cc",
108 "cast_sender_impl.h",
109 "sender/audio_encoder.h",
110 "sender/audio_encoder.cc",
111 "sender/audio_sender.h",
112 "sender/audio_sender.cc",
113 "sender/congestion_control.h",
114 "sender/congestion_control.cc",
115 "sender/external_video_encoder.h",
116 "sender/external_video_encoder.cc",
117 "sender/fake_software_video_encoder.h",
118 "sender/fake_software_video_encoder.cc",
119 "sender/frame_sender.cc",
120 "sender/frame_sender.h",
121 "sender/software_video_encoder.h",
122 "sender/video_encoder.h",
123 "sender/video_encoder_impl.h",
124 "sender/video_encoder_impl.cc",
125 "sender/video_sender.h",
126 "sender/video_sender.cc",
127 "sender/vp8_encoder.cc",
128 "sender/vp8_encoder.h",
135 "//media:shared_memory_support",
136 "//third_party/libvpx",
137 "//third_party/opus",
140 # use a restricted subset of media and no software codecs on iOS
142 deps += [ "//media:media_for_cast_ios" ]
145 "//third_party/libvpx",
146 "//third_party/opus",
149 "sender/external_video_encoder.h",
150 "sender/external_video_encoder.cc",
151 "sender/video_encoder_impl.h",
152 "sender/video_encoder_impl.cc",
153 "sender/vp8_encoder.cc",
154 "sender/vp8_encoder.h",
159 source_set("receiver") {
162 "receiver/audio_decoder.cc",
163 "receiver/audio_decoder.h",
164 "receiver/cast_receiver_impl.cc",
165 "receiver/cast_receiver_impl.h",
166 "receiver/frame_receiver.cc",
167 "receiver/frame_receiver.h",
168 "receiver/video_decoder.cc",
169 "receiver/video_decoder.h",
176 "//media:shared_memory_support",
177 "//third_party/libvpx",
178 "//third_party/opus",
182 # use a restricted subset of media and no software codecs on iOS
184 deps += [ "//media:media_for_cast_ios" ]
187 "//third_party/libvpx",
188 "//third_party/opus",
193 source_set("test_support") {
196 # TODO(hclam): FFmpeg.
197 # "test/fake_media_source.cc",
198 # "test/fake_media_source.h",
199 "test/fake_single_thread_task_runner.cc",
200 "test/fake_single_thread_task_runner.h",
201 "test/skewed_single_thread_task_runner.cc",
202 "test/skewed_single_thread_task_runner.h",
203 "test/skewed_tick_clock.cc",
204 "test/skewed_tick_clock.h",
205 "test/loopback_transport.cc",
206 "test/loopback_transport.h",
207 "test/utility/audio_utility.cc",
208 "test/utility/audio_utility.h",
209 "test/utility/barcode.cc",
210 "test/utility/barcode.h",
211 "test/utility/default_config.cc",
212 "test/utility/default_config.h",
213 "test/utility/in_process_receiver.cc",
214 "test/utility/in_process_receiver.h",
215 "test/utility/input_builder.cc",
216 "test/utility/input_builder.h",
217 "test/utility/net_utility.cc",
218 "test/utility/net_utility.h",
219 "test/utility/standalone_cast_environment.cc",
220 "test/utility/standalone_cast_environment.h",
221 "test/utility/video_utility.cc",
222 "test/utility/video_utility.h",
223 "test/utility/udp_proxy.cc",
224 "test/utility/udp_proxy.h",
230 "//base/test:test_support",
232 # TODO(hclam): Does not build on ARM yet.
233 # "//third_party/ffmpeg",
234 "//third_party/libyuv",
235 "//third_party/mt19937ar",
241 test("cast_unittests") {
243 "logging/encoding_event_subscriber_unittest.cc",
244 "logging/serialize_deserialize_test.cc",
245 "logging/logging_impl_unittest.cc",
246 "logging/logging_raw_unittest.cc",
247 "logging/receiver_time_offset_estimator_impl_unittest.cc",
248 "logging/simple_event_subscriber_unittest.cc",
249 "logging/stats_event_subscriber_unittest.cc",
250 "net/cast_transport_sender_impl_unittest.cc",
251 "net/pacing/mock_paced_packet_sender.cc",
252 "net/pacing/mock_paced_packet_sender.h",
253 "net/pacing/paced_sender_unittest.cc",
254 "net/rtcp/rtcp_builder_unittest.cc",
255 "net/rtcp/rtcp_unittest.cc",
256 "net/rtcp/rtcp_utility_unittest.cc",
257 "net/rtcp/receiver_rtcp_event_subscriber_unittest.cc",
258 # TODO(miu): The following two are test utility modules. Rename/move the files.
259 "net/rtcp/test_rtcp_packet_builder.cc",
260 "net/rtcp/test_rtcp_packet_builder.h",
261 "net/rtp/cast_message_builder_unittest.cc",
262 "net/rtp/frame_buffer_unittest.cc",
263 "net/rtp/framer_unittest.cc",
264 "net/rtp/mock_rtp_payload_feedback.cc",
265 "net/rtp/mock_rtp_payload_feedback.h",
266 "net/rtp/packet_storage_unittest.cc",
267 "net/rtp/receiver_stats_unittest.cc",
268 "net/rtp/rtp_header_parser.cc",
269 "net/rtp/rtp_header_parser.h",
270 "net/rtp/rtp_packet_builder.cc",
271 "net/rtp/rtp_parser_unittest.cc",
272 "net/rtp/rtp_packetizer_unittest.cc",
273 "net/rtp/rtp_receiver_defines.h",
274 "net/udp_transport_unittest.cc",
275 "receiver/audio_decoder_unittest.cc",
276 "receiver/frame_receiver_unittest.cc",
277 "receiver/video_decoder_unittest.cc",
278 "sender/audio_encoder_unittest.cc",
279 "sender/audio_sender_unittest.cc",
280 "sender/congestion_control_unittest.cc",
281 "sender/external_video_encoder_unittest.cc",
282 "sender/video_encoder_impl_unittest.cc",
283 "sender/video_sender_unittest.cc",
284 "test/end2end_unittest.cc",
285 "test/fake_receiver_time_offset_estimator.cc",
286 "test/fake_receiver_time_offset_estimator.h",
287 "test/fake_video_encode_accelerator.cc",
288 "test/fake_video_encode_accelerator.h",
289 "test/utility/audio_utility_unittest.cc",
290 "test/utility/barcode_unittest.cc",
298 "//base/test:run_all_unittests",
299 "//base/test:test_support",
305 executable("generate_barcode_video") {
308 "test/utility/generate_barcode_video.cc",
318 executable("generate_timecode_audio") {
321 "test/utility/generate_timecode_audio.cc",
331 executable("udp_proxy") {
334 "test/utility/udp_proxy_main.cc",