- Update to version 0.4.15:
* Additions:
- A new "DSP policy" module has been added; its purpose is to
automatically load a filter-chain when a certain hardware
device is present, so that audio always goes through this
software DSP before reaching the device. This is mainly to
support Apple M1/M2 devices, which require a software DSP
to be always present
- WpImplModule now supports loading module arguments directly
from a SPA-JSON config file; this is mainly to support DSP
configuration for Apple M1/M2 and will likely be reworked
for 0.5
- Added support for automatically combining Bluetooth LE Audio
device sets (e.g. pairs of earbuds) (!500)
- Added command line options in wpctl to display device/node
names and nicknames instead of descriptions
- Added zsh completions file for wpctl
- The device profile selection policy now respects the
device.profile property if it is set on the device; this is
useful to hand-pick a profile based on static configuration
rules (alsa_monitor.rules)
* Changes/Fixes:
- Linking policy now sends an error to the client before
destroying the node, if it determines that the node cannot be
linked to any target; this fixes error reporting on the
client side
- Fixed a crash in suspend-node that could happen when
destroying virtual sinks that were loaded from another
process such as pw-loopback
- Virtual machine default period size has been bumped to 1024
OBS-URL: https://build.opensuse.org/request/show/1117592
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/wireplumber?expand=0&rev=60
- Update to version 0.4.14:
* Additions
- Add support for managing Bluetooth-MIDI, complementing the
parts that were merged in PipeWire recently.
- Add a default volume configuration option for streams whose
volume has never been saved before; that allows starting new
streams at a lower volume than 100% by default, if desired.
- Add support for managing link errors and propagating them to
the client(s) involved. This allows better error handling on
the application side in case a format cannot be negotiated -
useful in video streams.
- snd_aloop devices are now described as being "Loopback"
devices.
- ALSA nodes in the pro audio profile now get increased graph
priority, so that they are more likely to become the driver
in the graph.
- Add support for disabling libcamera nodes & devices with
node.disabled and device.disabled, like it works for ALSA
and V4L2.
- Drop reduce-meson-required-version.patch: openSUSE Leap 15.3 is
no longer supported.
- Drop patches already included upstream:
* 0001-alsa-monitor-handle-snd_aloop-devices-better.patch
* 0001-spa-json-make-sure-we-only-add-encoded-string-data.patch
* 0001-m-lua-scripting-ignore-string-integer-table-keys-when-constructing-a-JSON-Array-Object.patch
OBS-URL: https://build.opensuse.org/request/show/1077110
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/wireplumber?expand=0&rev=22
- Backport the workaround from SLE/Leap for the bug in systemd
scripts that didn't set the default enable state for the
wireplumber user service when installing wireplumber. The bug
(boo#1200485) was fixed but that's only for new installations
while this workaround will fix old installations (boo#1202008).
This is used to automatically fix installations of
SLE 15 SP4/Leap 15.4 that were not updated during it's lifetime
and upgrade directly to SP5/15.5 .
OBS-URL: https://build.opensuse.org/request/show/1058202
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/wireplumber?expand=0&rev=56
- 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
- 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
- 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.
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/wireplumber?expand=0&rev=43
- Update to version 0.4.9:
* Fixes:
- restore-stream no longer crashes if properties for it are not
present in the config (#190)
- spa-json no longer crashes on non-x86 architectures
- Fixed a potential crash in the bluetooth auto-switch module
(#193)
- Fixed a race condition that would cause Zoom desktop audio
sharing to fail (#197)
- Surround sound in some games is now exposed properly
(pipewire#876)
- Fixed a race condition that would cause the default source &
sink to not be set at startup
- policy-node now supports the 'target.object' key on streams
and metadata
- Multiple fixes in policy-node that make the logic in some
cases behave more like PulseAudio (regarding nodes with the
dont-reconnect property and regarding following the default
source/sink)
- Fixed a bug with parsing unquoted strings in spa-json
* Misc:
- The policy now supports configuring "persistent" device
profiles. If a device is manually set to one of these
profiles, then it will not be auto-switched to another
profile automatically under any circumstances (#138, #204)
- The device-activation module was re-written in lua
- Brave, Edge, Vivaldi and Telegram were added in the bluetooth
auto-switch applications list
- ALSA nodes now use the PCM name to populate node.nick, which
is useful at least on HDA cards using UCM, where all outputs
OBS-URL: https://build.opensuse.org/request/show/964074
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/wireplumber?expand=0&rev=35