extra/gstreamer to 1.22.3-4

This commit is contained in:
Kevin Mihelich 2023-06-03 18:23:44 +00:00
parent 00bc85f833
commit 2e7b70ef86
5 changed files with 79 additions and 193 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 eb05471af7f2..1d97a018fc00 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 25898b4c9607..fa6c4285af9c 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 dd04729188b6..f5302bf20837 100644
--- a/subprojects/gstreamer-vaapi/meson.build
+++ b/subprojects/gstreamer-vaapi/meson.build
@@ -219,7 +219,6 @@ plugins = []

View file

@ -1,24 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
Date: Fri, 3 Mar 2023 18:40:22 +0000
Subject: [PATCH] imagesequencesrc: Properly set default location
Noticed this because the generic_states test kept segfaulting at random.
GLibC 2.37 can crash when NULL is supplied as a format string.
---
.../gst-plugins-good/gst/multifile/gstimagesequencesrc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/subprojects/gst-plugins-good/gst/multifile/gstimagesequencesrc.c b/subprojects/gst-plugins-good/gst/multifile/gstimagesequencesrc.c
index 8581e73e3a94..3d59ec74a7c9 100644
--- a/subprojects/gst-plugins-good/gst/multifile/gstimagesequencesrc.c
+++ b/subprojects/gst-plugins-good/gst/multifile/gstimagesequencesrc.c
@@ -356,7 +356,7 @@ gst_image_sequence_src_init (GstImageSequenceSrc * self)
self->start_index = DEFAULT_START_INDEX;
self->index = 0;
self->stop_index = DEFAULT_STOP_INDEX;
- self->path = NULL;
+ self->path = g_strdup (DEFAULT_LOCATION);
self->caps = NULL;
self->n_frames = 0;
self->fps_n = 30;

View file

@ -1,80 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
Date: Mon, 10 Apr 2023 16:06:19 +0200
Subject: [PATCH] tests: allocators: Fix fdmem test with recent GLib
The test failed with recent GLib, where `g_close` emits a critical
warning on EBADF. Remove the `g_close` check from `test_fdmem` and add
another version that tests `GST_FD_MEMORY_FLAG_DONT_CLOSE`.
We will depend on the Valgrind test run to warn us about leaked FDs.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2480
---
.../tests/check/libs/allocators.c | 39 ++++++++++++++++++-
1 file changed, 38 insertions(+), 1 deletion(-)
diff --git a/subprojects/gst-plugins-base/tests/check/libs/allocators.c b/subprojects/gst-plugins-base/tests/check/libs/allocators.c
index 6b974b2900e9..c8ee75bcdbe3 100644
--- a/subprojects/gst-plugins-base/tests/check/libs/allocators.c
+++ b/subprojects/gst-plugins-base/tests/check/libs/allocators.c
@@ -95,21 +95,58 @@ GST_START_TEST (test_fdmem)
gst_memory_unmap (mem, &info);
gst_memory_unref (mem);
- fail_unless (g_close (fd, NULL) == 0);
+ gst_object_unref (alloc);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_fdmem_dont_close)
+{
+ GstAllocator *alloc;
+ GstMemory *mem;
+ GstMapInfo info;
+ GError *error = NULL;
+ int fd;
+ const char *data = "0123456789";
+
+ fd = g_file_open_tmp (NULL, NULL, &error);
+ fail_if (error);
+ fail_unless (write (fd, data, 10) == 10);
+
+ alloc = gst_fd_allocator_new ();
+ fail_unless (alloc);
+ mem = gst_fd_allocator_alloc (alloc, fd, 10,
+ GST_FD_MEMORY_FLAG_KEEP_MAPPED | GST_FD_MEMORY_FLAG_DONT_CLOSE);
+
+ fail_unless (gst_memory_map (mem, &info, GST_MAP_READ));
+ fail_unless (info.data[5] == '5');
+ gst_memory_unmap (mem, &info);
+
+ fail_unless (gst_memory_map (mem, &info, GST_MAP_WRITE));
+ info.data[5] = 'X';
+ gst_memory_unmap (mem, &info);
+
+ fail_unless (gst_memory_map (mem, &info, GST_MAP_READ));
+ fail_unless (info.data[5] == 'X');
+ gst_memory_unmap (mem, &info);
+
+ gst_memory_unref (mem);
+ fail_unless (g_close (fd, NULL));
gst_object_unref (alloc);
}
GST_END_TEST;
static Suite *
allocators_suite (void)
{
Suite *s = suite_create ("allocators");
TCase *tc_chain = tcase_create ("general");
suite_add_tcase (s, tc_chain);
tcase_add_test (tc_chain, test_dmabuf);
tcase_add_test (tc_chain, test_fdmem);
+ tcase_add_test (tc_chain, test_fdmem_dont_close);
return s;
}

