• 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        ":gstaudioparsers",
8        ":gstautodetect",
9        ":gstisomp4",
10        ":gstwavparse",
11        ":gstmultifile",
12        ":gstaudiofx",
13    ]
14}
15
16config("gst_plugins_config") {
17    visibility = [ ":*" ]
18
19    include_dirs = [
20        ".",
21        "./gst-libs",
22        "./gst/isomp4",
23        "./gst/audiofx",
24        "//third_party/gstreamer/gstreamer",
25        "//third_party/gstreamer/gstreamer/libs",
26        "//third_party/gstreamer/gstplugins_base",
27        "//third_party/gstreamer/gstplugins_base/gst-libs",
28        "//third_party/glib/glib",
29        "//third_party/glib",
30        "//third_party/glib/gmodule",
31        "//third_party/zlib",
32    ]
33
34    cflags = [
35        "-Wall",
36        "-Werror",
37        #"-DBUILDING_GST",
38        "-DGST_DISABLE_DEPRECATED",
39        "-DHAVE_CONFIG_H",
40        "-DCOLORSPACE=\"videoconvert\"",
41        "-fno-strict-aliasing",
42        "-Wno-sign-compare",
43        "-Wno-builtin-requires-header",
44        "-Wno-deprecated-declarations",
45        "-DOHOS_OPT_COMPAT",
46        "-DOHOS_OPT_CVE",
47        "-DOHOS_EXT_FUNC",
48    ]
49}
50
51ohos_source_set("audioparsers_source") {
52    sources = [
53        "gst/audioparsers/gstaacparse.c",
54        "gst/audioparsers/gstac3parse.c",
55        "gst/audioparsers/gstamrparse.c",
56        "gst/audioparsers/gstdcaparse.c",
57        "gst/audioparsers/gstflacparse.c",
58        "gst/audioparsers/gstmpegaudioparse.c",
59        "gst/audioparsers/gstsbcparse.c",
60        "gst/audioparsers/gstwavpackparse.c",
61        "gst/audioparsers/plugin.c",
62    ]
63
64    configs = [
65        ":gst_plugins_config",
66    ]
67}
68
69ohos_shared_library("gstaudioparsers") {
70    deps = [
71        ":audioparsers_source",
72        "//third_party/gstreamer/gstreamer:gstreamer",
73        "//third_party/gstreamer/gstreamer:gstbase",
74        "//third_party/gstreamer/gstplugins_base:gstaudio",
75        "//third_party/gstreamer/gstplugins_base:gstpbutils",
76        "//third_party/gstreamer/gstplugins_base:gsttag",
77        "//third_party/glib:glib",
78        "//third_party/glib:gobject",
79        "//third_party/glib:gmodule",
80    ]
81
82    relative_install_dir = "media/plugins"
83    part_name = "multimedia_histreamer"
84    subsystem_name = "multimedia"
85}
86
87ohos_source_set("autodetect_source") {
88    sources = [
89        "gst/audioparsers/gstaacparse.c",
90        "gst/autodetect/gstautoaudiosink.c",
91        "gst/autodetect/gstautoaudiosrc.c",
92        "gst/autodetect/gstautodetect.c",
93        "gst/autodetect/gstautovideosink.c",
94        "gst/autodetect/gstautovideosrc.c",
95    ]
96
97    configs = [
98        ":gst_plugins_config",
99    ]
100}
101
102ohos_shared_library("gstautodetect") {
103    deps = [
104        ":autodetect_source",
105        "//third_party/gstreamer/gstreamer:gstreamer",
106        "//third_party/gstreamer/gstreamer:gstbase",
107        "//third_party/gstreamer/gstplugins_base:gstaudio",
108        "//third_party/gstreamer/gstplugins_base:gstpbutils",
109        "//third_party/gstreamer/gstplugins_base:gsttag",
110        "//third_party/glib:glib",
111        "//third_party/glib:gobject",
112        "//third_party/glib:gmodule",
113    ]
114
115    relative_install_dir = "media/plugins"
116    part_name = "multimedia_histreamer"
117    subsystem_name = "multimedia"
118}
119
120ohos_source_set("id3demux_source") {
121    sources = [
122        "gst/id3demux/gstid3demux.c",
123    ]
124
125    configs = [
126        ":gst_plugins_config",
127    ]
128}
129
130ohos_shared_library("gstid3demux") {
131    deps = [
132        ":id3demux_source",
133        "//third_party/gstreamer/gstreamer:gstreamer",
134        "//third_party/gstreamer/gstreamer:gstbase",
135        "//third_party/gstreamer/gstplugins_base:gstaudio",
136        "//third_party/gstreamer/gstplugins_base:gstpbutils",
137        "//third_party/gstreamer/gstplugins_base:gsttag",
138        "//third_party/glib:glib",
139        "//third_party/glib:gobject",
140        "//third_party/glib:gmodule",
141    ]
142
143    relative_install_dir = "media/plugins"
144    part_name = "multimedia_histreamer"
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.c",
156        "gst/isomp4/gstqtmux-doc.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 = [
168        ":gst_plugins_config",
169    ]
170}
171
172ohos_shared_library("gstisomp4") {
173    deps = [
174        ":isomp4_source",
175        "//third_party/gstreamer/gstreamer:gstreamer",
176        "//third_party/gstreamer/gstreamer:gstbase",
177        "//third_party/gstreamer/gstplugins_base:gstaudio",
178        "//third_party/gstreamer/gstplugins_base:gstvideo",
179        "//third_party/gstreamer/gstplugins_base:gstpbutils",
180        "//third_party/gstreamer/gstplugins_base:gsttag",
181        "//third_party/gstreamer/gstplugins_base:gstriff",
182        "//third_party/gstreamer/gstplugins_base:gstrtp",
183        "//third_party/zlib:libz",
184        "//third_party/glib:glib",
185        "//third_party/glib:gobject",
186        "//third_party/glib:gmodule",
187    ]
188
189    relative_install_dir = "media/plugins"
190    part_name = "multimedia_histreamer"
191    subsystem_name = "multimedia"
192}
193
194
195ohos_source_set("wavparse_source") {
196    sources = [
197        "gst/wavparse/gstwavparse.c",
198    ]
199
200    configs = [
201        ":gst_plugins_config",
202    ]
203}
204
205ohos_shared_library("gstwavparse") {
206    deps = [
207        ":wavparse_source",
208        "//third_party/gstreamer/gstreamer:gstreamer",
209        "//third_party/gstreamer/gstreamer:gstbase",
210        "//third_party/gstreamer/gstplugins_base:gstaudio",
211        "//third_party/gstreamer/gstplugins_base:gstpbutils",
212        "//third_party/gstreamer/gstplugins_base:gstriff",
213        "//third_party/glib:glib",
214        "//third_party/glib:gobject",
215        "//third_party/glib:gmodule",
216    ]
217    relative_install_dir = "media/plugins"
218    part_name = "multimedia_histreamer"
219    subsystem_name = "multimedia"
220}
221
222ohos_source_set("multifile_source") {
223    sources = [
224        "gst/multifile/gstsplitmuxsink.c",
225        "gst/multifile/gstmultifilesink.c",
226        "gst/multifile/gstmultifilesrc.c",
227        "gst/multifile/gstsplitmuxpartreader.c",
228        "gst/multifile/gstsplitmuxsrc.c",
229        "gst/multifile/gstsplitutils.c",
230        "gst/multifile/patternspec.c",
231        "gst/multifile/gstmultifile.c",
232    ]
233
234    configs = [
235        ":gst_plugins_config",
236    ]
237}
238
239ohos_shared_library("gstmultifile") {
240    deps = [
241        ":multifile_source",
242        "//third_party/gstreamer/gstreamer:gstreamer",
243        "//third_party/gstreamer/gstreamer:gstbase",
244        "//third_party/gstreamer/gstplugins_base:gstvideo",
245        "//third_party/gstreamer/gstplugins_base:gstaudio",
246        "//third_party/gstreamer/gstplugins_base:gstpbutils",
247        "//third_party/gstreamer/gstplugins_base:gstriff",
248        "//third_party/glib:glib",
249        "//third_party/glib:gobject",
250        "//third_party/glib:gmodule",
251    ]
252
253    relative_install_dir = "media/plugins"
254    part_name = "multimedia_histreamer"
255    subsystem_name = "multimedia"
256}
257
258ohos_source_set("audiofx_source") {
259    sources = [
260        "gst/audiofx/audiofx.c",
261        "gst/audiofx/audiopanorama.c",
262        "gst/audiofx/audioinvert.c",
263        "gst/audiofx/audioamplify.c",
264        "gst/audiofx/audiodynamic.c",
265        "gst/audiofx/audiokaraoke.c",
266        "gst/audiofx/audiofxbaseiirfilter.c",
267        "gst/audiofx/audiocheblimit.c",
268        "gst/audiofx/audiochebband.c",
269        "gst/audiofx/audioiirfilter.c",
270        "gst/audiofx/audiofxbasefirfilter.c",
271        "gst/audiofx/audiowsincband.c",
272        "gst/audiofx/audiowsinclimit.c",
273        "gst/audiofx/audiofirfilter.c",
274        "gst/audiofx/audioecho.c",
275        "gst/audiofx/gstscaletempo.c",
276        "gst/audiofx/gststereo.c",
277        "gst/audiofx/audiopanoramaorc.c",
278    ]
279
280    configs = [
281        ":gst_plugins_config",
282    ]
283}
284
285ohos_shared_library("gstaudiofx") {
286    deps = [
287        ":audiofx_source",
288        "//third_party/gstreamer/gstreamer:gstreamer",
289        "//third_party/gstreamer/gstreamer:gstbase",
290        "//third_party/gstreamer/gstplugins_base:gstaudio",
291        "//third_party/gstreamer/gstplugins_base:gstfft",
292        "//third_party/gstreamer/gstplugins_base:gstpbutils",
293        "//third_party/gstreamer/gstplugins_base:gsttag",
294        "//third_party/glib:glib",
295        "//third_party/glib:gobject",
296        "//third_party/glib:gmodule",
297    ]
298
299    relative_install_dir = "media/plugins"
300    part_name = "multimedia_histreamer"
301    subsystem_name = "multimedia"
302}
303