Compare commits

...
9 Commits
Author SHA1 Message Date
EnumDev a86589bcf4 Rebuild with libmpcdec and neon 2026-07-31 13:01:23 +03:00
EnumDev 643dd04cd9 Rebuild with libdvdread and libdvdnav 2026-07-30 13:20:07 +03:00
EnumDev 44b9d21bf8 Update dependencies 2026-07-08 14:12:01 +03:00
EnumDev 8a42c7cd4a Rebuild with gsm 2026-06-18 14:40:17 +03:00
EnumDev dfc2a85321 Switch to new package format 2026-06-13 19:59:27 +03:00
EnumDev 98d44701a7 Rebuild with x265 4.2 2026-04-26 12:11:42 +03:00
EnumDev 21f0b76342 Update package version to 1.29.1 2026-04-05 10:43:18 +03:00
EnumDev 70ce4afcda Update package version to 1.28.1 2026-02-27 17:12:12 +02:00
EnumDev 1969510768 Update .gitignore 2026-02-24 12:44:47 +02:00
4 changed files with 14 additions and 133 deletions
+3
View File
@@ -0,0 +1,3 @@
# Ignore BPM archives and signatures
*.bpm
*.bpm.sig
+9 -5
View File
@@ -1,7 +1,7 @@
name: gst-plugins-bad
description: Gstreamer bad plugins
version: 1.27.2
revision: 3
version: 1.29.1
revision: 7
url: https://gstreamer.freedesktop.org/
license: LGPL2.1-or-later
maintainers:
@@ -15,18 +15,22 @@ depends:
- gcc-libs
- glib
- glibc
- gstreamer
- gst-plugins-base
- gsm
- gst-plugins-base=1.29.1
- json-glib
- libass
- libde265
- libdvdnav
- libdvdread
- libfdk-aac
- liblc3
- libldac
- libmpcdec
- librsvg
- libsndfile
- libwebp
- libxml2
- neon
- nettle
- openexr
- openh264
@@ -45,4 +49,4 @@ downloads:
- url: https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${BPM_PKG_VERSION}.tar.xz
extract_to: ${BPM_SOURCE}
extract_strip_components: 1
checksum: f4ef4afbc0f71762babed8bba7c2dc4dcd90d5a401e0a79bd05f3b95974976d3
checksum: 629d70cdf75faca70805dbd5fa4db819f30c1f775b599f2d578d04eeb626ade5
+2 -9
View File
@@ -1,14 +1,7 @@
# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package
# This is the recipe.sh script. It is executed by BPM in a temporary directory when compiling a source package
# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE
# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT
# The prepare function is executed in the root of the temp directory
# This function is used for putting downloaded files to the correct location or applying patches
prepare() {
cd "$BPM_SOURCE"
patch -Np3 -i "$BPM_WORKDIR"/svt-av1-4.0-fix.patch
}
# The build function is executed in the source directory
# This function is used to compile the source code
build() {
@@ -22,5 +15,5 @@ package() {
meson install -C build --destdir="$BPM_OUTPUT"
# Install package license
install -Dm644 "$BPM_SOURCE"/COPYING "$BPM_OUTPUT"/usr/share/licenses/gst-plugins-base/COPYING
install -Dm644 "$BPM_SOURCE"/COPYING "$BPM_OUTPUT"/usr/share/licenses/gst-plugins-bad/COPYING
}
-119
View File
@@ -1,119 +0,0 @@
From 794e384541f3bf064782acb61076fb65b54e2088 Mon Sep 17 00:00:00 2001
From: Christopher Degawa <[email protected]>
Date: Wed, 14 Jan 2026 19:07:40 -0600
Subject: [PATCH] svtav1enc: handle deprecations from SVT-AV1 4.0.0
`enable_adaptive_quantization` was replaced by `aq_mode` since it's not
a boolean. `target_socket` was removed entirely. If someone wants to
pin the encoder to a specific socket, they will have to use external
means like numactl etc.
Signed-off-by: Christopher Degawa <[email protected]>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10545>
---
.../gst-plugins-bad/ext/svtav1/gstsvtav1enc.c | 26 +++++++++++++++----
1 file changed, 21 insertions(+), 5 deletions(-)
diff --git a/subprojects/gst-plugins-bad/ext/svtav1/gstsvtav1enc.c b/subprojects/gst-plugins-bad/ext/svtav1/gstsvtav1enc.c
index 65e940d43d9..ed82487d19b 100644
--- a/subprojects/gst-plugins-bad/ext/svtav1/gstsvtav1enc.c
+++ b/subprojects/gst-plugins-bad/ext/svtav1/gstsvtav1enc.c
@@ -80,7 +80,9 @@ typedef struct _GstSvtAv1Enc
#else
gint logical_processors;
#endif
+#if !SVT_AV1_CHECK_VERSION(4, 0, 0)
gint target_socket;
+#endif
gchar *parameters_string;
EbBufferHeaderType *input_buf;
@@ -132,7 +134,7 @@ enum
PROP_INTRA_PERIOD_LENGTH,
PROP_INTRA_REFRESH_TYPE,
PROP_LOGICAL_PROCESSORS, /// DEPRECATED: should be removed once the minimum version is 3.0.0
- PROP_TARGET_SOCKET,
+ PROP_TARGET_SOCKET, /// DEPRECATED: should be removed once the minimum version is 4.0.0
PROP_PARAMETERS_STRING,
PROP_LEVEL_OF_PARALLELISM,
};
@@ -149,7 +151,7 @@ enum
#define PROP_INTRA_REFRESH_TYPE_DEFAULT SVT_AV1_KF_REFRESH
#define PROP_LEVEL_OF_PARALLELISM_DEFAULT 0
#define PROP_LOGICAL_PROCESSORS_DEFAULT 0 /// DEPRECATED: should be removed once the minimum version is 3.0.0
-#define PROP_TARGET_SOCKET_DEFAULT -1
+#define PROP_TARGET_SOCKET_DEFAULT -1 /// DEPRECATED: should be removed once the minimum version is 4.0.0
#define PROP_PARAMETERS_STRING_DEFAULT NULL
#if G_BYTE_ORDER == G_LITTLE_ENDIAN
@@ -339,10 +341,12 @@ gst_svtav1enc_class_init (GstSvtAv1EncClass * klass)
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_DEPRECATED));
g_object_class_install_property (gobject_class,
- PROP_TARGET_SOCKET,
- g_param_spec_int ("target-socket",
- "Target socket",
+ PROP_TARGET_SOCKET, g_param_spec_int ("target-socket", "Target socket",
+#if SVT_AV1_CHECK_VERSION(4, 0, 0)
+ "Deprecated. This property is ignored in SVT-AV1 4.0.0 and later.",
+#else
"Target CPU socket to run on. -1: all available",
+#endif
-1,
15,
PROP_TARGET_SOCKET_DEFAULT,
@@ -378,7 +382,9 @@ gst_svtav1enc_init (GstSvtAv1Enc * svtav1enc)
#else
svtav1enc->logical_processors = PROP_LOGICAL_PROCESSORS_DEFAULT;
#endif
+#if !SVT_AV1_CHECK_VERSION(4, 0, 0)
svtav1enc->target_socket = PROP_TARGET_SOCKET_DEFAULT;
+#endif
svtav1enc->parameters_string = PROP_PARAMETERS_STRING_DEFAULT;
}
@@ -439,7 +445,9 @@ gst_svtav1enc_set_property (GObject * object, guint property_id,
#endif
break;
case PROP_TARGET_SOCKET:
+#if !SVT_AV1_CHECK_VERSION(4, 0, 0)
svtav1enc->target_socket = g_value_get_int (value);
+#endif
break;
case PROP_PARAMETERS_STRING:{
g_free (svtav1enc->parameters_string);
@@ -500,7 +508,9 @@ gst_svtav1enc_get_property (GObject * object, guint property_id, GValue * value,
#endif
break;
case PROP_TARGET_SOCKET:
+#if !SVT_AV1_CHECK_VERSION(4, 0, 0)
g_value_set_int (value, svtav1enc->target_socket);
+#endif
break;
case PROP_PARAMETERS_STRING:
g_value_set_string (value, svtav1enc->parameters_string);
@@ -586,7 +596,11 @@ gst_svtav1enc_configure_svt (GstSvtAv1Enc * svtav1enc)
GST_DEBUG_OBJECT (svtav1enc, "Enabling CQP mode (qp %u)", svtav1enc->cqp);
svtav1enc->svt_config->qp = svtav1enc->cqp;
svtav1enc->svt_config->rate_control_mode = SVT_AV1_RC_MODE_CQP_OR_CRF;
+#if SVT_AV1_CHECK_VERSION(4, 0, 0)
+ svtav1enc->svt_config->aq_mode = 0;
+#else
svtav1enc->svt_config->enable_adaptive_quantization = FALSE;
+#endif
svtav1enc->svt_config->force_key_frames = TRUE;
} else {
GST_DEBUG_OBJECT (svtav1enc, "Using default rate control settings");
@@ -598,7 +612,9 @@ gst_svtav1enc_configure_svt (GstSvtAv1Enc * svtav1enc)
#else
svtav1enc->svt_config->logical_processors = svtav1enc->logical_processors;
#endif
+#if !SVT_AV1_CHECK_VERSION(4, 0, 0)
svtav1enc->svt_config->target_socket = svtav1enc->target_socket;
+#endif
gst_svtav1enc_parse_parameters_string (svtav1enc);
/* set properties out of GstVideoInfo */
--
GitLab