5 %define _lib_gstreamer_dir %{_libdir}/gstreamer-%{gst_branch}
6 %define _lib_girepository %{_libdir}/girepository-%{gst_branch}
7 %define _enable_v4l2h264enc 0
8 %define _enable_introspection 0
10 #######################################################################
11 ## how to build each plugin :
12 ## add define option at gbs build cmd like [ --define "plugin bad" ]
13 ## if not, all the source code in subprojects will be built
14 #######################################################################
17 %if "%{plugin}" == "core"
18 %define _name gstreamer
21 %if "%{plugin}" == "base" || "%{plugin}" == "good" || "%{plugin}" == "bad" || "%{plugin}" == "ugly"
22 %define _name gst-plugins-%{plugin}
28 %if "%{plugin}" == "omx" || "%{plugin}" == "libav"
29 %define _name gst-%{plugin}
33 %if "%{plugin}" == "rs"
34 %define _name gst-rtsp-server
37 %if "%{plugin}" == "es"
38 %define _name gst-editing-services
42 %define _source_path subprojects/%{_name}
47 %define _name gstreamer
48 %define _source_path .
50 # plugin option prefix
51 %define _core_opt gstreamer:
52 %define _base_opt gst-plugins-base:
53 %define _good_opt gst-plugins-good:
54 %define _bad_opt gst-plugins-bad:
55 %define _ugly_opt gst-plugins-ugly:
56 %define _omx_opt gst-omx:
57 %define _libav_opt gst-libav:
58 %define _rs_opt gst-rtsp-server:
59 %define _es_opt gst-editing-services:
66 Summary: Streaming-Media Framework Runtime
68 Group: Multimedia/Framework
69 Url: http://gstreamer.freedesktop.org/
70 Source0: gstreamer-%{version}.tar.gz
71 Source1001: gstreamer.manifest
72 BuildRequires: meson >= 0.59.0
73 BuildRequires: gettext-tools
74 BuildRequires: pkgconfig(glib-2.0) >= 2.32.0
77 %if "%{plugin}" == "all" || "%{plugin}" == "core"
82 BuildRequires: libtool
83 BuildRequires: pkgconfig(dlog)
84 %if "%{_enable_introspection}" == "1"
85 BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.31.1
87 BuildRequires: pkgconfig(libxml-2.0)
89 %description -n gstreamer
90 GStreamer is a streaming-media framework, based on graphs of filters
91 which operate on media data. Applications using this library can do
92 anything from real-time sound processing to playing videos, and just
93 about anything else media-related. Its plug-in-based architecture
94 means that new data types or processing capabilities can be added by
95 installing new plug-ins.
97 %package -n gstreamer-utils
98 Summary: Streaming-Media Framework Runtime
99 Group: Multimedia/Framework
100 Provides: gstreamer:%{_bindir}/gst-launch-%{gst_branch} = %{version}
101 # Symbol for unversioned wrappers:
102 Provides: gstreamer-utils_versioned = %{version}
104 %description -n gstreamer-utils
105 GStreamer is a streaming-media framework, based on graphs of filters
106 which operate on media data. Applications using this library can do
107 anything from real-time sound processing to playing videos, and just
108 about anything else media-related. Its plug-in-based architecture
109 means that new data types or processing capabilities can be added by
110 installing new plug-ins.
112 %package -n gstreamer-devel
113 Summary: Include Files and Libraries mandatory for Development
114 Group: Development/Libraries
115 # gstreamer-utils is required for the gstreamer-provides rpm magic.
116 Requires: gstreamer-utils = %{version}
117 Requires: gstreamer = %{version}
119 %description -n gstreamer-devel
120 This package contains all necessary include files and libraries needed
121 to develop applications that require these.
125 BuildRequires: pkgconfig(gstreamer-1.0)
127 %if "%{plugin}" != "base"
128 BuildRequires: pkgconfig(gstreamer-plugins-base-1.0)
133 #######################################################
134 ## Package info of Base Plugin
135 #######################################################
137 %if "%{plugin}" == "all"
138 %package -n gst-plugins-base
139 Summary: GStreamer Streaming-Media Framework Plug-Ins
140 Group: Multimedia/Framework
143 %if "%{plugin}" == "all" || "%{plugin}" == "base"
145 BuildRequires: orc >= 0.4.16
146 BuildRequires: python
147 BuildRequires: pkgconfig(alsa) >= 0.9.1
148 BuildRequires: pkgconfig(freetype2) >= 2.0.9
149 BuildRequires: pkgconfig(libdrm)
150 BuildRequires: pkgconfig(libtbm)
151 BuildRequires: pkgconfig(libxml-2.0)
152 BuildRequires: pkgconfig(ogg) >= 1.0
153 BuildRequires: pkgconfig(opus)
154 BuildRequires: pkgconfig(theoradec) >= 1.1
155 BuildRequires: pkgconfig(theoraenc) >= 1.1
156 BuildRequires: pkgconfig(vorbis) >= 1.0
157 BuildRequires: pkgconfig(vorbisenc) >= 1.0
158 BuildRequires: pkgconfig(zlib)
159 %if "%{_enable_introspection}" == "1"
160 BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.31.1
162 %if "%{tizen_profile_name}" != "tv"
163 BuildRequires: update-desktop-files
167 BuildRequires: pkgconfig(gles20)
168 BuildRequires: pkgconfig(wayland-egl) >= 9.0
172 BuildRequires: pkgconfig(dri2proto)
173 BuildRequires: pkgconfig(libdri2)
174 BuildRequires: pkgconfig(ice)
175 BuildRequires: pkgconfig(sm)
176 BuildRequires: pkgconfig(xext)
177 BuildRequires: pkgconfig(xv)
178 BuildRequires: pkgconfig(xfixes)
180 # gstreamer-utils is required for the gstreamer-provides rpm magic.
181 Requires: gstreamer >= 1.0.0
183 Supplements: gstreamer
185 %description -n gst-plugins-base
186 GStreamer is a streaming media framework based on graphs of filters
187 that operate on media data. Applications using this library can do
188 anything media-related, from real-time sound processing to playing
189 videos. Its plug-in-based architecture means that new data types or
190 processing capabilities can be added simply by installing new plug-ins.
192 %if "%{tizen_profile_name}" != "tv"
193 %package -n gst-plugins-base-extension-adder
194 Summary: libgstadder.so for gst-plugins-base
195 Requires: gst-plugins-base = %{version}-%{release}
196 Provides: gst-plugins-base-profile_mobile = %{version}-%{release}
198 %description -n gst-plugins-base-extension-adder
199 Libgstadder.so for gst-plugin-base. Supplicant for gst-plugin-base.
200 This is for Tizen mobile profile.
203 %package -n gst-plugins-base-devel
204 Summary: Include files and Libraries
205 Requires: gst-plugins-base = %{version}
207 %description -n gst-plugins-base-devel
208 This package contains all necessary include files and libraries needed
209 to compile and link applications that use gstreamer-plugins-base.
213 #######################################################
214 ## Package info of Good Plugin
215 #######################################################
217 %if "%{plugin}" == "all"
218 %package -n gst-plugins-good
219 Summary: GStreamer Streaming-Media Framework Plug-Ins
220 Group: Multimedia/Framework
223 %if "%{plugin}" == "all" || "%{plugin}" == "good"
225 BuildRequires: libjpeg-devel
226 BuildRequires: orc >= 0.4.16
227 BuildRequires: python
228 BuildRequires: xsltproc
229 BuildRequires: pkgconfig(bzip2)
230 BuildRequires: pkgconfig(gio-2.0)
231 BuildRequires: pkgconfig(libpulse) >= 1.0
232 BuildRequires: pkgconfig(libsoup-2.4)
233 BuildRequires: pkgconfig(libtbm)
234 BuildRequires: pkgconfig(libxml-2.0) >= 2.4.9
235 BuildRequires: pkgconfig(vconf)
236 BuildRequires: pkgconfig(vpx)
237 BuildRequires: pkgconfig(zlib)
238 %if "%{tizen_profile_name}" != "tv"
239 BuildRequires: pkgconfig(libpng) >= 1.2
240 BuildRequires: pkgconfig(libv4l2)
243 BuildRequires: pkgconfig(ice)
244 BuildRequires: pkgconfig(sm)
245 BuildRequires: pkgconfig(xdamage)
246 BuildRequires: pkgconfig(xfixes)
247 # used by libgstvideo4linux2.so
248 BuildRequires: pkgconfig(xv)
250 Requires: gstreamer >= %{version}
251 Requires: gst-plugins-base >= %{version}
254 %description -n gst-plugins-good
255 GStreamer is a streaming media framework based on graphs of filters
256 that operate on media data. Applications using this library can do
257 anything media-related, from real-time sound processing to playing
258 videos. Its plug-in-based architecture means that new data types or
259 processing capabilities can be added simply by installing new plug-ins.
261 %package -n gst-plugins-good-extra
262 Summary: Complementary plugins for gst-plugins-good
263 Group: Productivity/Multimedia/Other
264 Requires: gst-plugins-good = %{version}
265 Enhances: gst-plugins-good
267 %description -n gst-plugins-good-extra
268 This package provides complementary plugins for gst-plugins-good and
269 plugins not included in official Tizen images, which may be used for development / experimental purposes.
271 %package -n gst-plugins-good-cairo
272 Summary: Cairo plugin for gst-plugins-good
273 Group: Multimedia/Framework
274 %if "%{tizen_profile_name}" != "tv"
275 BuildRequires: pkgconfig(cairo)
276 BuildRequires: pkgconfig(cairo-gobject)
278 Requires: gst-plugins-good = %{version}
279 Enhances: gst-plugins-good
281 %description -n gst-plugins-good-cairo
282 This package provides cairo plugin for gst-plugins-good and
283 this is not included in Tizen headless image.
287 #######################################################
288 ## Package info of Bad Plugin
289 #######################################################
291 %if "%{plugin}" == "all"
292 %package -n gst-plugins-bad
293 Summary: GStreamer Streaming-Media Framework Plug-Ins
294 Group: Multimedia/Framework
297 %if "%{plugin}" == "all" || "%{plugin}" == "bad"
299 BuildRequires: python
300 BuildRequires: xsltproc
301 BuildRequires: pkgconfig(gio-2.0) >= 2.25.0
302 BuildRequires: pkgconfig(libcurl) >= 7.21.0
303 BuildRequires: pkgconfig(libexif) >= 0.6.16
304 BuildRequires: pkgconfig(libsrtp2) >= 2.1.0
305 BuildRequires: pkgconfig(libusb-1.0)
306 BuildRequires: pkgconfig(nice)
307 BuildRequires: pkgconfig(openal)
308 BuildRequires: pkgconfig(openssl1.1)
309 BuildRequires: pkgconfig(opus)
310 BuildRequires: pkgconfig(orc-0.4) >= 0.4.11
311 BuildRequires: pkgconfig(sndfile) >= 1.0.16
312 BuildRequires: pkgconfig(soundtouch) > 1.4
313 %if "%{tizen_profile_name}" != "tv"
314 BuildRequires: pkgconfig(srt)
317 BuildRequires: pkgconfig(libdrm)
318 BuildRequires: pkgconfig(libxml-2.0)
319 BuildRequires: pkgconfig(wayland-client) >= 1.0.0
320 BuildRequires: pkgconfig(wayland-cursor) >= 1.0.0
321 BuildRequires: pkgconfig(wayland-protocols)
324 BuildRequires: pkgconfig(x11)
326 Requires: gstreamer >= %{version}
328 %description -n gst-plugins-bad
329 GStreamer is a streaming media framework based on graphs of filters
330 that operate on media data. Applications using this library can do
331 anything media-related,from real-time sound processing to playing
332 videos. Its plug-in-based architecture means that new data types or
333 processing capabilities can be added simply by installing new plug-ins.
335 %package -n gst-plugins-bad-devel
336 Summary: GStreamer Streaming-Media Framework Plug-Ins
337 Requires: gst-plugins-bad = %{version}-%{release}
338 Requires: gst-plugins-base-devel
340 %description -n gst-plugins-bad-devel
341 GStreamer is a streaming media framework based on graphs of filters
342 that operate on media data. Applications using this library can do
343 anything media-related,from real-time sound processing to playing
344 videos. Its plug-in-based architecture means that new data types or
345 processing capabilities can be added simply by installing new plug-ins.
349 #######################################################
350 ## Package info of Ugly Plugin
351 #######################################################
353 %if "%{plugin}" == "all"
354 %package -n gst-plugins-ugly
355 Summary: GStreamer plugins from the "ugly" set
356 Group: Multimedia/Framework
359 %if "%{plugin}" == "all" || "%{plugin}" == "ugly"
362 BuildRequires: pkgconfig(opencore-amrwb)
363 %if "%{tizen_profile_name}" != "tv"
364 BuildRequires: pkgconfig(opencore-amrnb)
367 %description -n gst-plugins-ugly
368 GStreamer is a streaming media framework, based on graphs of filters
369 which operate on media data. Applications using this library can do
370 anything from real-time sound processing to playing videos, and just
371 about anything else media-related. Its plugin-based architecture means
372 that new data types or processing capabilities can be added simply by
373 installing new plug-ins.
375 This packages contains plugins from the "ugly" set, a set of
376 good-quality plug-ins that might pose distribution problems.
380 #######################################################
381 ## Package info of Omx Plugin
382 #######################################################
384 %if "%{tizen_profile_name}" != "tv"
385 %ifarch %{arm} aarch64
387 %if "%{plugin}" == "all"
389 Summary: GStreamer plug-in that allows communication with OpenMAX IL components
390 Group: Multimedia/Framework
393 %if "%{plugin}" == "all" || "%{plugin}" == "omx"
396 BuildRequires: pkgconfig(libtbm)
397 BuildRequires: pkgconfig(mm-common)
398 %if "%{target}" == "rpi"
399 BuildRequires: pkgconfig(bcm_host)
400 BuildRequires: pkgconfig(brcmegl)
403 %description -n gst-omx
404 gst-openmax is a GStreamer plug-in that allows communication with OpenMAX IL components.
405 Multiple OpenMAX IL implementations can be used.
411 #######################################################
412 ## Package info of libav Plugin
413 #######################################################
415 %if "%{plugin}" == "all"
416 %package -n gst-libav
417 Summary: Libav plugin for GStreamer
418 Group: Multimedia/Framework
421 %if "%{plugin}" == "all" || "%{plugin}" == "libav"
423 BuildRequires: bzip2-devel
424 BuildRequires: gettext
427 BuildRequires: pkgconfig(libavcodec)
428 BuildRequires: pkgconfig(libavfilter)
429 BuildRequires: pkgconfig(libavformat)
430 BuildRequires: pkgconfig(libavutil)
431 BuildRequires: pkgconfig(orc-0.4)
432 BuildRequires: pkgconfig(theora)
433 BuildRequires: pkgconfig(vorbis)
434 BuildRequires: pkgconfig(zlib)
436 %description -n gst-libav
437 This GStreamer plugin supports a large number of audio and video compression
438 formats through the use of the libav library. The plugin contains GStreamer
439 elements for decoding 90+ formats (AVI, MPEG, OGG, Matroska, ASF, ...),
440 demuxing 30+ formats and colorspace conversion.
444 #######################################################
445 ## Package info of rtsp-server Plugin
446 #######################################################
448 %if "%{plugin}" == "all"
449 %package -n gst-rtsp-server
450 Summary: Multimedia Framework Library
451 Group: System/Libraries
454 %if "%{plugin}" == "all" || "%{plugin}" == "rs"
456 Requires(post): /sbin/ldconfig
457 Requires(postun): /sbin/ldconfig
459 %description -n gst-rtsp-server
460 This GStreamer plugin supports a large number of audio and video compression
461 formats through the use of the libav library. The plugin contains GStreamer
462 elements for decoding 90+ formats (AVI, MPEG, OGG, Matroska, ASF, ...),
463 demuxing 30+ formats and colorspace conversion.
465 %package -n gst-rtsp-server-devel
466 Summary: Multimedia Framework RTSP server library (DEV)
467 Group: Development/Libraries
468 Requires: gst-rtsp-server = %{version}-%{release}
470 %description -n gst-rtsp-server-devel
474 #######################################################
475 ## Package info of editing-services Plugin
476 #######################################################
478 %if "%{tizen_profile_name}" != "tv"
480 %if "%{plugin}" == "all"
481 %package -n gst-editing-services
482 Summary: GStreamer Editing Service Plug-Ins
483 Group: Multimedia/Framework
486 %if "%{plugin}" == "all" || "%{plugin}" == "es"
489 BuildRequires: gtk-doc
490 BuildRequires: pkgconfig(libxml-2.0)
491 Requires: gstreamer >= 1.0.0
492 Supplements: gstreamer
494 %description -n gst-editing-services
495 This is a high-level library for facilitating the creation of audio/video
498 %package -n gst-editing-services-devel
499 Summary: Development files for gst-editing-services
500 Requires: gst-editing-services = %{version}-%{release}
502 %description -n gst-editing-services-devel
503 This package contains libraries and header files for
504 developing applications that use %{name}
510 #######################################################
512 #######################################################
515 %setup -q -n gstreamer-%{version}
516 cp %{SOURCE1001} ./gstreamer.manifest
517 cp %{SOURCE1001} ./gst-plugins-base.manifest
518 cp %{SOURCE1001} ./gst-plugins-good.manifest
519 cp %{SOURCE1001} ./gst-plugins-bad.manifest
520 cp %{SOURCE1001} ./gst-plugins-ugly.manifest
521 cp %{SOURCE1001} ./gst-libav.manifest
522 cp %{SOURCE1001} ./gst-rtsp-server.manifest
523 %if "%{tizen_profile_name}" != "tv"
524 cp %{SOURCE1001} ./gst-omx.manifest
525 cp %{SOURCE1001} ./gst-editing-services.manifest
528 #######################################################
530 #######################################################
534 %if "%{plugin}" != "all"
535 pushd %{_source_path}
539 export CFLAGS="%{optflags} \
540 -fno-strict-aliasing\
541 -fstack-protector-strong\
543 %if "%{tizen_profile_name}" == "tv"
544 -Wno-declaration-after-statement\
547 export CXXFLAGS+=" -Wno-error"
548 export LDFLAGS+=" -pthread"
550 meson --auto-features=disabled --prefix=/usr --libdir=%{_libdir} --datadir=%{_datadir} --sysconfdir=%{_hal_sysconfdir} \
551 %if "%{plugin}" == "all"
552 %if "%{tizen_profile_name}" == "tv"
556 %ifarch x86_64 %{ix86}
560 %if "%{plugin}" == "all" || "%{plugin}" == "core"
561 -D %{_core_opt}check=enabled \
562 -D %{_core_opt}coretracers=enabled \
563 -D %{_core_opt}extra-checks=enabled \
564 -D %{_core_opt}ptp-helper-permissions=none \
565 -D %{_core_opt}tools=enabled \
566 %if "%{tizen_profile_name}" == "tv"
567 -D %{_core_opt}tv-profile=true \
569 %if "%{_enable_introspection}" == "1"
570 -D %{_core_opt}introspection=enabled \
571 %endif # introspection
573 %if "%{plugin}" == "all" || "%{plugin}" == "base"
574 -D %{_base_opt}alsa=enabled \
575 -D %{_base_opt}app=enabled \
576 -D %{_base_opt}audioconvert=enabled \
577 -D %{_base_opt}audiomixer=enabled \
578 -D %{_base_opt}audiorate=enabled \
579 -D %{_base_opt}audioresample=enabled \
580 -D %{_base_opt}audiotestsrc=enabled \
581 -D %{_base_opt}compositor=enabled \
582 -D %{_base_opt}gio=enabled \
583 -D %{_base_opt}gio-typefinder=enabled \
584 -D %{_base_opt}ogg=enabled \
585 -D %{_base_opt}opus=enabled \
586 -D %{_base_opt}overlaycomposition=enabled \
587 -D %{_base_opt}pbtypes=enabled \
588 -D %{_base_opt}playback=enabled \
589 -D %{_base_opt}rawparse=enabled \
590 -D %{_base_opt}subparse=enabled \
591 -D %{_base_opt}tbm=true \
592 -D %{_base_opt}tcp=enabled \
593 -D %{_base_opt}theora=enabled \
594 -D %{_base_opt}typefind=enabled \
595 -D %{_base_opt}videoconvert=enabled \
596 -D %{_base_opt}videorate=enabled \
597 -D %{_base_opt}videoscale=enabled \
598 -D %{_base_opt}videotestsrc=enabled \
599 -D %{_base_opt}volume=enabled \
600 -D %{_base_opt}vorbis=enabled \
601 %if "%{tizen_profile_name}" == "tv"
602 -D %{_base_opt}tv-profile=true \
604 -D %{_base_opt}adder=enabled \
605 -D %{_base_opt}encoding=enabled \
607 -D %{_base_opt}gl=enabled \
610 %if "%{_enable_introspection}" == "1"
611 -D %{_base_opt}introspection=enabled \
612 %endif # introspection
614 %if "%{plugin}" == "all" || "%{plugin}" == "good"
615 %if 0%{?ENABLE_AALIB}
616 -D %{_good_opt}aalib=enabled \
618 -D %{_good_opt}apetag=enabled \
619 -D %{_good_opt}audiofx=enabled \
620 -D %{_good_opt}audioparsers=enabled \
621 -D %{_good_opt}autodetect=enabled \
622 -D %{_good_opt}avi=enabled \
623 -D %{_good_opt}debugutils=enabled \
624 -D %{_good_opt}deinterlace=enabled \
625 -D %{_good_opt}icydemux=enabled \
626 -D %{_good_opt}id3demux=enabled \
627 -D %{_good_opt}interleave=enabled \
628 -D %{_good_opt}isomp4=enabled \
629 -D %{_good_opt}jpeg=enabled \
630 -D %{_good_opt}law=enabled \
631 -D %{_good_opt}pulse=enabled \
632 -D %{_good_opt}replaygain=enabled \
633 -D %{_good_opt}rtp=enabled \
634 -D %{_good_opt}rtpmanager=enabled \
635 -D %{_good_opt}rtsp=enabled \
636 -D %{_good_opt}soup=enabled \
637 -D %{_good_opt}tbm=true \
638 -D %{_good_opt}udp=enabled \
639 -D %{_good_opt}videocrop=enabled \
640 -D %{_good_opt}videofilter=enabled \
641 -D %{_good_opt}vpx=enabled \
642 -D %{_good_opt}wavenc=enabled \
643 -D %{_good_opt}wavparse=enabled \
644 %if "%{_enable_v4l2h264enc}" == "1"
645 -D %{_good_opt}v4l2h264enc=enabled \
647 %if "%{tizen_profile_name}" == "tv"
648 -D %{_good_opt}tv-profile=true \
649 %ifnarch %{arm} aarch64
650 -D %{_good_opt}v4l2=enabled \
653 -D %{_good_opt}cairo=enabled \
654 -D %{_good_opt}effectv=enabled \
655 -D %{_good_opt}flv=enabled \
656 -D %{_good_opt}imagefreeze=enabled \
657 -D %{_good_opt}matroska=enabled \
658 -D %{_good_opt}multifile=enabled \
659 -D %{_good_opt}png=enabled \
660 -D %{_good_opt}smpte=enabled \
661 -D %{_good_opt}v4l2=enabled \
662 -D %{_good_opt}v4l2-libv4l2=enabled \
663 -D %{_good_opt}v4l2-probe=true \
664 -D %{_good_opt}videobox=enabled \
665 -D %{_good_opt}videomixer=enabled \
668 %if "%{plugin}" == "all" || "%{plugin}" == "bad"
669 -D %{_bad_opt}aes=enabled \
670 -D %{_bad_opt}audiobuffersplit=enabled \
671 -D %{_bad_opt}audiolatency=enabled \
672 -D %{_bad_opt}audiomixmatrix=enabled \
673 -D %{_bad_opt}debugutils=enabled \
674 -D %{_bad_opt}dtls=enabled \
675 -D %{_bad_opt}gst_play_tests=false\
676 -D %{_bad_opt}introspection=disabled \
677 -D %{_bad_opt}ipcpipeline=enabled \
678 -D %{_bad_opt}midi=enabled \
679 -D %{_bad_opt}mpegtsdemux=enabled \
680 -D %{_bad_opt}mpegtsmux=enabled \
681 -D %{_bad_opt}netsim=enabled \
682 -D %{_bad_opt}openal=enabled \
683 -D %{_bad_opt}opus=enabled \
684 -D %{_bad_opt}proxy=enabled \
685 -D %{_bad_opt}sctp=enabled \
686 -D %{_bad_opt}sdp=enabled \
687 -D %{_bad_opt}shm=enabled \
688 -D %{_bad_opt}soundtouch=enabled \
689 -D %{_bad_opt}srtp=enabled \
690 -D %{_bad_opt}timecode=enabled \
691 -D %{_bad_opt}videoframe_audiolevel=enabled \
692 -D %{_bad_opt}videoparsers=enabled \
693 -D %{_bad_opt}wayland=enabled \
694 -D %{_bad_opt}webrtc=enabled \
696 -D %{_bad_opt}wayland=enabled \
698 %if "%{tizen_profile_name}" == "tv"
699 -D %{_bad_opt}tv-profile=true \
701 -D %{_bad_opt}autoconvert=enabled \
702 -D %{_bad_opt}camerabin2=enabled \
703 -D %{_bad_opt}coloreffects=enabled \
704 -D %{_bad_opt}dash=enabled \
705 -D %{_bad_opt}gaudieffects=enabled \
706 -D %{_bad_opt}gdp=enabled \
707 -D %{_bad_opt}hls=enabled \
708 -D %{_bad_opt}id3tag=enabled \
709 -D %{_bad_opt}jpegformat=enabled \
710 -D %{_bad_opt}mpegdemux=enabled \
711 -D %{_bad_opt}rist=enabled \
712 -D %{_bad_opt}rtp=enabled \
713 -D %{_bad_opt}srt=enabled \
714 -D %{_bad_opt}smoothstreaming=enabled \
716 -D %{_bad_opt}gl=enabled \
720 %if "%{plugin}" == "all" || "%{plugin}" == "ugly"
721 -D %{_ugly_opt}amrwbdec=enabled \
722 %if "%{tizen_profile_name}" == "tv"
723 -D %{_ugly_opt}tv-profile=true \
725 -D %{_ugly_opt}amrnb=enabled \
726 -D %{_ugly_opt}asfdemux=enabled \
729 %if "%{plugin}" == "all" || "%{plugin}" == "libav"
730 %if "%{tizen_profile_name}" == "tv"
731 -D %{_libav_opt}tv-profile=true \
734 %if "%{plugin}" == "all" || "%{plugin}" == "rs"
735 %if "%{tizen_profile_name}" == "tv"
736 -D %{_rs_opt}tv-profile=true \
738 -D %{_rs_opt}introspection=disabled \
739 -D %{_rs_opt}rtspclientsink=enabled \
741 %if "%{tizen_profile_name}" != "tv"
742 %ifarch %{arm} aarch64
743 %if "%{plugin}" == "all" || "%{plugin}" == "omx"
744 %if "%{target}" == "rpi"
745 -D %{_omx_opt}header_path=/opt/vc/include/interface/vmcs_host/khronos/IL \
746 -D %{_omx_opt}target=rpi \
749 -D %{_omx_opt}target=exynos64 \
751 -D %{_omx_opt}target=exynos \
752 -D %{_omx_opt}vp9=true \
757 %if "%{plugin}" == "all" || "%{plugin}" == "es"
758 -D %{_es_opt}introspection=disabled \
759 -D %{_es_opt}tools=enabled \
760 -D %{_es_opt}xptv=enabled \
761 -D %{_es_opt}python=enabled \
766 ninja -C build all %{?_smp_mflags}
768 %if "%{plugin}" != "all"
772 #######################################################
774 #######################################################
778 export DESTDIR=%{buildroot}
779 ninja -C %{_source_path}/build install
780 mkdir -p %{buildroot}%{_datadir}/gstreamer-%{gst_branch}/presets
781 rm -rf %{buildroot}%{_datadir}/gstreamer-%{gst_branch}/encoding-profiles
782 rm -rf %{buildroot}%{_datadir}/locale
785 rm -rf $RPM_BUILD_ROOT
787 %post -p /sbin/ldconfig
788 %postun -p /sbin/ldconfig
790 #######################################################
792 #######################################################
794 ###################### gstreamer ######################
796 %if "%{plugin}" == "all" || "%{plugin}" == "core"
799 %manifest gstreamer.manifest
800 %defattr(-, root, root)
801 %license subprojects/gstreamer/COPYING
802 %dir %{_datadir}/gstreamer-%{gst_branch}
803 %dir %{_datadir}/gstreamer-%{gst_branch}/presets
804 %dir %{_lib_gstreamer_dir}
805 %{_lib_gstreamer_dir}/libgstcoreelements.so
806 %{_lib_gstreamer_dir}/libgstcoretracers.so
807 %dir %{_libexecdir}/gstreamer-%{gst_branch}
808 %{_libexecdir}/gstreamer-%{gst_branch}/gst-hotdoc-plugins-scanner
809 %{_libexecdir}/gstreamer-%{gst_branch}/gst-plugin-scanner
810 %{_libexecdir}/gstreamer-%{gst_branch}/gst-ptp-helper
811 %exclude %{_libexecdir}/gstreamer-%{gst_branch}/gst-plugins-doc-cache-generator
812 %{_libdir}/libgstbase-%{gst_branch}.so.*
813 %{_libdir}/libgstcontroller-%{gst_branch}.so.*
814 %{_libdir}/libgstnet-%{gst_branch}.so.*
815 %{_libdir}/libgstcheck-%{gst_branch}.so.*
816 %{_libdir}/libgstreamer-%{gst_branch}.so.*
817 %if "%{_enable_introspection}" == "1"
818 %{_lib_girepository}/Gst-%{gst_branch}.typelib
819 %{_lib_girepository}/GstBase-%{gst_branch}.typelib
820 %{_lib_girepository}/GstController-%{gst_branch}.typelib
821 %{_lib_girepository}/GstNet-%{gst_branch}.typelib
822 %{_lib_girepository}/GstCheck-%{gst_branch}.typelib
823 %endif #introspection
824 %{_datadir}/gdb/auto-load/usr/%{_lib}/libgstreamer-%{gst_branch}*-gdb.py
825 %{_datadir}/gstreamer-%{gst_branch}/gdb/glib_gobject_helper.py
826 %{_datadir}/gstreamer-%{gst_branch}/gdb/gst_gdb.py
828 %files -n gstreamer-utils
829 %manifest gstreamer.manifest
830 %defattr(-, root, root)
831 %license subprojects/gstreamer/COPYING
832 %{_bindir}/gst-inspect-%{gst_branch}
833 %{_bindir}/gst-launch-%{gst_branch}
834 %{_bindir}/gst-stats-%{gst_branch}
835 %{_bindir}/gst-typefind-%{gst_branch}
836 %exclude %doc %{_mandir}/man?/*-%{gst_branch}.*
838 %files -n gstreamer-devel
839 %manifest gstreamer.manifest
840 %defattr(-, root, root)
841 %{_datadir}/aclocal/gst-element-check-%{gst_branch}.m4
842 %{_includedir}/gstreamer-%{gst_branch}/gst/*.h
843 %{_includedir}/gstreamer-%{gst_branch}/gst/base/*
844 %{_includedir}/gstreamer-%{gst_branch}/gst/controller/*
845 %{_includedir}/gstreamer-%{gst_branch}/gst/net/*
846 %{_includedir}/gstreamer-%{gst_branch}/gst/check/*
847 %{_libdir}/libgstbase-%{gst_branch}.so
848 %{_libdir}/libgstcontroller-%{gst_branch}.so
849 %{_libdir}/libgstnet-%{gst_branch}.so
850 %{_libdir}/libgstcheck-%{gst_branch}.so
851 %{_libdir}/libgstreamer-%{gst_branch}.so
852 %{_libdir}/pkgconfig/gstreamer-%{gst_branch}.pc
853 %{_libdir}/pkgconfig/gstreamer-base-%{gst_branch}.pc
854 %{_libdir}/pkgconfig/gstreamer-controller-%{gst_branch}.pc
855 %{_libdir}/pkgconfig/gstreamer-net-%{gst_branch}.pc
856 %{_libdir}/pkgconfig/gstreamer-check-%{gst_branch}.pc
857 %if "%{_enable_introspection}" == "1"
858 %{_datadir}/gir-%{gst_branch}/Gst-%{gst_branch}.gir
859 %{_datadir}/gir-%{gst_branch}/GstBase-%{gst_branch}.gir
860 %{_datadir}/gir-%{gst_branch}/GstController-%{gst_branch}.gir
861 %{_datadir}/gir-%{gst_branch}/GstNet-%{gst_branch}.gir
862 %{_datadir}/gir-%{gst_branch}/GstCheck-%{gst_branch}.gir
863 %endif #introspection
869 ###################### gst-plugins-base ######################
871 %if "%{plugin}" == "all" || "%{plugin}" == "base"
873 %files -n gst-plugins-base
874 %manifest gst-plugins-base.manifest
875 %defattr(-, root, root)
876 %license subprojects/gst-plugins-base/COPYING
877 %{_lib_gstreamer_dir}/libgstalsa.so
878 %{_lib_gstreamer_dir}/libgstapp.so
879 %{_lib_gstreamer_dir}/libgstaudioconvert.so
880 %{_lib_gstreamer_dir}/libgstaudiomixer.so
881 %{_lib_gstreamer_dir}/libgstaudiorate.so
882 %{_lib_gstreamer_dir}/libgstaudioresample.so
883 %{_lib_gstreamer_dir}/libgstaudiotestsrc.so
884 %{_lib_gstreamer_dir}/libgstcompositor.so
885 %{_lib_gstreamer_dir}/libgstgio.so
886 %{_lib_gstreamer_dir}/libgstogg.so
887 %{_lib_gstreamer_dir}/libgstopus.so
888 %{_lib_gstreamer_dir}/libgstoverlaycomposition.so
889 %{_lib_gstreamer_dir}/libgstpbtypes.so
890 %{_lib_gstreamer_dir}/libgstplayback.so
891 %{_lib_gstreamer_dir}/libgstrawparse.so
892 %{_lib_gstreamer_dir}/libgstsubparse.so
893 %{_lib_gstreamer_dir}/libgsttcp.so
894 %{_lib_gstreamer_dir}/libgsttheora.so
895 %{_lib_gstreamer_dir}/libgsttypefindfunctions.so
896 %{_lib_gstreamer_dir}/libgstvideoconvert.so
897 %{_lib_gstreamer_dir}/libgstvideorate.so
898 %{_lib_gstreamer_dir}/libgstvideoscale.so
899 %{_lib_gstreamer_dir}/libgstvideotestsrc.so
900 %{_lib_gstreamer_dir}/libgstvolume.so
901 %{_lib_gstreamer_dir}/libgstvorbis.so
903 %{_lib_gstreamer_dir}/libgstximagesink.so
904 %{_lib_gstreamer_dir}/libgstxvimagesink.so
906 %{_libdir}/libgstallocators-%{gst_branch}.so.*
907 %{_libdir}/libgstapp-%{gst_branch}.so.*
908 %{_libdir}/libgstaudio-%{gst_branch}.so.*
909 %{_libdir}/libgstfft-%{gst_branch}.so.*
910 %{_libdir}/libgstpbutils-%{gst_branch}.so.*
911 %{_libdir}/libgstriff-%{gst_branch}.so.*
912 %{_libdir}/libgstrtp-%{gst_branch}.so.*
913 %{_libdir}/libgstrtsp-%{gst_branch}.so.*
914 %{_libdir}/libgstsdp-%{gst_branch}.so.*
915 %{_libdir}/libgsttag-%{gst_branch}.so.*
916 %{_libdir}/libgstvideo-%{gst_branch}.so.*
917 %if "%{tizen_profile_name}" != "tv"
918 %{_lib_gstreamer_dir}/libgstencoding.so
920 %if "%{_enable_introspection}" == "1"
921 %{_lib_girepository}/GstAllocators-%{gst_branch}.typelib
922 %{_lib_girepository}/GstApp-%{gst_branch}.typelib
923 %{_lib_girepository}/GstAudio-%{gst_branch}.typelib
924 %{_lib_girepository}/GstPbutils-%{gst_branch}.typelib
925 %{_lib_girepository}/GstRtp-%{gst_branch}.typelib
926 %{_lib_girepository}/GstRtsp-%{gst_branch}.typelib
927 %{_lib_girepository}/GstSdp-%{gst_branch}.typelib
928 %{_lib_girepository}/GstTag-%{gst_branch}.typelib
929 %{_lib_girepository}/GstVideo-%{gst_branch}.typelib
930 %endif #introspection
931 %dir %{_datadir}/gst-plugins-base/
932 %dir %{_datadir}/gst-plugins-base/%{gst_branch}/
933 %{_datadir}/gst-plugins-base/%{gst_branch}/license-translations.dict
935 %if "%{tizen_profile_name}" != "tv"
936 %files -n gst-plugins-base-extension-adder
937 %{_lib_gstreamer_dir}/libgstadder.so
938 %license subprojects/gst-plugins-base/COPYING
941 %files -n gst-plugins-base-devel
942 %manifest gst-plugins-base.manifest
943 %defattr(-, root, root)
944 %{_includedir}/gstreamer-%{gst_branch}/gst/allocators/*
945 %{_includedir}/gstreamer-%{gst_branch}/gst/app/*
946 %{_includedir}/gstreamer-%{gst_branch}/gst/audio/*
947 %{_includedir}/gstreamer-%{gst_branch}/gst/fft/*
948 %{_includedir}/gstreamer-%{gst_branch}/gst/pbutils/*
949 %{_includedir}/gstreamer-%{gst_branch}/gst/riff/*
950 %{_includedir}/gstreamer-%{gst_branch}/gst/rtp/*
951 %{_includedir}/gstreamer-%{gst_branch}/gst/rtsp/*
952 %{_includedir}/gstreamer-%{gst_branch}/gst/sdp/*
953 %{_includedir}/gstreamer-%{gst_branch}/gst/tag/*
954 %{_includedir}/gstreamer-%{gst_branch}/gst/video/*
955 %if "%{plugin}" == "all" && "%{tizen_profile_name}" != "tv"
956 %exclude %{_includedir}/gstreamer-%{gst_branch}/gst/audio/audio-bad-prelude.h
957 %exclude %{_includedir}/gstreamer-%{gst_branch}/gst/audio/gstnonstreamaudiodecoder.h
958 %exclude %{_includedir}/gstreamer-%{gst_branch}/gst/audio/gstplanaraudioadapter.h
960 %{_libdir}/libgstallocators-%{gst_branch}.so
961 %{_libdir}/libgstapp-%{gst_branch}.so
962 %{_libdir}/libgstaudio-%{gst_branch}.so
963 %{_libdir}/libgstfft-%{gst_branch}.so
964 %{_libdir}/libgstpbutils-%{gst_branch}.so
965 %{_libdir}/libgstriff-%{gst_branch}.so
966 %{_libdir}/libgstrtp-%{gst_branch}.so
967 %{_libdir}/libgstrtsp-%{gst_branch}*.so
968 %{_libdir}/libgstsdp-%{gst_branch}.so
969 %{_libdir}/libgsttag-%{gst_branch}.so
970 %{_libdir}/libgstvideo-%{gst_branch}.so
971 %{_libdir}/pkgconfig/gstreamer-allocators-%{gst_branch}.pc
972 %{_libdir}/pkgconfig/gstreamer-app-%{gst_branch}.pc
973 %{_libdir}/pkgconfig/gstreamer-audio-%{gst_branch}.pc
974 %{_libdir}/pkgconfig/gstreamer-fft-%{gst_branch}.pc
975 %{_libdir}/pkgconfig/gstreamer-pbutils-%{gst_branch}.pc
976 %{_libdir}/pkgconfig/gstreamer-plugins-base-%{gst_branch}.pc
977 %{_libdir}/pkgconfig/gstreamer-riff-%{gst_branch}.pc
978 %{_libdir}/pkgconfig/gstreamer-rtp-%{gst_branch}.pc
979 %{_libdir}/pkgconfig/gstreamer-rtsp-%{gst_branch}.pc
980 %{_libdir}/pkgconfig/gstreamer-sdp-%{gst_branch}.pc
981 %{_libdir}/pkgconfig/gstreamer-tag-%{gst_branch}.pc
982 %{_libdir}/pkgconfig/gstreamer-video-%{gst_branch}.pc
983 %if "%{_enable_introspection}" == "1"
984 %{_datadir}/gir-%{gst_branch}/GstAllocators-%{gst_branch}.gir
985 %{_datadir}/gir-%{gst_branch}/GstApp-%{gst_branch}.gir
986 %{_datadir}/gir-%{gst_branch}/GstAudio-%{gst_branch}.gir
987 %{_datadir}/gir-%{gst_branch}/GstPbutils-%{gst_branch}.gir
988 %{_datadir}/gir-%{gst_branch}/GstRtp-%{gst_branch}.gir
989 %{_datadir}/gir-%{gst_branch}/GstRtsp-%{gst_branch}.gir
990 %{_datadir}/gir-%{gst_branch}/GstSdp-%{gst_branch}.gir
991 %{_datadir}/gir-%{gst_branch}/GstTag-%{gst_branch}.gir
992 %{_datadir}/gir-%{gst_branch}/GstVideo-%{gst_branch}.gir
993 %endif # introspection
997 ###################### gst-plugins-good ######################
999 %if "%{plugin}" == "all" || "%{plugin}" == "good"
1001 %files -n gst-plugins-good
1002 %manifest gst-plugins-good.manifest
1003 %defattr(-, root, root)
1004 %license subprojects/gst-plugins-good/COPYING
1005 %{_lib_gstreamer_dir}/libgstalaw.so
1006 %{_lib_gstreamer_dir}/libgstapetag.so
1007 %{_lib_gstreamer_dir}/libgstaudiofx.so
1008 %{_lib_gstreamer_dir}/libgstaudioparsers.so
1009 %{_lib_gstreamer_dir}/libgstautodetect.so
1010 %{_lib_gstreamer_dir}/libgstavi.so
1011 %{_lib_gstreamer_dir}/libgstdebug.so
1012 %{_lib_gstreamer_dir}/libgstdeinterlace.so
1013 %{_lib_gstreamer_dir}/libgsticydemux.so
1014 %{_lib_gstreamer_dir}/libgstid3demux.so
1015 %{_lib_gstreamer_dir}/libgstinterleave.so
1016 %{_lib_gstreamer_dir}/libgstisomp4.so
1017 %{_lib_gstreamer_dir}/libgstjpeg.so
1018 %{_lib_gstreamer_dir}/libgstmulaw.so
1019 %{_lib_gstreamer_dir}/libgstnavigationtest.so
1020 %{_lib_gstreamer_dir}/libgstpulseaudio.so
1021 %{_lib_gstreamer_dir}/libgstreplaygain.so
1022 %{_lib_gstreamer_dir}/libgstrtp.so
1023 %{_lib_gstreamer_dir}/libgstrtpmanager.so
1024 %{_lib_gstreamer_dir}/libgstrtsp.so
1025 %{_lib_gstreamer_dir}/libgstsoup.so
1026 %{_lib_gstreamer_dir}/libgstudp.so
1027 %{_lib_gstreamer_dir}/libgstvideocrop.so
1028 %{_lib_gstreamer_dir}/libgstvideofilter.so
1029 %{_lib_gstreamer_dir}/libgstvpx.so
1030 %{_lib_gstreamer_dir}/libgstwavenc.so
1031 %{_lib_gstreamer_dir}/libgstwavparse.so
1033 %{_lib_gstreamer_dir}/libgstximagesrc.so
1035 %if "%{tizen_profile_name}" != "tv"
1036 %{_lib_gstreamer_dir}/libgsteffectv.so
1037 %{_lib_gstreamer_dir}/libgstflv.so
1038 %{_lib_gstreamer_dir}/libgstimagefreeze.so
1039 %{_lib_gstreamer_dir}/libgstmatroska.so
1040 %{_lib_gstreamer_dir}/libgstmultifile.so
1041 %{_lib_gstreamer_dir}/libgstsmpte.so
1042 %{_lib_gstreamer_dir}/libgstvideo4linux2.so
1043 %{_lib_gstreamer_dir}/libgstvideobox.so
1044 %{_lib_gstreamer_dir}/libgstvideomixer.so
1046 %ifnarch %{arm} aarch64
1047 %{_lib_gstreamer_dir}/libgstvideo4linux2.so
1050 %{_datadir}/gstreamer-%{gst_branch}/presets/GstQTMux.prs
1051 %{_datadir}/gstreamer-%{gst_branch}/presets/GstVP8Enc.prs
1053 %files -n gst-plugins-good-extra
1054 %manifest gst-plugins-good.manifest
1055 %defattr(-, root, root)
1056 %license subprojects/gst-plugins-good/COPYING
1057 %if 0%{?ENABLE_AALIB}
1058 %{_lib_gstreamer_dir}/libgstaasink.so
1060 %if "%{tizen_profile_name}" != "tv"
1061 %{_lib_gstreamer_dir}/libgstimagefreeze.so
1062 %{_lib_gstreamer_dir}/libgstpng.so
1065 %files -n gst-plugins-good-cairo
1066 %manifest gst-plugins-good.manifest
1067 %defattr(-, root, root)
1068 %license subprojects/gst-plugins-good/COPYING
1069 %if "%{tizen_profile_name}" != "tv"
1070 %{_lib_gstreamer_dir}/libgstcairo.so
1075 ###################### gst-plugins-bad ######################
1077 %if "%{plugin}" == "all" || "%{plugin}" == "bad"
1079 %files -n gst-plugins-bad
1080 %manifest gst-plugins-bad.manifest
1081 %defattr(-, root, root)
1082 %license subprojects/gst-plugins-bad/COPYING
1083 %if "%{tizen_profile_name}" != "tv"
1084 %{_lib_gstreamer_dir}/libgstautoconvert.so
1085 %{_lib_gstreamer_dir}/libgstcamerabin.so
1086 %{_lib_gstreamer_dir}/libgstcoloreffects.so
1087 %{_lib_gstreamer_dir}/libgstdash.so
1088 %{_lib_gstreamer_dir}/libgstgaudieffects.so
1089 %{_lib_gstreamer_dir}/libgstgdp.so
1090 %{_lib_gstreamer_dir}/libgsthls.so
1091 %{_lib_gstreamer_dir}/libgstid3tag.so
1092 %{_lib_gstreamer_dir}/libgstjpegformat.so
1093 %{_lib_gstreamer_dir}/libgstmpegpsdemux.so
1094 %{_lib_gstreamer_dir}/libgstrist.so
1095 %{_lib_gstreamer_dir}/libgstsmoothstreaming.so
1096 %{_lib_gstreamer_dir}/libgstsrt.so
1097 %{_libdir}/libgstadaptivedemux-%{gst_branch}.so.0*
1098 %{_libdir}/libgstbadaudio-%{gst_branch}.so.0*
1099 %{_libdir}/libgstbasecamerabinsrc-%{gst_branch}.so.0*
1100 %{_libdir}/libgstinsertbin-%{gst_branch}.so.0*
1101 %{_libdir}/libgstisoff-%{gst_branch}.so.0*
1102 %{_libdir}/libgstphotography-%{gst_branch}.so.0*
1103 %{_libdir}/libgstplay-%{gst_branch}.so.0*
1104 %{_libdir}/libgstplayer-%{gst_branch}.so.0*
1105 %{_libdir}/libgsturidownloader-%{gst_branch}.so.0*
1106 %if 0%{?enable_gl:1}
1107 %{_lib_gstreamer_dir}/libgstopengl.so
1108 %{_libdir}/libgstgl-%{gst_branch}.so.0*
1111 %{_lib_gstreamer_dir}/libgstaes.so
1112 %{_lib_gstreamer_dir}/libgstaudiobuffersplit.so
1113 %{_lib_gstreamer_dir}/libgstaudiolatency.so
1114 %{_lib_gstreamer_dir}/libgstaudiomixmatrix.so
1115 %{_lib_gstreamer_dir}/libgstdebugutilsbad.so
1116 %{_lib_gstreamer_dir}/libgstdtls.so
1117 %{_lib_gstreamer_dir}/libgstipcpipeline.so
1118 %{_lib_gstreamer_dir}/libgstmidi.so
1119 %{_lib_gstreamer_dir}/libgstmpegtsdemux.so
1120 %{_lib_gstreamer_dir}/libgstmpegtsmux.so
1121 %{_lib_gstreamer_dir}/libgstnetsim.so
1122 %{_lib_gstreamer_dir}/libgstnice.so
1123 %{_lib_gstreamer_dir}/libgstopenal.so
1124 %{_lib_gstreamer_dir}/libgstopusparse.so
1125 %{_lib_gstreamer_dir}/libgstproxy.so
1126 %if "%{tizen_profile_name}" != "tv"
1127 %{_lib_gstreamer_dir}/libgstrtpmanagerbad.so
1129 %{_lib_gstreamer_dir}/libgstsctp.so
1130 %{_lib_gstreamer_dir}/libgstsdpelem.so
1131 %{_lib_gstreamer_dir}/libgstshm.so
1132 %{_lib_gstreamer_dir}/libgstsoundtouch.so
1133 %{_lib_gstreamer_dir}/libgstsrtp.so
1134 %{_lib_gstreamer_dir}/libgsttimecode.so
1135 %{_lib_gstreamer_dir}/libgstvideoframe_audiolevel.so
1136 %{_lib_gstreamer_dir}/libgstvideoparsersbad.so
1138 %{_lib_gstreamer_dir}/libgstwaylandsink.so
1140 %{_lib_gstreamer_dir}/libgstwebrtc.so
1141 %{_libdir}/libgstcodecparsers-%{gst_branch}.so.0*
1142 %{_libdir}/libgstcodecs-%{gst_branch}.so.0*
1143 %{_libdir}/libgstmpegts-%{gst_branch}.so.0*
1144 %{_libdir}/libgstsctp-%{gst_branch}.so.0*
1145 %{_libdir}/libgsttranscoder-%{gst_branch}.so.0*
1147 %{_libdir}/libgstwayland-%{gst_branch}.so.0*
1149 %{_libdir}/libgstwebrtc-%{gst_branch}.so.0*
1150 %exclude %{_bindir}/gst-transcoder-%{gst_branch}
1151 %exclude %{_libdir}/debug/.build-id/*
1152 %exclude %{_libdir}/debug/*
1154 %files -n gst-plugins-bad-devel
1155 %manifest gst-plugins-bad.manifest
1156 %defattr(-, root, root)
1157 %if "%{tizen_profile_name}" != "tv"
1158 %{_includedir}/gstreamer-%{gst_branch}/gst/audio/audio-bad-prelude.h
1159 %{_includedir}/gstreamer-%{gst_branch}/gst/audio/gstnonstreamaudiodecoder.h
1160 %{_includedir}/gstreamer-%{gst_branch}/gst/audio/gstplanaraudioadapter.h
1161 %{_includedir}/gstreamer-%{gst_branch}/gst/basecamerabinsrc/*
1162 %{_includedir}/gstreamer-%{gst_branch}/gst/insertbin/*
1163 %{_includedir}/gstreamer-%{gst_branch}/gst/interfaces/*
1164 %{_includedir}/gstreamer-%{gst_branch}/gst/isoff/*
1165 %{_includedir}/gstreamer-%{gst_branch}/gst/play/*
1166 %{_includedir}/gstreamer-%{gst_branch}/gst/player/*
1167 %{_includedir}/gstreamer-%{gst_branch}/gst/uridownloader/*
1169 %{_includedir}/gstreamer-%{gst_branch}/gst/codecparsers/*
1170 %{_includedir}/gstreamer-%{gst_branch}/gst/mpegts/*
1171 %{_includedir}/gstreamer-%{gst_branch}/gst/sctp/*
1172 %{_includedir}/gstreamer-%{gst_branch}/gst/transcoder/*
1174 %{_includedir}/gstreamer-%{gst_branch}/gst/wayland/*
1176 %{_includedir}/gstreamer-%{gst_branch}/gst/webrtc/*
1177 %if "%{tizen_profile_name}" != "tv"
1178 %{_libdir}/libgstadaptivedemux*.so
1179 %{_libdir}/libgstbadaudio*.so
1180 %{_libdir}/libgstbasecamerabinsrc*.so
1181 %{_libdir}/libgstinsertbin*.so
1182 %{_libdir}/libgstisoff*.so
1183 %{_libdir}/libgstphotography*.so
1184 %{_libdir}/libgstplay*.so
1185 %{_libdir}/libgsturidownloader*.so
1186 %if 0%{?enable_gl:1}
1187 %{_lib_gstreamer_dir}/include/gst/gl/*
1191 %{_libdir}/libgstcodecparsers*.so
1192 %{_libdir}/libgstcodecs*.so
1193 %{_libdir}/libgstmpegts*.so
1194 %{_libdir}/libgstsctp*.so
1195 %{_libdir}/libgsttranscoder*.so
1197 %{_libdir}/libgstwayland*.so
1199 %{_libdir}/libgstwebrtc*.so
1200 %{_libdir}/pkgconfig/gstreamer-codecparsers-%{gst_branch}.pc
1201 %if "%{tizen_profile_name}" != "tv"
1202 %{_libdir}/pkgconfig/gstreamer-bad-audio-%{gst_branch}.pc
1203 %{_libdir}/pkgconfig/gstreamer-insertbin-%{gst_branch}.pc
1204 %{_libdir}/pkgconfig/gstreamer-photography-%{gst_branch}.pc
1205 %{_libdir}/pkgconfig/gstreamer-play-%{gst_branch}.pc
1206 %{_libdir}/pkgconfig/gstreamer-player-%{gst_branch}.pc
1207 %if 0%{?enable_gl:1}
1208 %{_libdir}/pkgconfig/gstreamer-gl-*.pc
1211 %{_libdir}/pkgconfig/gstreamer-mpegts-%{gst_branch}.pc
1212 %{_libdir}/pkgconfig/gstreamer-plugins-bad-%{gst_branch}.pc
1213 %{_libdir}/pkgconfig/gstreamer-sctp-%{gst_branch}.pc
1214 %{_libdir}/pkgconfig/gstreamer-transcoder-%{gst_branch}.pc
1216 %{_libdir}/pkgconfig/gstreamer-wayland-%{gst_branch}.pc
1218 %{_libdir}/pkgconfig/gstreamer-webrtc-%{gst_branch}.pc
1222 ###################### gst-plugins-ugly ######################
1224 %if "%{plugin}" == "all" || "%{plugin}" == "ugly"
1226 %files -n gst-plugins-ugly
1227 %manifest gst-plugins-ugly.manifest
1228 %defattr(-,root,root,-)
1229 %license subprojects/gst-plugins-ugly/COPYING
1230 %if "%{tizen_profile_name}" != "tv"
1231 %{_lib_gstreamer_dir}/libgstamrnb.so
1232 %{_lib_gstreamer_dir}/libgstasf.so
1233 %exclude %{_datadir}/gstreamer-%{gst_branch}/presets/GstAmrnbEnc.prs
1235 %{_lib_gstreamer_dir}/libgstamrwbdec.so
1239 ######################## gst-libav ###########################
1241 %if "%{plugin}" == "all" || "%{plugin}" == "libav"
1244 %manifest gst-libav.manifest
1245 %defattr(-,root,root,-)
1246 %license subprojects/gst-libav/COPYING
1247 %{_lib_gstreamer_dir}/libgstlibav.so
1251 ###################### gst-rtsp-server #######################
1253 %if "%{plugin}" == "all" || "%{plugin}" == "rs"
1255 %files -n gst-rtsp-server
1256 %manifest gst-rtsp-server.manifest
1257 %defattr(-,root,root,-)
1258 %license subprojects/gst-rtsp-server/COPYING
1259 %{_libdir}/libgstrtspserver*.so.*
1260 %{_lib_gstreamer_dir}/libgstrtspclientsink.so
1262 %files -n gst-rtsp-server-devel
1263 %defattr(-,root,root,-)
1264 %{_libdir}/libgstrtspserver*.so
1265 %{_includedir}/gstreamer-%{gst_branch}/gst/rtsp-server/rtsp-*.h
1266 %{_includedir}/gstreamer-%{gst_branch}/gst/rtsp-server/gstwfd*.h
1267 %{_libdir}/pkgconfig/gstreamer-rtsp-server-%{gst_branch}.pc
1271 %if "%{tizen_profile_name}" != "tv"
1273 ########################## gst-omx ###########################
1274 %ifarch %{arm} aarch64
1276 %if "%{plugin}" == "all" || "%{plugin}" == "omx"
1279 %manifest gst-omx.manifest
1280 %defattr(-,root,root,-)
1281 %license subprojects/gst-omx/COPYING
1282 %{_lib_gstreamer_dir}/libgstomx.so
1288 ###################### gst-editing-services #######################
1290 %if "%{plugin}" == "all" || "%{plugin}" == "es"
1292 %files -n gst-editing-services
1293 %manifest gst-editing-services.manifest
1294 %defattr(-,root,root,-)
1295 %license subprojects/gst-editing-services/COPYING
1296 %{_libdir}/libges-%{gst_branch}.so.*
1297 %{_lib_gstreamer_dir}/libgstges.so
1298 %{_lib_gstreamer_dir}/libgstnle.so
1299 %exclude %{_libdir}/gst-validate-launcher/python/launcher/apps/geslaunch.py
1300 %exclude %{_datadir}/gstreamer-%{gst_branch}/validate/scenarios/ges-edit-clip-while-paused.scenario
1301 %{_bindir}/ges-launch-%{gst_branch}
1303 %files -n gst-editing-services-devel
1304 %{_libdir}/libges-%{gst_branch}.so
1305 %{_includedir}/gstreamer-%{gst_branch}/ges/*
1306 %{_libdir}/pkgconfig/gst-editing-services-%{gst_branch}.pc