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 9 import("//build/config/arm.gni") 10 import("../../build/webrtc.gni") 11 12 build_video_processing_sse2 = current_cpu == "x86" || current_cpu == "x64" 13 14 source_set("video_processing") { 15 sources = [ 16 "brightness_detection.cc", 17 "brightness_detection.h", 18 "content_analysis.cc", 19 "content_analysis.h", 20 "deflickering.cc", 21 "deflickering.h", 22 "frame_preprocessor.cc", 23 "frame_preprocessor.h", 24 "include/video_processing.h", 25 "include/video_processing_defines.h", 26 "spatial_resampler.cc", 27 "spatial_resampler.h", 28 "util/denoiser_filter.cc", 29 "util/denoiser_filter.h", 30 "util/denoiser_filter_c.cc", 31 "util/denoiser_filter_c.h", 32 "util/skin_detection.cc", 33 "util/skin_detection.h", 34 "video_decimator.cc", 35 "video_decimator.h", 36 "video_denoiser.cc", 37 "video_denoiser.h", 38 "video_processing_impl.cc", 39 "video_processing_impl.h", 40 ] 41 42 deps = [ 43 "../../common_audio", 44 "../../common_video", 45 "../../modules/utility", 46 "../../system_wrappers", 47 ] 48 if (build_video_processing_sse2) { 49 deps += [ ":video_processing_sse2" ] 50 } 51 if (rtc_build_with_neon) { 52 deps += [ ":video_processing_neon" ] 53 } 54 55 configs += [ "../..:common_config" ] 56 public_configs = [ "../..:common_inherited_config" ] 57 58 if (is_clang) { 59 # Suppress warnings from Chrome's Clang plugins. 60 # See http://code.google.com/p/webrtc/issues/detail?id=163 for details. 61 configs -= [ "//build/config/clang:find_bad_constructs" ] 62 } 63 } 64 65 if (build_video_processing_sse2) { 66 source_set("video_processing_sse2") { 67 sources = [ 68 "content_analysis_sse2.cc", 69 "util/denoiser_filter_sse2.cc", 70 "util/denoiser_filter_sse2.h", 71 ] 72 73 configs += [ "../..:common_config" ] 74 public_configs = [ "../..:common_inherited_config" ] 75 76 if (is_clang) { 77 # Suppress warnings from Chrome's Clang plugins. 78 # See http://code.google.com/p/webrtc/issues/detail?id=163 for details. 79 configs -= [ "//build/config/clang:find_bad_constructs" ] 80 } 81 82 if (is_posix) { 83 cflags = [ "-msse2" ] 84 } 85 } 86 } 87 88 if (rtc_build_with_neon) { 89 source_set("video_processing_neon") { 90 sources = [ 91 "util/denoiser_filter_neon.cc", 92 "util/denoiser_filter_neon.h", 93 ] 94 if (current_cpu != "arm64") { 95 configs -= [ "//build/config/compiler:compiler_arm_fpu" ] 96 cflags = [ "-mfpu=neon" ] 97 } 98 configs += [ "../..:common_config" ] 99 public_configs = [ "../..:common_inherited_config" ] 100 } 101 } 102