# Copyright (c) 2018 The WebRTC project authors. All Rights Reserved. # # Use of this source code is governed by a BSD-style license # that can be found in the LICENSE file in the root of the source # tree. An additional intellectual property rights grant can be found # in the file PATENTS. All contributing project authors may # be found in the AUTHORS file in the root of the source tree. import("../../webrtc.gni") rtc_source_set("video_frame") { visibility = [ "*" ] sources = [ "color_space.cc", "color_space.h", "video_content_type.cc", "video_content_type.h", "video_frame.cc", "video_frame.h", "video_frame_buffer.cc", "video_frame_buffer.h", "video_rotation.h", "video_sink_interface.h", "video_source_interface.cc", "video_source_interface.h", "video_timing.cc", "video_timing.h", ] deps = [ "../../rtc_base:checks", "../../rtc_base:rtc_base_approved", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("video_frame_i420") { visibility = [ "*" ] sources = [ "i420_buffer.cc", "i420_buffer.h", ] deps = [ ":video_frame", "../../rtc_base:checks", "../../rtc_base:rtc_base", "../../rtc_base/memory:aligned_malloc", "//third_party/libyuv", ] } rtc_source_set("video_frame_i010") { visibility = [ "*" ] sources = [ "i010_buffer.cc", "i010_buffer.h", ] deps = [ ":video_frame", ":video_frame_i420", "../../rtc_base:checks", "../../rtc_base:rtc_base", "../../rtc_base/memory:aligned_malloc", "//third_party/libyuv", ] } rtc_source_set("encoded_frame") { visibility = [ "*" ] sources = [ "encoded_frame.cc", "encoded_frame.h", ] deps = [ "../../modules/video_coding:encoded_frame", ] } rtc_source_set("video_bitrate_allocation") { visibility = [ "*" ] sources = [ "video_bitrate_allocation.cc", "video_bitrate_allocation.h", ] deps = [ "../../rtc_base:checks", "../../rtc_base:safe_conversions", "../../rtc_base:stringutils", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("video_bitrate_allocator") { visibility = [ "*" ] sources = [ "video_bitrate_allocator.h", ] deps = [ ":video_bitrate_allocation", ] } rtc_source_set("video_bitrate_allocator_factory") { visibility = [ "*" ] sources = [ "video_bitrate_allocator_factory.h", ] deps = [ ":video_bitrate_allocator", "../video_codecs:video_codecs_api", ] } rtc_source_set("video_stream_decoder") { visibility = [ "*" ] sources = [ "video_stream_decoder.h", ] deps = [ ":encoded_frame", ":video_frame", "../video_codecs:video_codecs_api", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("video_stream_decoder_create") { visibility = [ "*" ] sources = [ "video_stream_decoder_create.cc", "video_stream_decoder_create.h", ] deps = [ ":video_stream_decoder", "../../rtc_base:rtc_base_approved", "../../video:video_stream_decoder_impl", "//third_party/abseil-cpp/absl/memory", ] } rtc_source_set("video_stream_encoder") { visibility = [ "*" ] sources = [ "video_stream_encoder_interface.h", "video_stream_encoder_observer.h", "video_stream_encoder_settings.h", ] deps = [ ":video_frame", # For rtpparameters.h "..:libjingle_peerconnection_api", "../video_codecs:video_codecs_api", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("video_stream_encoder_create") { visibility = [ "*" ] allow_poison = [ "software_video_codecs" ] # TODO(bugs.webrtc.org/7925): Remove. sources = [ "video_stream_encoder_create.cc", "video_stream_encoder_create.h", ] if (!build_with_chromium && is_clang) { # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] } deps = [ ":video_stream_encoder", "../../rtc_base:ptr_util", "../../video:video_stream_encoder_impl", "../video_codecs:video_codecs_api", "//third_party/abseil-cpp/absl/memory", ] }