[packages/pipewire-wireplumber] up to 0.4.9

atler atler at pld-linux.org
Tue Mar 22 14:17:46 CET 2022


commit b649302d9144b045d2c12cf509e9603511281bba
Author: Jan Palus <atler at pld-linux.org>
Date:   Tue Mar 22 14:16:33 2022 +0100

    up to 0.4.9

 876.patch                 |  42 ---------
 pipewire-wireplumber.spec |  15 ++--
 va_list.patch             | 212 ----------------------------------------------
 3 files changed, 5 insertions(+), 264 deletions(-)
---
diff --git a/pipewire-wireplumber.spec b/pipewire-wireplumber.spec
index f0eabac..8dbffee 100644
--- a/pipewire-wireplumber.spec
+++ b/pipewire-wireplumber.spec
@@ -4,14 +4,12 @@
 
 Summary:	Session / policy manager implementation for PipeWire
 Name:		pipewire-wireplumber
-Version:	0.4.8
-Release:	2
+Version:	0.4.9
+Release:	1
 License:	MIT
 Group:		Libraries
 Source0:	https://gitlab.freedesktop.org/pipewire/wireplumber/-/archive/%{version}/wireplumber-%{version}.tar.bz2
-# Source0-md5:	a5a405f0f8e973df9d644a20a8c0620b
-Patch0:		va_list.patch
-Patch1:		876.patch
+# Source0-md5:	b77170b2740ef7bc5e943d0878452a6c
 URL:		https://pipewire.org/
 # required for both docs and introspection
 BuildRequires:	doxygen >= 1.8.0
@@ -22,7 +20,7 @@ BuildRequires:	gobject-introspection-devel
 BuildRequires:	lua-devel >= 5.3.0
 BuildRequires:	meson >= 0.56.0
 BuildRequires:	ninja
-BuildRequires:	pipewire-devel >= 0.3.45
+BuildRequires:	pipewire-devel >= 0.3.48
 BuildRequires:	pkgconfig
 BuildRequires:	python3
 BuildRequires:	python3-lxml
@@ -57,7 +55,7 @@ the actual management functionality.
 Summary:	WirePlumber shared library
 Group:		Libraries
 Requires:	glib2 >= 1:2.62
-Requires:	pipewire-libs >= 0.3.45
+Requires:	pipewire-libs >= 0.3.48
 
 %description libs
 WirePlumber shared library.
@@ -88,8 +86,6 @@ API documentation for PipeWire WirePlumber.
 
 %prep
 %setup -q -n wireplumber-%{version}
-%patch0 -p1
-%patch1 -p1
 
 %build
 %meson build \
@@ -128,7 +124,6 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-nodes-api.so
 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-nodes.so
 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-profile.so
-%attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-device-activation.so
 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-file-monitor-api.so
 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-logind.so
 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-lua-scripting.so
