1# Copyright (c) 2011 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  'targets': [
11    {
12      'target_name': 'video_processing',
13      'type': 'static_library',
14      'dependencies': [
15        'webrtc_utility',
16        '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
17        '<(webrtc_root)/common_video/common_video.gyp:common_video',
18        '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
19      ],
20      'sources': [
21        'include/video_processing.h',
22        'include/video_processing_defines.h',
23        'brightness_detection.cc',
24        'brightness_detection.h',
25        'content_analysis.cc',
26        'content_analysis.h',
27        'deflickering.cc',
28        'deflickering.h',
29        'frame_preprocessor.cc',
30        'frame_preprocessor.h',
31        'spatial_resampler.cc',
32        'spatial_resampler.h',
33        'video_decimator.cc',
34        'video_decimator.h',
35        'video_processing_impl.cc',
36        'video_processing_impl.h',
37        'video_denoiser.cc',
38        'video_denoiser.h',
39        'util/denoiser_filter.cc',
40        'util/denoiser_filter.h',
41        'util/denoiser_filter_c.cc',
42        'util/denoiser_filter_c.h',
43        'util/skin_detection.cc',
44        'util/skin_detection.h',
45      ],
46      'conditions': [
47        ['target_arch=="ia32" or target_arch=="x64"', {
48          'dependencies': [ 'video_processing_sse2', ],
49        }],
50        ['target_arch=="arm" or target_arch == "arm64"', {
51          'dependencies': [ 'video_processing_neon', ],
52        }],
53      ],
54    },
55  ],
56  'conditions': [
57    ['target_arch=="ia32" or target_arch=="x64"', {
58      'targets': [
59        {
60          'target_name': 'video_processing_sse2',
61          'type': 'static_library',
62          'sources': [
63            'content_analysis_sse2.cc',
64            'util/denoiser_filter_sse2.cc',
65            'util/denoiser_filter_sse2.h',
66          ],
67          'conditions': [
68            ['os_posix==1 and OS!="mac"', {
69              'cflags': [ '-msse2', ],
70            }],
71            ['OS=="mac"', {
72              'xcode_settings': {
73                'OTHER_CFLAGS': [ '-msse2', ],
74              },
75            }],
76          ],
77        },
78      ],
79    }],
80    ['target_arch=="arm" or target_arch == "arm64"', {
81      'targets': [
82        {
83          'target_name': 'video_processing_neon',
84          'type': 'static_library',
85          'includes': [ '../../build/arm_neon.gypi', ],
86          'sources': [
87            'util/denoiser_filter_neon.cc',
88            'util/denoiser_filter_neon.h',
89          ],
90        },
91      ],
92    }],
93  ],
94}
95
96