Name gst-plugins-bad-libs
Description Multimedia graph framework - bad
Version 1.28.0-2
Package Base gstreamer
Homepage https://gstreamer.freedesktop.org/
Maintainers ['Jan Alexander Steffens (heftig) <heftig@archlinux.org>']
Contributors ['Jan de Groot <jgc@archlinux.org>']
Distro-repo https://gitlab.archlinux.org/archlinux/packaging/packages/gstreamer
Sources ['0001-HACK-meson-Disable-broken-tests.patch', '0002-Fix-build-with-zxing-cpp-3.patch', 'git+https://gitlab.freedesktop.org/gstreamer/gstreamer.git?signed#tag=1.28.0', 'https://gstreamer.freedesktop.org/src/gstreamer-docs/gstreamer-docs-1.28.0.tar.xz', 'https://gstreamer.freedesktop.org/src/gstreamer-docs/gstreamer-docs-1.28.0.tar.xz.asc']
Dependencies ['glib2', 'glibc', 'gst-plugins-base-libs', 'gstreamer', 'libdrm', 'libgcc', 'libglvnd', 'libgudev', 'libnice', 'libstdc++', 'libusb', 'libva', 'libx11', 'libxcb', 'libxkbcommon', 'libxkbcommon-x11', 'mesa', 'orc', 'vmaf', 'vulkan-icd-loader', 'wayland', 'zlib']
Optional-Dependencies []
Build-Dependencies ['a52dec', 'aalib', 'alsa-lib', 'aom', 'bash-completion', 'bluez-libs', 'bzip2', 'cairo', 'cdparanoia', 'chromaprint', 'curl', 'faac', 'faad2', 'ffmpeg', 'flac', 'fluidsynth', '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', 'libgcc', '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', 'libstdc++', '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', 'onnxruntime', 'openal', 'opencore-amr', 'opencv', 'openexr', 'openh264', 'openjpeg2', 'openssl', 'opentimelineio', 'opus', 'orc', 'pango', 'python', 'python-cairo', 'python-commonmark', 'python-gobject', 'python-lxml', 'python-setuptools', 'python-typing_extensions', 'qrencode', 'qt5-base', 'qt5-declarative', 'qt5-tools', 'qt5-wayland', 'qt5-x11extras', 'qt6-base', 'qt6-declarative', 'qt6-shadertools', 'qt6-tools', 'rtmpdump', 'rust', 'sbc', 'sdl2', 'shaderc', 'soundtouch', 'spandsp', 'speex', 'srt', 'svt-av1', 'svt-hevc', 'systemd-libs', 'taglib', 'twolame', 'v4l-utils', 'valgrind', 'vmaf', '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']
Provides []
Builddate 15-02-2026 09:17:11
Architecture x86_64
Distro-Version
Licenses ['LGPL-2.1-or-later']
Hash f13fe94d868e18fba897f0e57da22fd0fbdd4135002d610d575dfc186943dd00
# 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-plugins-ugly
  gst-libav
  gst-plugin-gtk
  gst-plugin-hip
  gst-plugin-msdk
  gst-plugin-onnx
  gst-plugin-opencv
  gst-plugin-qml6
  gst-plugin-qmlgl
  gst-plugin-qsv
  gst-plugin-va
  gst-plugin-wpe
  gst-plugin-wpe2
  gst-devtools-libs
  gst-devtools
  gst-rtsp-server
  gst-editing-services
  gst-python
  gstreamer-docs
)
pkgver=1.28.0
pkgrel=2
pkgdesc="Multimedia graph framework"
url="https://gstreamer.freedesktop.org/"
arch=(x86_64)
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
  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
  libgcc
  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
  libstdc++
  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
  onnxruntime
  openal
  opencore-amr
  opencv
  openexr
  openh264
  openjpeg2
  openssl
  opentimelineio
  opus
  orc
  pango
  python
  python-cairo
  python-commonmark
  python-gobject
  python-lxml
  python-setuptools
  python-typing_extensions
  qrencode
  qt5-base
  qt5-declarative
  qt5-tools
  qt5-wayland
  qt5-x11extras
  qt6-base
  qt6-declarative
  qt6-shadertools
  qt6-tools
  rtmpdump
  rust
  sbc
  sdl2
  shaderc
  soundtouch
  spandsp
  speex
  srt
  svt-av1
  svt-hevc
  systemd-libs
  taglib
  twolame
  v4l-utils
  valgrind
  vmaf
  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-Fix-build-with-zxing-cpp-3.patch
)
b2sums=('d9b133fdc193833d98e7d72deab13ae47dbdb6919674c7f39f73370d9e1cd2ba7cf3b41e7cce02de0c71cfa675672d38b278b71d0b88fbbd389480d8585b2eb8'
        '0adf109836e85f6033cd310adbf7cc437c0969de68e9c35bad48a3d10d9eacd711893df5a91ce3e68f9673d90ef8e34337cc45691de051ec304356277fba7d17'
        'SKIP'
        'd568492ed6abe31ccf4a5053846f24262197484bee879b8fcc46478776c535e484c1b3fc0e216b9f334f0b81c0f9c46e69a64bb7d01f72c4adae6ef64e6d0420'
        '57599ef8167a01e21c62f79062c662b6f03c022037c917cadc9d5236deef8d5d8a844c93167cddd37b49379a0d581d467e30b4e3f0e0f6bdc05eb1c3335a0181')
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 zxing-cpp 3
  git apply -3 ../0002-Fix-build-with-zxing-cpp-3.patch
}

