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.

251 lines
8.6 KiB

  1. #
  2. # Copyright (C) 2009-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-good
  9. PKG_VERSION:=1.16.0
  10. PKG_RELEASE:=1
  11. PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
  12. Ted Hess <thess@kitschensync.net>
  13. PKG_LICENSE:=LGPLv2
  14. PKG_LICENSE_FILES:=COPYING
  15. PKG_CPE_ID:=cpe:/a:gstreamer:good_plug-ins
  16. PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-good-$(PKG_VERSION)
  17. PKG_SOURCE:=gst-plugins-good-$(PKG_VERSION).tar.xz
  18. PKG_SOURCE_URL:=https://gstreamer.freedesktop.org/src/gst-plugins-good/
  19. PKG_HASH:=654adef33380d604112f702c2927574cfc285e31307b79e584113858838bb0fd
  20. PKG_CONFIG_DEPENDS:= \
  21. CONFIG_PACKAGE_gst1-mod-lame \
  22. CONFIG_PACKAGE_gst1-mod-mpg123 \
  23. PKG_FIXUP:=autoreconf
  24. PKG_BUILD_PARALLEL:=1
  25. PKG_INSTALL:=1
  26. include $(INCLUDE_DIR)/package.mk
  27. include $(INCLUDE_DIR)/nls.mk
  28. GST_GOOD_MODULES:=
  29. define Package/gstreamer1-good/Default
  30. CATEGORY:=Multimedia
  31. SECTION:=multimedia
  32. TITLE:=GStreamer
  33. URL:=https://gstreamer.freedesktop.org/
  34. DEPENDS:= +libgstreamer1 +libgst1pbutils $(ICONV_DEPENDS)
  35. endef
  36. define Package/gstreamer1-good/description/Default
  37. GStreamer open source multimedia framework
  38. endef
  39. define Package/gst1-plugins-good
  40. $(call Package/gstreamer1-good/Default)
  41. TITLE+= plugins collection (good)
  42. DEPENDS+= $(GST_DEPENDS)
  43. HIDDEN:=1
  44. endef
  45. define Package/gst1-plugins-good/description
  46. $(call Package/gstreamer1-good/description/Default)
  47. .
  48. This meta package contains only dependencies to the other plugins from
  49. the good plugins collection.
  50. endef
  51. define Package/gstreamer1-plugins-good
  52. $(call Package/gstreamer1-good/Default)
  53. TITLE+= plugins collection (good)
  54. DEPENDS:=+ALL:gst1-plugins-good +gstreamer1-plugins-base
  55. endef
  56. define Package/gstreamer1-plugins-good/config
  57. menu "Select GStreamer good modules"
  58. depends on PACKAGE_gstreamer1-plugins-good
  59. config gst1-plugins-good-all
  60. bool "Include all GStreamer good plugins"
  61. select PACKAGE_gst1-plugins-good
  62. comment "Modules"
  63. $(foreach mod,$(GST_GOOD_MODULES), \
  64. config PACKAGE_gst1-mod-$(mod)
  65. prompt "GStreamer $(mod) module"
  66. )
  67. endmenu
  68. endef
  69. GST_COND_SELECT = $(patsubst %,$(if $(CONFIG_PACKAGE_gst1-mod-$(1)),--enable,--disable)-%,$(1))
  70. GST_VERSION:=1.0
  71. CONFIGURE_ARGS += \
  72. $(call GST_COND_SELECT,lame) \
  73. $(call GST_COND_SELECT,mpg123) \
  74. \
  75. --disable-Bsymbolic \
  76. --disable-debug \
  77. --disable-examples \
  78. --disable-fatal-warnings \
  79. --disable-glib-asserts \
  80. --disable-gobject-cast-checks \
  81. --disable-gtk-doc-html \
  82. --disable-rpath \
  83. --disable-valgrind \
  84. \
  85. --disable-aalib \
  86. --disable-annodex \
  87. --disable-bz2 \
  88. --disable-cairo \
  89. --disable-directsound \
  90. --disable-dv1394 \
  91. --disable-esd \
  92. --disable-gconf \
  93. --disable-gconftool \
  94. --disable-gdk_pixbuf \
  95. --disable-hal \
  96. --disable-libcaca \
  97. --disable-libdv \
  98. --disable-osx_audio \
  99. --disable-osx_video \
  100. --disable-pulse \
  101. --disable-qtdemux \
  102. --disable-rtspmanager \
  103. --disable-shout2 \
  104. --disable-sunaudio \
  105. --disable-wavpack \
  106. --disable-x \
  107. --disable-xshm \
  108. --disable-xvideo \
  109. --disable-y4m \
  110. --disable-zlib \
  111. \
  112. --without-gudev \
  113. --without-libv4l2 \
  114. --without-libiconv-prefix \
  115. --without-libintl-prefix
  116. define Package/gst1-plugins-good/install
  117. /bin/true
  118. endef
  119. # 1: short name
  120. # 2: description
  121. # 3: dependencies on other gstreamer libraries (short name)
  122. # 4: dependencies on other gstreamer plugins (short name)
  123. # 5: dependencies on other packages
  124. define GstBuildPlugin
  125. GST_DEPENDS += +gst1-mod-$(1)
  126. GST_GOOD_MODULES+= $(1)
  127. define Package/gst1-mod-$(1)
  128. $(call Package/gstreamer1-good/Default)
  129. TITLE+= $(2) plugin (good)
  130. DEPENDS+= $$(foreach p,$(3),+libgst1$$(p)) $$(foreach p,$(4),+gst1-mod-$$(p)) $(5)
  131. HIDDEN:=1
  132. endef
  133. define Package/gst1-mod-$(1)/description
  134. $(call Package/gstreamer1-good/description/Default)
  135. .
  136. This package contains the GStreamer $(2) plugin.
  137. endef
  138. define Package/gst1-mod-$(1)/install
  139. $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
  140. ( cd $(PKG_INSTALL_DIR); $(CP) \
  141. ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
  142. $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
  143. )
  144. endef
  145. $$(eval $$(call BuildPackage,gst1-mod-$(1)))
  146. endef
  147. #$(eval $(call GstBuildPlugin,1394,IEEE 1394 support,,,))
  148. $(eval $(call GstBuildPlugin,alaw,alaw codec,audio,,))
  149. $(eval $(call GstBuildPlugin,alpha,alpha support,video,,))
  150. $(eval $(call GstBuildPlugin,alphacolor,alphacolor support,video,,))
  151. $(eval $(call GstBuildPlugin,apetag,apetag support,audio pbutils tag video,,))
  152. $(eval $(call GstBuildPlugin,audiofx,audio effects,audio fft controller,,))
  153. $(eval $(call GstBuildPlugin,audioparsers,audioparsers,audio tag pbutils,,))
  154. $(eval $(call GstBuildPlugin,auparse,auparse,audio tag pbutils,,))
  155. $(eval $(call GstBuildPlugin,autodetect,format auto-detection,,,))
  156. $(eval $(call GstBuildPlugin,avi,avi support,audio riff tag video,,))
  157. $(eval $(call GstBuildPlugin,cutter,audio cutter,audio,,))
  158. $(eval $(call GstBuildPlugin,debug,debugging,,,))
  159. $(eval $(call GstBuildPlugin,deinterlace,deinterlace support,video,,))
  160. $(eval $(call GstBuildPlugin,dtmf,dtmf support,rtp,,))
  161. #$(eval $(call GstBuildPlugin,dv,dv support,audio tag video,,))
  162. $(eval $(call GstBuildPlugin,effectv,effectvsupport,video,,))
  163. $(eval $(call GstBuildPlugin,equalizer,audio equalizer,audio controller,,))
  164. $(eval $(call GstBuildPlugin,flac,FLAC codec,audio pbutils tag,,+libflac))
  165. $(eval $(call GstBuildPlugin,flv,flv codec,audio pbutils tag video,,))
  166. $(eval $(call GstBuildPlugin,flxdec,flx codec,,,))
  167. #$(eval $(call GstBuildPlugin,gdkpixbuf,gdkpixbuf support,video,,))
  168. $(eval $(call GstBuildPlugin,goom2k1,goom support,audio video pbutils,,))
  169. $(eval $(call GstBuildPlugin,goom,goom support,audio video pbutils,,))
  170. $(eval $(call GstBuildPlugin,icydemux,icy demuxer,audio tag,,))
  171. $(eval $(call GstBuildPlugin,id3demux,ID3v1/v2 demuxer,pbutils tag,,))
  172. $(eval $(call GstBuildPlugin,imagefreeze,imagefreeze support,,,))
  173. $(eval $(call GstBuildPlugin,interleave,audio interleave,audio,,))
  174. $(eval $(call GstBuildPlugin,isomp4,isomp4 support,audio pbutils riff rtp tag video,,))
  175. #$(eval $(call GstBuildPlugin,jack,jack support,audio,,))
  176. $(eval $(call GstBuildPlugin,jpeg,jpeg support,video,,+libjpeg))
  177. $(eval $(call GstBuildPlugin,lame,MP3 encoder (using LAME),audio,,+lame-lib))
  178. $(eval $(call GstBuildPlugin,level,audio level,audio,,))
  179. $(eval $(call GstBuildPlugin,matroska,matroska support,audio pbutils riff tag video,,))
  180. $(eval $(call GstBuildPlugin,mpg123,MP3 decoder (using mpg123),audio tag,,+libid3tag +mpg123))
  181. $(eval $(call GstBuildPlugin,mulaw,mulaw support,audio,,))
  182. $(eval $(call GstBuildPlugin,multifile,multiple files access,video,,))
  183. $(eval $(call GstBuildPlugin,multipart,multipart stream handling,,,))
  184. $(eval $(call GstBuildPlugin,navigationtest,navigationtest support,video,,))
  185. $(eval $(call GstBuildPlugin,oss4,OSS 4 audio support,audio tag,,))
  186. $(eval $(call GstBuildPlugin,ossaudio,OSS audio support,audio,,))
  187. $(eval $(call GstBuildPlugin,png,png support,video,,+libpng))
  188. #$(eval $(call GstBuildPlugin,pulse,pulse support,audio pbutils tag video,,))
  189. $(eval $(call GstBuildPlugin,replaygain,volume normalization,pbutils,,))
  190. $(eval $(call GstBuildPlugin,rtpmanager,RTP manager,audio net rtp tag pbutils video,,))
  191. $(eval $(call GstBuildPlugin,rtp,RTP,audio rtp tag pbutils video,,))
  192. $(eval $(call GstBuildPlugin,rtsp,RTSP,net rtp rtsp sdp,,))
  193. $(eval $(call GstBuildPlugin,shapewipe,shapewipe support,video,,))
  194. #$(eval $(call GstBuildPlugin,shout2,shout2 support,,,))
  195. $(eval $(call GstBuildPlugin,smpte,smpte support,video,,))
  196. $(eval $(call GstBuildPlugin,soup,soup input,audio tag,,+libsoup))
  197. $(eval $(call GstBuildPlugin,spectrum,spectrum data output,audio fft,,))
  198. #$(eval $(call GstBuildPlugin,speex,speex support,audio tag,,))
  199. #$(eval $(call GstBuildPlugin,sty4menc,sty4menc support,video,,))
  200. #$(eval $(call GstBuildPlugin,taglib,taglib support,tag,,))
  201. $(eval $(call GstBuildPlugin,udp,UDP,net,,))
  202. $(eval $(call GstBuildPlugin,video4linux2,video4linux2 support,video allocators,,+libv4l))
  203. $(eval $(call GstBuildPlugin,videobox,videobox support,video,,))
  204. $(eval $(call GstBuildPlugin,videocrop,videocrop support,video,,))
  205. $(eval $(call GstBuildPlugin,videofilter,videofilter support,video,,))
  206. $(eval $(call GstBuildPlugin,videomixer,videomixer support,video,,))
  207. $(eval $(call GstBuildPlugin,vpx,vpx support,tag video,,+libvpx))
  208. $(eval $(call GstBuildPlugin,wavenc,Wav encoder,riff,,))
  209. #$(eval $(call GstBuildPlugin,wavpack,Wav packer,audio riff tag,,))
  210. $(eval $(call GstBuildPlugin,wavparse,Wav parser,audio riff tag,,))
  211. #$(eval $(call GstBuildPlugin,ximagesrc,ximagesrc support,video,,))
  212. $(eval $(call BuildPackage,gstreamer1-plugins-good))
  213. $(eval $(call BuildPackage,gst1-plugins-good))