| # Copyright 2016 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/features.gni") |
| import("//media/media_options.gni") |
| import("//testing/test.gni") |
| |
| source_set("capture") { |
| sources = [ |
| "content/animated_content_sampler.cc", |
| "content/animated_content_sampler.h", |
| "content/capture_resolution_chooser.cc", |
| "content/capture_resolution_chooser.h", |
| "content/feedback_signal_accumulator.cc", |
| "content/feedback_signal_accumulator.h", |
| "content/screen_capture_device_core.cc", |
| "content/screen_capture_device_core.h", |
| "content/smooth_event_sampler.cc", |
| "content/smooth_event_sampler.h", |
| "content/thread_safe_capture_oracle.cc", |
| "content/thread_safe_capture_oracle.h", |
| "content/video_capture_oracle.cc", |
| "content/video_capture_oracle.h", |
| "device_monitor_mac.h", |
| "device_monitor_mac.mm", |
| "video/android/video_capture_device_android.cc", |
| "video/android/video_capture_device_android.h", |
| "video/android/video_capture_device_factory_android.cc", |
| "video/android/video_capture_device_factory_android.h", |
| "video/fake_video_capture_device.cc", |
| "video/fake_video_capture_device.h", |
| "video/fake_video_capture_device_factory.cc", |
| "video/fake_video_capture_device_factory.h", |
| "video/file_video_capture_device.cc", |
| "video/file_video_capture_device.h", |
| "video/file_video_capture_device_factory.cc", |
| "video/file_video_capture_device_factory.h", |
| "video/linux/v4l2_capture_delegate.cc", |
| "video/linux/video_capture_device_chromeos.cc", |
| "video/linux/video_capture_device_chromeos.h", |
| "video/linux/video_capture_device_factory_linux.cc", |
| "video/linux/video_capture_device_factory_linux.h", |
| "video/linux/video_capture_device_linux.cc", |
| "video/linux/video_capture_device_linux.h", |
| "video/mac/platform_video_capturing_mac.h", |
| "video/mac/video_capture_device_avfoundation_mac.h", |
| "video/mac/video_capture_device_avfoundation_mac.mm", |
| "video/mac/video_capture_device_decklink_mac.h", |
| "video/mac/video_capture_device_decklink_mac.mm", |
| "video/mac/video_capture_device_factory_mac.h", |
| "video/mac/video_capture_device_factory_mac.mm", |
| "video/mac/video_capture_device_mac.h", |
| "video/mac/video_capture_device_mac.mm", |
| "video/mac/video_capture_device_qtkit_mac.h", |
| "video/mac/video_capture_device_qtkit_mac.mm", |
| "video/video_capture_device.cc", |
| "video/video_capture_device.h", |
| "video/video_capture_device_factory.cc", |
| "video/video_capture_device_factory.h", |
| "video/video_capture_device_info.cc", |
| "video/video_capture_device_info.h", |
| "video/win/capability_list_win.cc", |
| "video/win/capability_list_win.h", |
| "video/win/filter_base_win.cc", |
| "video/win/filter_base_win.h", |
| "video/win/pin_base_win.cc", |
| "video/win/pin_base_win.h", |
| "video/win/sink_filter_observer_win.h", |
| "video/win/sink_filter_win.cc", |
| "video/win/sink_filter_win.h", |
| "video/win/sink_input_pin_win.cc", |
| "video/win/sink_input_pin_win.h", |
| "video/win/video_capture_device_factory_win.cc", |
| "video/win/video_capture_device_factory_win.h", |
| "video/win/video_capture_device_mf_win.cc", |
| "video/win/video_capture_device_mf_win.h", |
| "video/win/video_capture_device_win.cc", |
| "video/win/video_capture_device_win.h", |
| ] |
| |
| public_deps = [] |
| deps = [ |
| "//base", |
| "//media/base", |
| "//skia", |
| ] |
| |
| configs += [ |
| "//media:media_implementation", |
| |
| # TODO(mcasas): Fix size_t to int truncation warning-treated-as-errors. |
| "//build/config/compiler:no_size_t_to_int_warning", |
| ] |
| |
| if (is_android) { |
| public_deps += [ "video/android" ] |
| deps += [ "video/android:capture_jni_headers" ] |
| } |
| |
| if (is_mac) { |
| deps += [ |
| "//media/base/mac", |
| "//third_party/decklink", |
| ] |
| libs = [ "QTKit.framework" ] |
| } |
| |
| if (use_udev) { |
| deps += [ "//device/udev_linux" ] |
| sources += [ |
| "device_monitor_udev.cc", |
| "device_monitor_udev.h", |
| ] |
| } |
| |
| if (is_win) { |
| public_deps += [ "//media/base/win" ] |
| libs = [ |
| "mf.lib", |
| "mfplat.lib", |
| "mfreadwrite.lib", |
| "mfuuid.lib", |
| ] |
| |
| ldflags = [ |
| "/DELAYLOAD:mf.dll", |
| "/DELAYLOAD:mfplat.dll", |
| "/DELAYLOAD:mfreadwrite.dll", |
| ] |
| } |
| } |
| |
| source_set("unittests") { |
| testonly = true |
| |
| sources = [ |
| "content/animated_content_sampler_unittest.cc", |
| "content/capture_resolution_chooser_unittest.cc", |
| "content/feedback_signal_accumulator_unittest.cc", |
| "content/smooth_event_sampler_unittest.cc", |
| "content/video_capture_oracle_unittest.cc", |
| "video/fake_video_capture_device_unittest.cc", |
| "video/video_capture_device_unittest.cc", |
| ] |
| |
| deps = [ |
| "//media/base:unittests", |
| "//testing/gmock", |
| "//testing/gtest", |
| ] |
| |
| # TODO(mcasas): Fix size_t to int truncation warning-treated-as-errors. |
| configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] |
| |
| if (is_mac) { |
| sources += [ "video/mac/video_capture_device_factory_mac_unittest.mm" ] |
| } |
| } |