summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--user/gst-plugins-bad/APKBUILD19
-rw-r--r--user/gst-plugins-bad/disable-failing-test.patch59
-rw-r--r--user/gst-plugins-bad/fix-arm-parser-alignment.patch32
-rw-r--r--user/gst-plugins-bad/fix-arm-test-alignment.patch35
-rw-r--r--user/gst-plugins-bad/mpegts.patch120
-rw-r--r--user/gst-plugins-base/APKBUILD22
-rw-r--r--user/gst-plugins-base/endian.patch40
-rw-r--r--user/gst-plugins-good/APKBUILD22
-rw-r--r--user/gst-plugins-good/drop-messages-interval-type.patch29
-rw-r--r--user/gst-plugins-good/fix-arm-test-alignment.patch42
-rw-r--r--user/gst-plugins-good/flvmux-disable-flaky-test.patch15
-rw-r--r--user/gstreamer/APKBUILD25
-rw-r--r--user/gstreamer/disable-tests.patch24
-rw-r--r--user/gstreamer/test-deadlock.patch140
-rw-r--r--user/gstreamer/time64.patch60
15 files changed, 91 insertions, 593 deletions
diff --git a/user/gst-plugins-bad/APKBUILD b/user/gst-plugins-bad/APKBUILD
index b148cc811..4a6cef267 100644
--- a/user/gst-plugins-bad/APKBUILD
+++ b/user/gst-plugins-bad/APKBUILD
@@ -1,11 +1,12 @@
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=gst-plugins-bad
-pkgver=1.20.2
-pkgrel=3
+pkgver=1.26.1
+pkgrel=0
pkgdesc="GStreamer multimedia framework - Lower-quality plugins"
url="https://gstreamer.freedesktop.org/modules/gst-plugins-good.html"
arch="all"
+options="!check" # nvidious
license="LGPL-2.1+"
# rtpmanagerbad depends on rtpmanager
# symptom: tests 'rtpsrc' and 'rtpsink' will fail
@@ -19,12 +20,7 @@ makedepends="gst-plugins-base-dev gstreamer-dev gobject-introspection-dev meson
subpackages="$pkgname-dev $pkgname-lang"
ldpath="/usr/lib/gstreamer-1.0"
source="https://gstreamer.freedesktop.org/src/$pkgname/$pkgname-$pkgver.tar.xz
- camerabin.patch
curlhttpsrc.patch
- mpegts.patch
- fix-arm-test-alignment.patch
- fix-arm-parser-alignment.patch
- disable-failing-test.patch
"
build() {
@@ -45,10 +41,5 @@ package() {
DESTDIR="$pkgdir" ninja -C build install
}
-sha512sums="3f98973dc07ead745418e0a30f9f6b5c8d328e3d126f54d92c10ab5da04271768a5c5dffc36ea24ccf8fb516b1e3733be9fb18dc0db419dea4d37d17018f8a70 gst-plugins-bad-1.20.2.tar.xz
-7f6023e766895ac8213f9dabd4d8acbeb03f18c2d98fa27865e7656c439e0ea97d02f9e9f0ea98205238ddb8f6473062af524b799d1da0cbe41a3055a11df250 camerabin.patch
-d4bf36560db0e6391cfca84f928d7147bb6b170431c521e78253b29f6bccf122309e1f92e241808855dfa112b9a06e17c1b6ed4363e011a0693f82e1bfe7ea3e curlhttpsrc.patch
-d70f409f86b072d689d51b87db6e9fb161c0914a381eccbf66f1ffcd61b9a793f9e4087cdd071e615aaa63687c6ee476f023239920dd1ebd0d3cde346031dc86 mpegts.patch
-566fbdc37c9f9fb5b671ecffa2f596a95f6431668ff8dd8b91bc827a280b5fb18a8fac3122a38f060263cb3f2d2138805af1e1c324eb619188f982c8cc575221 fix-arm-test-alignment.patch
-f394b1643a5d0943e8acd7e9ee11702ce3bbfb27242f3eac140b884ce7bb5dea725ab4bb0a28cbf9d435622dcc68ea0ee0bee1c51a520787c382167dd1e43583 fix-arm-parser-alignment.patch
-3c900a5cbe3ac129172f36acd4d9ede2610ceab500515c32a380dabd2d3d3f78d26be0c9521db855d13283b5be154c9407cd6bf5ec59524305170fc2db2572cb disable-failing-test.patch"
+sha512sums="69c78970f0396c08fbddbd44e080142688fcd1ecdc0fa88709b934f6c546754904338469ceecd0f16c6a6b8585bf5faec3230426272b7eb2b63a21b9034d94db gst-plugins-bad-1.26.1.tar.xz
+d4bf36560db0e6391cfca84f928d7147bb6b170431c521e78253b29f6bccf122309e1f92e241808855dfa112b9a06e17c1b6ed4363e011a0693f82e1bfe7ea3e curlhttpsrc.patch"
diff --git a/user/gst-plugins-bad/disable-failing-test.patch b/user/gst-plugins-bad/disable-failing-test.patch
deleted file mode 100644
index b650bf519..000000000
--- a/user/gst-plugins-bad/disable-failing-test.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-This patch was modified from upstream in the following way(s):
-
-* Adjust paths so that it applies to this subproject.
-
-From 81e7bde67c7aa4de2f846db1ed619771613259da Mon Sep 17 00:00:00 2001
-From: Edward Hervey <edward@centricular.com>
-Date: Thu, 5 Sep 2024 10:08:17 +0200
-Subject: [PATCH] check: Disable failing test
-
-Test hasn't been properly fixed for several years with modern libsoup, and it
-only for the legacy adaptive demuxer.
-
-Fixes #3783
-
-Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7454>
----
- .../gst-plugins-bad/tests/check/elements/dash_mpd.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/subprojects/gst-plugins-bad/tests/check/elements/dash_mpd.c b/subprojects/gst-plugins-bad/tests/check/elements/dash_mpd.c
-index 1d347b0a54ea..91d6cc505d91 100644
---- a/tests/check/elements/dash_mpd.c
-+++ b/tests/check/elements/dash_mpd.c
-@@ -5999,6 +5999,12 @@ GST_START_TEST (dash_mpdparser_maximum_segment_duration)
-
- GST_END_TEST;
-
-+#if 0
-+/*
-+ * Test disabled due to failures with recent libsoup
-+*/
-+
-+
- /*
- * Test parsing of Perioud using @xlink:href attribute
- */
-@@ -6103,6 +6109,7 @@ GST_START_TEST (dash_mpdparser_xlink_period)
-
- GST_END_TEST;
-
-+#endif
-
- /*
- * Test parsing xsd:datetime with timezoneoffset.
-@@ -6658,8 +6665,11 @@ dash_suite (void)
- tcase_add_test (tc_simpleMPD, dash_mpdparser_various_duration_formats);
- tcase_add_test (tc_simpleMPD, dash_mpdparser_default_presentation_delay);
-
-+#if 0
-+ /* Test disabled due to failure with libsoup */
- /* tests checking xlink attributes */
- tcase_add_test (tc_simpleMPD, dash_mpdparser_xlink_period);
-+#endif
-
- /* tests checking the MPD management
- * (eg. setting active streams, obtaining attributes values)
---
-GitLab
-
diff --git a/user/gst-plugins-bad/fix-arm-parser-alignment.patch b/user/gst-plugins-bad/fix-arm-parser-alignment.patch
deleted file mode 100644
index 63715380e..000000000
--- a/user/gst-plugins-bad/fix-arm-parser-alignment.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-This patch differs from upstream in the following way(s):
-
- * Paths changed to accommodate 'builddir'
-
-From 10930661ee8ab2f43078ece482c33ca74c2440fb Mon Sep 17 00:00:00 2001
-From: Zach van Rijn <me@zv.io>
-Date: Thu, 13 Jun 2024 09:11:30 -0500
-Subject: [PATCH] pcapparse: Avoid unaligned memory access
-
-Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3602
----
- subprojects/gst-plugins-bad/gst/pcapparse/gstpcapparse.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/subprojects/gst-plugins-bad/gst/pcapparse/gstpcapparse.c b/subprojects/gst-plugins-bad/gst/pcapparse/gstpcapparse.c
-index 53e7ef6fc25..0a9c9a6063b 100644
---- a/gst/pcapparse/gstpcapparse.c
-+++ b/gst/pcapparse/gstpcapparse.c
-@@ -456,8 +456,8 @@ gst_pcap_parse_scan_frame (GstPcapParse * self,
- return FALSE;
-
- /* ip info */
-- ip_src_addr = *((guint32 *) (buf_ip + 12));
-- ip_dst_addr = *((guint32 *) (buf_ip + 16));
-+ memcpy(&ip_src_addr, buf_ip + 12, sizeof(ip_src_addr));
-+ memcpy(&ip_dst_addr, buf_ip + 16, sizeof(ip_dst_addr));
- buf_proto = buf_ip + ip_header_size;
- ip_packet_len = GUINT16_FROM_BE (*(guint16 *) (buf_ip + 2));
-
---
-GitLab
-
diff --git a/user/gst-plugins-bad/fix-arm-test-alignment.patch b/user/gst-plugins-bad/fix-arm-test-alignment.patch
deleted file mode 100644
index 1a03eafa7..000000000
--- a/user/gst-plugins-bad/fix-arm-test-alignment.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 57a1296d5913b222be87ccee1ae981b84931a7da Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
-Date: Tue, 13 Jun 2023 01:29:14 +0100
-Subject: [PATCH 2/2] asfmux: fix potentially unaligned write on 32-bit ARM
-
-Fixes #2665
----
- .../gst-plugins-bad/gst/asfmux/gstasfobjects.c | 12 ++++--------
- 1 file changed, 4 insertions(+), 8 deletions(-)
-
-diff --git a/subprojects/gst-plugins-bad/gst/asfmux/gstasfobjects.c b/subprojects/gst-plugins-bad/gst/asfmux/gstasfobjects.c
-index d9739826384..fa0f2849d17 100644
---- a/gst/asfmux/gstasfobjects.c
-+++ b/gst/asfmux/gstasfobjects.c
-@@ -311,14 +311,10 @@ gst_asf_put_time (guint8 * buf, guint64 time)
- void
- gst_asf_put_guid (guint8 * buf, Guid guid)
- {
-- guint32 *aux32 = (guint32 *) buf;
-- guint16 *aux16 = (guint16 *) & (buf[4]);
-- guint64 *aux64 = (guint64 *) & (buf[8]);
-- *aux32 = GUINT32_TO_LE (guid.v1);
-- *aux16 = GUINT16_TO_LE (guid.v2);
-- aux16 = (guint16 *) & (buf[6]);
-- *aux16 = GUINT16_TO_LE (guid.v3);
-- *aux64 = GUINT64_TO_BE (guid.v4);
-+ GST_WRITE_UINT32_LE (buf + 0, guid.v1);
-+ GST_WRITE_UINT16_LE (buf + 4, guid.v2);
-+ GST_WRITE_UINT16_LE (buf + 6, guid.v3);
-+ GST_WRITE_UINT64_BE (buf + 8, guid.v4);
- }
-
- /**
---
-GitLab
diff --git a/user/gst-plugins-bad/mpegts.patch b/user/gst-plugins-bad/mpegts.patch
deleted file mode 100644
index 1579c4e32..000000000
--- a/user/gst-plugins-bad/mpegts.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1314
-
---- gst-plugins-bad-1.20.2/gst-libs/gst/mpegts/gstmpegtsdescriptor.c.old 2022-05-02 17:29:29.000000000 -0500
-+++ gst-plugins-bad-1.20.2/gst-libs/gst/mpegts/gstmpegtsdescriptor.c 2022-07-02 23:19:51.027302943 -0500
-@@ -296,7 +296,7 @@
- dvb_text_from_utf8 (const gchar * text, gsize * out_size)
- {
- GError *error = NULL;
-- gchar *out_text;
-+ gchar *out_text = NULL;
- guint8 *out_buffer;
- guint encoding;
- GIConv giconv = (GIConv) - 1;
-@@ -304,7 +304,8 @@
- /* We test character maps one-by-one. Start with the default */
- encoding = _ICONV_ISO6937;
- giconv = _get_iconv (_ICONV_UTF8, encoding);
-- out_text = g_convert_with_iconv (text, -1, giconv, NULL, out_size, &error);
-+ if (giconv != (GIConv) - 1)
-+ out_text = g_convert_with_iconv (text, -1, giconv, NULL, out_size, &error);
-
- if (out_text) {
- GST_DEBUG ("Using default ISO6937 encoding");
---- gst-plugins-bad-1.20.2/tests/check/libs/mpegts.c.old 2022-05-02 17:29:29.000000000 -0500
-+++ gst-plugins-bad-1.20.2/tests/check/libs/mpegts.c 2022-07-02 23:41:27.379013955 -0500
-@@ -71,6 +71,14 @@
- 0xc0, 0x00, 0xc4, 0x86, 0x56, 0xa5
- };
-
-+static gboolean
-+_has_iso6937_iconv (void)
-+{
-+ GIConv test = (GIConv) - 1;
-+ test = g_iconv_open("iso6937", "utf-8");
-+ return (test != (GIConv) - 1);
-+}
-+
- GST_START_TEST (test_scte_sit)
- {
- GstMpegtsSCTESIT *sit;
-@@ -397,11 +405,12 @@
-
- fail_if (data == NULL);
-
-- for (i = 0; i < data_size; i++) {
-- if (data[i] != nit_data_check[i])
-- fail ("0x%X != 0x%X in byte %d of NIT section", data[i],
-- nit_data_check[i], i);
-- }
-+ if (_has_iso6937_iconv())
-+ for (i = 0; i < data_size; i++) {
-+ if (data[i] != nit_data_check[i])
-+ fail ("0x%X != 0x%X in byte %d of NIT section", data[i],
-+ nit_data_check[i], i);
-+ }
-
- /* Check assertion on bad CRC. Reset parsed data, and make the CRC corrupt */
- nit_section->data[nit_section->section_length - 1]++;
-@@ -486,11 +495,12 @@
-
- fail_if (data == NULL);
-
-- for (i = 0; i < data_size; i++) {
-- if (data[i] != sdt_data_check[i])
-- fail ("0x%X != 0x%X in byte %d of SDT section", data[i],
-- sdt_data_check[i], i);
-- }
-+ if (_has_iso6937_iconv())
-+ for (i = 0; i < data_size; i++) {
-+ if (data[i] != sdt_data_check[i])
-+ fail ("0x%X != 0x%X in byte %d of SDT section", data[i],
-+ sdt_data_check[i], i);
-+ }
-
- /* Check assertion on bad CRC. Reset parsed data, and make the CRC corrupt */
- sdt_section->data[sdt_section->section_length - 1]++;
-@@ -594,14 +604,15 @@
- /* Check creation of descriptor */
- desc = gst_mpegts_descriptor_from_dvb_network_name ("Name");
- fail_if (desc == NULL);
-- fail_unless (desc->length == 4);
-+ if (_has_iso6937_iconv()) fail_unless (desc->length == 4);
- fail_unless (desc->tag == 0x40);
-
-- for (i = 0; i < 6; i++) {
-- if (desc->data[i] != network_name_descriptor[i])
-- fail ("0x%X != 0x%X in byte %d of network name descriptor",
-- desc->data[i], network_name_descriptor[i], i);
-- }
-+ if (_has_iso6937_iconv())
-+ for (i = 0; i < 6; i++) {
-+ if (desc->data[i] != network_name_descriptor[i])
-+ fail ("0x%X != 0x%X in byte %d of network name descriptor",
-+ desc->data[i], network_name_descriptor[i], i);
-+ }
-
- /* Check parsing of descriptor */
- ret = gst_mpegts_descriptor_parse_dvb_network_name (desc, &string);
-@@ -623,14 +634,15 @@
- desc = gst_mpegts_descriptor_from_dvb_service
- (GST_DVB_SERVICE_DIGITAL_TELEVISION, "Name", "Provider");
- fail_if (desc == NULL);
-- fail_unless (desc->length == 15);
-+ if (_has_iso6937_iconv()) fail_unless (desc->length == 15);
- fail_unless (desc->tag == 0x48);
-
-- for (i = 0; i < 17; i++) {
-- if (desc->data[i] != service_descriptor[i])
-- fail ("0x%X != 0x%X in byte %d of service descriptor",
-- desc->data[i], service_descriptor[i], i);
-- }
-+ if (_has_iso6937_iconv())
-+ for (i = 0; i < 17; i++) {
-+ if (desc->data[i] != service_descriptor[i])
-+ fail ("0x%X != 0x%X in byte %d of service descriptor",
-+ desc->data[i], service_descriptor[i], i);
-+ }
-
- /* Check parsing of descriptor with data */
- ret = gst_mpegts_descriptor_parse_dvb_service
diff --git a/user/gst-plugins-base/APKBUILD b/user/gst-plugins-base/APKBUILD
index 6a89cb469..9aa2afd80 100644
--- a/user/gst-plugins-base/APKBUILD
+++ b/user/gst-plugins-base/APKBUILD
@@ -1,11 +1,10 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=gst-plugins-base
-pkgver=1.20.1
-pkgrel=1
+pkgver=1.26.1
+pkgrel=0
pkgdesc="GStreamer multimedia framework - Base plugins"
url="https://gstreamer.freedesktop.org/"
arch="all"
-options="!check" # fails overlaycomposition on ppc64
license="GPL LGPL"
depends=""
makedepends="alsa-lib-dev cdparanoia-dev expat-dev glib-dev iso-codes-dev
@@ -15,27 +14,30 @@ makedepends="alsa-lib-dev cdparanoia-dev expat-dev glib-dev iso-codes-dev
orc-compiler orc-dev pango-dev wayland-dev wayland-protocols
!gst-plugins-base"
subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
-source="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-$pkgver.tar.xz"
+source="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-$pkgver.tar.xz
+ endian.patch
+ "
ldpath="/usr/lib/gstreamer-1.0"
build() {
- meson \
+ meson setup \
--wrap-mode=nofallback \
-Dprefix=/usr \
-Dintrospection=enabled \
-Dnls=enabled \
-Dpackage-name="GStreamer Base Plugins (${DISTRO_NAME:-Adélie Linux})" \
-Dpackage-origin="${DISTRO_URL:-https://www.adelielinux.org/}" \
- _build
- ninja -C _build
+ build
+ meson compile -C build
}
check() {
- ninja -C _build test
+ meson test -C build
}
package() {
- DESTDIR="$pkgdir" ninja -C _build install
+ DESTDIR="$pkgdir" meson install -C build
}
-sha512sums="679a0eee1973fa9612e2e24978e2c2d9d8fdc5732e1699b4a87712881f1549d0811719a13ff4fe77b91322ca4425c39623b371703f6b3a36fb7238b977d3e541 gst-plugins-base-1.20.1.tar.xz"
+sha512sums="b0c491755856af37fd8416af57b782ba04cfdf4298947a521ece90b4723fcf331199f428c74fafb37b3094a8172a0d409d20079544f7424fd6c089574313e296 gst-plugins-base-1.26.1.tar.xz
+b44763d6b380bb51d246b64019078ee621a2d64a00f29f12039fd52aafd1c24e204350ea5c967c2fecb298075f6e45f62d16c3116d20aca8da557ace84ba0744 endian.patch"
diff --git a/user/gst-plugins-base/endian.patch b/user/gst-plugins-base/endian.patch
new file mode 100644
index 000000000..ed06e7c7f
--- /dev/null
+++ b/user/gst-plugins-base/endian.patch
@@ -0,0 +1,40 @@
+--- gst-plugins-base-1.26.1/gst/videoconvertscale/gstvideoconvertscale.c.old 2025-04-24 14:20:14.000000000 -0500
++++ gst-plugins-base-1.26.1/gst/videoconvertscale/gstvideoconvertscale.c 2025-05-11 14:05:05.042191384 -0500
+@@ -1407,8 +1407,13 @@
+ g_return_val_if_fail (gst_value_is_fixed (from_par), othercaps);
+
+ gst_video_convert_scale_get_fraction (from_par, &from_par_n, &from_par_d);
+- gst_structure_get (ins,
+- "width", G_TYPE_INT, &from_w, "height", G_TYPE_INT, &from_h, NULL);
++ {
++ gint wi = 0, hi = 0;
++ gst_structure_get (ins,
++ "width", G_TYPE_INT, &wi, "height", G_TYPE_INT, &hi, NULL);
++ from_w = wi;
++ from_h = hi;
++ }
+
+ {
+ gint wi = 0, hi = 0;
+--- gst-plugins-base-1.26.1/tests/check/elements/audiomixer.c.old 2025-04-24 14:20:14.000000000 -0500
++++ gst-plugins-base-1.26.1/tests/check/elements/audiomixer.c 2025-05-11 14:06:12.944933423 -0500
+@@ -2125,12 +2125,18 @@
+ gst_message_unref (msg);
+ }
+
++#if G_BYTE_ORDER == G_LITTLE_ENDIAN
++#define AUDIO_FMT "S16LE"
++#else
++#define AUDIO_FMT "S16BE"
++#endif
++
+ GST_START_TEST (test_qos_message_live)
+ {
+ GstBus *bus = gst_bus_new ();
+ GstHarness *h, *h2;
+ GstBuffer *b;
+- static const char *caps_str = "audio/x-raw, format=(string)S16LE, "
++ static const char *caps_str = "audio/x-raw, format=(string)" AUDIO_FMT ", "
+ "rate=(int)1000, channels=(int)1, layout=(string)interleaved";
+ GstMessage *msg;
+ GstPad *pad;
diff --git a/user/gst-plugins-good/APKBUILD b/user/gst-plugins-good/APKBUILD
index bc8624aa0..2570bf9df 100644
--- a/user/gst-plugins-good/APKBUILD
+++ b/user/gst-plugins-good/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=gst-plugins-good
-pkgver=1.20.2
-pkgrel=2
+pkgver=1.26.1
+pkgrel=0
pkgdesc="GStreamer multimedia framework - Free, well-written plugins"
url="https://gstreamer.freedesktop.org/modules/gst-plugins-good.html"
arch="all"
@@ -18,27 +18,26 @@ makedepends="gst-plugins-base-dev gstreamer-dev gobject-introspection-dev
subpackages="$pkgname-gtk $pkgname-lang"
ldpath="/usr/lib/gstreamer-1.0"
source="https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-$pkgver.tar.xz
- drop-messages-interval-type.patch
- fix-arm-test-alignment.patch
+ flvmux-disable-flaky-test.patch
"
build() {
- meson \
+ meson setup \
-Dprefix=/usr \
-Dnls=enabled \
-Dorc=disabled \
-Dpackage-name="GStreamer Good Plugins (${DISTRO_NAME:-Adélie Linux})" \
-Dpackage-origin="${DISTRO_URL:-https://www.adelielinux.org/}" \
- _build
- ninja -C _build
+ build
+ meson compile -C build
}
check() {
- ninja -C _build test
+ meson test -C build
}
package() {
- DESTDIR="$pkgdir" ninja -C _build install
+ DESTDIR="$pkgdir" meson install -C build
}
gtk() {
@@ -51,6 +50,5 @@ gtk() {
"$subpkgdir"/usr/lib/gstreamer-1.0/
}
-sha512sums="a10ea48fdfbe741e9bc63036b011748558f89968aaa525380ac99884c27463d190c0b49e2d98b4f554eee6ead8a5c5da3ba62e5b0b1fe54877598beccc68a933 gst-plugins-good-1.20.2.tar.xz
-0f08a08d6f0e8303a9c899c5260f6ca2c0e0a41e1ca2a9c795c1cb1267a9003354cd0e5538022049a09784ba9000a4a60b7a0b07b38a18483ec30d9a86356e46 drop-messages-interval-type.patch
-b08c5013100dff428125dca9075641a8c528ccdcdf005b66b286cfe3b8b6f80c4b04f41d768883e98112107b857e17af68e2864a331f379bd7ea5027adc641d8 fix-arm-test-alignment.patch"
+sha512sums="ce096c912e6dfdec5c6e815b712e949296a18ea358cdb124997f256b1fbf8a68db9fc75c4e05a69a2cecd20de1a6bdb3fcfe4422f6d81b6f887ee484b5d1a556 gst-plugins-good-1.26.1.tar.xz
+d31d0f70703efb13fbe919f008e1029a08649d3220f5689c7aa105cbbfe3c8cda4a2ae0b01bad32cb295ea202a965cb719776bd86f463a7b78d5b091b00e0348 flvmux-disable-flaky-test.patch"
diff --git a/user/gst-plugins-good/drop-messages-interval-type.patch b/user/gst-plugins-good/drop-messages-interval-type.patch
deleted file mode 100644
index ebf0c1e5a..000000000
--- a/user/gst-plugins-good/drop-messages-interval-type.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Upstream-URL: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3580
-
-From e91ab24c5777986926bea5e9f0c832f606c9fb52 Mon Sep 17 00:00:00 2001
-From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
-Date: Fri, 16 Dec 2022 01:00:46 -0600
-Subject: [PATCH] tests: Cast drop-messages-interval type properly
-
-The rtpjitterbuffer test drop_messages_interval uses a GstClockTime for
-the message drop interval. This property is defined as a guint. On
-systems with 64-bit time_t but 32-bit uint, this can cause the
-g_object_set function to fail to read the arguments properly.
-
-Fixes: #1656
----
- .../gst-plugins-good/tests/check/elements/rtpjitterbuffer.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-
---- gst-plugins-good-1.20.2/tests/check/elements/rtpjitterbuffer.c.old 2022-05-02 22:29:29.000000000 +0000
-+++ gst-plugins-good-1.20.2/tests/check/elements/rtpjitterbuffer.c 2022-12-16 07:04:53.663472650 +0000
-@@ -3097,7 +3097,7 @@
- guint num_sent_msg = 0;
-
- g_object_set (h->element, "post-drop-messages", TRUE, NULL);
-- g_object_set (h->element, "drop-messages-interval", interval, NULL);
-+ g_object_set (h->element, "drop-messages-interval", (guint)interval, NULL);
- next_seqnum = construct_deterministic_initial_state (h, latency_ms);
-
- /* Create a bus to get the drop message on */
diff --git a/user/gst-plugins-good/fix-arm-test-alignment.patch b/user/gst-plugins-good/fix-arm-test-alignment.patch
deleted file mode 100644
index 2b2a6a0c0..000000000
--- a/user/gst-plugins-good/fix-arm-test-alignment.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 57ced2fded938aa08d8727683a1823ae36170fc3 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
-Date: Mon, 12 Jun 2023 19:24:15 +0100
-Subject: [PATCH] tests: rtpbin_buffer_list: fix possible unaligned read on
- 32-bit ARM
-
-Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/689
----
- .../tests/check/elements/rtpbin_buffer_list.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/subprojects/gst-plugins-good/tests/check/elements/rtpbin_buffer_list.c b/subprojects/gst-plugins-good/tests/check/elements/rtpbin_buffer_list.c
-index b804744352a..1c3d5cdd3a7 100644
---- a/tests/check/elements/rtpbin_buffer_list.c
-+++ b/tests/check/elements/rtpbin_buffer_list.c
-@@ -25,6 +25,12 @@
- #include <gst/rtp/gstrtpbuffer.h>
- #include <gst/rtp/gstrtcpbuffer.h>
-
-+#if G_BYTE_ORDER == G_BIG_ENDIAN
-+#define READ_UINT64(mem) GST_READ_UINT64_BE(mem)
-+#else
-+#define READ_UINT64(mem) GST_READ_UINT64_LE(mem)
-+#endif
-+
- /* UDP/IP is assumed for bandwidth calculation */
- #define UDP_IP_HEADER_OVERHEAD 28
-
-@@ -236,8 +242,8 @@ check_header (GstBuffer * buffer, guint index)
- * most likely be changed in gstrtpbin.
- */
- fail_unless (info.data != NULL);
-- fail_unless_equals_uint64 (*(guint64 *) info.data,
-- *(guint64 *) rtp_header[index]);
-+ fail_unless_equals_uint64 (READ_UINT64 (info.data),
-+ READ_UINT64 (rtp_header[index]));
- fail_unless (*(guint16 *) (info.data + 12) ==
- *(guint16 *) (rtp_header[index] + 12));
-
---
-GitLab
-
diff --git a/user/gst-plugins-good/flvmux-disable-flaky-test.patch b/user/gst-plugins-good/flvmux-disable-flaky-test.patch
new file mode 100644
index 000000000..ef2d3feb3
--- /dev/null
+++ b/user/gst-plugins-good/flvmux-disable-flaky-test.patch
@@ -0,0 +1,15 @@
+This test is known flaky and causes a timeout every time on ppc64.
+
+Upstream-URL: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2803
+
+--- gst-plugins-good-1.26.1/tests/check/elements/flvmux.c.old 2025-04-24 14:20:14.000000000 -0500
++++ gst-plugins-good-1.26.1/tests/check/elements/flvmux.c 2025-05-17 17:53:27.568081593 -0500
+@@ -1162,7 +1162,7 @@
+
+ tcase_add_test (tc_chain, test_speex_streamable);
+ tcase_add_test (tc_chain, test_increasing_timestamp_when_pts_none);
+- tcase_add_test (tc_chain, test_video_caps_late);
++ //tcase_add_test (tc_chain, test_video_caps_late);
+ tcase_add_test (tc_chain, test_audio_caps_change_streamable);
+ tcase_add_test (tc_chain, test_video_caps_change_streamable);
+ tcase_add_test (tc_chain, test_audio_caps_change_streamable_single);
diff --git a/user/gstreamer/APKBUILD b/user/gstreamer/APKBUILD
index 94c5af1c9..7ee893c50 100644
--- a/user/gstreamer/APKBUILD
+++ b/user/gstreamer/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=gstreamer
-pkgver=1.20.1
+pkgver=1.26.1
pkgrel=0
pkgdesc="GStreamer multimedia framework"
url="https://gstreamer.freedesktop.org/"
@@ -9,16 +9,12 @@ license="LGPL-2.0+"
depends=""
depends_dev="libxml2-dev"
makedepends="$depends_dev bison flex gobject-introspection-dev glib-dev
- meson ninja"
+ meson"
subpackages="$pkgname-dev $pkgname-doc $pkgname-tools $pkgname-lang"
-source="https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-$pkgver.tar.xz
- disable-tests.patch
- test-deadlock.patch
- time64.patch
- "
+source="https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-$pkgver.tar.xz"
build() {
- meson \
+ meson setup \
-Dprefix=/usr \
-Dintrospection=enabled \
-Dpackage-name="GStreamer (${DISTRO_NAME:-Adélie Linux})" \
@@ -26,16 +22,16 @@ build() {
-Dglib-asserts=disabled \
-Dnls=enabled \
-Dptp-helper-permissions=none \
- _build
- ninja -C _build
+ build
+ meson compile -C build
}
check() {
- ninja -C _build test
+ meson test -C build
}
package() {
- DESTDIR="$pkgdir" ninja -C _build install
+ DESTDIR="$pkgdir" meson install -C build
}
dev() {
@@ -55,7 +51,4 @@ tools() {
mv "$pkgdir"/usr/lib/libgstcheck-1.0.so.* "$subpkgdir"/usr/lib/
}
-sha512sums="d6f67cce81ba15fba3fcf70850e3c84b25e8da3e53fd56e6f2c87c7ee1701071ea44deb754a0ea371b3cb17877f26aab94d9eccb6729cbb370d6d6d5c324aa1a gstreamer-1.20.1.tar.xz
-39e6bfb52ebe85beefa2550eb404f83c5bbb3546cc1733b99e757401d2d182f95d829b90df99d5f43506d7c85d4f44ac797f35653cd42a935f1dc56d0b844c02 disable-tests.patch
-d7e574e8715607d3103d46eb05388b781702a9e937d78f8cfab6d8d48d04baa7fbfe547bdeb816bbfddb5a333dd1862e460b057b12ea24704351ef5653f78491 test-deadlock.patch
-977a9e689cce68b151a742ef67dbb60a10a55fcfae67f086909e1f0fc4a5998026acd03aeed32068fdb0485dd884c4313f39a63e3bab5baaafa878c439531bc3 time64.patch"
+sha512sums="7a5da377fbfb25cacc2d9613a57210c00ca70ee00f3ef4d108a3c98bd6a2cb703b773ca6fd6d9ac7b59b60d0bf0573cff69bdea18e07159ac56ee992613d0a78 gstreamer-1.26.1.tar.xz"
diff --git a/user/gstreamer/disable-tests.patch b/user/gstreamer/disable-tests.patch
deleted file mode 100644
index 7fc78e9e4..000000000
--- a/user/gstreamer/disable-tests.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-elements_leaks:
- Fails due to heavy parallelisation on ppc64.
- It always succeeds when run serially.
-
-elements_filesink:
- Seems to be disabled on other musl distros as well.
- Filed at: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1194
-
---- gstreamer-1.20.1/tests/check/meson.build.old 2022-03-14 06:33:40.000000000 -0500
-+++ gstreamer-1.20.1/tests/check/meson.build 2022-05-02 01:55:00.352168066 -0500
-@@ -84,11 +84,11 @@
- [ 'elements/fakesrc.c', not gst_registry ],
- # FIXME: blocked forever on Windows due to missing fcntl (.. O_NONBLOCK)
- [ 'elements/fdsrc.c', not gst_registry or host_system == 'windows' ],
-- [ 'elements/filesink.c', not gst_registry ],
-+ [ 'elements/filesink.c', true ],
- [ 'elements/filesrc.c', not gst_registry ],
- [ 'elements/funnel.c', not gst_registry ],
- [ 'elements/identity.c', not gst_registry or not gst_parse ],
-- [ 'elements/leaks.c', not tracer_hooks or not gst_debug ],
-+ [ 'elements/leaks.c', true ],
- [ 'elements/multiqueue.c', not gst_registry ],
- [ 'elements/selector.c', not gst_registry ],
- [ 'elements/streamiddemux.c', not gst_registry ],
diff --git a/user/gstreamer/test-deadlock.patch b/user/gstreamer/test-deadlock.patch
deleted file mode 100644
index b506ca19f..000000000
--- a/user/gstreamer/test-deadlock.patch
+++ /dev/null
@@ -1,140 +0,0 @@
-From f24595e9d7952e1e957c0973de62e6c3df031c08 Mon Sep 17 00:00:00 2001
-From: Jose Quaresma <quaresma.jose@gmail.com>
-Date: Sun, 20 Feb 2022 23:26:10 +0000
-Subject: [PATCH 1/3] gstreamer: tests: make the gstbin pop message more clear
-
-Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
----
- tests/check/gst/gstbin.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/tests/check/gst/gstbin.c b/tests/check/gst/gstbin.c
-index e366d5fe20f..06be4c75fbb 100644
---- a/tests/check/gst/gstbin.c
-+++ b/tests/check/gst/gstbin.c
-@@ -38,7 +38,7 @@ pop_async_done (GstBus * bus)
- == GST_MESSAGE_ASYNC_DONE, "did not get GST_MESSAGE_ASYNC_DONE");
-
- gst_message_unref (message);
-- GST_DEBUG ("popped message");
-+ GST_DEBUG ("popped async-done message");
- }
-
- static void
-@@ -46,14 +46,14 @@ pop_latency (GstBus * bus)
- {
- GstMessage *message;
-
-- GST_DEBUG ("popping async-done message");
-+ GST_DEBUG ("popping latency message");
- message = gst_bus_poll (bus, GST_MESSAGE_LATENCY, -1);
-
- fail_unless (message && GST_MESSAGE_TYPE (message)
- == GST_MESSAGE_LATENCY, "did not get GST_MESSAGE_LATENCY");
-
- gst_message_unref (message);
-- GST_DEBUG ("popped message");
-+ GST_DEBUG ("popped latency message");
- }
-
- static void
-@@ -63,7 +63,7 @@ pop_state_changed (GstBus * bus, int count)
-
- int i;
-
-- GST_DEBUG ("popping %d messages", count);
-+ GST_DEBUG ("popping %d state-changed message", count);
- for (i = 0; i < count; ++i) {
- message = gst_bus_poll (bus, GST_MESSAGE_STATE_CHANGED, -1);
-
-@@ -72,7 +72,7 @@ pop_state_changed (GstBus * bus, int count)
-
- gst_message_unref (message);
- }
-- GST_DEBUG ("popped %d messages", count);
-+ GST_DEBUG ("popped %d state-changed messages", count);
- }
-
- static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src",
---
-GitLab
-
-
-From 2c47f61c69702572bf666ad9ecaf59710f4a342c Mon Sep 17 00:00:00 2001
-From: Jose Quaresma <quaresma.jose@gmail.com>
-Date: Sun, 20 Feb 2022 23:28:00 +0000
-Subject: [PATCH 2/3] gstreamer: tests: add a timeout in gstbin pop functions
- instaed of wait forever
-
-Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
----
- tests/check/gst/gstbin.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/tests/check/gst/gstbin.c b/tests/check/gst/gstbin.c
-index 06be4c75fbb..c837d0e7e8a 100644
---- a/tests/check/gst/gstbin.c
-+++ b/tests/check/gst/gstbin.c
-@@ -32,7 +32,7 @@ pop_async_done (GstBus * bus)
- GstMessage *message;
-
- GST_DEBUG ("popping async-done message");
-- message = gst_bus_poll (bus, GST_MESSAGE_ASYNC_DONE, -1);
-+ message = gst_bus_poll (bus, GST_MESSAGE_ASYNC_DONE, GST_SECOND);
-
- fail_unless (message && GST_MESSAGE_TYPE (message)
- == GST_MESSAGE_ASYNC_DONE, "did not get GST_MESSAGE_ASYNC_DONE");
-@@ -47,7 +47,7 @@ pop_latency (GstBus * bus)
- GstMessage *message;
-
- GST_DEBUG ("popping latency message");
-- message = gst_bus_poll (bus, GST_MESSAGE_LATENCY, -1);
-+ message = gst_bus_poll (bus, GST_MESSAGE_LATENCY, GST_SECOND);
-
- fail_unless (message && GST_MESSAGE_TYPE (message)
- == GST_MESSAGE_LATENCY, "did not get GST_MESSAGE_LATENCY");
-@@ -65,7 +65,7 @@ pop_state_changed (GstBus * bus, int count)
-
- GST_DEBUG ("popping %d state-changed message", count);
- for (i = 0; i < count; ++i) {
-- message = gst_bus_poll (bus, GST_MESSAGE_STATE_CHANGED, -1);
-+ message = gst_bus_poll (bus, GST_MESSAGE_STATE_CHANGED, GST_SECOND);
-
- fail_unless (message && GST_MESSAGE_TYPE (message)
- == GST_MESSAGE_STATE_CHANGED, "did not get GST_MESSAGE_STATE_CHANGED");
---
-GitLab
-
-
-From 686add28e21ae0031f9e3b07f9fb5cd4d5d19bc5 Mon Sep 17 00:00:00 2001
-From: Jose Quaresma <quaresma.jose@gmail.com>
-Date: Mon, 21 Feb 2022 23:06:07 +0000
-Subject: [PATCH 3/3] gstreamer: tests: fix gstbin deadlock
-
-this is a bit ugly but if the latency message is lost
-the pop_latency will hang forever.
-
-Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/778
-
-Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
----
- tests/check/gst/gstbin.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/tests/check/gst/gstbin.c b/tests/check/gst/gstbin.c
-index c837d0e7e8a..5d9a09171aa 100644
---- a/tests/check/gst/gstbin.c
-+++ b/tests/check/gst/gstbin.c
-@@ -741,7 +741,8 @@ GST_START_TEST (test_watch_for_state_change)
- pop_state_changed (bus, 3);
- if (ret == GST_STATE_CHANGE_ASYNC) {
- pop_async_done (bus);
-- pop_latency (bus);
-+ if (gst_bus_have_pending (bus))
-+ pop_latency (bus);
- }
-
- fail_unless (gst_bus_have_pending (bus) == FALSE,
---
-GitLab
-
diff --git a/user/gstreamer/time64.patch b/user/gstreamer/time64.patch
deleted file mode 100644
index 89c88c380..000000000
--- a/user/gstreamer/time64.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 664fc63a246cba97e202f712aa48105f46a9ff69 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
-Date: Mon, 12 Dec 2022 11:34:51 +0200
-Subject: [PATCH] systemclock: Use `futex_time64` syscall on x32 and other
- platforms that always use a 32-bit `struct timespec` for the normal `futex`
- syscall
-
-See also https://gitlab.gnome.org/GNOME/glib/-/issues/2634
----
- gst/gstsystemclock.c | 26 +++++++++++++++++++++-
- 1 file changed, 25 insertions(+), 1 deletion(-)
-
-diff --git a/gst/gstsystemclock.c b/gst/gstsystemclock.c
-index 6d0b6ec47b6..8c396d2c7b4 100644
---- a/gst/gstsystemclock.c
-+++ b/gst/gstsystemclock.c
-@@ -130,7 +130,31 @@ gst_futex_cond_broadcast (guint * cond_val)
- static gboolean
- gst_futex_cond_wait_until (guint * cond_val, GMutex * mutex, gint64 end_time)
- {
-+ /* On x32 (ILP32 ABI on x86_64) and potentially sparc64, the raw futex()
-+ * syscall takes a 32-bit timespan argument *regardless* of whether userspace
-+ * is using 32-bit or 64-bit `struct timespec`. This means that we can’t
-+ * unconditionally pass a `struct timespec` pointer into the syscall.
-+ *
-+ * Assume that any such platform is new enough to define the
-+ * `__NR_futex_time64` workaround syscall (which accepts 64-bit timespecs,
-+ * introduced in kernel 5.1), and use that to pass a 64-bit timespec instead.
-+ *
-+ * `clock_gettime()` on such systems will either return a 32-bit `struct
-+ * timespec`, in which case the values we will get passed in here are
-+ * already not y2038-safe, or `struct timespec` is using 64-bit `time_t` and
-+ * everything is fine.
-+ */
-+#ifdef __NR_futex_time64
-+ struct
-+ {
-+ gint64 tv_sec;
-+ gint64 tv_nsec;
-+ } end;
-+ const long int futex_syscall_id = __NR_futex_time64;
-+#else
- struct timespec end;
-+ const long int futex_syscall_id = __NR_futex;
-+#endif
- guint sampled;
- int res;
- gboolean success;
-@@ -146,7 +170,7 @@ gst_futex_cond_wait_until (guint * cond_val, GMutex * mutex, gint64 end_time)
- /* we use FUTEX_WAIT_BITSET_PRIVATE rather than FUTEX_WAIT_PRIVATE to be
- * able to use absolute time */
- res =
-- syscall (__NR_futex, cond_val, (gsize) FUTEX_WAIT_BITSET_PRIVATE,
-+ syscall (futex_syscall_id, cond_val, (gsize) FUTEX_WAIT_BITSET_PRIVATE,
- (gsize) sampled, &end, NULL, FUTEX_BITSET_MATCH_ANY);
- success = (res < 0 && errno == ETIMEDOUT) ? FALSE : TRUE;
- g_mutex_lock (mutex);
---
-GitLab
-