build() {
  local meson_options=(
    -D benchmarks=disabled
    -D examples=disabled
    -D glib_debug=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:androidmedia=disabled
    -D gst-plugins-bad:cuda-nvmm=disabled
    -D gst-plugins-bad:directfb=disabled
    -D gst-plugins-bad:directshow=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:lcevcdecoder=disabled
    -D gst-plugins-bad:lcevcencoder=disabled
    -D gst-plugins-bad:magicleap=disabled
    -D gst-plugins-bad:mfx_api=oneVPL
    -D gst-plugins-bad:nvcomp=disabled
    -D gst-plugins-bad:nvdswrapper=disabled
    -D gst-plugins-bad:openni2=disabled
    -D gst-plugins-bad:opensles=disabled
    -D gst-plugins-bad:qt6d3d11=disabled
    -D gst-plugins-bad:svtjpegxs=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:mpeghdec=disabled
    -D gst-plugins-bad:tflite=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/"
  )

  # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3197
  export GI_SCANNER_DISABLE_CACHE=1

  # Cargo sub-build: Use debug and LTO
  export CARGO_PROFILE_RELEASE_DEBUG=2 CARGO_PROFILE_RELEASE_STRIP=false
  export CARGO_PROFILE_RELEASE_LTO=true CARGO_PROFILE_RELEASE_CODEGEN_UNITS=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 CK_TIMEOUT_MULTIPLIER=5
  export NO_AT_BRIDGE=1 GTK_A11Y=none

  # Flaky due to timeouts
  xvfb-run -s "-nolisten local" \
    meson test -C build --print-errorlogs -t $CK_TIMEOUT_MULTIPLIER
)

_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=(
    glib2
    glibc
    libcap
    libelf
    libgcc
    libunwind
  )
  optdepends=("python: gst-plugins-doc-cache-generator")
  conflicts=('gstreamer-vaapi<=1.26.10-5')
  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
    usr/share/cmake/FindGStreamer.cmake
  ); _install
}

