blob: 99176b25714d36d56b00d699f117ac344bcc73b4 [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001require gstreamer1.0-plugins-common.inc
2
3SRC_URI = " \
4 https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \
5 file://0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch \
6 file://fix-maybe-uninitialized-warnings-when-compiling-with-Os.patch \
7 file://avoid-including-sys-poll.h-directly.patch \
8 file://ensure-valid-sentinels-for-gst_structure_get-etc.patch \
9 file://opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
10"
11SRC_URI[md5sum] = "ccc7404230afddec723bbdb63c89feec"
12SRC_URI[sha256sum] = "f1cb7aa2389569a5343661aae473f0a940a90b872001824bc47fa8072a041e74"
13
14S = "${WORKDIR}/gst-plugins-bad-${PV}"
15
16LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+"
17LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \
18 file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 "
19
20DEPENDS += "gstreamer1.0-plugins-base"
21
22inherit gobject-introspection
23
24PACKAGECONFIG ??= " \
25 ${GSTREAMER_ORC} \
26 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
27 ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan', d)} \
28 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
29 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \
30 bz2 closedcaption curl dash dtls hls rsvg sbc smoothstreaming sndfile \
31 ttml uvch264 webp \
32"
33
34PACKAGECONFIG[assrender] = "-Dassrender=enabled,-Dassrender=disabled,libass"
35PACKAGECONFIG[bluez] = "-Dbluez=enabled,-Dbluez=disabled,bluez5"
36PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2"
37PACKAGECONFIG[closedcaption] = "-Dclosedcaption=enabled,-Dclosedcaption=disabled,pango cairo"
38PACKAGECONFIG[curl] = "-Dcurl=enabled,-Dcurl=disabled,curl"
39PACKAGECONFIG[dash] = "-Ddash=enabled,-Ddash=disabled,libxml2"
40PACKAGECONFIG[dc1394] = "-Ddc1394=enabled,-Ddc1394=disabled,libdc1394"
41PACKAGECONFIG[directfb] = "-Ddirectfb=enabled,-Ddirectfb=disabled,directfb"
42PACKAGECONFIG[dtls] = "-Ddtls=enabled,-Ddtls=disabled,openssl"
43PACKAGECONFIG[faac] = "-Dfaac=enabled,-Dfaac=disabled,faac"
44PACKAGECONFIG[faad] = "-Dfaad=enabled,-Dfaad=disabled,faad2"
45PACKAGECONFIG[fluidsynth] = "-Dfluidsynth=enabled,-Dfluidsynth=disabled,fluidsynth"
46PACKAGECONFIG[hls] = "-Dhls=enabled -Dhls-crypto=nettle,-Dhls=disabled,nettle"
47# the gl packageconfig enables OpenGL elements that haven't been ported
48# to -base yet. They depend on the gstgl library in -base, so we do
49# not add GL dependencies here, since these are taken care of in -base.
50PACKAGECONFIG[gl] = "-Dgl=enabled,-Dgl=disabled,"
51PACKAGECONFIG[kms] = "-Dkms=enabled,-Dkms=disabled,libdrm"
52PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde265"
53PACKAGECONFIG[libmms] = "-Dlibmms=enabled,-Dlibmms=disabled,libmms"
54PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2"
55PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms"
56PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug"
57PACKAGECONFIG[msdk] = "-Dmsdk=enabled,-Dmsdk=disabled,intel-mediasdk"
58PACKAGECONFIG[neon] = "-Dneon=enabled,-Dneon=disabled,neon"
59PACKAGECONFIG[openal] = "-Dopenal=enabled,-Dopenal=disabled,openal-soft"
60PACKAGECONFIG[opencv] = "-Dopencv=enabled,-Dopencv=disabled,opencv"
61PACKAGECONFIG[openh264] = "-Dopenh264=enabled,-Dopenh264=disabled,openh264"
62PACKAGECONFIG[openjpeg] = "-Dopenjpeg=enabled,-Dopenjpeg=disabled,openjpeg"
63PACKAGECONFIG[openmpt] = "-Dopenmpt=enabled,-Dopenmpt=disabled,libopenmpt"
64# the opus encoder/decoder elements are now in the -base package,
65# but the opus parser remains in -bad
66PACKAGECONFIG[opusparse] = "-Dopus=enabled,-Dopus=disabled,libopus"
67PACKAGECONFIG[resindvd] = "-Dresindvd=enabled,-Dresindvd=disabled,libdvdread libdvdnav"
68PACKAGECONFIG[rsvg] = "-Drsvg=enabled,-Drsvg=disabled,librsvg"
69PACKAGECONFIG[rtmp] = "-Drtmp=enabled,-Drtmp=disabled,rtmpdump"
70PACKAGECONFIG[sbc] = "-Dsbc=enabled,-Dsbc=disabled,sbc"
71PACKAGECONFIG[sctp] = "-Dsctp=enabled,-Dsctp=disabled,usrsctp"
72PACKAGECONFIG[smoothstreaming] = "-Dsmoothstreaming=enabled,-Dsmoothstreaming=disabled,libxml2"
73PACKAGECONFIG[sndfile] = "-Dsndfile=enabled,-Dsndfile=disabled,libsndfile1"
74PACKAGECONFIG[srtp] = "-Dsrtp=enabled,-Dsrtp=disabled,libsrtp"
75PACKAGECONFIG[tinyalsa] = "-Dtinyalsa=enabled,-Dtinyalsa=disabled,tinyalsa"
76PACKAGECONFIG[ttml] = "-Dttml=enabled,-Dttml=disabled,libxml2 pango cairo"
77PACKAGECONFIG[uvch264] = "-Duvch264=enabled,-Duvch264=disabled,libusb1 libgudev"
Andrew Geisslerd25ed322020-06-27 00:28:28 -050078PACKAGECONFIG[vdpau] = "-Dvdpau=enabled,-Dvdpau=disabled,libvdpau"
Andrew Geissler82c905d2020-04-13 13:39:40 -050079PACKAGECONFIG[voaacenc] = "-Dvoaacenc=enabled,-Dvoaacenc=disabled,vo-aacenc"
80PACKAGECONFIG[voamrwbenc] = "-Dvoamrwbenc=enabled,-Dvoamrwbenc=disabled,vo-amrwbenc"
81PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled,vulkan-loader"
82PACKAGECONFIG[wayland] = "-Dwayland=enabled,-Dwayland=disabled,wayland-native wayland wayland-protocols libdrm"
83PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp"
84PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice"
85PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing"
86PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar"
87
88# these plugins currently have no corresponding library in OE-core or meta-openembedded:
89# aom androidmedia applemedia bs2b chromaprint d3dvideosink
90# directsound dts fdkaac gme gsm iq kate ladspa lv2 mpeg2enc
91# mplex musepack nvdec nvenc ofa openexr openni2 opensles
Andrew Geisslerd25ed322020-06-27 00:28:28 -050092# soundtouch spandsp srt teletext wasapi wildmidi winks
Andrew Geissler82c905d2020-04-13 13:39:40 -050093# winscreencap wpe x265
94
95EXTRA_OEMESON += " \
96 -Ddecklink=enabled \
97 -Ddvb=enabled \
98 -Dfbdev=enabled \
99 -Dipcpipeline=enabled \
100 -Dnetsim=enabled \
101 -Dshm=enabled \
102 -Daom=disabled \
103 -Dandroidmedia=disabled \
104 -Dapplemedia=disabled \
105 -Dbs2b=disabled \
106 -Dchromaprint=disabled \
107 -Dd3dvideosink=disabled \
108 -Ddirectsound=disabled \
109 -Ddts=disabled \
110 -Dfdkaac=disabled \
111 -Dflite=disabled \
112 -Dgme=disabled \
113 -Dgsm=disabled \
114 -Diqa=disabled \
115 -Dkate=disabled \
116 -Dladspa=disabled \
117 -Dlv2=disabled \
118 -Dmpeg2enc=disabled \
119 -Dmplex=disabled \
120 -Dmusepack=disabled \
121 -Dnvdec=disabled \
122 -Dnvenc=disabled \
123 -Dofa=disabled \
124 -Dopenexr=disabled \
125 -Dopenni2=disabled \
126 -Dopensles=disabled \
127 -Dsoundtouch=disabled \
128 -Dspandsp=disabled \
129 -Dsrt=disabled \
130 -Dteletext=disabled \
Andrew Geissler82c905d2020-04-13 13:39:40 -0500131 -Dwasapi=disabled \
132 -Dwildmidi=disabled \
133 -Dwinks=disabled \
134 -Dwinscreencap=disabled \
135 -Dwpe=disabled \
136 -Dx265=disabled \
137 ${@bb.utils.contains("TUNE_FEATURES", "mx32", "-Dyadif=disabled", "", d)} \
138"
139
140export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"
141
142ARM_INSTRUCTION_SET_armv4 = "arm"
143ARM_INSTRUCTION_SET_armv5 = "arm"
144
145FILES_${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs"
146FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
147FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs"