• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2024 Intel Corporation. All Rights Reserved.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the
6 * "Software"), to deal in the Software without restriction, including
7 * without limitation the rights to use, copy, modify, merge, publish,
8 * distribute, sub license, and/or sell copies of the Software, and to
9 * permit persons to whom the Software is furnished to do so, subject to
10 * the following conditions:
11 *
12 * The above copyright notice and this permission notice (including the
13 * next paragraph) shall be included in all copies or substantial portions
14 * of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
19 * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
20 * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 */
24
25package {
26    default_applicable_licenses: ["external_libva-utils_license"],
27}
28
29license {
30    name: "external_libva-utils_license",
31    visibility: [":__subpackages__"],
32    license_kinds: [
33        "SPDX-license-identifier-Apache-2.0",
34        "SPDX-license-identifier-BSD",
35        "SPDX-license-identifier-ISC",
36        "SPDX-license-identifier-MIT",
37    ],
38    license_text: [
39        "LICENSE",
40    ],
41}
42
43cc_defaults {
44    name: "libva_utils_defaults",
45    shared_libs: [
46        "libva",
47        "libdl",
48        "libcutils",
49        "libutils",
50        "libgui",
51        "libdrm",
52    ],
53
54    vendor: true,
55    enabled: false,
56    arch: {
57        x86_64: {
58            enabled: true,
59        },
60    },
61}
62
63cc_library {
64    name: "libva_utils_common",
65
66    defaults: ["libva_utils_defaults"],
67
68    srcs: [
69        "common/va_display.c",
70        "common/va_display_drm.c",
71    ],
72
73    export_include_dirs: ["common/"],
74
75    cflags: ["-DHAVE_VA_DRM"],
76
77    visibility: [":__subpackages__"],
78}
79
80cc_defaults {
81    name: "libva_utils_bin_defaults",
82
83    defaults: ["libva_utils_defaults"],
84
85    shared_libs: [
86        "libva_utils_common",
87    ],
88}
89
90// decode directory
91
92cc_binary {
93    name: "vampeg2vldemo",
94
95    srcs: [
96        "decode/mpeg2vldemo.cpp",
97    ],
98
99    defaults: ["libva_utils_bin_defaults"],
100}
101
102cc_binary {
103    name: "valoadjpeg",
104
105    srcs: [
106        "decode/loadjpeg.c",
107        "decode/tinyjpeg.c",
108    ],
109
110    defaults: ["libva_utils_bin_defaults"],
111}
112
113// encode directory
114
115cc_binary {
116    name: "vah264encode",
117
118    srcs: [
119        "encode/h264encode.c",
120    ],
121
122    defaults: ["libva_utils_bin_defaults"],
123}
124
125cc_binary {
126    name: "vaavcenc",
127
128    srcs: [
129        "encode/avcenc.c",
130    ],
131
132    defaults: ["libva_utils_bin_defaults"],
133}
134
135cc_binary {
136    name: "vavp8enc",
137
138    srcs: [
139        "encode/vp8enc.c",
140    ],
141
142    cflags: [
143        "-Wno-gnu-variable-sized-type-not-at-end",
144    ],
145
146    defaults: ["libva_utils_bin_defaults"],
147}
148
149cc_binary {
150    name: "vavp9enc",
151
152    srcs: [
153        "encode/vp9enc.c",
154    ],
155
156    defaults: ["libva_utils_bin_defaults"],
157}
158
159cc_binary {
160    name: "vajpegenc",
161
162    srcs: [
163        "encode/jpegenc.c",
164    ],
165
166    defaults: ["libva_utils_bin_defaults"],
167}
168
169cc_binary {
170    name: "vampeg2vaenc",
171
172    srcs: [
173        "encode/mpeg2vaenc.c",
174    ],
175
176    defaults: ["libva_utils_bin_defaults"],
177}
178
179cc_binary {
180    name: "vasvctenc",
181
182    srcs: [
183        "encode/svctenc.c",
184    ],
185
186    defaults: ["libva_utils_bin_defaults"],
187}
188
189// vainfo directory
190
191cc_binary {
192    name: "vainfo",
193
194    srcs: [
195        "vainfo/vainfo.c",
196    ],
197
198    defaults: ["libva_utils_bin_defaults"],
199}
200
201// videoprocess directory
202cc_binary {
203    name: "vavpp",
204
205    srcs: [
206        "videoprocess/vavpp.cpp",
207    ],
208
209    defaults: ["libva_utils_bin_defaults"],
210}
211