package_gst-plugins-bad-libs() {
  pkgdesc+=" - bad"
  depends=(
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    libdrm
    libgcc
    libglvnd
    libgudev
    libnice
    libstdc++
    libusb
    libva
    libx11
    libxcb
    libxkbcommon
    libxkbcommon-x11
    mesa
    orc
    vulkan-icd-loader
    wayland
    vmaf
    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/libgsttensordecoders.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/libgstvmaf.so
    usr/lib/gstreamer-1.0/libgstvmnc.so
    usr/lib/gstreamer-1.0/libgstvulkan.so
    usr/lib/gstreamer-1.0/libgstwaylandsink.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
    graphene
    iso-codes
    libdrm
    libglvnd
    libgudev
    libjpeg-turbo
    libpng
    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/libgstopengl.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
    libgcc
    libogg
    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/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
    gdk-pixbuf2
    glib2
    glibc
    lame
    libavc1394
    libcaca
    libdv
    libgcc
    libgudev
    libiec61883
    libjpeg-turbo
    libpng
    libpulse
    libraw1394
    libshout
    libsoup3
    libstdc++
    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/libgsty4m.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
    glib2
    glibc
    gsm
    imath
    json-glib
    lcms2
    libass
    libavtp
    libbs2b
    libdc1394
    libdca
    libde265
    libdvdnav
    libdvdread
    libfdk-aac
    libfreeaptx
    libgcc
    libgme
    liblc3
    libldac
    liblrdf
    libltc
    libmicrodns
    libmodplug
    libmpcdec
    libopenmpt
    librsvg
    libsndfile
    libsrtp
    libstdc++
    libwebp
    libxml2
    lilv
    mjpegtools
    neon
    nettle
    openal
    openexr
    openh264
    openjpeg2
    openssl
    opus
    pango
    qrencode
    rtmpdump
    sbc
    soundtouch
    spandsp
    srt
    svt-av1
    svt-hevc
    webrtc-audio-processing-1
    wildmidi
    x265
    zbar
    zvbi
    zxing-cpp
  )
  optdepends=(
    'gst-plugin-gtk: gtk plugin'
    'gst-plugin-hip: hip plugin and library'
    'gst-plugin-msdk: msdk plugin'
    'gst-plugin-onnx: onnx plugin'
    'gst-plugin-opencv: opencv plugin and library'
    'gst-plugin-qml6: qml6 plugin'
    'gst-plugin-qmlgl: qmlgl plugin'
    'gst-plugin-qsv: qsv plugin'
    'gst-plugin-va: va plugin'
    'gst-plugin-wpe: wpe plugin'
  )

  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/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-plugins-ugly() {
  pkgdesc+=" - ugly plugins"
  depends=(
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    a52dec
    glib2
    glibc
    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-$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-hip() {
  pkgdesc+=" - hip plugin and library"
  depends=(
    "gst-plugins-bad-libs=$pkgver-$pkgrel"
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    libdrm
    libgcc
    libgudev
    libstdc++
    libx11
    mesa
    orc
    wayland
  )

  cd root; local files=(
    usr/include/gstreamer-1.0/gst/hip
    usr/lib/libgsthip.so*
    usr/lib/pkgconfig/gstreamer-hip{,-gl}-1.0.pc
    usr/lib/girepository-1.0/GstHip{,GL}-1.0.typelib
    usr/share/gir-1.0/GstHip{,GL}-1.0.gir

    usr/lib/gstreamer-1.0/libgsthip.so
  ); _install
}

package_gst-plugin-msdk() {
  pkgdesc+=" - msdk plugin"
  depends=(
    "gst-plugins-bad-libs=$pkgver-$pkgrel"
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    libdrm
    libgudev
    libva
    libvpl
  )

  cd root; local files=(
    usr/lib/gstreamer-1.0/libgstmsdk.so
  ); _install
}

package_gst-plugin-onnx() {
  pkgdesc+=" - onnx plugin"
  depends=(
    "gst-plugins-bad-libs=$pkgver-$pkgrel"
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    onnxruntime
  )

  cd root; local files=(
    usr/lib/gstreamer-1.0/libgstonnx.so
  ); _install
}

package_gst-plugin-opencv() {
  pkgdesc+=" - opencv plugin and library"
  depends=(
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    libgcc
    libstdc++
    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"
    glib2
    glibc
    libgcc
    libglvnd
    libstdc++
    qt6-base
    qt6-declarative
  )

  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"
    glib2
    glibc
    libgcc
    libglvnd
    libstdc++
    qt5-base
    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-$pkgrel"
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    libgcc
    libstdc++
  )
  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-$pkgrel"
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    libgudev
    libva
  )
  replaces=('gstreamer-vaapi<=1.26.10-5')

  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"
    glib2
    glibc
    libgcc
    libstdc++
    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-plugin-wpe2() {
  pkgdesc+=" - wpe2 plugin"
  depends=(
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    libgcc
    libglvnd
    libstdc++
    libxkbcommon
    wpewebkit
  )

  cd root; local files=(
    usr/lib/gstreamer-1.0/libgstwpe2.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
    libgcc
    python
    python-cairo
    python-commonmark
    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

    usr/bin/gst-dots-viewer
  ); _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/gstreamer-1.0/python/gesotioformatter.py

    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_gst-python() {
  pkgdesc+=" - python plugin"
  depends=(
    "gst-plugins-base-libs=$pkgver-$pkgrel"
    "gstreamer=$pkgver-$pkgrel"
    glib2
    glibc
    python
    python-gobject
    python-typing_extensions
  )
  optdepends=("gst-plugins-bad-libs: GstAnalytics support")

  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: