Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/third_party/libwebrtc/modules/video_coding/svc/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 5 kB image not shown  

Quelle  BUILD.gn   Sprache: unbekannt

 
# 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",
    ]
  }
}

[ Dauer der Verarbeitung: 0.3 Sekunden  (vorverarbeitet)  ]