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
9import("../build/webrtc.gni")
10
11source_set("video_engine") {
12  deps = [ ":video_engine_core" ]
13}
14
15source_set("video_engine_core") {
16  sources = [
17    "include/vie_base.h",
18    "include/vie_capture.h",
19    "include/vie_codec.h",
20    "include/vie_errors.h",
21    "include/vie_external_codec.h",
22    "include/vie_image_process.h",
23    "include/vie_network.h",
24    "include/vie_render.h",
25    "include/vie_rtp_rtcp.h",
26    "call_stats.cc",
27    "call_stats.h",
28    "encoder_state_feedback.cc",
29    "encoder_state_feedback.h",
30    "overuse_frame_detector.cc",
31    "overuse_frame_detector.h",
32    "stream_synchronization.cc",
33    "stream_synchronization.h",
34    "vie_base_impl.cc",
35    "vie_base_impl.h",
36    "vie_capture_impl.cc",
37    "vie_capture_impl.h",
38    "vie_capturer.cc",
39    "vie_capturer.h",
40    "vie_channel.cc",
41    "vie_channel_group.cc",
42    "vie_channel_group.h",
43    "vie_channel.h",
44    "vie_channel_manager.cc",
45    "vie_channel_manager.h",
46    "vie_codec_impl.cc",
47    "vie_codec_impl.h",
48    "vie_defines.h",
49    "vie_encoder.cc",
50    "vie_encoder.h",
51    "vie_external_codec_impl.cc",
52    "vie_external_codec_impl.h",
53    "vie_file_image.cc",
54    "vie_file_image.h",
55    "vie_frame_provider_base.cc",
56    "vie_frame_provider_base.h",
57    "vie_image_process_impl.cc",
58    "vie_image_process_impl.h",
59    "vie_impl.cc",
60    "vie_impl.h",
61    "vie_input_manager.cc",
62    "vie_input_manager.h",
63    "vie_manager_base.cc",
64    "vie_manager_base.h",
65    "vie_network_impl.cc",
66    "vie_network_impl.h",
67    "vie_receiver.cc",
68    "vie_receiver.h",
69    "vie_ref_count.cc",
70    "vie_ref_count.h",
71    "vie_remb.cc",
72    "vie_remb.h",
73    "vie_renderer.cc",
74    "vie_renderer.h",
75    "vie_render_impl.cc",
76    "vie_render_impl.h",
77    "vie_render_manager.cc",
78    "vie_render_manager.h",
79    "vie_rtp_rtcp_impl.cc",
80    "vie_rtp_rtcp_impl.h",
81    "vie_sender.cc",
82    "vie_sender.h",
83    "vie_shared_data.cc",
84    "vie_shared_data.h",
85    "vie_sync_module.cc",
86    "vie_sync_module.h",
87  ]
88
89  if (is_clang) {
90    # Suppress warnings from Chrome's Clang plugins.
91    # See http://code.google.com/p/webrtc/issues/detail?id=163 for details.
92    configs -= [ "//build/config/clang:find_bad_constructs" ]
93  }
94
95  if (is_win) {
96    cflags = [
97      # TODO(jschuh): Bug 1348: fix size_t to int truncations.
98      "/wd4267",  # size_t to int truncation.
99    ]
100  }
101
102  deps = [
103    "../common_video",
104    "../modules/bitrate_controller",
105    "../modules/rtp_rtcp",
106    "../modules/utility",
107    "../modules/video_capture",
108    "../modules/video_coding",
109    "../modules/video_processing",
110    "../modules/video_render",
111    "../voice_engine",
112    "../system_wrappers",
113  ]
114}
115