diff --git a/876.patch b/876.patch
deleted file mode 100644
index 01fb154..0000000
--- a/876.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From afbc0ce57aac7aee8dc1651de4620f15c73dbace Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans at redhat.com>
-Date: Mon, 21 Feb 2022 15:21:36 +0100
-Subject: [PATCH] si-audio-adapter: relax format parsing
-
-Some nodes can omit the format/rate/channels to indicate that they can
-deal with all possibilities and adapt to what they are linked to.
-
-See pipewire#876
----
- modules/module-si-audio-adapter.c | 11 ++---------
- 1 file changed, 2 insertions(+), 9 deletions(-)
-
-diff --git a/modules/module-si-audio-adapter.c b/modules/module-si-audio-adapter.c
-index f1f62185..84e393fd 100644
---- a/modules/module-si-audio-adapter.c
-+++ b/modules/module-si-audio-adapter.c
-@@ -158,19 +158,12 @@ si_audio_adapter_find_format (WpSiAudioAdapter * self, WpNode * node)
-       struct spa_pod *position = NULL;
-       wp_spa_pod_fixate (pod);
- 
--      /* defaults */
-       spa_zero(raw_format);
--      raw_format.format = SPA_AUDIO_FORMAT_F32;
--      raw_format.rate = si_audio_adapter_get_default_clock_rate (self);
--      raw_format.channels = 2;
--      raw_format.position[0] = SPA_AUDIO_CHANNEL_FL;
--      raw_format.position[1] = SPA_AUDIO_CHANNEL_FR;
--
-       if (spa_pod_parse_object(wp_spa_pod_get_spa_pod (pod),
-                                SPA_TYPE_OBJECT_Format, NULL,
--                               SPA_FORMAT_AUDIO_format,   SPA_POD_Id(&raw_format.format),
-+                               SPA_FORMAT_AUDIO_format,   SPA_POD_OPT_Id(&raw_format.format),
-                                SPA_FORMAT_AUDIO_rate,     SPA_POD_OPT_Int(&raw_format.rate),
--                               SPA_FORMAT_AUDIO_channels, SPA_POD_Int(&raw_format.channels),
-+                               SPA_FORMAT_AUDIO_channels, SPA_POD_OPT_Int(&raw_format.channels),
-                                SPA_FORMAT_AUDIO_position, SPA_POD_OPT_Pod(&position)) < 0)
-         continue;
- 
--- 
-GitLab
-
diff --git a/va_list.patch b/va_list.patch
deleted file mode 100644
index 27b6f03..0000000
--- a/va_list.patch
+++ /dev/null
@@ -1,212 +0,0 @@
-From e429db7e8c266045aee25e153fb2308bd61fe233 Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas at collabora.com>
-Date: Wed, 9 Feb 2022 07:59:59 -0500
-Subject: [PATCH] spa-json: fix va_list APIs for different architectures
-
-The va_list type might not always be a pointer in some architectures, so we
-cannot guarantee it will be modified after using it for a second time in another
-function. This fixes the issue by using macros so args does not get copied, and
-always gets modified when using it more than once.
----
- lib/wp/spa-json.c | 156 ++++++++++++++++++++++++----------------------
- 1 file changed, 80 insertions(+), 76 deletions(-)
-
-diff --git a/lib/wp/spa-json.c b/lib/wp/spa-json.c
-index f14f395d..c5e59a3e 100644
---- a/lib/wp/spa-json.c
-+++ b/lib/wp/spa-json.c
-@@ -363,33 +363,33 @@ wp_spa_json_new_string (const gchar *value)
-       wp_spa_json_builder_new_formatted ("\"%s\"", value));
- }
- 
--static void
--wp_spa_json_builder_add_value (WpSpaJsonBuilder *self, const gchar *fmt,
--    va_list args)
--{
--  switch (*fmt) {
--    case 'n':
--      wp_spa_json_builder_add_null (self);
--      break;
--    case 'b':
--      wp_spa_json_builder_add_boolean (self, va_arg(args, gboolean));
--      break;
--    case 'i':
--      wp_spa_json_builder_add_int (self, va_arg(args, gint));
--      break;
--    case 'f':
--      wp_spa_json_builder_add_float (self, (float)va_arg(args, double));
--      break;
--    case 's':
--      wp_spa_json_builder_add_string (self, va_arg(args, const gchar *));
--      break;
--    case 'J':
--      wp_spa_json_builder_add_json (self, va_arg(args, WpSpaJson *));
--      break;
--    default:
--      return;
--  }
--}
-+/* Args is not a pointer in some architectures, so this needs to be a macro to
-+ * avoid args being copied */
-+#define wp_spa_json_builder_add_value(self,fmt,args)                           \
-+do {                                                                           \
-+  switch (*fmt) {                                                              \
-+    case 'n':                                                                  \
-+      wp_spa_json_builder_add_null (self);                                     \
-+      break;                                                                   \
-+    case 'b':                                                                  \
-+      wp_spa_json_builder_add_boolean (self, va_arg(args, gboolean));          \
-+      break;                                                                   \
-+    case 'i':                                                                  \
-+      wp_spa_json_builder_add_int (self, va_arg(args, gint));                  \
-+      break;                                                                   \
-+    case 'f':                                                                  \
-+      wp_spa_json_builder_add_float (self, (float)va_arg(args, double));       \
-+      break;                                                                   \
-+    case 's':                                                                  \
-+      wp_spa_json_builder_add_string (self, va_arg(args, const gchar *));      \
-+      break;                                                                   \
-+    case 'J':                                                                  \
-+      wp_spa_json_builder_add_json (self, va_arg(args, WpSpaJson *));          \
-+      break;                                                                   \
-+    default:                                                                   \
-+      break;                                                                   \
-+  }								               \
-+} while(false)
- 
- /*!
-  * \brief Creates a spa json of type array
-@@ -724,48 +724,46 @@ wp_spa_json_parse_object_valist (WpSpaJson *self, va_list args)
-   return res;
- }
- 
--static gboolean
--wp_spa_json_parse_value (const gchar *data, int len, const gchar *fmt,
--    va_list args)
--{
--  switch (*fmt) {
--    case 'n':
--      if (!spa_json_is_null (data, len))
--        return FALSE;
--      break;
--    case 'b':
--      if (!wp_spa_json_parse_boolean_internal (data, len,
--          va_arg(args, gboolean *)))
--        return FALSE;
--      break;
--    case 'i':
--      if (spa_json_parse_int (data, len, va_arg(args, gint *)) < 0)
--        return FALSE;
--      break;
--    case 'f':
--      if (spa_json_parse_float (data, len,
--          (float *)va_arg(args, double *)) < 0)
--        return FALSE;
--      break;
--    case 's': {
--      gchar *str = wp_spa_json_parse_string_internal (data, len);
--      if (!str)
--        return FALSE;
--      *va_arg(args, gchar **) = str;
--      break;
--    }
--    case 'J': {
--      WpSpaJson *j = wp_spa_json_new (data, len);
--      if (!j)
--        return FALSE;
--      *va_arg(args, WpSpaJson **) = j;
--      break;
--    }
--    default:
--      return FALSE;
--  }
--  return TRUE;
--}
-+/* Args is not a pointer in some architectures, so this needs to be a macro to
-+ * avoid args being copied */
-+#define wp_spa_json_parse_value(data,len,fmt,args)                             \
-+do {                                                                           \
-+  switch (*fmt) {                                                              \
-+    case 'n':                                                                  \
-+      if (!spa_json_is_null (data, len))                                       \
-+        return FALSE;                                                          \
-+      break;                                                                   \
-+    case 'b':                                                                  \
-+      if (!wp_spa_json_parse_boolean_internal (data, len,                      \
-+          va_arg(args, gboolean *)))                                           \
-+        return FALSE;                                                          \
-+      break;                                                                   \
-+    case 'i':                                                                  \
-+      if (spa_json_parse_int (data, len, va_arg(args, gint *)) < 0)            \
-+        return FALSE;                                                          \
-+      break;                                                                   \
-+    case 'f':                                                                  \
-+      if (spa_json_parse_float (data, len, va_arg(args, float *)) < 0)         \
-+        return FALSE;                                                          \
-+      break;                                                                   \
-+    case 's': {                                                                \
-+      gchar *str = wp_spa_json_parse_string_internal (data, len);              \
-+      if (!str)                                                                \
-+        return FALSE;                                                          \
-+      *va_arg(args, gchar **) = str;                                           \
-+      break;                                                                   \
-+    }                                                                          \
-+    case 'J': {                                                                \
-+      WpSpaJson *j = wp_spa_json_new (data, len);                              \
-+      if (!j)                                                                  \
-+        return FALSE;                                                          \
-+      *va_arg(args, WpSpaJson **) = j;                                         \
-+      break;                                                                   \
-+    }                                                                          \
-+    default:                                                                   \
-+      return FALSE;                                                            \
-+  }                                                                            \
-+} while(false)
- 
- /*!
-  * \brief Parses the object property values of a spa json object
-@@ -827,8 +825,7 @@ wp_spa_json_object_get_valist (WpSpaJson *self, va_list args)
-     value = g_value_get_boxed (&item);
- 
-     if (g_strcmp0 (key_str, lookup_key) == 0) {
--      if (!wp_spa_json_parse_value (value->data, value->size, lookup_fmt, args))
--        return FALSE;
-+      wp_spa_json_parse_value (value->data, value->size, lookup_fmt, args);
-       lookup_key = va_arg(args, const gchar *);
-       if (!lookup_key)
-         return TRUE;
-@@ -1366,9 +1363,12 @@ gboolean
- wp_spa_json_parser_get_value (WpSpaJsonParser *self, const gchar *fmt,
-     va_list args)
- {
--  return wp_spa_json_parser_advance (self) &&
--      wp_spa_json_parse_value (self->curr.cur,
--          self->curr.end - self->curr.cur, fmt, args);
-+  if (wp_spa_json_parser_advance (self)) {
-+    wp_spa_json_parse_value (self->curr.cur, self->curr.end - self->curr.cur,
-+        fmt, args);
-+    return TRUE;
-+  }
-+  return FALSE;
- }
- 
- /*!
-@@ -1419,9 +1419,13 @@ wp_spa_json_parser_get_valist (WpSpaJsonParser *self, va_list args)
-     if (!format)
-       return TRUE;
- 
--    /* parse value */
--    if (!wp_spa_json_parser_get_value (self, format, args))
-+    /* advance */
-+    if (!wp_spa_json_parser_advance (self))
-       return FALSE;
-+
-+    /* parse value */
-+    wp_spa_json_parse_value (self->curr.cur, self->curr.end - self->curr.cur,
-+        format, args);
-   } while (TRUE);
- 
-   return FALSE;
--- 
-GitLab
-
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/pipewire-wireplumber.git/commitdiff/b649302d9144b045d2c12cf509e9603511281bba



More information about the pld-cvs-commit mailing list