123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- # Copyright 2015 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.
- source_set("encoder") {
- sources = [
- "audio_encoder.h",
- "encoder_bitrate_filter.cc",
- "encoder_bitrate_filter.h",
- "video_encoder.cc",
- "video_encoder.h",
- "video_encoder_active_map.cc",
- "video_encoder_active_map.h",
- "video_encoder_helper.cc",
- "video_encoder_helper.h",
- "video_encoder_verbatim.cc",
- "video_encoder_verbatim.h",
- "video_encoder_vpx.cc",
- "video_encoder_vpx.h",
- "webrtc_video_encoder.cc",
- "webrtc_video_encoder_av1.cc",
- "webrtc_video_encoder_av1.h",
- "webrtc_video_encoder_vpx.cc",
- "webrtc_video_encoder_vpx.h",
- ]
- configs += [ "//build/config/compiler:wexit_time_destructors" ]
- deps = [
- ":vpx_codec",
- "//base/third_party/dynamic_annotations",
- "//build:chromeos_buildflags",
- "//remoting/base:base",
- "//remoting/proto",
- "//remoting/protocol:session_config",
- "//third_party/libaom",
- "//third_party/libvpx",
- "//third_party/libyuv",
- "//third_party/opus",
- "//third_party/webrtc_overrides:webrtc_component",
- "//ui/gfx:color_space",
- "//ui/gfx/geometry",
- ]
- # Currently, building WebrtcVideoEncoderGpu is only supported on Windows and
- # Linux, and encoding with WebrtcVideoEncoderGpu is only supported on Windows.
- if (is_win || is_linux || is_chromeos) {
- public_configs = [ "//skia:skia_config" ]
- sources += [
- "webrtc_video_encoder_gpu.cc",
- "webrtc_video_encoder_gpu.h",
- ]
- deps += [
- "//gpu/command_buffer/service",
- "//media/gpu",
- ]
- }
- # Opus depends on //media, which is not a supported include for iOS.
- # Also disabled it on Android, to avoid dependency on //media.
- # TODO(sergeyu): Cleanup host-only deps in client targets.
- if (!is_ios && !is_android) {
- sources += [
- "audio_encoder_opus.cc",
- "audio_encoder_opus.h",
- ]
- deps += [
- "//media",
- "//media:shared_memory_support",
- ]
- }
- }
- source_set("decoder") {
- sources = [
- "audio_decoder.cc",
- "audio_decoder.h",
- "audio_decoder_opus.cc",
- "audio_decoder_opus.h",
- "video_decoder.h",
- "video_decoder_verbatim.cc",
- "video_decoder_verbatim.h",
- "video_decoder_vpx.cc",
- "video_decoder_vpx.h",
- ]
- configs += [ "//build/config/compiler:wexit_time_destructors" ]
- deps = [
- ":vpx_codec",
- "//base:base",
- "//base/third_party/dynamic_annotations",
- "//remoting/base:base",
- "//remoting/proto",
- "//remoting/protocol:session_config",
- "//third_party/libvpx",
- "//third_party/libyuv",
- "//third_party/opus",
- "//third_party/webrtc_overrides:webrtc_component",
- ]
- }
- source_set("vpx_codec") {
- sources = [
- "scoped_vpx_codec.cc",
- "scoped_vpx_codec.h",
- ]
- configs += [ "//build/config/compiler:wexit_time_destructors" ]
- public_deps = [ "//third_party/libvpx" ]
- deps = [
- "//base:base",
- "//base/third_party/dynamic_annotations",
- "//remoting/proto",
- "//third_party/libyuv",
- "//third_party/webrtc_overrides:webrtc_component",
- ]
- }
- source_set("unit_tests") {
- testonly = true
- sources = [
- "audio_encoder_opus_unittest.cc",
- "codec_test.cc",
- "codec_test.h",
- "encoder_bitrate_filter_unittest.cc",
- "video_decoder_vpx_unittest.cc",
- "video_encoder_helper_unittest.cc",
- "video_encoder_verbatim_unittest.cc",
- "video_encoder_vpx_unittest.cc",
- ]
- deps = [
- ":decoder",
- ":encoder",
- "//base",
- "//remoting/base:base",
- "//remoting/proto",
- "//testing/gtest",
- "//third_party/webrtc_overrides:webrtc_component",
- "//ui/gfx:color_space",
- ]
- if (is_ios || is_android) {
- sources -= [ "audio_encoder_opus_unittest.cc" ]
- }
- }
|