# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
pkgbase=gstreamer
pkgname=(
gstreamer
gst-plugins-bad-libs # Split badaudio first
gst-plugins-base-libs
gst-plugins-base
gst-plugins-good
gst-plugins-bad
gst-plugin-gtk
# gst-plugin-msdk
# gst-plugin-opencv
# gst-plugin-qml6
# gst-plugin-qmlgl
# gst-plugin-qsv
# gst-plugin-va
# gst-plugin-wpe
gst-plugins-ugly
gst-libav
gst-devtools-libs
gst-devtools
gst-rtsp-server
gst-editing-services
# gstreamer-vaapi
gst-python
gstreamer-docs
)
pkgver=1.24.2
pkgrel=5
pkgdesc="Multimedia graph framework"
url="https://gstreamer.freedesktop.org/"
arch=(armv7h)
license=(LGPL-2.1-or-later)
makedepends=(
# superproject
git meson
# gstreamer
bash-completion gobject-introspection gtk3 libcap libelf libunwind python
python-packaging rust valgrind
# gst-plugins-base
alsa-lib cdparanoia graphene libdrm libglvnd libgudev libjpeg libpng libtheora
libx11 libxi libxv mesa opus orc pango
#qt5-base qt5-tools
sdl2 wayland
wayland-protocols zlib
# gst-plugins-good
aalib cairo flac gdk-pixbuf2 lame
# libavc1394
libcaca
# libdv libiec61883
libpulse
# libraw1394
libshout
libsoup3 libvpx libxdamage libxtst mpg123 # nasm
nettle opencore-amr # qt5-declarative qt5-wayland qt5-x11extras qt6-declarative
# qt6-shadertools qt6-tools qt6-wayland
speex taglib twolame v4l-utils wavpack
# gst-plugins-bad
bluez-libs bzip2 chromaprint faac faad2 fluidsynth gsm json-glib ladspa
libavtp libbs2b libdca libde265
libdvdnav
libfdk-aac libfreeaptx libgme
liblc3 libldac liblrdf libltc libmicrodns libmodplug libmpcdec libnice
libopenmpt libsrtp
# libva
# libvpl
libxkbcommon-x11 libxml2 lilv lv2
mjpegtools
neon openal
# opencv
qrencode rtmpdump sbc shaderc soundtouch spandsp svt-av1
# svt-hevc vulkan-headers vulkan-icd-loader vulkan-validation-layers
webrtc-audio-processing-1 wildmidi # wpewebkit
zbar zvbi zxing-cpp
openexr
# gst-plugins-ugly
a52dec libcdio #libdvdread
libmpeg2 x264
# gst-libav
ffmpeg
# gst-editing-services
opentimelineio
# gstreamer-vaapi
libxrandr
# gst-python
python-gobject python-setuptools
)
#checkdepends=(xorg-server-xvfb)
source=(
"git+https://gitlab.freedesktop.org/gstreamer/gstreamer.git?signed#tag=$pkgver"
"https://gstreamer.freedesktop.org/src/gstreamer-docs/gstreamer-docs-$pkgver.tar.xz"{,.asc}
0001-HACK-meson-Disable-broken-tests.patch
)
b2sums=('b701d3804d955d217ffefb393488eecdca96e3e1275d7c6997e9bd8ec9155a2aea60faa459e40490b77a16c9031c4f89dd95e5bbb7d7ec4f4e105e090673c0ba'
'b67e5d8c6fb52a794e2307a3944338342ed560895f8fac6876a92d1f81326c751ff5c6f7d6a11e2dde480d981db024fdc0ee4a1638c2af763b10a119887ace95'
'SKIP'
'e7c59c828883a3bb3aa47684d83b57cd4d463e1f8cffc0383f779fa60ecbe37bfa30c8a0f40e6b2a01f6e0edfbefc5b7041340837e0018741e5963671945a1f2')
validpgpkeys=(
D637032E45B8C6585B9456565D2EEE6F6F349D7C # Tim Müller <tim@gstreamer-foundation.org>
)
prepare() {
cd gstreamer
# Disable broken tests
git apply -3 ../0001-HACK-meson-Disable-broken-tests.patch
}
build() {
local meson_options=(
# Superproject options
-D examples=disabled
-D gobject-cast-checks=disabled
-D gpl=enabled
-D gst-examples=disabled
-D libnice=disabled
-D orc-source=system
-D package-name="ARMLFS GStreamer ${epoch:+$epoch:}$pkgver-$pkgrel"
-D package-origin="https://armlfs.urja.dev/"
-D vaapi=disabled
-D qt5=disabled
-D qt6=disabled
# Subproject options
-D gstreamer:dbghelp=disabled
-D gstreamer:ptp-helper-permissions=capabilities
-D gst-plugins-base:libvisual=disabled
-D gst-plugins-base:tremor=disabled
-D gst-plugins-good:rpicamsrc=disabled
-D gst-plugins-good:dv1394=disabled
-D gst-plugins-good:qt5=disabled
-D gst-plugins-good:qt6=disabled
-D gst-plugins-bad:aja=disabled
-D gst-plugins-bad:amfcodec=disabled
-D gst-plugins-bad:directfb=disabled
-D gst-plugins-bad:directshow=disabled
-D gst-plugins-bad:directsound=disabled
-D gst-plugins-bad:flite=disabled
-D gst-plugins-bad:gs=disabled
-D gst-plugins-bad:iqa=disabled
-D gst-plugins-bad:isac=disabled
-D gst-plugins-bad:magicleap=disabled
-D gst-plugins-bad:mfx_api=oneVPL
-D gst-plugins-bad:onnx=disabled
-D gst-plugins-bad:openh264=disabled
-D gst-plugins-bad:openni2=disabled
-D gst-plugins-bad:opensles=disabled
-D gst-plugins-bad:qt6d3d11=disabled
-D gst-plugins-bad:tinyalsa=disabled
-D gst-plugins-bad:voaacenc=disabled
-D gst-plugins-bad:voamrwbenc=disabled
-D gst-plugins-bad:wasapi2=disabled
-D gst-plugins-bad:wasapi=disabled
-D gst-plugins-bad:wic=disabled
-D gst-plugins-bad:win32ipc=disabled
-D gst-plugins-bad:opencv=disabled
-D gst-plugins-bad:va=disabled
-D gst-plugins-bad:wpe=disabled
-D gst-plugins-bad:svthevcenc=disabled
-D gst-plugins-bad:qsv=disabled
-D gst-plugins-bad:msdk=disabled
-D gst-plugins-bad:vulkan=disabled
-D gst-plugins-bad:dc1394=disabled
-D gst-plugins-ugly:sidplay=disabled
-D gst-devtools:debug_viewer=enabled
)
# https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3197
export GI_SCANNER_DISABLE_CACHE=1
arch-meson gstreamer build "${meson_options[@]}"
# meson configure build # Print config
meson compile -C build
}
check() (
return 0
export XDG_RUNTIME_DIR="$PWD/runtime-dir"
mkdir -p -m 700 "$XDG_RUNTIME_DIR"
export NO_AT_BRIDGE=1 GTK_A11Y=none
# Flaky due to timeouts
xvfb-run -s '-nolisten local' \
meson test -C build --print-errorlogs -t 5
)
_install() {
local src dir
for src in "${files[@]}"; do
dir="$pkgdir/$(dirname "$src")"
mkdir -p "$dir"
mv "$src" "$dir" || true
done
}
package_gstreamer() {
pkgdesc+=" - core"
depends=(
glib2 libcap libelf libunwind libxml2
)
optdepends=('python: gst-plugins-doc-cache-generator')
install=gstreamer.install
meson install -C build --destdir "$srcdir/root"
cd root; local files=(
usr/include/gstreamer-1.0/gst/{base,check,controller,net,*.h}
usr/lib/libgst{reamer,base,check,controller,net}-1.0.so*
usr/lib/pkgconfig/gstreamer{,-base,-check,-controller,-net}-1.0.pc
usr/lib/girepository-1.0/Gst{,Base,Check,Controller,Net}-1.0.typelib
usr/share/gir-1.0/Gst{,Base,Check,Controller,Net}-1.0.gir
usr/libexec/gstreamer-1.0/gst-{completion,ptp}-helper
usr/libexec/gstreamer-1.0/gst-{hotdoc-plugins,plugin}-scanner
usr/libexec/gstreamer-1.0/gst-plugins-doc-cache-generator
usr/lib/gstreamer-1.0/libgstcoreelements.so
usr/lib/gstreamer-1.0/libgstcoretracers.so
usr/share/locale/*/LC_MESSAGES/gstreamer-1.0.mo
usr/bin/gst-{inspect,launch,stats,tester,typefind}-1.0
usr/share/man/man1/gst-{inspect,launch,stats,typefind}-1.0.1
usr/share/bash-completion/completions/gst-{inspect,launch}-1.0
usr/share/bash-completion/helpers/gst
usr/share/gdb/auto-load/usr/lib/libgstreamer-1.0.so*.py
usr/share/gstreamer-1.0/gdb/glib_gobject_helper.py
usr/share/gstreamer-1.0/gdb/gst_gdb.py
usr/share/aclocal/gst-element-check-1.0.m4
); _install
}
package_gst-plugins-bad-libs() {
pkgdesc+=" - bad"
depends=(
"gst-plugins-base-libs=$pkgver"
libdrm libgudev libnice libusb
#libva
libx11 libxkbcommon-x11 orc
#vulkan-icd-loader
wayland
)
cd root; local files=(
usr/include/gstreamer-1.0/gst/audio/{audio-bad-prelude,gstnonstreamaudiodecoder,gstplanaraudioadapter}.h
usr/include/gstreamer-1.0/gst/{analytics,basecamerabinsrc,codecparsers,cuda,insertbin,interfaces,isoff,mpegts,mse,play,player,sctp,transcoder,uridownloader,vulkan,wayland,webrtc}
usr/lib/libgst{adaptivedemux,analytics,badaudio,basecamerabinsrc,codecparsers,codecs,cuda,dxva,insertbin,isoff,mpegts,mse}-1.0.so*
usr/lib/libgst{photography,play,player,sctp,transcoder,uridownloader,va,vulkan,wayland,webrtc,webrtcnice}-1.0.so*
usr/lib/pkgconfig/gstreamer-{analytics,bad-audio,codecparsers,cuda,insertbin,mpegts,mse,photography,play,player,sctp,transcoder,vulkan{,-wayland,-xcb},va,wayland,webrtc{,-nice}}-1.0.pc
usr/lib/girepository-1.0/{CudaGst,Gst{Analytics,BadAudio,Codecs,Cuda,Dxva,InsertBin,Mpegts,Mse,Play,Player,Transcoder,Va,Vulkan{,Wayland,XCB},WebRTC}}-1.0.typelib
usr/share/gir-1.0/{CudaGst,Gst{Analytics,BadAudio,Codecs,Cuda,Dxva,InsertBin,Mpegts,Mse,Play,Player,Transcoder,Va,Vulkan{,Wayland,XCB},WebRTC}}-1.0.gir
usr/lib/pkgconfig/gstreamer-plugins-bad-1.0.pc
usr/lib/gstreamer-1.0/libgstaccurip.so
usr/lib/gstreamer-1.0/libgstadpcmdec.so
usr/lib/gstreamer-1.0/libgstadpcmenc.so
usr/lib/gstreamer-1.0/libgstaiff.so
usr/lib/gstreamer-1.0/libgstasfmux.so
usr/lib/gstreamer-1.0/libgstaudiobuffersplit.so
usr/lib/gstreamer-1.0/libgstaudiofxbad.so
usr/lib/gstreamer-1.0/libgstaudiolatency.so
usr/lib/gstreamer-1.0/libgstaudiomixmatrix.so
usr/lib/gstreamer-1.0/libgstaudiovisualizers.so
usr/lib/gstreamer-1.0/libgstautoconvert.so
usr/lib/gstreamer-1.0/libgstbayer.so
usr/lib/gstreamer-1.0/libgstbluez.so
usr/lib/gstreamer-1.0/libgstcamerabin.so
usr/lib/gstreamer-1.0/libgstcodecalpha.so
usr/lib/gstreamer-1.0/libgstcodectimestamper.so
usr/lib/gstreamer-1.0/libgstcoloreffects.so
usr/lib/gstreamer-1.0/libgstdebugutilsbad.so
usr/lib/gstreamer-1.0/libgstdecklink.so
usr/lib/gstreamer-1.0/libgstdvb.so
usr/lib/gstreamer-1.0/libgstdvbsubenc.so
usr/lib/gstreamer-1.0/libgstdvbsuboverlay.so
usr/lib/gstreamer-1.0/libgstdvdspu.so
usr/lib/gstreamer-1.0/libgstfaceoverlay.so
usr/lib/gstreamer-1.0/libgstfbdevsink.so
usr/lib/gstreamer-1.0/libgstfestival.so
usr/lib/gstreamer-1.0/libgstfieldanalysis.so
usr/lib/gstreamer-1.0/libgstfreeverb.so
usr/lib/gstreamer-1.0/libgstfrei0r.so
usr/lib/gstreamer-1.0/libgstgaudieffects.so
usr/lib/gstreamer-1.0/libgstgdp.so
usr/lib/gstreamer-1.0/libgstgeometrictransform.so
usr/lib/gstreamer-1.0/libgstid3tag.so
usr/lib/gstreamer-1.0/libgstinsertbin.so
usr/lib/gstreamer-1.0/libgstinter.so
usr/lib/gstreamer-1.0/libgstinterlace.so
usr/lib/gstreamer-1.0/libgstipcpipeline.so
usr/lib/gstreamer-1.0/libgstivfparse.so
usr/lib/gstreamer-1.0/libgstivtc.so
usr/lib/gstreamer-1.0/libgstjp2kdecimator.so
usr/lib/gstreamer-1.0/libgstjpegformat.so
usr/lib/gstreamer-1.0/libgstkms.so
usr/lib/gstreamer-1.0/libgstlegacyrawparse.so
usr/lib/gstreamer-1.0/libgstmidi.so
usr/lib/gstreamer-1.0/libgstmpegpsdemux.so
usr/lib/gstreamer-1.0/libgstmpegpsmux.so
usr/lib/gstreamer-1.0/libgstmpegtsdemux.so
usr/lib/gstreamer-1.0/libgstmpegtsmux.so
usr/lib/gstreamer-1.0/libgstmse.so
usr/lib/gstreamer-1.0/libgstmxf.so
usr/lib/gstreamer-1.0/libgstnetsim.so
usr/lib/gstreamer-1.0/libgstnvcodec.so
usr/lib/gstreamer-1.0/libgstpcapparse.so
usr/lib/gstreamer-1.0/libgstpnm.so
usr/lib/gstreamer-1.0/libgstproxy.so
usr/lib/gstreamer-1.0/libgstremovesilence.so
usr/lib/gstreamer-1.0/libgstrfbsrc.so
usr/lib/gstreamer-1.0/libgstrist.so
usr/lib/gstreamer-1.0/libgstrtmp2.so
usr/lib/gstreamer-1.0/libgstrtpmanagerbad.so
usr/lib/gstreamer-1.0/libgstrtponvif.so
usr/lib/gstreamer-1.0/libgstsdpelem.so
usr/lib/gstreamer-1.0/libgstsegmentclip.so
usr/lib/gstreamer-1.0/libgstshm.so
usr/lib/gstreamer-1.0/libgstsiren.so
usr/lib/gstreamer-1.0/libgstsmooth.so
usr/lib/gstreamer-1.0/libgstspeed.so
usr/lib/gstreamer-1.0/libgstsubenc.so
usr/lib/gstreamer-1.0/libgstswitchbin.so
usr/lib/gstreamer-1.0/libgsttranscode.so
usr/lib/gstreamer-1.0/libgstunixfd.so
usr/lib/gstreamer-1.0/libgstuvcgadget.so
usr/lib/gstreamer-1.0/libgstuvch264.so
usr/lib/gstreamer-1.0/libgstv4l2codecs.so
usr/lib/gstreamer-1.0/libgstvideofiltersbad.so
usr/lib/gstreamer-1.0/libgstvideoframe_audiolevel.so
usr/lib/gstreamer-1.0/libgstvideoparsersbad.so
usr/lib/gstreamer-1.0/libgstvideosignal.so
usr/lib/gstreamer-1.0/libgstvmnc.so
usr/lib/gstreamer-1.0/libgstvulkan.so
usr/lib/gstreamer-1.0/libgstwaylandsink.so
usr/lib/gstreamer-1.0/libgsty4mdec.so
usr/share/gstreamer-1.0/encoding-profiles
usr/share/gstreamer-1.0/presets/GstFreeverb.prs
usr/share/locale/*/LC_MESSAGES/gst-plugins-bad-1.0.mo
usr/bin/gst-transcoder-1.0
); _install
}
package_gst-plugins-base-libs() {
pkgdesc+=" - base"
depends=(
"gstreamer=$pkgver"
iso-codes libdrm libgl libgudev libxi libxv mesa orc wayland
)
cd root; local files=(
usr/include/gstreamer-1.0/gst/{allocators,app,audio,fft,gl,pbutils,riff,rtp,rtsp,sdp,tag,video}
usr/lib/libgst{allocators,app,audio,fft,gl,pbutils,riff,rtp,rtsp,sdp,tag,video}-1.0.so*
usr/lib/pkgconfig/gstreamer-{allocators,app,audio,fft,gl{,-egl,-prototypes,-wayland,-x11},pbutils,riff,rtp,rtsp,sdp,tag,video}-1.0.pc
usr/lib/girepository-1.0/Gst{Allocators,App,Audio,GL{,EGL,Wayland,X11},Pbutils,Rtp,Rtsp,Sdp,Tag,Video}-1.0.typelib
usr/share/gir-1.0/Gst{Allocators,App,Audio,GL{,EGL,Wayland,X11},Pbutils,Rtp,Rtsp,Sdp,Tag,Video}-1.0.gir
usr/lib/pkgconfig/gstreamer-plugins-base-1.0.pc
usr/lib/gstreamer-1.0/include/gst/gl/gstglconfig.h
usr/lib/gstreamer-1.0/libgstadder.so
usr/lib/gstreamer-1.0/libgstapp.so
usr/lib/gstreamer-1.0/libgstaudioconvert.so
usr/lib/gstreamer-1.0/libgstaudiomixer.so
usr/lib/gstreamer-1.0/libgstaudiorate.so
usr/lib/gstreamer-1.0/libgstaudioresample.so
usr/lib/gstreamer-1.0/libgstaudiotestsrc.so
usr/lib/gstreamer-1.0/libgstbasedebug.so
usr/lib/gstreamer-1.0/libgstcompositor.so
usr/lib/gstreamer-1.0/libgstdsd.so
usr/lib/gstreamer-1.0/libgstencoding.so
usr/lib/gstreamer-1.0/libgstgio.so
usr/lib/gstreamer-1.0/libgstoverlaycomposition.so
usr/lib/gstreamer-1.0/libgstpbtypes.so
usr/lib/gstreamer-1.0/libgstplayback.so
usr/lib/gstreamer-1.0/libgstrawparse.so
usr/lib/gstreamer-1.0/libgstsubparse.so
usr/lib/gstreamer-1.0/libgsttcp.so
usr/lib/gstreamer-1.0/libgsttypefindfunctions.so
usr/lib/gstreamer-1.0/libgstvideoconvertscale.so
usr/lib/gstreamer-1.0/libgstvideorate.so
usr/lib/gstreamer-1.0/libgstvideotestsrc.so
usr/lib/gstreamer-1.0/libgstvolume.so
usr/lib/gstreamer-1.0/libgstximagesink.so
usr/lib/gstreamer-1.0/libgstxvimagesink.so
usr/share/locale/*/LC_MESSAGES/gst-plugins-base-1.0.mo
usr/bin/gst-{device-monitor,discoverer,play}-1.0
usr/share/man/man1/gst-{device-monitor,discoverer,play}-1.0.1
usr/share/gst-plugins-base
); _install
}
package_gst-plugins-base() {
pkgdesc+=" - base plugins"
depends=(
"gst-plugins-base-libs=$pkgver"
alsa-lib cdparanoia graphene libjpeg libpng libtheora libvorbis opus pango
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstalsa.so
usr/lib/gstreamer-1.0/libgstcdparanoia.so
usr/lib/gstreamer-1.0/libgstogg.so
usr/lib/gstreamer-1.0/libgstopengl.so
usr/lib/gstreamer-1.0/libgstopus.so
usr/lib/gstreamer-1.0/libgstpango.so
usr/lib/gstreamer-1.0/libgsttheora.so
usr/lib/gstreamer-1.0/libgstvorbis.so
); _install
}
package_gst-plugins-good() {
pkgdesc+=" - good plugins"
depends=(
"gst-plugins-base-libs=$pkgver"
aalib cairo flac gdk-pixbuf2 lame libavc1394 libcaca libdv libgudev
libiec61883 libpulse libraw1394 libshout libsoup3 libvpx libxdamage libxtst
mpg123 nettle opencore-amr speex taglib twolame v4l-utils wavpack
)
optdepends=('jack: JACK backend')
cd root; local files=(
usr/lib/gstreamer-1.0/libgst1394.so
usr/lib/gstreamer-1.0/libgstaasink.so
usr/lib/gstreamer-1.0/libgstadaptivedemux2.so
usr/lib/gstreamer-1.0/libgstalaw.so
usr/lib/gstreamer-1.0/libgstalpha.so
usr/lib/gstreamer-1.0/libgstalphacolor.so
usr/lib/gstreamer-1.0/libgstamrnb.so
usr/lib/gstreamer-1.0/libgstamrwbdec.so
usr/lib/gstreamer-1.0/libgstapetag.so
usr/lib/gstreamer-1.0/libgstaudiofx.so
usr/lib/gstreamer-1.0/libgstaudioparsers.so
usr/lib/gstreamer-1.0/libgstauparse.so
usr/lib/gstreamer-1.0/libgstautodetect.so
usr/lib/gstreamer-1.0/libgstavi.so
usr/lib/gstreamer-1.0/libgstcacasink.so
usr/lib/gstreamer-1.0/libgstcairo.so
usr/lib/gstreamer-1.0/libgstcutter.so
usr/lib/gstreamer-1.0/libgstdebug.so
usr/lib/gstreamer-1.0/libgstdeinterlace.so
usr/lib/gstreamer-1.0/libgstdtmf.so
usr/lib/gstreamer-1.0/libgstdv.so
usr/lib/gstreamer-1.0/libgsteffectv.so
usr/lib/gstreamer-1.0/libgstequalizer.so
usr/lib/gstreamer-1.0/libgstflac.so
usr/lib/gstreamer-1.0/libgstflv.so
usr/lib/gstreamer-1.0/libgstflxdec.so
usr/lib/gstreamer-1.0/libgstgdkpixbuf.so
usr/lib/gstreamer-1.0/libgstgoom.so
usr/lib/gstreamer-1.0/libgstgoom2k1.so
usr/lib/gstreamer-1.0/libgsticydemux.so
usr/lib/gstreamer-1.0/libgstid3demux.so
usr/lib/gstreamer-1.0/libgstimagefreeze.so
usr/lib/gstreamer-1.0/libgstinterleave.so
usr/lib/gstreamer-1.0/libgstisomp4.so
usr/lib/gstreamer-1.0/libgstjack.so
usr/lib/gstreamer-1.0/libgstjpeg.so
usr/lib/gstreamer-1.0/libgstlame.so
usr/lib/gstreamer-1.0/libgstlevel.so
usr/lib/gstreamer-1.0/libgstmatroska.so
usr/lib/gstreamer-1.0/libgstmonoscope.so
usr/lib/gstreamer-1.0/libgstmpg123.so
usr/lib/gstreamer-1.0/libgstmulaw.so
usr/lib/gstreamer-1.0/libgstmultifile.so
usr/lib/gstreamer-1.0/libgstmultipart.so
usr/lib/gstreamer-1.0/libgstnavigationtest.so
usr/lib/gstreamer-1.0/libgstoss4.so
usr/lib/gstreamer-1.0/libgstossaudio.so
usr/lib/gstreamer-1.0/libgstpng.so
usr/lib/gstreamer-1.0/libgstpulseaudio.so
usr/lib/gstreamer-1.0/libgstreplaygain.so
usr/lib/gstreamer-1.0/libgstrtp.so
usr/lib/gstreamer-1.0/libgstrtpmanager.so
usr/lib/gstreamer-1.0/libgstrtsp.so
usr/lib/gstreamer-1.0/libgstshapewipe.so
usr/lib/gstreamer-1.0/libgstshout2.so
usr/lib/gstreamer-1.0/libgstsmpte.so
usr/lib/gstreamer-1.0/libgstsoup.so
usr/lib/gstreamer-1.0/libgstspectrum.so
usr/lib/gstreamer-1.0/libgstspeex.so
usr/lib/gstreamer-1.0/libgsttaglib.so
usr/lib/gstreamer-1.0/libgsttwolame.so
usr/lib/gstreamer-1.0/libgstudp.so
usr/lib/gstreamer-1.0/libgstvideo4linux2.so
usr/lib/gstreamer-1.0/libgstvideobox.so
usr/lib/gstreamer-1.0/libgstvideocrop.so
usr/lib/gstreamer-1.0/libgstvideofilter.so
usr/lib/gstreamer-1.0/libgstvideomixer.so
usr/lib/gstreamer-1.0/libgstvpx.so
usr/lib/gstreamer-1.0/libgstwavenc.so
usr/lib/gstreamer-1.0/libgstwavpack.so
usr/lib/gstreamer-1.0/libgstwavparse.so
usr/lib/gstreamer-1.0/libgstximagesrc.so
usr/lib/gstreamer-1.0/libgstxingmux.so
usr/lib/gstreamer-1.0/libgsty4menc.so
usr/share/gstreamer-1.0/presets/GstIirEqualizer{3,10}Bands.prs
usr/share/gstreamer-1.0/presets/GstQTMux.prs
usr/share/gstreamer-1.0/presets/Gst{Amrnb,VP8}Enc.prs
usr/share/locale/*/LC_MESSAGES/gst-plugins-good-1.0.mo
); _install
}
package_gst-plugins-bad() {
pkgdesc+=" - bad plugins"
depends=(
"gst-plugins-bad-libs=$pkgver"
aom bzip2 chromaprint curl faac faad2 fluidsynth gsm json-glib lcms2 libass
libavtp libbs2b libdca libde265 libdvdnav libdvdread libfdk-aac
libfreeaptx libgme liblc3 libldac liblrdf libltc libmicrodns libmodplug
libmpcdec libopenmpt librsvg libsndfile libsrtp libwebp libxml2 lilv
mjpegtools neon nettle openal openexr openjpeg2 openssl opus pango qrencode
rtmpdump sbc soundtouch spandsp srt svt-av1
webrtc-audio-processing-1 wildmidi x265 zbar zvbi zxing-cpp
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstaes.so
usr/lib/gstreamer-1.0/libgstanalyticsoverlay.so
usr/lib/gstreamer-1.0/libgstaom.so
usr/lib/gstreamer-1.0/libgstassrender.so
usr/lib/gstreamer-1.0/libgstavtp.so
usr/lib/gstreamer-1.0/libgstbs2b.so
usr/lib/gstreamer-1.0/libgstbz2.so
usr/lib/gstreamer-1.0/libgstchromaprint.so
usr/lib/gstreamer-1.0/libgstclosedcaption.so
usr/lib/gstreamer-1.0/libgstcodec2json.so
usr/lib/gstreamer-1.0/libgstcolormanagement.so
usr/lib/gstreamer-1.0/libgstcurl.so
usr/lib/gstreamer-1.0/libgstdash.so
usr/lib/gstreamer-1.0/libgstdc1394.so
usr/lib/gstreamer-1.0/libgstde265.so
usr/lib/gstreamer-1.0/libgstdtls.so
usr/lib/gstreamer-1.0/libgstdtsdec.so
usr/lib/gstreamer-1.0/libgstfaac.so
usr/lib/gstreamer-1.0/libgstfaad.so
usr/lib/gstreamer-1.0/libgstfdkaac.so
usr/lib/gstreamer-1.0/libgstfluidsynthmidi.so
usr/lib/gstreamer-1.0/libgstgme.so
usr/lib/gstreamer-1.0/libgstgsm.so
usr/lib/gstreamer-1.0/libgsthls.so
usr/lib/gstreamer-1.0/libgstladspa.so
usr/lib/gstreamer-1.0/libgstlc3.so
usr/lib/gstreamer-1.0/libgstldac.so
usr/lib/gstreamer-1.0/libgstlv2.so
usr/lib/gstreamer-1.0/libgstmicrodns.so
usr/lib/gstreamer-1.0/libgstmodplug.so
usr/lib/gstreamer-1.0/libgstmpeg2enc.so
usr/lib/gstreamer-1.0/libgstmplex.so
usr/lib/gstreamer-1.0/libgstmusepack.so
usr/lib/gstreamer-1.0/libgstneonhttpsrc.so
usr/lib/gstreamer-1.0/libgstopenal.so
usr/lib/gstreamer-1.0/libgstopenaptx.so
usr/lib/gstreamer-1.0/libgstopenexr.so
usr/lib/gstreamer-1.0/libgstopenjpeg.so
usr/lib/gstreamer-1.0/libgstopenmpt.so
usr/lib/gstreamer-1.0/libgstopusparse.so
usr/lib/gstreamer-1.0/libgstqroverlay.so
usr/lib/gstreamer-1.0/libgstresindvd.so
usr/lib/gstreamer-1.0/libgstrsvg.so
usr/lib/gstreamer-1.0/libgstrtmp.so
usr/lib/gstreamer-1.0/libgstsbc.so
usr/lib/gstreamer-1.0/libgstsctp.so
usr/lib/gstreamer-1.0/libgstsmoothstreaming.so
usr/lib/gstreamer-1.0/libgstsndfile.so
usr/lib/gstreamer-1.0/libgstsoundtouch.so
usr/lib/gstreamer-1.0/libgstspandsp.so
usr/lib/gstreamer-1.0/libgstsrt.so
usr/lib/gstreamer-1.0/libgstsrtp.so
usr/lib/gstreamer-1.0/libgstsvtav1.so
usr/lib/gstreamer-1.0/libgstsvthevcenc.so
usr/lib/gstreamer-1.0/libgstteletext.so
usr/lib/gstreamer-1.0/libgsttimecode.so
usr/lib/gstreamer-1.0/libgstttmlsubs.so
usr/lib/gstreamer-1.0/libgstwebp.so
usr/lib/gstreamer-1.0/libgstwebrtc.so
usr/lib/gstreamer-1.0/libgstwebrtcdsp.so
usr/lib/gstreamer-1.0/libgstwildmidi.so
usr/lib/gstreamer-1.0/libgstx265.so
usr/lib/gstreamer-1.0/libgstzbar.so
usr/lib/gstreamer-1.0/libgstzxing.so
); _install
}
package_gst-plugin-gtk() {
pkgdesc+=" - gtk plugin"
depends=(
"gst-plugins-bad-libs=$pkgver"
gtk3
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstgtk.so
usr/lib/gstreamer-1.0/libgstgtkwayland.so
); _install
}
package_gst-plugin-msdk() {
pkgdesc+=" - msdk plugin"
depends=(
"gst-plugins-bad-libs=$pkgver"
libvpl
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstmsdk.so
); _install
}
package_gst-plugin-opencv() {
pkgdesc+=" - opencv plugin"
depends=(
"gst-plugins-base-libs=$pkgver"
opencv
)
cd root; local files=(
usr/include/gstreamer-1.0/gst/opencv
usr/lib/libgstopencv-1.0.so*
usr/lib/gstreamer-1.0/libgstopencv.so
); _install
}
package_gst-plugin-qml6() {
pkgdesc+=" - qml6 plugin"
depends=(
"gst-plugins-base-libs=$pkgver"
qt6-declarative qt6-wayland
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstqml6.so
); _install
}
package_gst-plugin-qmlgl() {
pkgdesc+=" - qmlgl plugin"
depends=(
"gst-plugins-base-libs=$pkgver"
qt5-declarative qt5-wayland qt5-x11extras
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstqmlgl.so
); _install
}
package_gst-plugin-qsv() {
pkgdesc+=" - qsv plugin"
depends=("gst-plugins-bad-libs=$pkgver")
optdepends=(
'intel-media-sdk: runtime for legacy Intel GPUs'
'onevpl-intel-gpu: runtime for Tiger Lake and newer GPUs'
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstqsv.so
); _install
}
package_gst-plugin-va() {
pkgdesc+=" - va plugin"
depends=("gst-plugins-bad-libs=$pkgver")
cd root; local files=(
usr/lib/gstreamer-1.0/libgstva.so
); _install
}
package_gst-plugin-wpe() {
pkgdesc+=" - wpe plugin"
depends=(
"gst-plugins-base-libs=$pkgver"
wpewebkit
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstwpe.so
usr/lib/gst-plugins-bad/wpe-extension/libgstwpeextension.so
); _install
}
package_gst-plugins-ugly() {
pkgdesc+=" - ugly plugins"
depends=(
"gst-plugins-base-libs=$pkgver"
a52dec libcdio libdvdread libmpeg2 x264
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgsta52dec.so
usr/lib/gstreamer-1.0/libgstasf.so
usr/lib/gstreamer-1.0/libgstcdio.so
usr/lib/gstreamer-1.0/libgstdvdlpcmdec.so
usr/lib/gstreamer-1.0/libgstdvdread.so
usr/lib/gstreamer-1.0/libgstdvdsub.so
usr/lib/gstreamer-1.0/libgstmpeg2dec.so
usr/lib/gstreamer-1.0/libgstrealmedia.so
usr/lib/gstreamer-1.0/libgstx264.so
usr/share/gstreamer-1.0/presets/GstX264Enc.prs
usr/share/locale/*/LC_MESSAGES/gst-plugins-ugly-1.0.mo
); _install
}
package_gst-libav() {
pkgdesc+=" - libav plugin"
depends=(
"gst-plugins-base-libs=$pkgver"
bzip2 ffmpeg
)
provides=("gst-ffmpeg=$pkgver")
cd root; local files=(
usr/lib/gstreamer-1.0/libgstlibav.so
); _install
}
package_gst-devtools-libs() {
pkgdesc+=" - development and debugging libraries"
depends=(
"gst-plugins-base-libs=$pkgver"
json-glib
)
cd root; local files=(
usr/include/gstreamer-1.0/gst/validate
usr/lib/libgstvalidate-*
usr/lib/pkgconfig/gstreamer-validate-1.0.pc
usr/lib/girepository-1.0/GstValidate-1.0.typelib
usr/share/gir-1.0/GstValidate-1.0.gir
); _install
}
package_gst-devtools() {
pkgdesc+=" - development and debugging tools"
depends=(
"gst-devtools-libs=$pkgver"
"gst-plugins-bad-libs=$pkgver"
"gst-rtsp-server=$pkgver"
gtk3 python-gobject
)
cd root; local files=(
usr/bin/gst-validate-*
usr/lib/gst-validate-launcher
usr/lib/gstreamer-1.0/libgstvalidatetracer.so
usr/lib/gstreamer-1.0/validate
usr/share/gstreamer-1.0/validate
usr/bin/gst-debug-viewer
usr/lib/python*/site-packages/GstDebugViewer
usr/share/applications/org.freedesktop.GstDebugViewer.desktop
usr/share/gst-debug-viewer
usr/share/icons/hicolor/*/apps/gst-debug-viewer.*
usr/share/metainfo/org.freedesktop.GstDebugViewer.appdata.xml
); _install
}
package_gst-rtsp-server() {
pkgdesc+=" - rtsp server"
depends=("gst-plugins-base-libs=$pkgver")
cd root; local files=(
usr/include/gstreamer-1.0/gst/rtsp-server
usr/lib/libgstrtspserver-1.0.so*
usr/lib/pkgconfig/gstreamer-rtsp-server-1.0.pc
usr/lib/girepository-1.0/GstRtspServer-1.0.typelib
usr/share/gir-1.0/GstRtspServer-1.0.gir
usr/lib/gstreamer-1.0/libgstrtspclientsink.so
); _install
}
package_gst-editing-services() {
pkgdesc+=" - editing services"
depends=(
"gst-devtools-libs=$pkgver"
"gst-plugins-base-libs=$pkgver"
"gst-python=$pkgver"
)
optdepends=(
'opentimelineio: Support for the OpenTimelineIO format'
)
cd root; local files=(
usr/include/gstreamer-1.0/ges
usr/lib/libges-1.0.so*
usr/lib/pkgconfig/gst-editing-services-1.0.pc
usr/lib/girepository-1.0/GES-1.0.typelib
usr/share/gir-1.0/GES-1.0.gir
usr/lib/gstreamer-1.0/libgstges.so
usr/lib/gstreamer-1.0/libgstnle.so
usr/lib/python*/site-packages/gi/overrides/GES.py
usr/lib/python*/site-packages/gi/overrides/__pycache__/GES.*.pyc
usr/bin/ges-launch-1.0
usr/share/man/man1/ges-launch-1.0.1
usr/share/bash-completion/completions/ges-launch-1.0
); _install
}
package_gstreamer-vaapi() {
pkgdesc+=" - vaapi plugin"
depends=(
"gst-plugins-bad-libs=$pkgver"
libxrandr
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstvaapi.so
); _install
}
package_gst-python() {
pkgdesc+=" - python plugin"
depends=(
"gst-plugins-base-libs=$pkgver"
python-gobject
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstpython.so
usr/lib/python*/site-packages/gi/overrides
); _install
}
package_gstreamer-docs() {
pkgdesc+=" - documentation"
license=(
'BSD-2-Clause OR MIT OR LGPL-2.1-or-later'
CC-BY-SA-4.0
LGPL-2.1-or-later
MIT
OPUBL-1.0
)
options=(
!debug
!strip
)
# make sure there are no files left to install
find root -depth ! -type d
find root -depth -print0 | xargs -0 rmdir
cd gstreamer-docs-${pkgver%%+*}
mkdir -p "$pkgdir/usr/share/doc/$pkgbase"
cp -t "$pkgdir/usr/share" -a devhelp
cp -t "$pkgdir/usr/share/doc/$pkgbase" -a html README*
install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 COPYING LICENSE*
}
# vim:set sw=2 sts=-1 et tw=80: