PKGBUILDs/extra/gstreamer/PKGBUILD
2024-11-13 00:22:08 +00:00

1195 lines
31 KiB
Bash

# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - removed makedepend and gst-plugins-bad depend on svt-hevc
# - removed makedepend and gst-plugins-bad depend on svt-av1, meson with -D gst-plugins-bad:svtav1=disabled
# - removed libgstsvthevcenc.so from gst-plugins-bad install list
# - meson with -D gst-plugins-bad:svthevcenc=disabled
# - removed gst-plug-msdk package, meson with -D gst-plugins-bad:msdk=disabled
# - removed gst-plug-qsv package, meson with -D gst-plugins-bad:qsv=disabled
# - removed gst-plugin-onnx package, meson with -D gst-plugins-bad:onnx=disabled
# - removed makedepend on onnxruntime
# - meson with -D gst-plugins-bad:mfx_api=auto
# - !distcc - build is failing with distcc
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-plugins-ugly
gst-libav
gst-plugin-gtk
gst-plugin-opencv
gst-plugin-qml6
gst-plugin-qmlgl
gst-plugin-va
gst-plugin-wpe
gst-devtools-libs
gst-devtools
gst-rtsp-server
gst-editing-services
gstreamer-vaapi
gst-python
gstreamer-docs
)
pkgver=1.24.9
pkgrel=3
pkgdesc="Multimedia graph framework"
url="https://gstreamer.freedesktop.org/"
arch=(x86_64)
options=(!distcc)
license=(LGPL-2.1-or-later)
makedepends=(
a52dec
aalib
alsa-lib
aom
bash-completion
bluez-libs
bzip2
cairo
cdparanoia
chromaprint
curl
faac
faad2
ffmpeg
flac
fluidsynth
gcc-libs
gdk-pixbuf2
git
glib2
glib2-devel
glibc
gobject-introspection
graphene
gsm
gtk3
hicolor-icon-theme
imath
iso-codes
jack2
json-glib
ladspa
lame
lcms2
libass
libavc1394
libavtp
libbs2b
libcaca
libcap
libcdio
libdc1394
libdca
libde265
libdrm
libdv
libdvdnav
libdvdread
libelf
libfdk-aac
libfreeaptx
libglvnd
libgme
libgudev
libiec61883
libjpeg-turbo
liblc3
libldac
liblrdf
libltc
libmicrodns
libmodplug
libmpcdec
libmpeg2
libnice
libogg
libopenmpt
libpng
libpulse
libraw1394
librsvg
libshout
libsndfile
libsoup3
libsrtp
libtheora
libunwind
libusb
libva
libvorbis
libvpl
libvpx
libwebp
libwpe
libx11
libxcb
libxdamage
libxext
libxfixes
libxi
libxkbcommon
libxkbcommon-x11
libxml2
libxrandr
libxtst
libxv
lilv
lv2
mesa
meson
mjpegtools
mpg123
nasm
neon
nettle
openal
opencore-amr
opencv
openexr
openh264
openjpeg2
openmpi
openssl
opentimelineio
opus
orc
pango
python
python-cairo
python-gobject
python-lxml
python-setuptools
qrencode
qt5-base
qt5-declarative
qt5-tools
qt5-wayland
qt5-x11extras
qt6-base
qt6-declarative
qt6-shadertools
qt6-tools
qt6-wayland
rtmpdump
rust
sbc
sdl2
shaderc
soundtouch
spandsp
speex
srt
systemd-libs
taglib
twolame
v4l-utils
valgrind
vulkan-headers
vulkan-icd-loader
vulkan-validation-layers
wavpack
wayland
wayland-protocols
webrtc-audio-processing-1
wildmidi
wpebackend-fdo
wpewebkit
x264
x265
zbar
zlib
zvbi
zxing-cpp
)
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
0002-x265enc-Unbreak-build-with-x265-4.0.patch
)
b2sums=('53c72d3d88d48ab5bfe114f0d5ae8e224469811552000cba8952b8f64e8b283266bc6a397fc72586acce94439baba1a4b0ede17190e07eae83c2104ef6117461'
'45a454b6b53a16b89cf1e9bac5928f7886e666b0c82fa0cc9610a09bf35871424f291e8bdd1ae4f7fba6e18a8c98c846a2d8024b9df3ce3043e8074b912e58ff'
'SKIP'
'b58019ca02e388925af02a98d6cc7b2c7f67692bb25b7d947f0759669c13027a069cbadd20c1119b98020085341199b5a7085ba32cc28777ed60bd2a2647d845'
'23596f6e5ba9628629f9fca36e3518427ffacdc54505224b4a6e6f039bb3fc168e20093c645b1c093ceb8280fe549a2f6d2af857afad55c28fcc5f9f26917e44')
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
# Fix build with x265 4.0
git apply -3 ../0002-x265enc-Unbreak-build-with-x265-4.0.patch
}
build() {
local meson_options=(
-D examples=disabled
-D gobject-cast-checks=disabled
-D gpl=enabled
-D gst-devtools:debug_viewer=enabled
-D gst-examples=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:msdk=disabled
-D gst-plugins-bad:svtav1=disabled
-D gst-plugins-bad:svthevcenc=disabled
-D gst-plugins-bad:mfx_api=auto
-D gst-plugins-bad:onnx=disabled
-D gst-plugins-bad:openni2=disabled
-D gst-plugins-bad:opensles=disabled
-D gst-plugins-bad:qt6d3d11=disabled
-D gst-plugins-bad:qsv=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-base:libvisual=disabled
-D gst-plugins-base:tremor=disabled
-D gst-plugins-good:rpicamsrc=disabled
-D gst-plugins-ugly:sidplay=disabled
-D gstreamer:dbghelp=disabled
-D gstreamer:ptp-helper-permissions=capabilities
-D libnice=disabled
-D orc-source=system
-D package-name="Arch Linux GStreamer ${epoch:+$epoch:}$pkgver-$pkgrel"
-D package-origin="https://www.archlinux.org/"
-D vaapi=enabled
)
# https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3197
export GI_SCANNER_DISABLE_CACHE=1
arch-meson gstreamer build "${meson_options[@]}"
meson compile -C build
}
check() (
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 -v "$src" "$dir"
done
}
package_gstreamer() {
pkgdesc+=" - core"
depends=(
gcc-libs
glib2
glibc
libcap
libelf
libunwind
)
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/lib/gstreamer-1.0/gst-{completion,ptp}-helper
usr/lib/gstreamer-1.0/gst-{hotdoc-plugins,plugin}-scanner
usr/lib/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-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
gcc-libs
glib2
glibc
libdrm
libglvnd
libgudev
libnice
libusb
libva
libx11
libxcb
libxkbcommon
libxkbcommon-x11
mesa
orc
vulkan-icd-loader
wayland
zlib
)
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,va,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-$pkgrel"
glib2
glibc
iso-codes
libdrm
libglvnd
libgudev
libx11
libxcb
libxext
libxi
libxv
mesa
orc
wayland
zlib
)
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-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
alsa-lib
cairo
cdparanoia
glib2
glibc
graphene
libjpeg-turbo
libogg
libpng
libtheora
libvorbis
libx11
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-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
aalib
bzip2
cairo
flac
gcc-libs
gdk-pixbuf2
glib2
glibc
lame
libavc1394
libcaca
libdv
libgudev
libiec61883
libjpeg-turbo
libpng
libpulse
libraw1394
libshout
libsoup3
libvpx
libx11
libxdamage
libxext
libxfixes
libxml2
libxtst
mpg123
nettle
opencore-amr
orc
speex
taglib
twolame
v4l-utils
wavpack
zlib
)
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-$pkgrel"
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
aom
bzip2
cairo
chromaprint
curl
faac
faad2
fluidsynth
gcc-libs
glib2
glibc
gsm
imath
json-glib
lcms2
libass
libavtp
libbs2b
libdc1394
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
openh264
openjpeg2
openssl
opus
orc
pango
qrencode
rtmpdump
sbc
soundtouch
spandsp
srt
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/libgstopenh264.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/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-plugins-ugly() {
pkgdesc+=" - ugly plugins"
depends=(
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
a52dec
glib2
glibc
libcdio
libdvdread
libmpeg2
orc
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-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
ffmpeg
glib2
glibc
)
provides=("gst-ffmpeg=$pkgver-$pkgrel")
cd root; local files=(
usr/lib/gstreamer-1.0/libgstlibav.so
); _install
}
package_gst-plugin-gtk() {
pkgdesc+=" - gtk plugin"
depends=(
"gst-plugins-bad-libs=$pkgver-$pkgrel"
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
cairo
glib2
glibc
gtk3
wayland
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstgtk.so
usr/lib/gstreamer-1.0/libgstgtkwayland.so
); _install
}
package_gst-plugin-opencv() {
pkgdesc+=" - opencv plugin"
depends=(
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
gcc-libs
glib2
glibc
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-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
gcc-libs
glib2
glibc
libglvnd
qt6-base
qt6-declarative
qt6-wayland
openmpi
)
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-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
gcc-libs
glib2
glibc
libglvnd
qt5-base
qt5-declarative
qt5-wayland
qt5-x11extras
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstqmlgl.so
); _install
}
package_gst-plugin-va() {
pkgdesc+=" - va plugin"
depends=(
"gst-plugins-bad-libs=$pkgver-$pkgrel"
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
glib2
glibc
libgudev
libva
)
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-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
gcc-libs
glib2
glibc
libwpe
libxkbcommon
wayland
wpebackend-fdo
wpewebkit
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstwpe.so
usr/lib/gst-plugins-bad/wpe-extension/libgstwpeextension.so
); _install
}
package_gst-devtools-libs() {
pkgdesc+=" - development and debugging libraries"
depends=(
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
glib2
glibc
json-glib
orc
zlib
)
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-$pkgrel"
"gst-plugins-bad-libs=$pkgver-$pkgrel"
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gst-rtsp-server=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
cairo
glib2
glibc
gtk3
hicolor-icon-theme
json-glib
python
python-cairo
python-gobject
python-lxml
)
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-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
glib2
glibc
orc
zlib
)
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-$pkgrel"
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gst-python=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
glib2
glibc
json-glib
libxml2
orc
python
python-gobject
zlib
)
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-$pkgrel"
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
glib2
glibc
libglvnd
libva
libx11
libxrandr
systemd-libs
wayland
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstvaapi.so
); _install
}
package_gst-python() {
pkgdesc+=" - python plugin"
depends=(
"gst-plugins-base-libs=$pkgver-$pkgrel"
"gstreamer=$pkgver-$pkgrel"
glib2
glibc
python
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: