From a58c8f53838ba9b24d36fba45447045fccd09b13326b0cedffa8cce47bcb67f8 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Sat, 14 May 2022 20:54:35 +0000 Subject: [PATCH] Accepting request 976983 from multimedia:libs - Update to version 0.4.10: * Changes - Add i18n support to be able to translate some user-visible strings. - wpctl now supports using @DEFAULT_{AUDIO_,VIDEO_,}{SINK,SOURCE}@ as ID, almost like pactl. Additionally, it supports a --pid flag for changing volume and mute state by specifying a process ID, applying the state to all nodes of a specific client process. - The Lua engine now supports loading Lua libraries. These can be placed either in the standard Lua libraries path or in the "lib" subdirectory of WirePlumber's "scripts" directory and can be loaded with ``require()`` - The Lua engine's sandbox has been relaxed to allow more functionality in scripts (the debug & coroutine libraries and some other previously disabled functions) - Lua scripts are now wrapped in special WpPlugin objects, allowing them to load asynchronously and declare when they have finished their loading - Add a new script that provides the same functionality as module-fallback-sink from PipeWire, but also takes endpoints into account and can be customised more easily. Disabled by default for now to avoid conflicts. * Policy - Add an optional experimental feature that allows filter-like streams (like echo-cancel or filter-node) to match the channel layout of the device they connect to, on both sides of the filter; that means that if, for instance, a sink has 6 channels and the echo-cancel's source stream is linked to that sink, then the virtual sink presented by echo-cancel OBS-URL: https://build.opensuse.org/request/show/976983 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/wireplumber?expand=0&rev=12 --- ...le-clear-tables-when-devices-removed.patch | 31 ------- ...ale-in-main-for-tools-and-the-daemon.patch | 85 ------------------- _service | 2 +- _servicedata | 2 +- reduce-meson-required-version.patch | 29 +++++-- wireplumber-0.4.10.obscpio | 3 + wireplumber-0.4.9.obscpio | 3 - wireplumber.changes | 66 ++++++++++++++ wireplumber.obsinfo | 6 +- wireplumber.spec | 22 +++-- 10 files changed, 110 insertions(+), 139 deletions(-) delete mode 100644 0001-scripts-policy-device-profile-clear-tables-when-devices-removed.patch delete mode 100644 0001-src-setlocale-in-main-for-tools-and-the-daemon.patch create mode 100644 wireplumber-0.4.10.obscpio delete mode 100644 wireplumber-0.4.9.obscpio diff --git a/0001-scripts-policy-device-profile-clear-tables-when-devices-removed.patch b/0001-scripts-policy-device-profile-clear-tables-when-devices-removed.patch deleted file mode 100644 index ddcb328..0000000 --- a/0001-scripts-policy-device-profile-clear-tables-when-devices-removed.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 82856f8643402d56b62d62b0eea4debfae1cd16e Mon Sep 17 00:00:00 2001 -From: Pauli Virtanen -Date: Mon, 28 Mar 2022 20:16:52 +0300 -Subject: [PATCH] scripts: policy-device-profile: clear tables when devices - removed - -When device ids are invalidated, clear all local tables about them, -because the id may be reused by different object, or the same object -reappearing. ---- - src/scripts/policy-device-profile.lua | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/src/scripts/policy-device-profile.lua b/src/scripts/policy-device-profile.lua -index d0aa2696..9daeafaa 100644 ---- a/src/scripts/policy-device-profile.lua -+++ b/src/scripts/policy-device-profile.lua -@@ -229,4 +229,10 @@ self.om:connect("object-added", function (_, device) - handleProfiles (device, true) - end) - -+self.om:connect("object-removed", function (_, device) -+ local dev_id = device["bound-id"] -+ self.active_profiles[dev_id] = nil -+ self.best_profiles[dev_id] = nil -+end) -+ - self.om:activate() --- -GitLab - diff --git a/0001-src-setlocale-in-main-for-tools-and-the-daemon.patch b/0001-src-setlocale-in-main-for-tools-and-the-daemon.patch deleted file mode 100644 index 8c8738a..0000000 --- a/0001-src-setlocale-in-main-for-tools-and-the-daemon.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 7e6e0e9ba044ca95365f6ceb9f8ae301aac994ae Mon Sep 17 00:00:00 2001 -From: Pauli Virtanen -Date: Tue, 22 Mar 2022 20:51:02 +0200 -Subject: [PATCH] src: setlocale in main() for tools and the daemon - -Previously, pw_init calls setlocale(), but this will change in future. -Setting the locale should be done by the main application, and is needed -in wireplumber for e.g. for translated UI elements. - -Set the locale in main() for wireplumber daemon and tools, to have the -locale set also with the new pw_init behavior. - -Set also LC_NUMERIC to C, to match old pw_init behavior. ---- - src/main.c | 3 +++ - src/tools/wpctl.c | 3 +++ - src/tools/wpexec.c | 3 +++ - 3 files changed, 9 insertions(+) - -diff --git a/src/main.c b/src/main.c -index 3bfaf98e..7e12d29e 100644 ---- a/src/main.c -+++ b/src/main.c -@@ -10,6 +10,7 @@ - #include - #include - #include -+#include - - #define WP_DOMAIN_DAEMON (wp_domain_daemon_quark ()) - static G_DEFINE_QUARK (wireplumber-daemon, wp_domain_daemon); -@@ -402,6 +403,8 @@ main (gint argc, gchar **argv) - g_autoptr (WpProperties) properties = NULL; - g_autofree gchar *config_file_path = NULL; - -+ setlocale (LC_ALL, ""); -+ setlocale (LC_NUMERIC, "C"); - wp_init (WP_INIT_ALL); - - context = g_option_context_new ("- PipeWire Session/Policy Manager"); -diff --git a/src/tools/wpctl.c b/src/tools/wpctl.c -index 8b0fe0aa..81aa936f 100644 ---- a/src/tools/wpctl.c -+++ b/src/tools/wpctl.c -@@ -8,6 +8,7 @@ - - #include - #include -+#include - #include - #include - #include -@@ -1114,6 +1115,8 @@ main (gint argc, gchar **argv) - g_autoptr (GError) error = NULL; - g_autofree gchar *summary = NULL; - -+ setlocale (LC_ALL, ""); -+ setlocale (LC_NUMERIC, "C"); - wp_init (WP_INIT_ALL); - - ctl.context = g_option_context_new ( -diff --git a/src/tools/wpexec.c b/src/tools/wpexec.c -index 5e7a4b52..79d90e51 100644 ---- a/src/tools/wpexec.c -+++ b/src/tools/wpexec.c -@@ -10,6 +10,7 @@ - #include - #include - #include -+#include - - #define WP_DOMAIN_DAEMON (wp_domain_daemon_quark ()) - static G_DEFINE_QUARK (wireplumber-daemon, wp_domain_daemon); -@@ -219,6 +220,8 @@ main (gint argc, gchar **argv) - g_autoptr (GOptionContext) context = NULL; - g_autoptr (GError) error = NULL; - -+ setlocale (LC_ALL, ""); -+ setlocale (LC_NUMERIC, "C"); - wp_init (WP_INIT_ALL); - - context = g_option_context_new ("- WirePlumber script interpreter"); --- -GitLab - diff --git a/_service b/_service index cedc97d..db469b1 100644 --- a/_service +++ b/_service @@ -4,7 +4,7 @@ git https://gitlab.freedesktop.org/pipewire/wireplumber.git enable - 0.4.9 + 0.4.10 @PARENT_TAG@