xref: /aosp_15_r20/external/webrtc/api/video/BUILD.gn (revision d9f758449e529ab9291ac668be2861e7a55c2422)
1*d9f75844SAndroid Build Coastguard Worker# Copyright (c) 2018 The WebRTC project authors. All Rights Reserved.
2*d9f75844SAndroid Build Coastguard Worker#
3*d9f75844SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license
4*d9f75844SAndroid Build Coastguard Worker# that can be found in the LICENSE file in the root of the source
5*d9f75844SAndroid Build Coastguard Worker# tree. An additional intellectual property rights grant can be found
6*d9f75844SAndroid Build Coastguard Worker# in the file PATENTS.  All contributing project authors may
7*d9f75844SAndroid Build Coastguard Worker# be found in the AUTHORS file in the root of the source tree.
8*d9f75844SAndroid Build Coastguard Worker
9*d9f75844SAndroid Build Coastguard Workerimport("../../webrtc.gni")
10*d9f75844SAndroid Build Coastguard Workerif (is_android) {
11*d9f75844SAndroid Build Coastguard Worker  import("//build/config/android/config.gni")
12*d9f75844SAndroid Build Coastguard Worker  import("//build/config/android/rules.gni")
13*d9f75844SAndroid Build Coastguard Worker}
14*d9f75844SAndroid Build Coastguard Worker
15*d9f75844SAndroid Build Coastguard Workerrtc_library("video_rtp_headers") {
16*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
17*d9f75844SAndroid Build Coastguard Worker  sources = [
18*d9f75844SAndroid Build Coastguard Worker    "color_space.cc",
19*d9f75844SAndroid Build Coastguard Worker    "color_space.h",
20*d9f75844SAndroid Build Coastguard Worker    "hdr_metadata.cc",
21*d9f75844SAndroid Build Coastguard Worker    "hdr_metadata.h",
22*d9f75844SAndroid Build Coastguard Worker    "video_content_type.cc",
23*d9f75844SAndroid Build Coastguard Worker    "video_content_type.h",
24*d9f75844SAndroid Build Coastguard Worker    "video_rotation.h",
25*d9f75844SAndroid Build Coastguard Worker    "video_timing.cc",
26*d9f75844SAndroid Build Coastguard Worker    "video_timing.h",
27*d9f75844SAndroid Build Coastguard Worker  ]
28*d9f75844SAndroid Build Coastguard Worker
29*d9f75844SAndroid Build Coastguard Worker  deps = [
30*d9f75844SAndroid Build Coastguard Worker    "..:array_view",
31*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:logging",
32*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:safe_conversions",
33*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:stringutils",
34*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base/system:rtc_export",
35*d9f75844SAndroid Build Coastguard Worker    "../units:data_rate",
36*d9f75844SAndroid Build Coastguard Worker    "../units:time_delta",
37*d9f75844SAndroid Build Coastguard Worker  ]
38*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
39*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/container:inlined_vector",
40*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
41*d9f75844SAndroid Build Coastguard Worker  ]
42*d9f75844SAndroid Build Coastguard Worker}
43*d9f75844SAndroid Build Coastguard Worker
44*d9f75844SAndroid Build Coastguard Workerrtc_library("video_frame") {
45*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
46*d9f75844SAndroid Build Coastguard Worker  sources = [
47*d9f75844SAndroid Build Coastguard Worker    "i420_buffer.cc",
48*d9f75844SAndroid Build Coastguard Worker    "i420_buffer.h",
49*d9f75844SAndroid Build Coastguard Worker    "i422_buffer.cc",
50*d9f75844SAndroid Build Coastguard Worker    "i422_buffer.h",
51*d9f75844SAndroid Build Coastguard Worker    "i444_buffer.cc",
52*d9f75844SAndroid Build Coastguard Worker    "i444_buffer.h",
53*d9f75844SAndroid Build Coastguard Worker    "nv12_buffer.cc",
54*d9f75844SAndroid Build Coastguard Worker    "nv12_buffer.h",
55*d9f75844SAndroid Build Coastguard Worker    "video_codec_type.h",
56*d9f75844SAndroid Build Coastguard Worker    "video_frame.cc",
57*d9f75844SAndroid Build Coastguard Worker    "video_frame.h",
58*d9f75844SAndroid Build Coastguard Worker    "video_frame_buffer.cc",
59*d9f75844SAndroid Build Coastguard Worker    "video_frame_buffer.h",
60*d9f75844SAndroid Build Coastguard Worker    "video_sink_interface.h",
61*d9f75844SAndroid Build Coastguard Worker    "video_source_interface.cc",
62*d9f75844SAndroid Build Coastguard Worker    "video_source_interface.h",
63*d9f75844SAndroid Build Coastguard Worker  ]
64*d9f75844SAndroid Build Coastguard Worker
65*d9f75844SAndroid Build Coastguard Worker  deps = [
66*d9f75844SAndroid Build Coastguard Worker    ":video_rtp_headers",
67*d9f75844SAndroid Build Coastguard Worker    "..:array_view",
68*d9f75844SAndroid Build Coastguard Worker    "..:make_ref_counted",
69*d9f75844SAndroid Build Coastguard Worker    "..:rtp_packet_info",
70*d9f75844SAndroid Build Coastguard Worker    "..:scoped_refptr",
71*d9f75844SAndroid Build Coastguard Worker    "..:video_track_source_constraints",
72*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:checks",
73*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:refcount",
74*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:timeutils",
75*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base/memory:aligned_malloc",
76*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base/system:rtc_export",
77*d9f75844SAndroid Build Coastguard Worker    "//third_party/libyuv",
78*d9f75844SAndroid Build Coastguard Worker  ]
79*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
80*d9f75844SAndroid Build Coastguard Worker}
81*d9f75844SAndroid Build Coastguard Worker
82*d9f75844SAndroid Build Coastguard Workerif (is_android) {
83*d9f75844SAndroid Build Coastguard Worker  java_cpp_enum("video_frame_enums") {
84*d9f75844SAndroid Build Coastguard Worker    sources = [ "video_frame_buffer.h" ]
85*d9f75844SAndroid Build Coastguard Worker  }
86*d9f75844SAndroid Build Coastguard Worker}
87*d9f75844SAndroid Build Coastguard Worker
88*d9f75844SAndroid Build Coastguard Workerrtc_library("video_frame_i010") {
89*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
90*d9f75844SAndroid Build Coastguard Worker  sources = [
91*d9f75844SAndroid Build Coastguard Worker    "i010_buffer.cc",
92*d9f75844SAndroid Build Coastguard Worker    "i010_buffer.h",
93*d9f75844SAndroid Build Coastguard Worker    "i210_buffer.cc",
94*d9f75844SAndroid Build Coastguard Worker    "i210_buffer.h",
95*d9f75844SAndroid Build Coastguard Worker  ]
96*d9f75844SAndroid Build Coastguard Worker  deps = [
97*d9f75844SAndroid Build Coastguard Worker    ":video_frame",
98*d9f75844SAndroid Build Coastguard Worker    ":video_rtp_headers",
99*d9f75844SAndroid Build Coastguard Worker    "..:make_ref_counted",
100*d9f75844SAndroid Build Coastguard Worker    "..:scoped_refptr",
101*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base",
102*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:checks",
103*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:refcount",
104*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base/memory:aligned_malloc",
105*d9f75844SAndroid Build Coastguard Worker    "//third_party/libyuv",
106*d9f75844SAndroid Build Coastguard Worker  ]
107*d9f75844SAndroid Build Coastguard Worker}
108*d9f75844SAndroid Build Coastguard Worker
109*d9f75844SAndroid Build Coastguard Workerrtc_source_set("recordable_encoded_frame") {
110*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
111*d9f75844SAndroid Build Coastguard Worker  sources = [ "recordable_encoded_frame.h" ]
112*d9f75844SAndroid Build Coastguard Worker
113*d9f75844SAndroid Build Coastguard Worker  deps = [
114*d9f75844SAndroid Build Coastguard Worker    ":encoded_image",
115*d9f75844SAndroid Build Coastguard Worker    ":video_frame",
116*d9f75844SAndroid Build Coastguard Worker    ":video_rtp_headers",
117*d9f75844SAndroid Build Coastguard Worker    "..:array_view",
118*d9f75844SAndroid Build Coastguard Worker    "..:make_ref_counted",
119*d9f75844SAndroid Build Coastguard Worker    "..:scoped_refptr",
120*d9f75844SAndroid Build Coastguard Worker    "../units:timestamp",
121*d9f75844SAndroid Build Coastguard Worker  ]
122*d9f75844SAndroid Build Coastguard Worker}
123*d9f75844SAndroid Build Coastguard Worker
124*d9f75844SAndroid Build Coastguard Workerrtc_source_set("video_frame_type") {
125*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
126*d9f75844SAndroid Build Coastguard Worker  sources = [ "video_frame_type.h" ]
127*d9f75844SAndroid Build Coastguard Worker}
128*d9f75844SAndroid Build Coastguard Worker
129*d9f75844SAndroid Build Coastguard Workerrtc_source_set("render_resolution") {
130*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
131*d9f75844SAndroid Build Coastguard Worker  public = [ "render_resolution.h" ]
132*d9f75844SAndroid Build Coastguard Worker}
133*d9f75844SAndroid Build Coastguard Worker
134*d9f75844SAndroid Build Coastguard Workerrtc_source_set("resolution") {
135*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
136*d9f75844SAndroid Build Coastguard Worker  public = [ "resolution.h" ]
137*d9f75844SAndroid Build Coastguard Worker}
138*d9f75844SAndroid Build Coastguard Worker
139*d9f75844SAndroid Build Coastguard Workerrtc_library("encoded_image") {
140*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
141*d9f75844SAndroid Build Coastguard Worker  sources = [
142*d9f75844SAndroid Build Coastguard Worker    "encoded_image.cc",
143*d9f75844SAndroid Build Coastguard Worker    "encoded_image.h",
144*d9f75844SAndroid Build Coastguard Worker  ]
145*d9f75844SAndroid Build Coastguard Worker  deps = [
146*d9f75844SAndroid Build Coastguard Worker    ":video_codec_constants",
147*d9f75844SAndroid Build Coastguard Worker    ":video_frame",
148*d9f75844SAndroid Build Coastguard Worker    ":video_frame_type",
149*d9f75844SAndroid Build Coastguard Worker    ":video_rtp_headers",
150*d9f75844SAndroid Build Coastguard Worker    "..:refcountedbase",
151*d9f75844SAndroid Build Coastguard Worker    "..:rtp_packet_info",
152*d9f75844SAndroid Build Coastguard Worker    "..:scoped_refptr",
153*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:checks",
154*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:refcount",
155*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base/system:rtc_export",
156*d9f75844SAndroid Build Coastguard Worker  ]
157*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
158*d9f75844SAndroid Build Coastguard Worker}
159*d9f75844SAndroid Build Coastguard Worker
160*d9f75844SAndroid Build Coastguard Workerrtc_library("encoded_frame") {
161*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
162*d9f75844SAndroid Build Coastguard Worker  sources = [
163*d9f75844SAndroid Build Coastguard Worker    "encoded_frame.cc",
164*d9f75844SAndroid Build Coastguard Worker    "encoded_frame.h",
165*d9f75844SAndroid Build Coastguard Worker  ]
166*d9f75844SAndroid Build Coastguard Worker
167*d9f75844SAndroid Build Coastguard Worker  deps = [
168*d9f75844SAndroid Build Coastguard Worker    "../../modules/video_coding:encoded_frame",
169*d9f75844SAndroid Build Coastguard Worker    "../units:timestamp",
170*d9f75844SAndroid Build Coastguard Worker  ]
171*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
172*d9f75844SAndroid Build Coastguard Worker}
173*d9f75844SAndroid Build Coastguard Worker
174*d9f75844SAndroid Build Coastguard Workerrtc_library("rtp_video_frame_assembler") {
175*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
176*d9f75844SAndroid Build Coastguard Worker  sources = [
177*d9f75844SAndroid Build Coastguard Worker    "rtp_video_frame_assembler.cc",
178*d9f75844SAndroid Build Coastguard Worker    "rtp_video_frame_assembler.h",
179*d9f75844SAndroid Build Coastguard Worker  ]
180*d9f75844SAndroid Build Coastguard Worker
181*d9f75844SAndroid Build Coastguard Worker  deps = [
182*d9f75844SAndroid Build Coastguard Worker    ":encoded_frame",
183*d9f75844SAndroid Build Coastguard Worker    "../../modules/rtp_rtcp:rtp_rtcp",
184*d9f75844SAndroid Build Coastguard Worker    "../../modules/rtp_rtcp:rtp_rtcp_format",
185*d9f75844SAndroid Build Coastguard Worker    "../../modules/video_coding:packet_buffer",
186*d9f75844SAndroid Build Coastguard Worker    "../../modules/video_coding:video_coding",
187*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:logging",
188*d9f75844SAndroid Build Coastguard Worker  ]
189*d9f75844SAndroid Build Coastguard Worker
190*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
191*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/container:inlined_vector",
192*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
193*d9f75844SAndroid Build Coastguard Worker  ]
194*d9f75844SAndroid Build Coastguard Worker}
195*d9f75844SAndroid Build Coastguard Worker
196*d9f75844SAndroid Build Coastguard Workerrtc_library("rtp_video_frame_assembler_unittests") {
197*d9f75844SAndroid Build Coastguard Worker  testonly = true
198*d9f75844SAndroid Build Coastguard Worker  sources = [ "rtp_video_frame_assembler_unittests.cc" ]
199*d9f75844SAndroid Build Coastguard Worker
200*d9f75844SAndroid Build Coastguard Worker  deps = [
201*d9f75844SAndroid Build Coastguard Worker    ":rtp_video_frame_assembler",
202*d9f75844SAndroid Build Coastguard Worker    "..:array_view",
203*d9f75844SAndroid Build Coastguard Worker    "../../modules/rtp_rtcp:rtp_packetizer_av1_test_helper",
204*d9f75844SAndroid Build Coastguard Worker    "../../modules/rtp_rtcp:rtp_rtcp",
205*d9f75844SAndroid Build Coastguard Worker    "../../modules/rtp_rtcp:rtp_rtcp_format",
206*d9f75844SAndroid Build Coastguard Worker    "../../test:test_support",
207*d9f75844SAndroid Build Coastguard Worker  ]
208*d9f75844SAndroid Build Coastguard Worker}
209*d9f75844SAndroid Build Coastguard Worker
210*d9f75844SAndroid Build Coastguard Workerrtc_source_set("video_codec_constants") {
211*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
212*d9f75844SAndroid Build Coastguard Worker  sources = [ "video_codec_constants.h" ]
213*d9f75844SAndroid Build Coastguard Worker  deps = []
214*d9f75844SAndroid Build Coastguard Worker}
215*d9f75844SAndroid Build Coastguard Worker
216*d9f75844SAndroid Build Coastguard Workerrtc_library("video_bitrate_allocation") {
217*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
218*d9f75844SAndroid Build Coastguard Worker  sources = [
219*d9f75844SAndroid Build Coastguard Worker    "video_bitrate_allocation.cc",
220*d9f75844SAndroid Build Coastguard Worker    "video_bitrate_allocation.h",
221*d9f75844SAndroid Build Coastguard Worker  ]
222*d9f75844SAndroid Build Coastguard Worker  deps = [
223*d9f75844SAndroid Build Coastguard Worker    ":video_codec_constants",
224*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:checks",
225*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:safe_conversions",
226*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:stringutils",
227*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base/system:rtc_export",
228*d9f75844SAndroid Build Coastguard Worker  ]
229*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
230*d9f75844SAndroid Build Coastguard Worker}
231*d9f75844SAndroid Build Coastguard Worker
232*d9f75844SAndroid Build Coastguard Workerrtc_source_set("video_layers_allocation") {
233*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
234*d9f75844SAndroid Build Coastguard Worker  sources = [ "video_layers_allocation.h" ]
235*d9f75844SAndroid Build Coastguard Worker  deps = [ "../units:data_rate" ]
236*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/container:inlined_vector" ]
237*d9f75844SAndroid Build Coastguard Worker}
238*d9f75844SAndroid Build Coastguard Worker
239*d9f75844SAndroid Build Coastguard Workerrtc_library("video_bitrate_allocator") {
240*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
241*d9f75844SAndroid Build Coastguard Worker  sources = [
242*d9f75844SAndroid Build Coastguard Worker    "video_bitrate_allocator.cc",
243*d9f75844SAndroid Build Coastguard Worker    "video_bitrate_allocator.h",
244*d9f75844SAndroid Build Coastguard Worker  ]
245*d9f75844SAndroid Build Coastguard Worker  deps = [
246*d9f75844SAndroid Build Coastguard Worker    ":video_bitrate_allocation",
247*d9f75844SAndroid Build Coastguard Worker    "../units:data_rate",
248*d9f75844SAndroid Build Coastguard Worker  ]
249*d9f75844SAndroid Build Coastguard Worker}
250*d9f75844SAndroid Build Coastguard Worker
251*d9f75844SAndroid Build Coastguard Workerrtc_source_set("video_bitrate_allocator_factory") {
252*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
253*d9f75844SAndroid Build Coastguard Worker  sources = [ "video_bitrate_allocator_factory.h" ]
254*d9f75844SAndroid Build Coastguard Worker  deps = [
255*d9f75844SAndroid Build Coastguard Worker    ":video_bitrate_allocator",
256*d9f75844SAndroid Build Coastguard Worker    "../video_codecs:video_codecs_api",
257*d9f75844SAndroid Build Coastguard Worker  ]
258*d9f75844SAndroid Build Coastguard Worker}
259*d9f75844SAndroid Build Coastguard Worker
260*d9f75844SAndroid Build Coastguard Workerrtc_source_set("video_stream_decoder") {
261*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
262*d9f75844SAndroid Build Coastguard Worker  sources = [ "video_stream_decoder.h" ]
263*d9f75844SAndroid Build Coastguard Worker
264*d9f75844SAndroid Build Coastguard Worker  deps = [
265*d9f75844SAndroid Build Coastguard Worker    ":encoded_frame",
266*d9f75844SAndroid Build Coastguard Worker    ":video_frame",
267*d9f75844SAndroid Build Coastguard Worker    ":video_rtp_headers",
268*d9f75844SAndroid Build Coastguard Worker    "../task_queue",
269*d9f75844SAndroid Build Coastguard Worker    "../units:time_delta",
270*d9f75844SAndroid Build Coastguard Worker    "../video_codecs:video_codecs_api",
271*d9f75844SAndroid Build Coastguard Worker  ]
272*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
273*d9f75844SAndroid Build Coastguard Worker}
274*d9f75844SAndroid Build Coastguard Worker
275*d9f75844SAndroid Build Coastguard Workerrtc_library("video_stream_decoder_create") {
276*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
277*d9f75844SAndroid Build Coastguard Worker  sources = [
278*d9f75844SAndroid Build Coastguard Worker    "video_stream_decoder_create.cc",
279*d9f75844SAndroid Build Coastguard Worker    "video_stream_decoder_create.h",
280*d9f75844SAndroid Build Coastguard Worker  ]
281*d9f75844SAndroid Build Coastguard Worker
282*d9f75844SAndroid Build Coastguard Worker  deps = [
283*d9f75844SAndroid Build Coastguard Worker    ":video_stream_decoder",
284*d9f75844SAndroid Build Coastguard Worker    "../../api:field_trials_view",
285*d9f75844SAndroid Build Coastguard Worker    "../../video:video_stream_decoder_impl",
286*d9f75844SAndroid Build Coastguard Worker    "../task_queue",
287*d9f75844SAndroid Build Coastguard Worker    "../video_codecs:video_codecs_api",
288*d9f75844SAndroid Build Coastguard Worker  ]
289*d9f75844SAndroid Build Coastguard Worker}
290*d9f75844SAndroid Build Coastguard Worker
291*d9f75844SAndroid Build Coastguard Workerrtc_library("video_adaptation") {
292*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
293*d9f75844SAndroid Build Coastguard Worker  sources = [
294*d9f75844SAndroid Build Coastguard Worker    "video_adaptation_counters.cc",
295*d9f75844SAndroid Build Coastguard Worker    "video_adaptation_counters.h",
296*d9f75844SAndroid Build Coastguard Worker    "video_adaptation_reason.h",
297*d9f75844SAndroid Build Coastguard Worker  ]
298*d9f75844SAndroid Build Coastguard Worker
299*d9f75844SAndroid Build Coastguard Worker  deps = [
300*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:checks",
301*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:stringutils",
302*d9f75844SAndroid Build Coastguard Worker  ]
303*d9f75844SAndroid Build Coastguard Worker}
304*d9f75844SAndroid Build Coastguard Worker
305*d9f75844SAndroid Build Coastguard Workerrtc_source_set("video_stream_encoder") {
306*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
307*d9f75844SAndroid Build Coastguard Worker  sources = [ "video_stream_encoder_settings.h" ]
308*d9f75844SAndroid Build Coastguard Worker
309*d9f75844SAndroid Build Coastguard Worker  deps = [
310*d9f75844SAndroid Build Coastguard Worker    ":video_adaptation",
311*d9f75844SAndroid Build Coastguard Worker    ":video_bitrate_allocation",
312*d9f75844SAndroid Build Coastguard Worker    ":video_bitrate_allocator",
313*d9f75844SAndroid Build Coastguard Worker    ":video_bitrate_allocator_factory",
314*d9f75844SAndroid Build Coastguard Worker    ":video_codec_constants",
315*d9f75844SAndroid Build Coastguard Worker    ":video_frame",
316*d9f75844SAndroid Build Coastguard Worker    ":video_layers_allocation",
317*d9f75844SAndroid Build Coastguard Worker    "..:rtp_parameters",
318*d9f75844SAndroid Build Coastguard Worker    "..:scoped_refptr",
319*d9f75844SAndroid Build Coastguard Worker    "../:fec_controller_api",
320*d9f75844SAndroid Build Coastguard Worker    "../:rtp_parameters",
321*d9f75844SAndroid Build Coastguard Worker    "../adaptation:resource_adaptation_api",
322*d9f75844SAndroid Build Coastguard Worker    "../units:data_rate",
323*d9f75844SAndroid Build Coastguard Worker    "../video_codecs:video_codecs_api",
324*d9f75844SAndroid Build Coastguard Worker  ]
325*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
326*d9f75844SAndroid Build Coastguard Worker}
327*d9f75844SAndroid Build Coastguard Worker
328*d9f75844SAndroid Build Coastguard Workerrtc_source_set("video_frame_metadata") {
329*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
330*d9f75844SAndroid Build Coastguard Worker  sources = [
331*d9f75844SAndroid Build Coastguard Worker    "video_frame_metadata.cc",
332*d9f75844SAndroid Build Coastguard Worker    "video_frame_metadata.h",
333*d9f75844SAndroid Build Coastguard Worker  ]
334*d9f75844SAndroid Build Coastguard Worker  deps = [
335*d9f75844SAndroid Build Coastguard Worker    ":video_frame",
336*d9f75844SAndroid Build Coastguard Worker    ":video_frame_type",
337*d9f75844SAndroid Build Coastguard Worker    ":video_rtp_headers",
338*d9f75844SAndroid Build Coastguard Worker    "..:array_view",
339*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base/system:rtc_export",
340*d9f75844SAndroid Build Coastguard Worker    "../transport/rtp:dependency_descriptor",
341*d9f75844SAndroid Build Coastguard Worker  ]
342*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
343*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/container:inlined_vector",
344*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
345*d9f75844SAndroid Build Coastguard Worker  ]
346*d9f75844SAndroid Build Coastguard Worker}
347*d9f75844SAndroid Build Coastguard Worker
348*d9f75844SAndroid Build Coastguard Workerrtc_library("builtin_video_bitrate_allocator_factory") {
349*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
350*d9f75844SAndroid Build Coastguard Worker  sources = [
351*d9f75844SAndroid Build Coastguard Worker    "builtin_video_bitrate_allocator_factory.cc",
352*d9f75844SAndroid Build Coastguard Worker    "builtin_video_bitrate_allocator_factory.h",
353*d9f75844SAndroid Build Coastguard Worker  ]
354*d9f75844SAndroid Build Coastguard Worker
355*d9f75844SAndroid Build Coastguard Worker  deps = [
356*d9f75844SAndroid Build Coastguard Worker    ":video_bitrate_allocation",
357*d9f75844SAndroid Build Coastguard Worker    ":video_bitrate_allocator",
358*d9f75844SAndroid Build Coastguard Worker    ":video_bitrate_allocator_factory",
359*d9f75844SAndroid Build Coastguard Worker    "../../api:scoped_refptr",
360*d9f75844SAndroid Build Coastguard Worker    "../../media:rtc_media_base",
361*d9f75844SAndroid Build Coastguard Worker    "../../modules/video_coding:video_coding_utility",
362*d9f75844SAndroid Build Coastguard Worker    "../../modules/video_coding/svc:svc_rate_allocator",
363*d9f75844SAndroid Build Coastguard Worker    "../video_codecs:video_codecs_api",
364*d9f75844SAndroid Build Coastguard Worker  ]
365*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/base:core_headers" ]
366*d9f75844SAndroid Build Coastguard Worker}
367*d9f75844SAndroid Build Coastguard Worker
368*d9f75844SAndroid Build Coastguard Workerrtc_library("frame_buffer") {
369*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
370*d9f75844SAndroid Build Coastguard Worker  sources = [
371*d9f75844SAndroid Build Coastguard Worker    "frame_buffer.cc",
372*d9f75844SAndroid Build Coastguard Worker    "frame_buffer.h",
373*d9f75844SAndroid Build Coastguard Worker  ]
374*d9f75844SAndroid Build Coastguard Worker  deps = [
375*d9f75844SAndroid Build Coastguard Worker    "../../api:field_trials_view",
376*d9f75844SAndroid Build Coastguard Worker    "../../api/units:timestamp",
377*d9f75844SAndroid Build Coastguard Worker    "../../api/video:encoded_frame",
378*d9f75844SAndroid Build Coastguard Worker    "../../modules/video_coding:video_coding_utility",
379*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:logging",
380*d9f75844SAndroid Build Coastguard Worker    "../../rtc_base:rtc_numerics",
381*d9f75844SAndroid Build Coastguard Worker  ]
382*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
383*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/algorithm:container",
384*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/container:inlined_vector",
385*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
386*d9f75844SAndroid Build Coastguard Worker  ]
387*d9f75844SAndroid Build Coastguard Worker}
388*d9f75844SAndroid Build Coastguard Worker
389*d9f75844SAndroid Build Coastguard Workerrtc_library("frame_buffer_unittest") {
390*d9f75844SAndroid Build Coastguard Worker  testonly = true
391*d9f75844SAndroid Build Coastguard Worker  sources = [ "frame_buffer_unittest.cc" ]
392*d9f75844SAndroid Build Coastguard Worker
393*d9f75844SAndroid Build Coastguard Worker  deps = [
394*d9f75844SAndroid Build Coastguard Worker    ":frame_buffer",
395*d9f75844SAndroid Build Coastguard Worker    "../../api/video:encoded_frame",
396*d9f75844SAndroid Build Coastguard Worker    "../../test:fake_encoded_frame",
397*d9f75844SAndroid Build Coastguard Worker    "../../test:field_trial",
398*d9f75844SAndroid Build Coastguard Worker    "../../test:scoped_key_value_config",
399*d9f75844SAndroid Build Coastguard Worker    "../../test:test_support",
400*d9f75844SAndroid Build Coastguard Worker  ]
401*d9f75844SAndroid Build Coastguard Worker}
402*d9f75844SAndroid Build Coastguard Worker
403*d9f75844SAndroid Build Coastguard Workerif (rtc_include_tests) {
404*d9f75844SAndroid Build Coastguard Worker  rtc_library("video_unittests") {
405*d9f75844SAndroid Build Coastguard Worker    testonly = true
406*d9f75844SAndroid Build Coastguard Worker    sources = [ "video_stream_decoder_create_unittest.cc" ]
407*d9f75844SAndroid Build Coastguard Worker    deps = [
408*d9f75844SAndroid Build Coastguard Worker      ":video_frame_metadata",
409*d9f75844SAndroid Build Coastguard Worker      ":video_frame_type",
410*d9f75844SAndroid Build Coastguard Worker      ":video_stream_decoder_create",
411*d9f75844SAndroid Build Coastguard Worker      "../../modules/rtp_rtcp:rtp_video_header",
412*d9f75844SAndroid Build Coastguard Worker      "../../test:test_support",
413*d9f75844SAndroid Build Coastguard Worker      "../task_queue:default_task_queue_factory",
414*d9f75844SAndroid Build Coastguard Worker      "../video_codecs:builtin_video_decoder_factory",
415*d9f75844SAndroid Build Coastguard Worker    ]
416*d9f75844SAndroid Build Coastguard Worker  }
417*d9f75844SAndroid Build Coastguard Worker}
418