* update gstreamer to 1.22.5-1

This commit is contained in:
Alexander Baldeck 2023-08-10 15:26:45 +02:00
parent 2ff8ff0931
commit 2aa1d55903
3 changed files with 213 additions and 72 deletions

View File

@ -12,7 +12,7 @@ Subject: [PATCH] HACK: meson: Disable broken tests
5 files changed, 5 deletions(-)
diff --git a/subprojects/gst-editing-services/meson.build b/subprojects/gst-editing-services/meson.build
index 89078bbd7a3b..5745256d3b2f 100644
index 48c6fed5fc2e..35714bee4a66 100644
--- a/subprojects/gst-editing-services/meson.build
+++ b/subprojects/gst-editing-services/meson.build
@@ -270,7 +270,6 @@ subdir('ges')
@ -36,7 +36,7 @@ index 53a8e634e41a..f270c1d11bfb 100644
tcase_add_test (tc_chain, test_video_caps_change_streamable);
tcase_add_test (tc_chain, test_audio_caps_change_streamable_single);
diff --git a/subprojects/gst-python/meson.build b/subprojects/gst-python/meson.build
index 9f35ee5a4a16..6698e392b72c 100644
index 4c41baad2fc8..8a91267fc8fe 100644
--- a/subprojects/gst-python/meson.build
+++ b/subprojects/gst-python/meson.build
@@ -107,5 +107,4 @@ if not get_option('plugin').disabled()
@ -58,7 +58,7 @@ index 229af32f8117..b9372c125d77 100644
'gst/sessionpool',
'gst/stream',
diff --git a/subprojects/gstreamer-vaapi/meson.build b/subprojects/gstreamer-vaapi/meson.build
index 8fef4f81e833..16d96d6a4ed6 100644
index 654b7e3fd2be..035e8e2c1cf0 100644
--- a/subprojects/gstreamer-vaapi/meson.build
+++ b/subprojects/gstreamer-vaapi/meson.build
@@ -219,7 +219,6 @@ plugins = []

View File

