Highlights
- Sample rate switching should work again.
- pw-dot can now use the output of pw-dump to render a graph.
- Bluetooth A2DP streaming was improved that would reduce stuttering on some devices.
- A JACK bug was fixed that would sometimes make it impossible to add more tracks in Ardour. (#1714)
- Many bugfixes and improvements.
PipeWire
- Fix a potential crash when NULL params were configured.
- Add some simple functional tests to avoid some recent regressions. Improve the test framework for this as well.
- Improvements to the poll loop to avoid some use-after-free scenarios.
- Fix samplerate switching again.
- setlocale is not called anymore from the pipewire library. This should be called by the application. (#2223)
- pw_init() and pw_deinit() can now be nested and called multiple times.
- pw_stream will now report the resampler delay in the pw_time.queued field.
modules
- module-filter-chain now supports arbitrary many properties and will use property hints to assign them the right type.
- The ROC modules now accept a sink/source_properties parameter.
- The module-rt can now also be built without RT-Kit support.
- module-echo-cancel can now use a fraction to specify the delay for more precise control.
SPA
- The channelmixer will now do upmixing by default and will not use normalization. It will also use a simple upmixing algorithm that duplicates channels by default. A more interesting upmix method is also available (PSD) but needs to be enabled manually. (#861)
- Add SSE optimized (de)interleave functions for 32 bits samples with and without byteswap.
- JSON parsing of empty strings will now give an invalid number instead of 0.
- JSON numbers are now parsed and serialized in a locale independent way so that , and . are not mixed up.
- The resampler will now report the resample delay and queued samples as the extra delay.
tools
- pw-cat will read more dsf files correctly and will not crash at the end.
- pw-top now has a man page.
- pw-dot can now use the output of pw-dump to render a graph.
bluetooth
- Improve interactions with oFono.
- Fix recovery with slow connections.
- Improve frame size of AptX-ll.
- A2DP can now use any quantum and will flush packets in smaller chunks when needed to adapt. This improves stuttering in some cases.
pulse-server
- The server configuration can now be placed in pulse.properties section, which also makes it possible to have custom overrides.
- Implement FIX_ flags for capture as well.
- Small fixes and improvements in module loading.
JACK
- Clear the last error before executing a new action or else we could end up with error from a previous action. This causes some problems in Ardour where adding a track would fail after some time. (#1714)
Hoping the core dump with MPD issue is fixed in this release