2020-03-11 10:45:57 +01:00
|
|
|
# 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("//third_party/libaom/options.gni")
|
|
|
|
|
import("../../../../webrtc.gni")
|
|
|
|
|
|
2020-11-25 17:01:22 +01:00
|
|
|
rtc_library("av1_svc_config") {
|
|
|
|
|
sources = [
|
|
|
|
|
"av1_svc_config.cc",
|
|
|
|
|
"av1_svc_config.h",
|
|
|
|
|
]
|
|
|
|
|
deps = [
|
|
|
|
|
"../../../../api/video_codecs:video_codecs_api",
|
|
|
|
|
"../../../../rtc_base:checks",
|
|
|
|
|
"../../../../rtc_base:logging",
|
2022-05-13 13:16:44 +02:00
|
|
|
"../../../../rtc_base:stringutils",
|
|
|
|
|
"../../svc:scalability_mode_util",
|
2020-11-25 17:01:22 +01:00
|
|
|
"../../svc:scalability_structures",
|
|
|
|
|
"../../svc:scalable_video_controller",
|
|
|
|
|
]
|
2022-07-05 21:06:28 +09:00
|
|
|
|
|
|
|
|
absl_deps = [ "//third_party/abseil-cpp/absl/container:inlined_vector" ]
|
2020-11-25 17:01:22 +01:00
|
|
|
}
|
|
|
|
|
|
2021-11-23 11:00:24 +01:00
|
|
|
rtc_library("dav1d_decoder") {
|
2022-07-12 10:36:23 +02:00
|
|
|
visibility = [ "*" ]
|
2021-11-23 11:00:24 +01:00
|
|
|
poisonous = [ "software_video_codecs" ]
|
|
|
|
|
public = [ "dav1d_decoder.h" ]
|
|
|
|
|
sources = [ "dav1d_decoder.cc" ]
|
|
|
|
|
|
|
|
|
|
deps = [
|
|
|
|
|
"../..:video_codec_interface",
|
|
|
|
|
"../../../../api:scoped_refptr",
|
|
|
|
|
"../../../../api/video:encoded_image",
|
|
|
|
|
"../../../../api/video:video_frame",
|
|
|
|
|
"../../../../api/video_codecs:video_codecs_api",
|
|
|
|
|
"../../../../common_video",
|
|
|
|
|
"../../../../rtc_base:logging",
|
|
|
|
|
"//third_party/dav1d",
|
|
|
|
|
"//third_party/libyuv",
|
|
|
|
|
]
|
|
|
|
|
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-11 10:45:57 +01:00
|
|
|
rtc_library("libaom_av1_decoder") {
|
|
|
|
|
visibility = [ "*" ]
|
|
|
|
|
poisonous = [ "software_video_codecs" ]
|
|
|
|
|
public = [ "libaom_av1_decoder.h" ]
|
2020-06-05 14:30:41 +02:00
|
|
|
deps = [ "../../../../api/video_codecs:video_codecs_api" ]
|
|
|
|
|
absl_deps = [ "//third_party/abseil-cpp/absl/base:core_headers" ]
|
2020-03-11 10:45:57 +01:00
|
|
|
|
2020-03-17 15:56:20 +01:00
|
|
|
if (enable_libaom) {
|
2020-03-11 10:45:57 +01:00
|
|
|
sources = [ "libaom_av1_decoder.cc" ]
|
|
|
|
|
deps += [
|
|
|
|
|
"../..:video_codec_interface",
|
|
|
|
|
"../../../../api:scoped_refptr",
|
|
|
|
|
"../../../../api/video:encoded_image",
|
2020-10-08 14:36:33 +00:00
|
|
|
"../../../../api/video:video_frame",
|
2020-03-11 10:45:57 +01:00
|
|
|
"../../../../common_video",
|
|
|
|
|
"../../../../rtc_base:logging",
|
|
|
|
|
"//third_party/libaom",
|
|
|
|
|
"//third_party/libyuv",
|
|
|
|
|
]
|
2020-06-05 14:30:41 +02:00
|
|
|
absl_deps += [ "//third_party/abseil-cpp/absl/types:optional" ]
|
2020-03-11 10:45:57 +01:00
|
|
|
} else {
|
|
|
|
|
sources = [ "libaom_av1_decoder_absent.cc" ]
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-03-20 10:36:13 +01:00
|
|
|
|
|
|
|
|
rtc_library("libaom_av1_encoder") {
|
|
|
|
|
visibility = [ "*" ]
|
|
|
|
|
poisonous = [ "software_video_codecs" ]
|
|
|
|
|
public = [ "libaom_av1_encoder.h" ]
|
2022-01-18 18:47:52 +01:00
|
|
|
sources = [ "libaom_av1_encoder.cc" ]
|
2020-03-20 10:36:13 +01:00
|
|
|
deps = [
|
2022-01-18 18:47:52 +01:00
|
|
|
"../..:video_codec_interface",
|
|
|
|
|
"../../../../api:scoped_refptr",
|
|
|
|
|
"../../../../api/video:encoded_image",
|
|
|
|
|
"../../../../api/video:video_frame",
|
2020-03-20 10:36:13 +01:00
|
|
|
"../../../../api/video_codecs:video_codecs_api",
|
2022-01-18 18:47:52 +01:00
|
|
|
"../../../../common_video",
|
|
|
|
|
"../../../../rtc_base:checks",
|
|
|
|
|
"../../../../rtc_base:logging",
|
2020-10-16 17:45:41 +02:00
|
|
|
"../../svc:scalability_structures",
|
2020-10-15 15:57:17 +02:00
|
|
|
"../../svc:scalable_video_controller",
|
2022-01-18 18:47:52 +01:00
|
|
|
"//third_party/libaom",
|
2020-06-05 14:30:41 +02:00
|
|
|
]
|
|
|
|
|
absl_deps = [
|
|
|
|
|
"//third_party/abseil-cpp/absl/algorithm:container",
|
2022-06-24 00:51:28 +02:00
|
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
2021-09-15 10:56:04 +00:00
|
|
|
"//third_party/abseil-cpp/absl/strings:strings",
|
2020-06-25 21:44:31 +02:00
|
|
|
"//third_party/abseil-cpp/absl/types:optional",
|
2020-03-20 10:36:13 +01:00
|
|
|
]
|
2022-01-18 18:47:52 +01:00
|
|
|
}
|
2020-03-20 10:36:13 +01:00
|
|
|
|
2020-05-08 12:53:13 +02:00
|
|
|
if (rtc_include_tests) {
|
|
|
|
|
rtc_library("video_coding_codecs_av1_tests") {
|
|
|
|
|
testonly = true
|
2020-03-24 09:35:04 +01:00
|
|
|
|
2020-11-25 17:01:22 +01:00
|
|
|
sources = [ "av1_svc_config_unittest.cc" ]
|
|
|
|
|
deps = [
|
|
|
|
|
":av1_svc_config",
|
|
|
|
|
"../../../../api/video_codecs:video_codecs_api",
|
2021-01-29 10:50:19 +00:00
|
|
|
"../../../../test:test_support",
|
2020-11-25 17:01:22 +01:00
|
|
|
]
|
|
|
|
|
|
2020-05-08 12:53:13 +02:00
|
|
|
if (enable_libaom) {
|
2020-11-25 17:01:22 +01:00
|
|
|
sources += [
|
2020-05-08 12:53:13 +02:00
|
|
|
"libaom_av1_encoder_unittest.cc",
|
|
|
|
|
"libaom_av1_unittest.cc",
|
|
|
|
|
]
|
2020-11-25 17:01:22 +01:00
|
|
|
deps += [
|
2020-05-08 12:53:13 +02:00
|
|
|
":libaom_av1_decoder",
|
|
|
|
|
":libaom_av1_encoder",
|
2020-06-15 12:55:22 +02:00
|
|
|
"../..:encoded_video_frame_producer",
|
2020-05-08 12:53:13 +02:00
|
|
|
"../..:video_codec_interface",
|
2020-05-15 14:21:03 +02:00
|
|
|
"../../../../api:mock_video_encoder",
|
2020-06-25 21:44:31 +02:00
|
|
|
"../../../../api/units:data_size",
|
|
|
|
|
"../../../../api/units:time_delta",
|
2020-10-08 14:36:33 +00:00
|
|
|
"../../../../api/video:video_frame",
|
2022-04-29 11:03:13 +02:00
|
|
|
"../../svc:scalability_mode_util",
|
2020-10-15 15:57:17 +02:00
|
|
|
"../../svc:scalability_structures",
|
|
|
|
|
"../../svc:scalable_video_controller",
|
2020-05-08 12:53:13 +02:00
|
|
|
]
|
2020-06-05 14:30:41 +02:00
|
|
|
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
|
2020-05-08 12:53:13 +02:00
|
|
|
}
|
2020-03-24 09:35:04 +01:00
|
|
|
}
|
|
|
|
|
}
|