| # Copyright (c) 2020 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("scalability_mode_util") { |
| sources = [ |
| "scalability_mode_util.cc", |
| "scalability_mode_util.h", |
| ] |
| deps = [ |
| "../../../api/video_codecs:scalability_mode", |
| "../../../api/video_codecs:video_codecs_api", |
| "../../../rtc_base:checks", |
| "//third_party/abseil-cpp/absl/algorithm:container", |
| "//third_party/abseil-cpp/absl/strings:string_view", |
| ] |
| } |
| |
| rtc_source_set("scalable_video_controller") { |
| sources = [ |
| "scalable_video_controller.h", |
| "scalable_video_controller_no_layering.cc", |
| "scalable_video_controller_no_layering.h", |
| ] |
| deps = [ |
| "../../../api/transport/rtp:dependency_descriptor", |
| "../../../api/video:video_bitrate_allocation", |
| "../../../common_video/generic_frame_descriptor", |
| "../../../rtc_base:checks", |
| "//third_party/abseil-cpp/absl/container:inlined_vector", |
| ] |
| } |
| |
| rtc_source_set("scalability_structures") { |
| sources = [ |
| "create_scalability_structure.cc", |
| "create_scalability_structure.h", |
| "scalability_structure_full_svc.cc", |
| "scalability_structure_full_svc.h", |
| "scalability_structure_key_svc.cc", |
| "scalability_structure_key_svc.h", |
| "scalability_structure_l2t2_key_shift.cc", |
| "scalability_structure_l2t2_key_shift.h", |
| "scalability_structure_simulcast.cc", |
| "scalability_structure_simulcast.h", |
| ] |
| deps = [ |
| ":scalable_video_controller", |
| "../../../api/transport/rtp:dependency_descriptor", |
| "../../../api/video:video_bitrate_allocation", |
| "../../../api/video_codecs:scalability_mode", |
| "../../../common_video/generic_frame_descriptor", |
| "../../../rtc_base:checks", |
| "../../../rtc_base:logging", |
| "../../../rtc_base/system:rtc_export", |
| "//third_party/abseil-cpp/absl/base:core_headers", |
| "//third_party/abseil-cpp/absl/strings:string_view", |
| ] |
| } |
| |
| rtc_source_set("svc_rate_allocator") { |
| sources = [ |
| "svc_rate_allocator.cc", |
| "svc_rate_allocator.h", |
| ] |
| deps = [ |
| ":scalability_structures", |
| ":scalable_video_controller", |
| "../../../api:field_trials_view", |
| "../../../api/units:data_rate", |
| "../../../api/video:video_bitrate_allocation", |
| "../../../api/video:video_bitrate_allocator", |
| "../../../api/video:video_codec_constants", |
| "../../../api/video:video_frame", |
| "../../../api/video_codecs:scalability_mode", |
| "../../../api/video_codecs:video_codecs_api", |
| "../../../rtc_base:checks", |
| "../../../rtc_base/experiments:stable_target_rate_experiment", |
| "//third_party/abseil-cpp/absl/container:inlined_vector", |
| ] |
| } |
| |
| rtc_source_set("simulcast_to_svc_converter") { |
| sources = [ |
| "simulcast_to_svc_converter.cc", |
| "simulcast_to_svc_converter.h", |
| ] |
| deps = [ |
| ":scalability_mode_util", |
| ":scalability_structures", |
| ":scalable_video_controller", |
| "../../../api/video:encoded_image", |
| "../../../api/video_codecs:video_codecs_api", |
| "../../../modules/video_coding:video_codec_interface", |
| "../../../modules/video_coding:video_coding_utility", |
| "../../../rtc_base:checks", |
| "../../../rtc_base/system:rtc_export", |
| ] |
| } |
| |
| if (rtc_include_tests) { |
| rtc_source_set("scalability_structure_tests") { |
| testonly = true |
| sources = [ |
| "scalability_mode_util_unittest.cc", |
| "scalability_structure_full_svc_unittest.cc", |
| "scalability_structure_key_svc_unittest.cc", |
| "scalability_structure_l2t2_key_shift_unittest.cc", |
| "scalability_structure_test_helpers.cc", |
| "scalability_structure_test_helpers.h", |
| "scalability_structure_unittest.cc", |
| ] |
| deps = [ |
| ":scalability_mode_util", |
| ":scalability_structures", |
| ":scalable_video_controller", |
| ":simulcast_to_svc_converter", |
| "..:chain_diff_calculator", |
| "..:frame_dependencies_calculator", |
| "../../../api:array_view", |
| "../../../api/transport/rtp:dependency_descriptor", |
| "../../../api/video:video_bitrate_allocation", |
| "../../../api/video:video_frame_type", |
| "../../../api/video_codecs:scalability_mode", |
| "../../../common_video/generic_frame_descriptor", |
| "../../../rtc_base:stringutils", |
| "../../../test:test_support", |
| "//third_party/abseil-cpp/absl/strings:string_view", |
| ] |
| } |
| |
| rtc_source_set("svc_rate_allocator_tests") { |
| testonly = true |
| sources = [ "svc_rate_allocator_unittest.cc" ] |
| deps = [ |
| ":svc_rate_allocator", |
| "..:webrtc_vp9_helpers", |
| "../../../api/units:data_rate", |
| "../../../api/video:video_bitrate_allocation", |
| "../../../api/video:video_bitrate_allocator", |
| "../../../api/video:video_codec_constants", |
| "../../../api/video:video_frame", |
| "../../../api/video_codecs:scalability_mode", |
| "../../../api/video_codecs:video_codecs_api", |
| "../../../rtc_base:checks", |
| "../../../test:explicit_key_value_config", |
| "../../../test:test_support", |
| "../codecs/av1:av1_svc_config", |
| "//third_party/abseil-cpp/absl/container:inlined_vector", |
| ] |
| } |
| |
| rtc_source_set("simulcast_to_svc_converter_tests") { |
| testonly = true |
| sources = [ "simulcast_to_svc_converter_unittest.cc" ] |
| deps = [ |
| ":scalability_structures", |
| ":scalable_video_controller", |
| ":simulcast_to_svc_converter", |
| "../../../rtc_base:checks", |
| "../../../test:test_support", |
| ] |
| } |
| } |