@ -25,7 +25,7 @@ pkgname=(
gstreamer-docs
)
[ "${CARCH}" == 'x86_64' ] && pkgname+=(gst-plugin-msdk gst-plugin-qsv)
pkgver=1.22.4
pkgver=1.22.5
pkgrel=1
pkgdesc="Multimedia graph framework"
url="https://gstreamer.freedesktop.org/"
@ -36,29 +36,29 @@ makedepends=(
git meson
# gstreamer
valgrind libunwind gobject-introspection bash-completion gtk3 libcap python
bash-completion gobject-introspection gtk3 libcap libunwind python valgrind
# gst-plugins-base
cdparanoia graphene opus libtheora libxv sdl2 qt5-base qt5-tools zlib libglvnd
wayland wayland-protocols libx11 libgudev libdrm mesa orc libxi
cdparanoia graphene libdrm libglvnd libgudev libtheora libx11 libxi libxv mesa
opus orc qt5-base qt5-tools sdl2 wayland wayland-protocols zlib
# gst-plugins-good
v4l-utils aalib flac jack2 lame libcaca libdv mpg123 libraw1394
libavc1394 libiec61883 qt5-declarative qt5-x11extras qt5-wayland libpulse
libshout taglib twolame libvpx wavpack cairo libsoup3 qt6-declarative
qt6-wayland qt6-tools nettle libsoup
aalib cairo flac jack2 lame libavc1394 libcaca libdv libiec61883 libpulse
libraw1394 libshout libsoup3 libvpx mpg123 nettle qt5-declarative
qt5-wayland qt5-x11extras qt6-declarative qt6-tools qt6-wayland taglib twolame
v4l-utils wavpack
# gst-plugins-bad
opencv vulkan-icd-loader vulkan-headers vulkan-validation-layers shaderc
libltc bluez-libs libavtp libbs2b bzip2 chromaprint libdca faac faad2
libfdk-aac fluidsynth libgme libkate liblrdf ladspa libde265 lilv libmodplug
lv2 libmicrodns mjpegtools libmpcdec neon openal libdvdnav rtmpdump sbc
soundtouch spandsp libsrtp zvbi libnice webrtc-audio-processing wildmidi
zxing-cpp zbar libxml2 gsm libopenmpt wpewebkit libfreeaptx qrencode
json-glib libva libxkbcommon-x11 gupnp-igd
bluez-libs bzip2 chromaprint faac faad2 fluidsynth gsm json-glib ladspa
libavtp libbs2b libdca libde265 libdvdnav libfdk-aac libfreeaptx libgme
libkate liblrdf libltc libmicrodns libmodplug libmpcdec libnice
libopenmpt libsrtp libva libxkbcommon-x11 libxml2 lilv lv2 mjpegtools neon
openal opencv qrencode rtmpdump sbc shaderc soundtouch spandsp
vulkan-headers vulkan-icd-loader vulkan-validation-layers
webrtc-audio-processing wildmidi wpewebkit zbar zvbi zxing-cpp
# gst-plugins-ugly
a52dec opencore-amr libcdio libdvdread libmpeg2 libsidplay x264
a52dec libcdio libdvdread libmpeg2 opencore-amr x264
# gst-libav
ffmpeg
@ -73,23 +73,29 @@ makedepends_powerpc64le=(libldac)
makedepends_riscv64=(libldac)
makedepends_x86_64=(libldac nasm svt-hevc)
checkdepends=(xorg-server-xvfb)
options=(!distcc)
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-qt-Unbreak-build-with-qt-egl-enabled-but-viv_fb-miss.patch
)
b2sums=('SKIP'
'17360d92e2bb37b26fbe49016bbfaece839ef02c4ebf6e7ef24aff9f1e85929cab6380177df3276a792532a32a87724353cb197d6329fd2d89ed247f5924b141'
'c35189d49f6091392ac368c848dfca47b185420f850c77ef145c8a9275123c920d5098ba7e75d302e5f278a8fd12197fd625c4aa755c9c17a98f595a533b78a8'
'SKIP'
'9437da39122a15e6501a325193bce135b2706de72f6dd0133120b70ad1b05b8b0191aae4d740430ddfb9787164930cb184afa57ebd0b431edd9452317661d2e5')
validpgpkeys=(D637032E45B8C6585B9456565D2EEE6F6F349D7C) # Tim Müller <tim@gstreamer-foundation.org>
'c64482a040ada8c2ba6433b6d9aa8619e53866b2d9b512cc91dff2e32d6c405339ec22e909dbce197595521c014b1bdad661e92b9d092f8e14c51c9cde7a74da'
'829686c230d75bf4124366162c754ddc37d7ed49fb797e504ca5cf3e9a5db621d15911d9c8db3439348f442fb873c1c3e29683cfe9f47c1a0b00e7e48c4db21f')
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
# Unbreak qt-egl build
git apply -3 ../0002-qt-Unbreak-build-with-qt-egl-enabled-but-viv_fb-miss.patch
}
build() {
@ -103,7 +109,7 @@ build() {
-D gst-examples=disabled
-D libnice=disabled
-D orc-source=system
-D package-origin="https://archlinuxpower.org/"
-D package-origin="https://www.archlinuxpower.org/"
-D vaapi=enabled
# Package names
@ -141,6 +147,7 @@ build() {
-D gst-plugins-bad:wasapi=disabled
-D gst-plugins-bad:wic=disabled
-D gst-plugins-bad:win32ipc=disabled
-D gst-plugins-ugly:sidplay=disabled
-D gst-editing-services:validate=disabled
)
@ -161,7 +168,7 @@ build() {
) ;;
esac
arch-meson gstreamer build --wrap-mode=default "${meson_options[@]}" #FIXME: libnice is required but can't use system's
arch-meson gstreamer build "${meson_options[@]}"
meson configure build # Print config
meson compile -C build
}
@ -186,7 +193,9 @@ _install() {
package_gstreamer() {
pkgdesc+=" - core"
depends=(libxml2 glib2 libunwind libcap libelf)
depends=(
glib2 libcap libelf libunwind libxml2
)
optdepends=('python: gst-plugins-doc-cache-generator')
install=gstreamer.install
@ -225,7 +234,7 @@ package_gst-plugins-bad-libs() {
pkgdesc+=" - bad"
depends=(
"gst-plugins-base-libs=$pkgver"
orc libdrm libx11 libgudev libusb libxkbcommon-x11 libva libnice
libdrm libgudev libnice libusb libva libx11 libxkbcommon-x11 orc
vulkan-icd-loader wayland wayland-protocols
)
@ -331,7 +340,7 @@ package_gst-plugins-base-libs() {
pkgdesc+=" - base"
depends=(
"gstreamer=$pkgver"
orc libxv iso-codes libgudev libgl mesa libxi wayland
iso-codes libgl libgudev libxi libxv mesa orc wayland
)
cd root; local files=(
@ -380,7 +389,7 @@ package_gst-plugins-base() {
pkgdesc+=" - base plugins"
depends=(
"gst-plugins-base-libs=$pkgver"
alsa-lib cdparanoia libvorbis libtheora pango opus graphene libpng libjpeg
alsa-lib cdparanoia graphene libjpeg libpng libtheora libvorbis opus pango
)
cd root; local files=(
@ -399,9 +408,9 @@ package_gst-plugins-good() {
pkgdesc+=" - good plugins"
depends=(
"gst-plugins-base-libs=$pkgver"
libpulse libsoup3 gst-plugins-base-libs wavpack aalib taglib libdv libshout
libvpx gdk-pixbuf2 libcaca libavc1394 libiec61883 libxdamage v4l-utils cairo
libgudev speex flac libraw1394 lame mpg123 twolame nettle
aalib cairo flac gdk-pixbuf2 gst-plugins-base-libs lame libavc1394 libcaca
libdv libgudev libiec61883 libpulse libraw1394 libshout libsoup3 libvpx
libxdamage mpg123 nettle speex taglib twolame v4l-utils wavpack
libjack.so
)
@ -490,13 +499,13 @@ package_gst-plugins-bad() {
pkgdesc+=" - bad plugins"
depends=(
"gst-plugins-bad-libs=$pkgver"
aom libass libbs2b bzip2 chromaprint pango lcms2 curl libxml2 libdc1394
libde265 openssl libdca faac faad2 libfdk-aac fluidsynth libgme nettle
libkate liblrdf lilv libmodplug mjpegtools libmpcdec neon openal openexr
openjpeg2 opus libdvdnav libdvdread librsvg rtmpdump sbc libsndfile libltc
soundtouch spandsp srt libsrtp zvbi libwebp webrtc-audio-processing wildmidi
x265 zbar gsm libopenmpt libfreeaptx qrencode json-glib libavtp
libmicrodns zxing-cpp
aom bzip2 chromaprint curl faac faad2 fluidsynth gsm json-glib lcms2 libass
libavtp libbs2b libdc1394 libdca libde265 libdvdnav libdvdread libfdk-aac
libfreeaptx libgme libkate 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 webrtc-audio-processing
wildmidi x265 zbar zvbi zxing-cpp
)
depends_powerpc64le=(libldac)
depends_riscv64=(libldac)
@ -563,23 +572,28 @@ package_gst-plugins-bad() {
usr/lib/gstreamer-1.0/libgstzbar.so
usr/lib/gstreamer-1.0/libgstzxing.so
);
case "${CARCH}" in
powerpc64le|riscv64)
files+=(usr/lib/gstreamer-1.0/libgstldac.so)
;;
x86_64)
files+=(
usr/lib/gstreamer-1.0/libgstldac.so
usr/lib/gstreamer-1.0/libgstsvthevcenc.so
)
;;
esac
_install
case "${CARCH}" in
powerpc64le|riscv64)
files+=(usr/lib/gstreamer-1.0/libgstldac.so)
;;
x86_64)
files+=(
usr/lib/gstreamer-1.0/libgstldac.so
usr/lib/gstreamer-1.0/libgstsvthevcenc.so
)
;;
esac
_install
}
package_gst-plugin-gtk() {
pkgdesc+=" - gtk plugin"
depends=("gst-plugins-bad-libs=$pkgver" gtk3)
depends=(
"gst-plugins-bad-libs=$pkgver"
gtk3
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstgtk.so
@ -589,7 +603,10 @@ package_gst-plugin-gtk() {
package_gst-plugin-msdk() {
pkgdesc+=" - msdk plugin"
depends=("gst-plugins-bad-libs=$pkgver" libmfx)
depends=(
"gst-plugins-bad-libs=$pkgver"
libmfx
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstmsdk.so
@ -598,7 +615,10 @@ package_gst-plugin-msdk() {
package_gst-plugin-opencv() {
pkgdesc+=" - opencv plugin"
depends=("gst-plugins-base-libs=$pkgver" opencv)
depends=(
"gst-plugins-base-libs=$pkgver"
opencv
)
cd root; local files=(
usr/include/gstreamer-1.0/gst/opencv
@ -624,7 +644,7 @@ package_gst-plugin-qmlgl() {
pkgdesc+=" - qmlgl plugin"
depends=(
"gst-plugins-base-libs=$pkgver"
qt5-declarative qt5-x11extras qt5-wayland
qt5-declarative qt5-wayland qt5-x11extras
)
cd root; local files=(
@ -634,7 +654,10 @@ package_gst-plugin-qmlgl() {
package_gst-plugin-qsv() {
pkgdesc+=" - qsv plugin"
depends=("gst-plugins-bad-libs=$pkgver" libmfx)
depends=(
"gst-plugins-bad-libs=$pkgver"
libmfx
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstqsv.so
@ -653,7 +676,10 @@ package_gst-plugin-va() {
package_gst-plugin-wpe() {
pkgdesc+=" - wpe plugin"
depends=("gst-plugins-base-libs=$pkgver" wpewebkit)
depends=(
"gst-plugins-base-libs=$pkgver"
wpewebkit
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstwpe.so
@ -665,7 +691,7 @@ package_gst-plugins-ugly() {
pkgdesc+=" - ugly plugins"
depends=(
"gst-plugins-base-libs=$pkgver"
libdvdread libmpeg2 a52dec libsidplay libcdio x264 opencore-amr
a52dec libcdio libdvdread libmpeg2 opencore-amr x264
)
cd root; local files=(
@ -679,7 +705,6 @@ package_gst-plugins-ugly() {
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/libgstsid.so
usr/lib/gstreamer-1.0/libgstx264.so
usr/share/gstreamer-1.0/presets/Gst{Amrnb,X264}Enc.prs
@ -690,7 +715,10 @@ package_gst-plugins-ugly() {
package_gst-libav() {
pkgdesc+=" - libav plugin"
depends=("gst-plugins-base-libs=$pkgver" bzip2 ffmpeg)
depends=(
"gst-plugins-base-libs=$pkgver"
bzip2 ffmpeg
)
provides=("gst-ffmpeg=$pkgver")
cd root; local files=(
@ -715,7 +743,10 @@ package_gst-rtsp-server() {
package_gst-editing-services() {
pkgdesc+=" - editing services"
depends=("gst-plugins-base-libs=$pkgver" python)
depends=(
"gst-plugins-base-libs=$pkgver"
python
)
cd root; local files=(
usr/include/gstreamer-1.0/ges
@ -728,20 +759,21 @@ package_gst-editing-services() {
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
python -m compileall -d /usr/lib "$pkgdir/usr/lib"
python -O -m compileall -d /usr/lib "$pkgdir/usr/lib"
}
package_gstreamer-vaapi() {
pkgdesc+=" - vaapi plugin"
depends=("gst-plugins-bad-libs=$pkgver" libxrandr)
depends=(
"gst-plugins-bad-libs=$pkgver"
libxrandr
)
cd root; local files=(
usr/lib/gstreamer-1.0/libgstvaapi.so
@ -750,24 +782,31 @@ package_gstreamer-vaapi() {
package_gst-python() {
pkgdesc+=" - python plugin"
depends=("gst-plugins-base-libs=$pkgver" python-gobject)
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
python -m compileall -d /usr/lib "$pkgdir/usr/lib"
python -O -m compileall -d /usr/lib "$pkgdir/usr/lib"
}
package_gstreamer-docs() {
pkgdesc+=" - documentation"
license=(GPL3 LGPL custom:BSD custom:CC-BY-SA-4.0 custom:MIT custom:OPL)
license=(
GPL3
LGPL
custom:BSD
custom:CC-BY-SA-4.0
custom:MIT
custom:OPL
)
# make sure there are no files left to install
find root -depth ! -type d
find root -depth -print0 | xargs -0 rm -r
find root -depth -print0 | xargs -0 rmdir
cd gstreamer-docs-${pkgver%%+*}
@ -777,4 +816,4 @@ package_gstreamer-docs() {
install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 COPYING LICENSE*
}
# vim:set sw=2 sts=-1 et:
# vim:set sw=2 sts=-1 et tw=80:

View File

@ -0,0 +1,102 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
JCL/cyRfp0xaKjSQSMmLwnN0VnUlEDpqB3qi
=5zjV
-----END PGP PUBLIC KEY BLOCK-----