Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(171)

Side by Side Diff: webrtc/modules/video_coding/BUILD.gn

Issue 2463313002: Add a webrtc{en,de}coderfactory implementation for VideoToolbox (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
2 # 2 #
3 # Use of this source code is governed by a BSD-style license 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 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 5 # tree. An additional intellectual property rights grant can be found
6 # in the file PATENTS. All contributing project authors may 6 # in the file PATENTS. All contributing project authors may
7 # be found in the AUTHORS file in the root of the source tree. 7 # be found in the AUTHORS file in the root of the source tree.
8 8
9 import("../../build/webrtc.gni") 9 import("../../build/webrtc.gni")
10 10
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] 134 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
135 } 135 }
136 136
137 defines = [] 137 defines = []
138 deps = [ 138 deps = [
139 "../../system_wrappers", 139 "../../system_wrappers",
140 ] 140 ]
141 141
142 if (is_ios) { 142 if (is_ios) {
143 sources += [ "codecs/h264/h264_objc.mm" ] 143 sources += [ "codecs/h264/h264_objc.mm" ]
144 deps += [ ":webrtc_h264_video_toolbox" ]
145 } 144 }
146 145
147 if (rtc_use_h264) { 146 if (rtc_use_h264) {
148 defines += [ "WEBRTC_USE_H264" ] 147 defines += [ "WEBRTC_USE_H264" ]
149 if (rtc_initialize_ffmpeg) { 148 if (rtc_initialize_ffmpeg) {
150 defines += [ "WEBRTC_INITIALIZE_FFMPEG" ] 149 defines += [ "WEBRTC_INITIALIZE_FFMPEG" ]
151 } 150 }
152 sources += [ 151 sources += [
153 "codecs/h264/h264_decoder_impl.cc", 152 "codecs/h264/h264_decoder_impl.cc",
154 "codecs/h264/h264_decoder_impl.h", 153 "codecs/h264/h264_decoder_impl.h",
155 "codecs/h264/h264_encoder_impl.cc", 154 "codecs/h264/h264_encoder_impl.cc",
156 "codecs/h264/h264_encoder_impl.h", 155 "codecs/h264/h264_encoder_impl.h",
157 ] 156 ]
158 deps += [ 157 deps += [
159 "../../common_video", 158 "../../common_video",
160 "//third_party/ffmpeg:ffmpeg", 159 "//third_party/ffmpeg:ffmpeg",
161 "//third_party/openh264:encoder", 160 "//third_party/openh264:encoder",
162 ] 161 ]
163 } 162 }
164 } 163 }
165 164
166 if (is_ios) {
167 config("webrtc_h264_video_toolbox_warnings_config") {
168 if (is_clang) {
169 # TODO(tkchin): Make webrtc_h264_video_toolbox compile with the standard s et
170 # of warnings.
171 # See https://bugs.chromium.org/p/webrtc/issues/detail?id=6307
172 cflags = [ "-Wno-thread-safety-analysis" ]
173 }
174 }
175
176 rtc_static_library("webrtc_h264_video_toolbox") {
177 sources = [
178 "codecs/h264/h264_video_toolbox_decoder.cc",
179 "codecs/h264/h264_video_toolbox_decoder.h",
180 "codecs/h264/h264_video_toolbox_encoder.h",
181 "codecs/h264/h264_video_toolbox_encoder.mm",
182 "codecs/h264/h264_video_toolbox_nalu.cc",
183 "codecs/h264/h264_video_toolbox_nalu.h",
184 ]
185
186 configs += [
187 ":webrtc_h264_video_toolbox_warnings_config",
188 "../..:common_objc",
189 "//build/config/compiler:enable_arc",
190 ]
191
192 deps = [
193 "../../sdk:rtc_sdk_common_objc",
194 ]
195
196 libs = [
197 "CoreFoundation.framework",
198 "CoreMedia.framework",
199 "CoreVideo.framework",
200 "VideoToolbox.framework",
201 ]
202
203 if (!build_with_chromium && is_clang) {
204 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
205 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
206 }
207
208 if (rtc_build_libyuv) {
209 deps += [ "$rtc_libyuv_dir" ]
210 public_deps = [
211 "$rtc_libyuv_dir",
212 ]
213 } else {
214 # Need to add a directory normally exported by libyuv.
215 include_dirs = [ "$rtc_libyuv_dir/include" ]
216 }
217 }
218 }
219
220 rtc_static_library("webrtc_i420") { 165 rtc_static_library("webrtc_i420") {
221 sources = [ 166 sources = [
222 "codecs/i420/i420.cc", 167 "codecs/i420/i420.cc",
223 "codecs/i420/include/i420.h", 168 "codecs/i420/include/i420.h",
224 ] 169 ]
225 170
226 if (!build_with_chromium && is_clang) { 171 if (!build_with_chromium && is_clang) {
227 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). 172 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
228 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] 173 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
229 } 174 }
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
320 if (!build_with_chromium && is_clang) { 265 if (!build_with_chromium && is_clang) {
321 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). 266 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
322 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] 267 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
323 } 268 }
324 269
325 deps = [ 270 deps = [
326 "../../test:test_support", 271 "../../test:test_support",
327 ] 272 ]
328 } 273 }
329 } 274 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698