View file

@ -31,8 +31,8 @@ pkgname=(
gst-python
gstreamer-docs
)
pkgver=1.22.2
pkgrel=1
pkgver=1.22.3
pkgrel=4
pkgdesc="Multimedia graph framework"
url="https://gstreamer.freedesktop.org/"
arch=(x86_64)
@ -65,7 +65,7 @@ makedepends=(
qrencode json-glib libva libxkbcommon-x11
# gst-plugins-ugly
a52dec opencore-amr libcdio libdvdread libmpeg2 libsidplay x264
a52dec opencore-amr libcdio libdvdread libmpeg2 x264
# gst-libav
ffmpeg
@ -81,30 +81,20 @@ 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-imagesequencesrc-Properly-set-default-location.patch
0003-tests-allocators-Fix-fdmem-test-with-recent-GLib.patch
)
b2sums=('SKIP'
'7156bcd222dd35d063711cafb86bb944cdd493362c945be57192be32987604f6bb1981c39c73f130347a108398907063cc7286f7d25950a0eeaa55c367888956'
'bd4904155e0ee341e6216b7e5ea046d5f91f962151898361e874dfb423b59c1725c8227fcd4b4f80f9d1b9b0bbc84a56564307d15ec21debfc794cdb149605d1'
'SKIP'
'9437da39122a15e6501a325193bce135b2706de72f6dd0133120b70ad1b05b8b0191aae4d740430ddfb9787164930cb184afa57ebd0b431edd9452317661d2e5'
'fd5bfeaf5a08f225bfb81df1beac55c3d7332aa4ffb1ba0a3e662dccea6b5ca43eecee92578c54d2fc1e3aa2edc73eb09a02e9c0a8ac3ad2002995a6a0396fa2'
'8ba563a47ef4aa063b244f0e2ca8be2aee2d61174bdd4affa86979131ef8862d44da0f1be2a965482fbe1a8bbaee5d8103fc6644806a78e2d977e3fd0e46ed23')
validpgpkeys=(D637032E45B8C6585B9456565D2EEE6F6F349D7C) # Tim Müller <tim@gstreamer-foundation.org>
'e5cd29c707db1b24798a92ba568c30c996550c5072565ee2ad44a6319a0af17ff08dd1268acb56549772676809478143dd59fa818275a2a5b4a2def159ff7b8c')
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 crash
# https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4109
git apply -3 ../0002-imagesequencesrc-Properly-set-default-location.patch
# Fix fdmem test
# https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4381
git apply -3 ../0003-tests-allocators-Fix-fdmem-test-with-recent-GLib.patch
}
build() {
@ -159,6 +149,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
)
@ -633,7 +624,7 @@ package_gst-plugins-ugly() {
pkgdesc+=" - ugly plugins"
depends=(
"gst-plugins-base-libs=$pkgver"
libdvdread libmpeg2 a52dec libsidplay libcdio x264 opencore-amr
libdvdread libmpeg2 a52dec libcdio x264 opencore-amr
)
cd root; local files=(
@ -647,7 +638,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

View file

@ -11,71 +11,71 @@ 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
@ -98,5 +98,5 @@ Bbb+Wh7sFf0Ew6NVgOGq8NUUh924NkkrHfPoO7dIe2lqvUxhk+r+IsPPu0sV87/w
AToBuDG4WeBnlExzycQVaLbrPkI+QmBR1BAYPdiHCLr/lSmlyepxO7fldq+x/ak+
dwa5kqMJoKxxeIzqJyF/Unuv1N5lUDsph6WOpuaB/rKlpHbJWiZ1JWmM1KC4Fol+
JCL/cyRfp0xaKjSQSMmLwnN0VnUlEDpqB3qi
=RWcd
=5zjV
-----END PGP PUBLIC KEY BLOCK-----