diff --git a/_service b/_service
new file mode 100644
index 0000000..cbb76af
--- /dev/null
+++ b/_service
@@ -0,0 +1,21 @@
+
+
+
+ git
+ https://gitlab.freedesktop.org/gstreamer/gstreamer.git
+ subprojects/gst-plugins-bad
+ gst-plugins-bad
+ 1.26.0
+ @PARENT_TAG@+@TAG_OFFSET@
+ v?(.*)\+0
+ \1
+
+
+
+
+ *.tar
+ zst
+
+
+
+
diff --git a/fix-build-with-srt-1.3.4.patch b/fix-build-with-srt-1.3.4.patch
deleted file mode 100644
index cee3d06..0000000
--- a/fix-build-with-srt-1.3.4.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Antonio Larrosa
-Subject: Fix build with srt 1.3.4 since gstreamer expects 1.4.x
-
-SRTO_STRICTENC was just renamed to SRTO_ENFORCEDENCRYPTION in 1.4, so revert that.
-SRTO_PACKETFILTER was introduced in 1.4.0 so we can't support urls
-specifying a value for it in the url.
-
-Index: gst-plugins-bad-1.22.1/ext/srt/gstsrtobject.c
-===================================================================
---- gst-plugins-bad-1.22.1.orig/ext/srt/gstsrtobject.c
-+++ gst-plugins-bad-1.22.1/ext/srt/gstsrtobject.c
-@@ -177,13 +177,13 @@ SrtOption srt_options[] = {
- {"transtype", SRTO_TRANSTYPE, G_TYPE_INT},
- {"kmrefreshrate", SRTO_KMREFRESHRATE, G_TYPE_INT},
- {"kmpreannounce", SRTO_KMPREANNOUNCE, G_TYPE_INT},
-- {"enforcedencryption", SRTO_ENFORCEDENCRYPTION, G_TYPE_BOOLEAN},
-+ {"enforcedencryption", SRTO_STRICTENC, G_TYPE_BOOLEAN},
- {"ipv6only", SRTO_IPV6ONLY, G_TYPE_INT},
- {"peeridletimeo", SRTO_PEERIDLETIMEO, G_TYPE_INT},
- #if SRT_VERSION_VALUE >= 0x10402
- {"bindtodevice", SRTO_BINDTODEVICE, G_TYPE_STRING},
- #endif
-- {"packetfilter", SRTO_PACKETFILTER, G_TYPE_STRING},
-+ //{"packetfilter", SRTO_PACKETFILTER, G_TYPE_STRING},
- {"retransmitalgo", SRTO_RETRANSMITALGO, G_TYPE_INT},
- {NULL}
- };
diff --git a/gst-plugins-bad-1.24.12.tar.xz b/gst-plugins-bad-1.24.12.tar.xz
deleted file mode 100644
index c4e92ee..0000000
--- a/gst-plugins-bad-1.24.12.tar.xz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:3d386af3d1dbd1a06c74a6251250c269b481e703f0e3255ba89ef6c1e063afea
-size 7083252
diff --git a/gst-plugins-bad-1.26.0.obscpio b/gst-plugins-bad-1.26.0.obscpio
new file mode 100644
index 0000000..f7c13db
--- /dev/null
+++ b/gst-plugins-bad-1.26.0.obscpio
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:71c54e4851dbe3cd26a7ea9949c2ba07b2e9758403e27ce4284057cae7da070c
+size 61940238
diff --git a/gst-plugins-bad.obsinfo b/gst-plugins-bad.obsinfo
new file mode 100644
index 0000000..bcfbaeb
--- /dev/null
+++ b/gst-plugins-bad.obsinfo
@@ -0,0 +1,4 @@
+name: gst-plugins-bad
+version: 1.26.0
+mtime: 1741724416
+commit: d31ce8e5e1aacf8f5e5beabb5c81ce2e4da5c202
diff --git a/gstreamer-plugins-bad.changes b/gstreamer-plugins-bad.changes
index cc59f22..8e7eb9b 100644
--- a/gstreamer-plugins-bad.changes
+++ b/gstreamer-plugins-bad.changes
@@ -1,3 +1,124 @@
+-------------------------------------------------------------------
+Wed Mar 12 06:55:24 UTC 2025 - Antonio Larrosa
+
+- Update to version 1.26.0:
+ + Highlights
+ - H.266 Versatile Video Coding (VVC) codec support
+ - Low Complexity Enhancement Video Coding (LCEVC) support
+ - Closed captions: H.264/H.265 extractor/inserter,
+ cea708overlay, cea708mux, tttocea708 and more
+ - New hlscmafsink, hlssink3, and hlsmultivariantsink; HLS/DASH
+ client and dashsink improvements
+ - New AWS and Speechmatics transcription, translation and TTS
+ services elements, plus translationbin
+ - Splitmux lazy loading and dynamic fragment addition support
+ - Matroska: H.266 video and rotation tag support, defined
+ latency muxing
+ - MPEG-TS: support for H.266, JPEG XS, AV1, VP9 codecs and
+ SMPTE ST-2038 and ID3 meta; mpegtslivesrc
+ - ISO MP4: support for H.266, Hap, Lagarith lossless codecs;
+ raw video support; rotation tags
+ - SMPTE 2038 ancillary data streams support
+ - JPEG XS image codec support
+ - Analytics: New TensorMeta; N-to-N relationships; Mtd to carry
+ segmentation masks
+ - ONVIF metadata extractor and conversion to/from relation
+ metas
+ - New originalbuffer element that can restore buffers again
+ after transformation steps for analytics
+ - Improved Python bindings for analytics API
+ - Lots of Vulkan integration and Vulkan Video decoder/encoder
+ improvements
+ - OpenGL integration improvements, esp. in glcolorconvert,
+ gldownload, glupload
+ - Qt5/Qt6 QML GL sinks now support direct DMABuf import from
+ hardware decoders
+ - CUDA: New compositor, Jetson NVMM memory support,
+ stream-ordered allocator
+ - NVCODEC AV1 video encoder element, and nvdsdewarp
+ - New Direct3D12 integration support library
+ - New d3d12swapchainsink and d3d12deinterlace elements and
+ D3D12 sink/source for zero-copy IPC
+ - Decklink HDR support (PQ + HLG) and frame scheduling
+ enhancements
+ - AJA capture source clock handling and signal loss recovery
+ improvements
+ - RTP and RTSP: New rtpbin sync modes, client-side MIKEY
+ support in rtspsrc
+ - New Rust rtpbin2, rtprecv, rtpsend, and many new Rust RTP
+ payloaders and depayloaders
+ - webrtcbin support for basic rollbacks and other improvements
+ - webrtcsink: support for more encoders, SDP munging, and a
+ built-in web/signalling server
+ - webrtcsrc/sink: support for uncompressed audio/video and NTP
+ & PTP clock signalling and synchronization
+ - rtmp2: server authentication improvements incl. Limelight
+ CDN (llnw) authentication
+ - New Microsoft WebView2 based web browser source element
+ - The GTK3 plugin has gained support for OpenGL/WGL on Windows
+ - Many GTK4 paintable sink improvements
+ - GstPlay: id-based stream selection and message API
+ improvements
+ - Real-time pipeline visualization in a browser using a new
+ dots tracer and viewer
+ - New tracers for tracking memory usage, pad push timings, and
+ buffer flow as pcap files
+ - VA hardware-acclerated H.266/VVC decoder, VP8 and JPEG
+ encoders, VP9/VP8 alpha decodebins
+ - Video4Linux2 elements support DMA_DRM caps negotiation now
+ - V4L2 stateless decoders implement inter-frame resolution
+ changes for AV1 and VP9
+ - Editing services: support for reverse playback and audio
+ channel reordering
+ - New QUIC-based elements for working with raw QUIC streams,
+ RTP-over-QUIC (RoQ) and WebTransport
+ - Apple AAC audio encoder and multi-channel support for the
+ Apple audio decoders
+ - cerbero: Python bindings and introspection support; improved
+ Windows installer based on WiX5
+ - Lots of new plugins, features, performance improvements and
+ bug fixes
+ + VA plugin
+ - New VA elements:
+ * H.266 / VVC video decoder
+ * VP8 video encoder
+ * JPEG encoder
+ * VP9 + VP8 alpha decodebin
+ Remember that the availability of these elements depends on
+ your platform and driver.
+ - There are a lot of improvements and bug fixes, to hightlight
+ some of them:
+ * Improved B pyramid mode for both H264 and HEVC encoding
+ when reference frame count exceeds 2, optimizing pyramid
+ level handling.
+ * Enabled ICQ and QVBR modes for several encoders, including
+ H264, H265, VP9 and AV1.
+ * Updated rate control features by setting the quality factor
+ parameter, while improving bitrate change handling.
+ * Improved VP9 encoder’s ability to avoid reopening or
+ renegotiating encoder settings when parameters remain
+ stable.
+ * Added functionality to adjust the trellis parameter in
+ encoders.
+ * Optimize encoders throughput with the introduction of
+ output delay.
+ * Added support for new interpolation methods for scaling and
+ improvements for handling interlace modes.
+ + For more detailed information on this update, please see
+ https://gstreamer.freedesktop.org/releases/1.26/
+- Remove patch since a similar patch was already merged upstream:
+ * svt.patch
+
+-------------------------------------------------------------------
+Mon Mar 10 08:52:09 UTC 2025 - Jan Engelhardt
+
+- Add svt.patch to build with SVT-AV1 3.0.0 API.
+- Modify spandsp3.patch to support both spandsp 0.x and spandsp 3.x.
+- Delete fix-build-with-srt-1.3.4.patch since all supported
+ Leap 15.X now have >=1.4.
+- Trim idempotent %if..%endif guards.
+- Use noun phrase for descriptions (not two noun phrases)
+
-------------------------------------------------------------------
Sun Feb 2 18:31:15 UTC 2025 - Bjørn Lie
diff --git a/gstreamer-plugins-bad.spec b/gstreamer-plugins-bad.spec
index 722b648..7ac9d52 100644
--- a/gstreamer-plugins-bad.spec
+++ b/gstreamer-plugins-bad.spec
@@ -83,17 +83,15 @@
%endif
Name: gstreamer-plugins-bad
-Version: 1.24.12
+Version: 1.26.0
Release: 0
Summary: GStreamer Streaming-Media Framework Plug-Ins
License: LGPL-2.1-or-later
Group: Productivity/Multimedia/Other
URL: https://gstreamer.freedesktop.org
-Source0: %{url}/src/%{_name}/%{_name}-%{version}.tar.xz
+Source0: %{_name}-%{version}.tar.zst
Source2: gstreamer-plugins-bad.appdata.xml
Source99: baselibs.conf
-# PATCH-FIX-SUSE Fix build with the old srt version inherited from SLE15 SP2
-Patch0: fix-build-with-srt-1.3.4.patch
# PATCH-FIX-OPENSUSE spandsp3.patch jengelh@inai.de -- Fix build against spandsp 3.x. Patch is not upstreamable in this form
Patch2: spandsp3.patch
@@ -187,7 +185,7 @@ BuildRequires: pkgconfig(schroedinger-1.0) >= 1.0.10
BuildRequires: pkgconfig(sndfile) >= 1.0.16
BuildRequires: pkgconfig(soundtouch)
BuildRequires: pkgconfig(spandsp) >= 0.0.6
-BuildRequires: pkgconfig(srt)
+BuildRequires: pkgconfig(srt) >= 1.4
%if %{with voamrwbenc}
BuildRequires: pkgconfig(vo-amrwbenc) >= 0.1.0
%endif
@@ -278,14 +276,12 @@ BuildRequires: pkgconfig(libchromaprint)
%description chromaprint
Add chromaprint (Audio Fingerprinting) support to any GStreamer based tool.
-%if %{with fluidsynth}
%package fluidsynth
Summary: Fluidsynth plugin for GStreamer
Group: Productivity/Multimedia/Other
%description fluidsynth
Add fluidsynth midi support to any GStreamer based tool.
-%endif
%package -n libgstadaptivedemux-1_0-0
Summary: GStreamer Streaming-Media Framework Plug-Ins
@@ -594,7 +590,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstAnalytics-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstAnalytics-1_0
@@ -605,7 +601,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstBadAudio-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstBadAudio-1_0
@@ -616,7 +612,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstDxva-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstDxva-1_0
@@ -627,7 +623,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstMse-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstMse-1_0
@@ -638,7 +634,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstPlay-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstPlay-1_0
@@ -649,7 +645,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstCodecs-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstCodecs-1_0
@@ -660,7 +656,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstInsertBin-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstInsertBin-1_0
@@ -671,7 +667,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstMpegts-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstMpegts-1_0
@@ -682,7 +678,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstPlayer-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstPlayer-1_0
@@ -693,7 +689,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstVulkan-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstVulkan-1_0
@@ -704,7 +700,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstVulkanWayland-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstVulkanWayland-1_0
@@ -715,7 +711,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstVulkanXCB-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstVulkanXCB-1_0
@@ -726,7 +722,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstWebRTC-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstWebRTC-1_0
@@ -737,7 +733,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstCuda-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstCuda-1_0
@@ -748,7 +744,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-CudaGst-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-CudaGst-1_0
@@ -759,7 +755,7 @@ videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
%package -n typelib-1_0-GstVa-1_0
-Summary: GStreamer Streaming-Media Framework Plug-Ins -- Introspection bindings
+Summary: Introspection bindings for GStreamer Streaming-Media Framework Plug-Ins
Group: System/Libraries
%description -n typelib-1_0-GstVa-1_0
@@ -807,19 +803,12 @@ making use of the GStreamer Transcoding API.
%lang_package
%prep
-%setup -q -n %{_name}-%{version}
+%autosetup -p1 -n %{_name}-%{version}
%if ! 0%{?BUILD_ORIG}
rm -Rf sys/decklink
sed -ie "/subdir('decklink')/d" sys/meson.build
%endif
-%if %{pkg_vcmp srt < 1.4.0}
-%patch -P 0 -p1
-%endif
-%if %{pkg_vcmp spandsp-devel >= 3}
-%patch -P 2 -p1
-%endif
-
%build
%global optflags %{optflags} -fcommon
export PYTHON=%{_bindir}/python3
@@ -917,6 +906,13 @@ export PYTHON=%{_bindir}/python3
%if %{without webrtc_audio_processing_1}
-D webrtcdsp=disabled \
%endif
+ -D cuda-nvmm=disabled \
+ -D nvcomp=disabled \
+ -D nvdswrapper=disabled \
+ -D androidmedia=disabled \
+ -D lcevcdecoder=disabled \
+ -D lcevcencoder=disabled \
+ -D svtjpegxs=disabled \
%{nil}
%meson_build
@@ -1090,6 +1086,7 @@ find %{buildroot} -type f -name "*.la" -delete -print
%{_libdir}/gstreamer-%{gst_branch}/libgstsvtav1.so
%endif
%{_libdir}/gstreamer-%{gst_branch}/libgstswitchbin.so
+%{_libdir}/gstreamer-%{gst_branch}/libgsttensordecoders.so
%{_libdir}/gstreamer-%{gst_branch}/libgsttimecode.so
%{_libdir}/gstreamer-%{gst_branch}/libgstttmlsubs.so
%{_libdir}/gstreamer-%{gst_branch}/libgstunixfd.so
diff --git a/spandsp3.patch b/spandsp3.patch
index 28892c0..55e3239 100644
--- a/spandsp3.patch
+++ b/spandsp3.patch
@@ -11,11 +11,14 @@ Index: gst-plugins-bad-1.20.1/ext/spandsp/gstspanplc.c
===================================================================
--- gst-plugins-bad-1.20.1.orig/ext/spandsp/gstspanplc.c
+++ gst-plugins-bad-1.20.1/ext/spandsp/gstspanplc.c
-@@ -36,6 +36,7 @@
+@@ -36,6 +36,10 @@
#include "gstspanplc.h"
#include
++#include
++#if defined(SPANDSP_RELEASE_DATE) && SPANDSP_RELEASE_DATE >= 20120902
+#include
++#endif
G_DEFINE_TYPE (GstSpanPlc, gst_span_plc, GST_TYPE_ELEMENT);
GST_ELEMENT_REGISTER_DEFINE (spanplc, "spanplc", GST_RANK_PRIMARY,