You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

426 lines
14 KiB

  1. #
  2. # Copyright (C) 2011-2016 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=gst1-plugins-bad
  9. PKG_VERSION:=1.18.0
  10. PKG_RELEASE:=2
  11. PKG_SOURCE:=gst-plugins-bad-$(PKG_VERSION).tar.xz
  12. PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-bad/
  13. PKG_HASH:=f382ab1caddd64aaa7acb7c4787487f63fd39bd0fde9c757655cbaa457c1185f
  14. PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-bad-$(PKG_VERSION)
  15. PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
  16. Ted Hess <thess@kitschensync.net>
  17. PKG_LICENSE:=LGPL-2.1-or-later GPL-2.0-or-later
  18. PKG_LICENSE_FILES:=COPYING.LIB COPYING
  19. PKG_INSTALL:=1
  20. include $(INCLUDE_DIR)/package.mk
  21. include $(INCLUDE_DIR)/nls.mk
  22. include ../../devel/meson/meson.mk
  23. GST_BAD_LIBS:=
  24. GST_BAD_MODULES:=
  25. define Package/gstreamer1-bad/Default
  26. CATEGORY:=Multimedia
  27. SECTION:=multimedia
  28. TITLE:=GStreamer
  29. URL:=http://gstreamer.freedesktop.org/
  30. DEPENDS:= +gst1-plugins-base +libgstreamer1 +libgst1pbutils $(ICONV_DEPENDS)
  31. endef
  32. define Package/gstreamer1-bad/description/Default
  33. GStreamer open source multimedia framework
  34. endef
  35. define Package/gst1-plugins-bad
  36. $(call Package/gstreamer1-bad/Default)
  37. TITLE+= plugins collection (bad)
  38. DEPENDS+= $(GST_DEPENDS)
  39. HIDDEN:=1
  40. endef
  41. define Package/gts1-plugins-bad/description
  42. $(call Package/gstreamer1-bad/description/Default)
  43. .
  44. This meta package contains only dependencies to the other plugins from
  45. the bad plugins collection.
  46. endef
  47. define Package/gstreamer1-plugins-bad
  48. $(call Package/gstreamer1-bad/Default)
  49. TITLE+= plugins collection (bad)
  50. DEPENDS:=+ALL:gst1-plugins-bad +gstreamer1-plugins-base
  51. endef
  52. define Package/gstreamer1-plugins-bad/config
  53. menu "Select GStreamer bad modules and libraries"
  54. depends on PACKAGE_gstreamer1-plugins-bad
  55. config gst1-plugins-bad-all
  56. bool "Include all GStreamer bad plugins"
  57. select PACKAGE_gst1-plugins-bad
  58. comment "Modules"
  59. $(foreach mod,$(GST_BAD_MODULES), \
  60. config PACKAGE_gst1-mod-$(mod)
  61. prompt "GStreamer $(mod) module"
  62. )
  63. comment "Libraries"
  64. $(foreach lib,$(GST_BAD_LIBS), \
  65. config PACKAGE_libgst1$(lib)
  66. prompt "GStreamer $(lib) library"
  67. )
  68. endmenu
  69. endef
  70. GST_COND_SELECT = -D$(1)=$(if $(CONFIG_PACKAGE_gst1-mod-$(1)),en,dis)abled
  71. GST_VERSION:=1.0
  72. MESON_ARGS += \
  73. $(call GST_COND_SELECT,accurip) \
  74. $(call GST_COND_SELECT,adpcmdec) \
  75. $(call GST_COND_SELECT,adpcmenc) \
  76. $(call GST_COND_SELECT,aiff) \
  77. $(call GST_COND_SELECT,asfmux) \
  78. $(call GST_COND_SELECT,audiobuffersplit) \
  79. $(call GST_COND_SELECT,audiofxbad) \
  80. $(call GST_COND_SELECT,audiolatency) \
  81. $(call GST_COND_SELECT,audiomixmatrix) \
  82. $(call GST_COND_SELECT,audiovisualizers) \
  83. $(call GST_COND_SELECT,autoconvert) \
  84. $(call GST_COND_SELECT,bayer) \
  85. -Dcamerabin2=$(if $(CONFIG_PACKAGE_gst1-mod-camerabin),en,dis)abled \
  86. $(call GST_COND_SELECT,coloreffects) \
  87. -Ddebugutils=$(if $(CONFIG_PACKAGE_gst1-mod-debugutilsbad),en,dis)abled \
  88. $(call GST_COND_SELECT,dvbsubenc) \
  89. $(call GST_COND_SELECT,dvbsuboverlay) \
  90. $(call GST_COND_SELECT,dvdspu) \
  91. $(call GST_COND_SELECT,faceoverlay) \
  92. $(call GST_COND_SELECT,festival) \
  93. $(call GST_COND_SELECT,fieldanalysis) \
  94. $(call GST_COND_SELECT,freeverb) \
  95. $(call GST_COND_SELECT,frei0r) \
  96. $(call GST_COND_SELECT,gaudieffects) \
  97. $(call GST_COND_SELECT,gdp) \
  98. $(call GST_COND_SELECT,geometrictransform) \
  99. $(call GST_COND_SELECT,id3tag) \
  100. $(call GST_COND_SELECT,inter) \
  101. $(call GST_COND_SELECT,interlace) \
  102. $(call GST_COND_SELECT,ivfparse) \
  103. $(call GST_COND_SELECT,ivtc) \
  104. $(call GST_COND_SELECT,jp2kdecimator) \
  105. $(call GST_COND_SELECT,jpegformat) \
  106. -Dlibrfb=$(if $(CONFIG_PACKAGE_gst1-mod-rfbsrc),en,dis)abled \
  107. $(call GST_COND_SELECT,midi) \
  108. -Dmpegdemux=$(if $(CONFIG_PACKAGE_gst1-mod-mpegpsdemux),en,dis)abled \
  109. $(call GST_COND_SELECT,mpegpsmux) \
  110. $(call GST_COND_SELECT,mpegtsdemux) \
  111. $(call GST_COND_SELECT,mpegtsmux) \
  112. $(call GST_COND_SELECT,mxf) \
  113. $(call GST_COND_SELECT,netsim) \
  114. -Donvif=$(if $(CONFIG_PACKAGE_gst1-mod-rtponvif),en,dis)abled \
  115. $(call GST_COND_SELECT,pcapparse) \
  116. $(call GST_COND_SELECT,pnm) \
  117. $(call GST_COND_SELECT,proxy) \
  118. -Drawparse=$(if $(CONFIG_PACKAGE_gst1-mod-legacyrawparse),en,dis)abled \
  119. $(call GST_COND_SELECT,removesilence) \
  120. -Dsdp=$(if $(CONFIG_PACKAGE_gst1-mod-sdpelem),en,dis)abled \
  121. $(call GST_COND_SELECT,segmentclip) \
  122. $(call GST_COND_SELECT,siren) \
  123. $(call GST_COND_SELECT,smooth) \
  124. $(call GST_COND_SELECT,speed) \
  125. $(call GST_COND_SELECT,subenc) \
  126. $(call GST_COND_SELECT,switchbin) \
  127. $(call GST_COND_SELECT,timecode) \
  128. -Dvideofilters=$(if $(CONFIG_PACKAGE_gst1-mod-videofiltersbad),en,dis)abled \
  129. $(call GST_COND_SELECT,videoframe_audiolevel) \
  130. -Dvideoparsers=$(if $(CONFIG_PACKAGE_gst1-mod-videoparsersbad),en,dis)abled \
  131. $(call GST_COND_SELECT,videosignal) \
  132. $(call GST_COND_SELECT,vmnc) \
  133. -Dy4m=$(if $(CONFIG_PACKAGE_gst1-mod-y4mdec),en,dis)abled \
  134. \
  135. -Dopencv=disabled \
  136. -Dwayland=disabled \
  137. -Dx11=disabled \
  138. \
  139. -Daom=disabled \
  140. -Davtp=disabled \
  141. -Dandroidmedia=disabled \
  142. -Dapplemedia=disabled \
  143. -Dassrender=disabled \
  144. $(call GST_COND_SELECT,bluez) \
  145. -Dbs2b=disabled \
  146. $(call GST_COND_SELECT,bz2) \
  147. -Dchromaprint=disabled \
  148. -Dclosedcaption=disabled \
  149. -Dcolormanagement=disabled \
  150. -Dcurl=disabled \
  151. -Dcurl-ssh2=disabled \
  152. -Dd3dvideosink=disabled \
  153. -Dd3d11=disabled \
  154. -Ddash=disabled \
  155. -Ddc1394=disabled \
  156. -Ddecklink=disabled \
  157. -Ddirectfb=disabled \
  158. -Ddirectsound=disabled \
  159. $(call GST_COND_SELECT,dtls) \
  160. -Ddts=disabled \
  161. -Ddvb=disabled \
  162. -Dfaac=disabled \
  163. $(call GST_COND_SELECT,faad) \
  164. -Dfbdev=$(if $(CONFIG_PACKAGE_gst1-mod-fbdevsink),en,dis)abled \
  165. -Dfdkaac=disabled \
  166. -Dflite=disabled \
  167. -Dfluidsynth=disabled \
  168. -Dgl=disabled \
  169. -Dgme=disabled \
  170. -Dgsm=disabled \
  171. -Dipcpipeline=disabled \
  172. -Diqa=disabled \
  173. -Dkate=disabled \
  174. -Dkms=disabled \
  175. -Dladspa=disabled \
  176. -Dlibde265=disabled \
  177. -Dlibmms=disabled \
  178. -Dlv2=disabled \
  179. -Dmediafoundation=disabled \
  180. -Dmicrodns=disabled \
  181. -Dmodplug=disabled \
  182. -Dmpeg2enc=disabled \
  183. -Dmplex=disabled \
  184. -Dmsdk=disabled \
  185. -Dmusepack=disabled \
  186. -Dneon=disabled \
  187. -Dnvcodec=disabled \
  188. -Dofa=disabled \
  189. -Dopenal=disabled \
  190. -Dopenexr=disabled \
  191. -Dopenh264=disabled \
  192. -Dopenjpeg=disabled \
  193. -Dopenmpt=disabled \
  194. -Dopenni2=disabled \
  195. -Dopensles=disabled \
  196. -Dopus=$(if $(CONFIG_PACKAGE_gst1-mod-opusparse),en,dis)abled \
  197. -Dresindvd=disabled \
  198. -Drsvg=disabled \
  199. -Drtmp=disabled \
  200. $(call GST_COND_SELECT,sbc) \
  201. -Dsctp=disabled \
  202. $(call GST_COND_SELECT,shm) \
  203. -Dsmoothstreaming=disabled \
  204. $(call GST_COND_SELECT,sndfile) \
  205. -Dsoundtouch=disabled \
  206. -Dspandsp=disabled \
  207. -Dsrt=disabled \
  208. -Dsrtp=disabled \
  209. -Dteletext=disabled \
  210. -Dtinyalsa=disabled \
  211. -Dttml=disabled \
  212. -Duvch264=disabled \
  213. -Dvoaacenc=disabled \
  214. -Dvoamrwbenc=disabled \
  215. -Dvulkan=disabled \
  216. -Dwasapi=disabled \
  217. -Dwasapi2=disabled \
  218. $(call GST_COND_SELECT,webp) \
  219. -Dwebrtc=disabled \
  220. -Dwebrtcdsp=disabled \
  221. -Dwildmidi=disabled \
  222. -Dwinks=disabled \
  223. -Dwinscreencap=disabled \
  224. -Dx265=disabled \
  225. -Dzbar=disabled \
  226. -Dzxing=disabled \
  227. -Dwpe=disabled \
  228. -Dmagicleap=disabled \
  229. -Dv4l2codecs=disabled \
  230. \
  231. $(call GST_COND_SELECT,hls) \
  232. -Dhls-crypto=nettle \
  233. -Dexamples=disabled \
  234. -Dtests=disabled \
  235. -Dintrospection=disabled \
  236. -Dorc=disabled \
  237. -Dgobject-cast-checks=disabled \
  238. -Dglib-asserts=disabled \
  239. -Dglib-checks=disabled \
  240. -Dextra-checks=disabled \
  241. -Ddoc=disabled
  242. define Package/gst1-plugins-bad/install
  243. /bin/true
  244. endef
  245. # 1: short name
  246. # 2: description
  247. # 3: dependencies on other gstreamer libraries (short name)
  248. # 4: dependencies on other packages
  249. define GstBuildLibrary
  250. GST_DEPENDS += +libgst1$(1)
  251. GST_BAD_LIBS+= $(1)
  252. define Package/libgst1$(1)
  253. $(call Package/gstreamer1-bad/Default)
  254. TITLE+= $(2) library (base)
  255. DEPENDS+= $$(foreach p,$(3),+libgst1$$(p)) $(4)
  256. HIDDEN:=1
  257. endef
  258. define Package/libgst1$(1)/description
  259. $(call Package/gstreamer1-bad/description/Default)
  260. .
  261. This package contains the GStreamer $(2) library.
  262. endef
  263. define Package/libgst1$(1)/install
  264. $(INSTALL_DIR) $$(1)/usr/lib
  265. ( cd $(PKG_INSTALL_DIR); $(CP) \
  266. ./usr/lib/libgst$(1)-$(GST_VERSION).so.* \
  267. $$(1)/usr/lib/ \
  268. )
  269. endef
  270. $$(eval $$(call BuildPackage,libgst1$(1)))
  271. endef
  272. $(eval $(call GstBuildLibrary,adaptivedemux,adaptivedemux,app uridownloader,))
  273. $(eval $(call GstBuildLibrary,photography,photography,,))
  274. $(eval $(call GstBuildLibrary,basecamerabinsrc,basecamerabinsrc,app,))
  275. $(eval $(call GstBuildLibrary,uridownloader,uridownloader,,))
  276. $(eval $(call GstBuildLibrary,codecparsers,codecparsers,,))
  277. $(eval $(call GstBuildLibrary,mpegts,mpegts,,))
  278. # 1: short name
  279. # 2: description
  280. # 3: dependencies on other gstreamer libraries (short name)
  281. # 4: dependencies on other gstreamer plugins (short name)
  282. # 5: dependencies on other packages
  283. define GstBuildPlugin
  284. GST_DEPENDS += +gst1-mod-$(1)
  285. GST_BAD_MODULES+= $(1)
  286. define Package/gst1-mod-$(1)
  287. $(call Package/gstreamer1-bad/Default)
  288. TITLE+= $(2) plugin (bad)
  289. DEPENDS+= $$(foreach p,$(3),+libgst1$$(p)) $$(foreach p,$(4),+gst1-mod-$$(p)) $(5)
  290. HIDDEN:=1
  291. endef
  292. define Package/gst1-mod-$(1)/description
  293. $(call Package/gstreamer1-bad/description/Default)
  294. .
  295. This package contains the GStreamer $(2) plugin.
  296. endef
  297. define Package/gst1-mod-$(1)/install
  298. $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
  299. ( cd $(PKG_INSTALL_DIR); $(CP) \
  300. ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
  301. $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
  302. )
  303. endef
  304. $$(eval $$(call BuildPackage,gst1-mod-$(1)))
  305. endef
  306. $(eval $(call GstBuildPlugin,adpcmdec,adpcm decoding support,audio,,))
  307. $(eval $(call GstBuildPlugin,adpcmenc,adpcm encoding support,audio,,))
  308. $(eval $(call GstBuildPlugin,aiff,aiff support,audio tag,,))
  309. $(eval $(call GstBuildPlugin,asfmux,asf muxing support,rtp,,))
  310. $(eval $(call GstBuildPlugin,audiobuffersplit,audiobuffersplit support,audio,,))
  311. $(eval $(call GstBuildPlugin,audiofxbad,audiofxbad support,audio,,))
  312. $(eval $(call GstBuildPlugin,audiolatency,audiolatency support,audio,,))
  313. $(eval $(call GstBuildPlugin,audiomixmatrix,audiomixmatrix support,audio,,))
  314. $(eval $(call GstBuildPlugin,audiovisualizers,audiovisualizers support,audio,,))
  315. $(eval $(call GstBuildPlugin,autoconvert,autoconvert support,,,))
  316. $(eval $(call GstBuildPlugin,bayer,bayer support,video,,))
  317. $(eval $(call GstBuildPlugin,camerabin,camerabin support,basecamerabinsrc photography pbutils app,,))
  318. $(eval $(call GstBuildPlugin,coloreffects,coloreffects support,video,,))
  319. $(eval $(call GstBuildPlugin,debugutilsbad,debugutils support,video,,))
  320. $(eval $(call GstBuildPlugin,dvbsubenc,dvbsubenc support,video,,))
  321. $(eval $(call GstBuildPlugin,dvbsuboverlay,dvbsuboverlay support,video,,))
  322. $(eval $(call GstBuildPlugin,dvdspu,dvdspu support,video,,))
  323. $(eval $(call GstBuildPlugin,faceoverlay,faceoverlay support,pbutils,,))
  324. $(eval $(call GstBuildPlugin,festival,festival support,audio,,))
  325. $(eval $(call GstBuildPlugin,fieldanalysis,fieldanalysis support,audio,,))
  326. $(eval $(call GstBuildPlugin,freeverb,freeverb support,,,))
  327. $(eval $(call GstBuildPlugin,frei0r,frei0r support,controller video,,))
  328. $(eval $(call GstBuildPlugin,gaudieffects,gaudieffects support,audio,,))
  329. $(eval $(call GstBuildPlugin,gdp,gdp support,,,))
  330. $(eval $(call GstBuildPlugin,geometrictransform,geometrictransform support,,,))
  331. $(eval $(call GstBuildPlugin,id3tag,id3tag support,tag,,))
  332. $(eval $(call GstBuildPlugin,inter,inter support,,,))
  333. $(eval $(call GstBuildPlugin,interlace,interlace support,,,))
  334. $(eval $(call GstBuildPlugin,ivfparse,ivfparse support,,,))
  335. $(eval $(call GstBuildPlugin,ivtc,ivtc support,,,))
  336. $(eval $(call GstBuildPlugin,jp2kdecimator,jp2kdecimator support,,,))
  337. $(eval $(call GstBuildPlugin,jpegformat,jpegformat support,tag,,))
  338. $(eval $(call GstBuildPlugin,legacyrawparse,rawparse support,audio video,,))
  339. $(eval $(call GstBuildPlugin,midi,midi support,audio,,))
  340. $(eval $(call GstBuildPlugin,mpegpsdemux,mpegpsdemux support,pbutils,,))
  341. $(eval $(call GstBuildPlugin,mpegpsmux,mpegpsmux support,,,))
  342. $(eval $(call GstBuildPlugin,mpegtsdemux,mpegtsdemux support,codecparsers mpegts pbutils,,))
  343. $(eval $(call GstBuildPlugin,mpegtsmux,mpegtsmux support,mpegts video,,))
  344. $(eval $(call GstBuildPlugin,mxf,mxf support,audio video,,))
  345. $(eval $(call GstBuildPlugin,netsim,netsim support,,,))
  346. $(eval $(call GstBuildPlugin,pcapparse,pcapparse support,,,))
  347. $(eval $(call GstBuildPlugin,pnm,pnm support,video,,))
  348. $(eval $(call GstBuildPlugin,proxy,proxy support,,,))
  349. $(eval $(call GstBuildPlugin,removesilence,removesilence support,audio,,))
  350. $(eval $(call GstBuildPlugin,rfbsrc,librfb support,video,,))
  351. $(eval $(call GstBuildPlugin,rtponvif,rtponvif support,,,))
  352. $(eval $(call GstBuildPlugin,sdpelem,sdp support,rtp sdp,,))
  353. $(eval $(call GstBuildPlugin,segmentclip,segmentclip support,audio,,))
  354. $(eval $(call GstBuildPlugin,siren,siren support,audio rtp,,))
  355. $(eval $(call GstBuildPlugin,smooth,smooth support,,,))
  356. $(eval $(call GstBuildPlugin,speed,speed support,audio,,))
  357. $(eval $(call GstBuildPlugin,subenc,subenc support,controller,,))
  358. $(eval $(call GstBuildPlugin,switchbin,switchbin support,,,))
  359. $(eval $(call GstBuildPlugin,timecode,timecode support,,,))
  360. $(eval $(call GstBuildPlugin,videofiltersbad,videofiltersbad support,,,))
  361. $(eval $(call GstBuildPlugin,videoframe_audiolevel,videoframe_audiolevel support,,,))
  362. #$(eval $(call GstBuildPlugin,videoparsersbad,videoparsersbad support,,,))
  363. $(eval $(call GstBuildPlugin,videosignal,videosignal support,,,))
  364. $(eval $(call GstBuildPlugin,vmnc,vmnc support,,,))
  365. $(eval $(call GstBuildPlugin,y4mdec,y4mdec support,,,))
  366. $(eval $(call GstBuildPlugin,bluez,bluez support,,,+bluez-libs))
  367. #$(eval $(call GstBuildPlugin,bz2,bzip2 support,,,+libbz2))
  368. #$(eval $(call GstBuildPlugin,dataurisrc,dataurisrc support,,,))
  369. $(eval $(call GstBuildPlugin,dtls,DTLS support,,,+libopenssl))
  370. $(eval $(call GstBuildPlugin,faad,faad support,audio,,+libfaad2))
  371. $(eval $(call GstBuildPlugin,fbdevsink,fbdev support,video,,))
  372. $(eval $(call GstBuildPlugin,hls,HLS support,pbutils adaptivedemux,multifile,+libnettle))
  373. $(eval $(call GstBuildPlugin,opusparse,OPUS streams library,pbutils,,+libopus))
  374. $(eval $(call GstBuildPlugin,sbc,sbc support,audio,,+sbc))
  375. $(eval $(call GstBuildPlugin,shm,POSIX shared memory source and sink,,,+librt))
  376. $(eval $(call GstBuildPlugin,sndfile,sndfile support,audio,,+libsndfile))
  377. #$(eval $(call GstBuildPlugin,srtp,srtp support,rtp,,+libsrtp))
  378. $(eval $(call GstBuildPlugin,webp,webp support,,,+libwebp))
  379. #$(eval $(call GstBuildPlugin,yadif,yadif support,,,))
  380. $(eval $(call BuildPackage,gstreamer1-plugins-bad))
  381. $(eval $(call BuildPackage,gst1-plugins-bad))