• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) Huawei Technologies Co., Ltd. 2021. All rights reserved.
2
3import("//build/ohos.gni")
4
5group("gstplugins_good_packages") {
6  deps = [
7    ":gstaudiofx",
8    ":gstaudioparsers",
9    ":gstautodetect",
10    ":gstisomp4",
11    ":gstmatroska",
12    ":gstmultifile",
13    ":gstsoup",
14    ":gstwavparse",
15  ]
16}
17
18config("gst_plugins_config") {
19  visibility = [ ":*" ]
20
21  include_dirs = [
22    ".",
23    "./gst-libs",
24    "./gst/isomp4",
25    "./gst/audiofx",
26    "//third_party/gstreamer/gstreamer",
27    "//third_party/gstreamer/gstreamer/libs",
28    "//third_party/gstreamer/gstplugins_base",
29    "//third_party/gstreamer/gstplugins_base/gst-libs",
30    "//third_party/glib/glib",
31    "//third_party/glib",
32    "//third_party/glib/gmodule",
33    "//third_party/zlib",
34    "//third_party/libsoup",
35    "//third_party/gettext/gettext-runtime/intl",
36    "//third_party/bzip2",
37  ]
38
39  cflags = [
40    "-Wall",
41    "-Werror",
42
43    #"-DBUILDING_GST",
44    "-DGST_DISABLE_DEPRECATED",
45    "-DHAVE_CONFIG_H",
46    "-DCOLORSPACE=\"videoconvert\"",
47    "-fno-strict-aliasing",
48    "-Wno-sign-compare",
49    "-Wno-builtin-requires-header",
50    "-Wno-deprecated-declarations",
51    "-DOHOS_SUPPORT",
52    "-DOHOS_OPT_COMPAT",
53    "-DOHOS_OPT_CVE",
54    "-DOHOS_EXT_FUNC",
55    "-DOHOS_OPT_PERFORMANCE",
56  ]
57}
58
59ohos_source_set("audioparsers_source") {
60  sources = [
61    "gst/audioparsers/gstaacparse.c",
62    "gst/audioparsers/gstac3parse.c",
63    "gst/audioparsers/gstamrparse.c",
64    "gst/audioparsers/gstdcaparse.c",
65    "gst/audioparsers/gstflacparse.c",
66    "gst/audioparsers/gstmpegaudioparse.c",
67    "gst/audioparsers/gstsbcparse.c",
68    "gst/audioparsers/gstwavpackparse.c",
69    "gst/audioparsers/plugin.c",
70  ]
71
72  configs = [ ":gst_plugins_config" ]
73}
74
75ohos_shared_library("gstaudioparsers") {
76  deps = [
77    ":audioparsers_source",
78    "//third_party/glib:glib",
79    "//third_party/glib:gmodule",
80    "//third_party/glib:gobject",
81    "//third_party/gstreamer/gstplugins_base:gstaudio",
82    "//third_party/gstreamer/gstplugins_base:gstpbutils",
83    "//third_party/gstreamer/gstplugins_base:gsttag",
84    "//third_party/gstreamer/gstreamer:gstbase",
85    "//third_party/gstreamer/gstreamer:gstreamer",
86  ]
87
88  relative_install_dir = "media/plugins"
89  part_name = "multimedia_media_standard"
90  subsystem_name = "multimedia"
91}
92
93ohos_source_set("autodetect_source") {
94  sources = [
95    "gst/audioparsers/gstaacparse.c",
96    "gst/autodetect/gstautoaudiosink.c",
97    "gst/autodetect/gstautoaudiosrc.c",
98    "gst/autodetect/gstautodetect.c",
99    "gst/autodetect/gstautovideosink.c",
100    "gst/autodetect/gstautovideosrc.c",
101  ]
102
103  configs = [ ":gst_plugins_config" ]
104}
105
106ohos_shared_library("gstautodetect") {
107  deps = [
108    ":autodetect_source",
109    "//third_party/glib:glib",
110    "//third_party/glib:gmodule",
111    "//third_party/glib:gobject",
112    "//third_party/gstreamer/gstplugins_base:gstaudio",
113    "//third_party/gstreamer/gstplugins_base:gstpbutils",
114    "//third_party/gstreamer/gstplugins_base:gsttag",
115    "//third_party/gstreamer/gstreamer:gstbase",
116    "//third_party/gstreamer/gstreamer:gstreamer",
117  ]
118
119  relative_install_dir = "media/plugins"
120  part_name = "multimedia_media_standard"
121  subsystem_name = "multimedia"
122}
123
124ohos_source_set("id3demux_source") {
125  sources = [ "gst/id3demux/gstid3demux.c" ]
126
127  configs = [ ":gst_plugins_config" ]
128}
129
130ohos_shared_library("gstid3demux") {
131  deps = [
132    ":id3demux_source",
133    "//third_party/glib:glib",
134    "//third_party/glib:gmodule",
135    "//third_party/glib:gobject",
136    "//third_party/gstreamer/gstplugins_base:gstaudio",
137    "//third_party/gstreamer/gstplugins_base:gstpbutils",
138    "//third_party/gstreamer/gstplugins_base:gsttag",
139    "//third_party/gstreamer/gstreamer:gstbase",
140    "//third_party/gstreamer/gstreamer:gstreamer",
141  ]
142
143  relative_install_dir = "media/plugins"
144  part_name = "multimedia_media_standard"
145  subsystem_name = "multimedia"
146}
147
148ohos_source_set("isomp4_source") {
149  sources = [
150    "gst/isomp4/atoms.c",
151    "gst/isomp4/atomsrecovery.c",
152    "gst/isomp4/descriptors.c",
153    "gst/isomp4/gstisoff.c",
154    "gst/isomp4/gstqtmoovrecover.c",
155    "gst/isomp4/gstqtmux-doc.c",
156    "gst/isomp4/gstqtmux.c",
157    "gst/isomp4/gstqtmuxmap.c",
158    "gst/isomp4/gstrtpxqtdepay.c",
159    "gst/isomp4/isomp4-plugin.c",
160    "gst/isomp4/properties.c",
161    "gst/isomp4/qtdemux.c",
162    "gst/isomp4/qtdemux_dump.c",
163    "gst/isomp4/qtdemux_lang.c",
164    "gst/isomp4/qtdemux_types.c",
165  ]
166
167  configs = [ ":gst_plugins_config" ]
168}
169
170ohos_shared_library("gstisomp4") {
171  deps = [
172    ":isomp4_source",
173    "//third_party/glib:glib",
174    "//third_party/glib:gmodule",
175    "//third_party/glib:gobject",
176    "//third_party/gstreamer/gstplugins_base:gstaudio",
177    "//third_party/gstreamer/gstplugins_base:gstpbutils",
178    "//third_party/gstreamer/gstplugins_base:gstriff",
179    "//third_party/gstreamer/gstplugins_base:gstrtp",
180    "//third_party/gstreamer/gstplugins_base:gsttag",
181    "//third_party/gstreamer/gstplugins_base:gstvideo",
182    "//third_party/gstreamer/gstreamer:gstbase",
183    "//third_party/gstreamer/gstreamer:gstreamer",
184    "//third_party/zlib:libz",
185  ]
186
187  relative_install_dir = "media/plugins"
188  part_name = "multimedia_media_standard"
189  subsystem_name = "multimedia"
190}
191
192ohos_source_set("wavparse_source") {
193  sources = [ "gst/wavparse/gstwavparse.c" ]
194
195  configs = [ ":gst_plugins_config" ]
196}
197
198ohos_shared_library("gstwavparse") {
199  deps = [
200    ":wavparse_source",
201    "//third_party/glib:glib",
202    "//third_party/glib:gmodule",
203    "//third_party/glib:gobject",
204    "//third_party/gstreamer/gstplugins_base:gstaudio",
205    "//third_party/gstreamer/gstplugins_base:gstpbutils",
206    "//third_party/gstreamer/gstplugins_base:gstriff",
207    "//third_party/gstreamer/gstreamer:gstbase",
208    "//third_party/gstreamer/gstreamer:gstreamer",
209  ]
210
211  relative_install_dir = "media/plugins"
212  part_name = "multimedia_media_standard"
213  subsystem_name = "multimedia"
214}
215
216ohos_source_set("multifile_source") {
217  sources = [
218    "gst/multifile/gstmultifile.c",
219    "gst/multifile/gstmultifilesink.c",
220    "gst/multifile/gstmultifilesrc.c",
221    "gst/multifile/gstsplitmuxpartreader.c",
222    "gst/multifile/gstsplitmuxsink.c",
223    "gst/multifile/gstsplitmuxsrc.c",
224    "gst/multifile/gstsplitutils.c",
225    "gst/multifile/patternspec.c",
226  ]
227
228  configs = [ ":gst_plugins_config" ]
229}
230
231ohos_shared_library("gstmultifile") {
232  deps = [
233    ":multifile_source",
234    "//third_party/glib:glib",
235    "//third_party/glib:gmodule",
236    "//third_party/glib:gobject",
237    "//third_party/gstreamer/gstplugins_base:gstaudio",
238    "//third_party/gstreamer/gstplugins_base:gstpbutils",
239    "//third_party/gstreamer/gstplugins_base:gstriff",
240    "//third_party/gstreamer/gstplugins_base:gstvideo",
241    "//third_party/gstreamer/gstreamer:gstbase",
242    "//third_party/gstreamer/gstreamer:gstreamer",
243  ]
244
245  relative_install_dir = "media/plugins"
246  part_name = "multimedia_media_standard"
247  subsystem_name = "multimedia"
248}
249
250ohos_source_set("audiofx_source") {
251  sources = [
252    "gst/audiofx/audioamplify.c",
253    "gst/audiofx/audiochebband.c",
254    "gst/audiofx/audiocheblimit.c",
255    "gst/audiofx/audiodynamic.c",
256    "gst/audiofx/audioecho.c",
257    "gst/audiofx/audiofirfilter.c",
258    "gst/audiofx/audiofx.c",
259    "gst/audiofx/audiofxbasefirfilter.c",
260    "gst/audiofx/audiofxbaseiirfilter.c",
261    "gst/audiofx/audioiirfilter.c",
262    "gst/audiofx/audioinvert.c",
263    "gst/audiofx/audiokaraoke.c",
264    "gst/audiofx/audiopanorama.c",
265    "gst/audiofx/audiopanoramaorc.c",
266    "gst/audiofx/audiowsincband.c",
267    "gst/audiofx/audiowsinclimit.c",
268    "gst/audiofx/gstscaletempo.c",
269    "gst/audiofx/gststereo.c",
270  ]
271
272  configs = [ ":gst_plugins_config" ]
273}
274
275ohos_shared_library("gstaudiofx") {
276  deps = [
277    ":audiofx_source",
278    "//third_party/glib:glib",
279    "//third_party/glib:gmodule",
280    "//third_party/glib:gobject",
281    "//third_party/gstreamer/gstplugins_base:gstaudio",
282    "//third_party/gstreamer/gstplugins_base:gstfft",
283    "//third_party/gstreamer/gstplugins_base:gstpbutils",
284    "//third_party/gstreamer/gstplugins_base:gsttag",
285    "//third_party/gstreamer/gstreamer:gstbase",
286    "//third_party/gstreamer/gstreamer:gstreamer",
287  ]
288
289  relative_install_dir = "media/plugins"
290  part_name = "multimedia_media_standard"
291  subsystem_name = "multimedia"
292}
293
294ohos_source_set("gstsoup_source") {
295  sources = [
296    "ext/soup/gstsoup.c",
297    "ext/soup/gstsouphttpsrc.c",
298    "ext/soup/gstsouputils.c",
299
300    #"ext/soup/gstsouphttpclientsink.c",
301  ]
302
303  configs = [ ":gst_plugins_config" ]
304}
305
306ohos_shared_library("gstsoup") {
307  deps = [
308    ":gstsoup_source",
309    "//third_party/glib:gio",
310    "//third_party/glib:glib",
311    "//third_party/glib:gmodule",
312    "//third_party/glib:gobject",
313    "//third_party/gstreamer/gstplugins_base:gsttag",
314    "//third_party/gstreamer/gstreamer:gstbase",
315    "//third_party/gstreamer/gstreamer:gstreamer",
316    "//third_party/libsoup:libohossoup",
317  ]
318  relative_install_dir = "media/plugins"
319  part_name = "multimedia_media_standard"
320  subsystem_name = "multimedia"
321}
322
323ohos_source_set("matroska_source") {
324  sources = [
325    "gst/matroska/ebml-read.c",
326    "gst/matroska/ebml-write.c",
327    "gst/matroska/lzo.c",
328    "gst/matroska/matroska-demux.c",
329    "gst/matroska/matroska-ids.c",
330    "gst/matroska/matroska-mux.c",
331    "gst/matroska/matroska-parse.c",
332    "gst/matroska/matroska-read-common.c",
333    "gst/matroska/matroska.c",
334    "gst/matroska/webm-mux.c",
335  ]
336
337  configs = [ ":gst_plugins_config" ]
338}
339
340ohos_shared_library("gstmatroska") {
341  deps = [
342    ":matroska_source",
343    "//third_party/bzip2:libbz2",
344    "//third_party/glib:glib",
345    "//third_party/glib:gmodule",
346    "//third_party/glib:gobject",
347    "//third_party/gstreamer/gstplugins_base:gstaudio",
348    "//third_party/gstreamer/gstplugins_base:gstfft",
349    "//third_party/gstreamer/gstplugins_base:gstpbutils",
350    "//third_party/gstreamer/gstplugins_base:gstriff",
351    "//third_party/gstreamer/gstplugins_base:gsttag",
352    "//third_party/gstreamer/gstplugins_base:gstvideo",
353    "//third_party/gstreamer/gstreamer:gstbase",
354    "//third_party/gstreamer/gstreamer:gstreamer",
355  ]
356
357  relative_install_dir = "media/plugins"
358  part_name = "multimedia_media_standard"
359  subsystem_name = "multimedia"
360}
361