blob: 23d093d47c9260e8a97cfeac986627409c1d22ea [file] [log] [blame]
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08001require gstreamer1.0-plugins.inc
2
3SRC_URI = " \
4 http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \
5 file://configure-allow-to-disable-libssh2.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://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch \
10 file://0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch \
11"
Brad Bishopa5c52ff2018-11-23 10:55:50 +130012SRC_URI[md5sum] = "5d20a91d027708abcf924f6c1279dd25"
13SRC_URI[sha256sum] = "910b4e0e2e897e8b6d06767af1779d70057c309f67292f485ff988d087aa0de5"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080014
15S = "${WORKDIR}/gst-plugins-bad-${PV}"
16
17LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+"
18LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \
19 file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 "
20
Brad Bishop19323692019-04-05 15:28:33 -040021DEPENDS += "gstreamer1.0-plugins-base"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080022
Brad Bishopc342db32019-05-15 21:57:59 -040023inherit gettext bluetooth gobject-introspection
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080024
25PACKAGECONFIG ??= " \
26 ${GSTREAMER_ORC} \
27 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
28 ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan', d)} \
29 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
30 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \
31 bz2 curl dash dtls hls rsvg sbc smoothstreaming sndfile ttml uvch264 webp \
32"
33
34# the gl packageconfig enables OpenGL elements that haven't been ported
35# to -base yet. They depend on the gstgl library in -base, so we do
36# not add GL dependencies here, since these are taken care of in -base.
37
38PACKAGECONFIG[assrender] = "--enable-assrender,--disable-assrender,libass"
39PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,${BLUEZ}"
40PACKAGECONFIG[bz2] = "--enable-bz2,--disable-bz2,bzip2"
41PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl"
42PACKAGECONFIG[dash] = "--enable-dash,--disable-dash,libxml2"
43PACKAGECONFIG[dc1394] = "--enable-dc1394,--disable-dc1394,libdc1394"
44PACKAGECONFIG[directfb] = "--enable-directfb,--disable-directfb,directfb"
45PACKAGECONFIG[dtls] = "--enable-dtls,--disable-dtls,openssl"
46PACKAGECONFIG[faac] = "--enable-faac,--disable-faac,faac"
47PACKAGECONFIG[faad] = "--enable-faad,--disable-faad,faad2"
48PACKAGECONFIG[flite] = "--enable-flite,--disable-flite,flite-alsa"
49PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,--disable-fluidsynth,fluidsynth"
50PACKAGECONFIG[hls] = "--enable-hls --with-hls-crypto=nettle,--disable-hls,nettle"
51PACKAGECONFIG[gl] = "--enable-gl,--disable-gl,"
52PACKAGECONFIG[kms] = "--enable-kms,--disable-kms,libdrm"
53PACKAGECONFIG[libde265] = "--enable-libde265,--disable-libde265,libde265"
54PACKAGECONFIG[libmms] = "--enable-libmms,--disable-libmms,libmms"
55PACKAGECONFIG[libssh2] = "--enable-libssh2,--disable-libssh2,libssh2"
56PACKAGECONFIG[lcms2] = "--enable-lcms2,--disable-lcms2,lcms"
57PACKAGECONFIG[modplug] = "--enable-modplug,--disable-modplug,libmodplug"
Brad Bishopa5c52ff2018-11-23 10:55:50 +130058PACKAGECONFIG[msdk] = "--enable-msdk,--disable-msdk,intel-mediasdk"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080059PACKAGECONFIG[neon] = "--enable-neon,--disable-neon,neon"
60PACKAGECONFIG[openal] = "--enable-openal,--disable-openal,openal-soft"
61PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv"
62PACKAGECONFIG[openh264] = "--enable-openh264,--disable-openh264,openh264"
63PACKAGECONFIG[openjpeg] = "--enable-openjpeg,--disable-openjpeg,openjpeg"
64PACKAGECONFIG[openmpt] = "--enable-openmpt,--disable-openmpt,libopenmpt"
65# the opus encoder/decoder elements are now in the -base package,
66# but the opus parser remains in -bad
67PACKAGECONFIG[opusparse] = "--enable-opus,--disable-opus,libopus"
68PACKAGECONFIG[resindvd] = "--enable-resindvd,--disable-resindvd,libdvdread libdvdnav"
69PACKAGECONFIG[rsvg] = "--enable-rsvg,--disable-rsvg,librsvg"
70PACKAGECONFIG[rtmp] = "--enable-rtmp,--disable-rtmp,rtmpdump"
71PACKAGECONFIG[sbc] = "--enable-sbc,--disable-sbc,sbc"
72PACKAGECONFIG[smoothstreaming] = "--enable-smoothstreaming,--disable-smoothstreaming,libxml2"
73PACKAGECONFIG[sndfile] = "--enable-sndfile,--disable-sndfile,libsndfile1"
74PACKAGECONFIG[srtp] = "--enable-srtp,--disable-srtp,libsrtp"
75PACKAGECONFIG[tinyalsa] = "--enable-tinyalsa,--disable-tinyalsa,tinyalsa"
76PACKAGECONFIG[ttml] = "--enable-ttml,--disable-ttml,libxml2 pango cairo"
77PACKAGECONFIG[uvch264] = "--enable-uvch264,--disable-uvch264,libusb1 libgudev"
78PACKAGECONFIG[voaacenc] = "--enable-voaacenc,--disable-voaacenc,vo-aacenc"
79PACKAGECONFIG[voamrwbenc] = "--enable-voamrwbenc,--disable-voamrwbenc,vo-amrwbenc"
80PACKAGECONFIG[vulkan] = "--enable-vulkan,--disable-vulkan,vulkan"
81PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland-native wayland wayland-protocols libdrm"
82PACKAGECONFIG[webp] = "--enable-webp,--disable-webp,libwebp"
83PACKAGECONFIG[webrtc] = "--enable-webrtc,--disable-webrtc,libnice"
84PACKAGECONFIG[webrtcdsp] = "--enable-webrtcdsp,--disable-webrtcdsp,webrtc-audio-processing"
85
86# these plugins have no corresponding library in OE-core or meta-openembedded:
87# openni2 winks direct3d directsound winscreencap acm apple_media iqa
88# android_media avc bs2b chromaprint daala dts fdkaac gme gsm kate ladspa
Brad Bishopa5c52ff2018-11-23 10:55:50 +130089# lv2 mpeg2enc mplex musepack nvenc ofa opensles soundtouch
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080090# spandsp spc teletextdec vdpau wasapi x265 zbar
91
92EXTRA_OECONF += " \
93 --enable-decklink \
94 --enable-dvb \
95 --enable-fbdev \
96 --enable-ipcpipeline \
97 --enable-netsim \
98 --enable-shm \
99 --enable-vcd \
100 --disable-acm \
101 --disable-android_media \
102 --disable-aom \
103 --disable-apple_media \
104 --disable-avc \
105 --disable-bs2b \
106 --disable-chromaprint \
107 --disable-daala \
108 --disable-direct3d \
109 --disable-directsound \
110 --disable-dts \
111 --disable-fdk_aac \
112 --disable-gme \
113 --disable-gsm \
114 --disable-iqa \
115 --disable-kate \
116 --disable-ladspa \
117 --disable-lv2 \
118 --disable-mpeg2enc \
119 --disable-mplex \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800120 --disable-musepack \
121 --disable-nvenc \
122 --disable-ofa \
123 --disable-openexr \
124 --disable-openni2 \
125 --disable-opensles \
126 --disable-soundtouch \
127 --disable-spandsp \
128 --disable-spc \
129 --disable-srt \
130 --disable-teletextdec \
131 --disable-vdpau \
132 --disable-wasapi \
133 --disable-wildmidi \
134 --disable-winks \
135 --disable-winscreencap \
136 --disable-x265 \
137 --disable-zbar \
138 ${@bb.utils.contains("TUNE_FEATURES", "mx32", "--disable-yadif", "", d)} \
139"
140
141export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"
142
143ARM_INSTRUCTION_SET_armv4 = "arm"
144ARM_INSTRUCTION_SET_armv5 = "arm"
145
146FILES_${PN}-freeverb += "${datadir}/gstreamer-${LIBV}/presets/GstFreeverb.prs"
147FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/${LIBV}/opencv*"
148FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-${LIBV}/presets/GstVoAmrwbEnc.prs"