PipeWire 0.3.52 (2022-06-09)
This is a bugfix release that is API and ABI compatible with previous 0.3.x releases.
- Add 44.1KHz to allowed samplerates. The server can now switch by default between 48KHz and 44.1KHz.
- Streams now allocate less resources.
- Fix some bugs that could make the server crash.
- Bluetooth now supports the LC3plus vendor codec.
- Many bugfixes and improvements.
- Add 44.1KHz to allowed samplerates.
- Avoid setting the locale.
- Avoid use-after-free when destroying a node from spa-node-factory.
- Avoid using reallocarray when not available.
- Set port alias is not otherwise set.
- Improve filter-chain parsing and error reporting. Handle empty nodes. (#1950)
- Handle destroy of globals and factory in most modules. (#565)
- Add refcounts to client and resources to handle destroy of the protocol. (#565)
- Handle global node.name in filter-chain and loopback again, use it to construct unique stream names.
- Avoid a wrapped pw-node in the adapter. This reduces resources allocated for streams.
- Fix a crash when module-x11-bell was unloaded. (#2392)
- Add a new module-pipe-tunnel that can write/read data from a UNIX pipe.
- Fix DSD playback again in pw-cat.
- Add -n option to pw-loopback to set node names.
- Add -P option to pw-cat to pass properties to the stream.
- Support stdin/stdout in pw-cat. (#2387)
- pw-dump now also dumps object removal when monitoring. (#2426)
- Avoid duplicate param results in pw-dump for ports.
- Avoid endless loops in audioconvert for badly behaving client. (#2359)
- Scale max-error in alsa based on quantum and avoid logging a warning when starting.
- Improve debug of failed format conversion. (#2383)
- Handle offset in the audio dsp mixer inputs and clamp to the max buffer size.
- Add option to disable locale support for JSON number conversion.
- Add support for Astro A20 Gen2.
- Fix some of the test sources, the flags were not set correctly.
- Add camera location as property in libcamera and let the session manager Generate a localized description.
- Fix some crashes due to wrong vargar types in v4l2 controls. (#2400)
- Improve ALSA resync behaviour. (#2257)
- Add support for Komplete Audio 6 MK2.
- Improve loop cancel while iterating.
- Try not to mix surround channels and AUX channels. Make card with many ports look better when not using the Pro Audio profile.
- Vulkan filters were added.
- Add LC3plus vendor codec.
- Handle unsupported indicators better.
- Ensure multiple devices on an adapter use different codecs because one endpoint can only be used by one device at a time.
- Fix bitpool control as a follower.
- Handle bluetooth errors better.
- Speed up bluetooth connection by only waiting for the profiles supported by the adapter.
- The dummy AVRCP player is disabled by default because it seems to break more devices than it fixes.
- Add initial stream latency property so that devices can be started with a resonably accurate latency.
- Fix ringbuffer underrun case. (#2366)
- module-native-protocol-tcp now has a auth-anonymous option to give full access to the clients.
- Report a node as being moved when it is still moving. This improves compatibility with pasystray.
- Avoid overallocating message memory.
- Don't export NETWORK nodes in zeroconf. (#2384)
- Fix stride for TrueHD and DTSHD passthrough. (#2284)
- Make sure we don't send too small audio fragments. Fixes capture from multiple tabs in Chrome. (#2418)
- Rework module handling some more.
- Use the new native module-pipe-tunnel for pipe-sink and pipe-source.
- Implement the STREAM_MOVED message when a stream got moved. (#2407)
- Fix a potential segfault when stopping the server and a TCP module as still loaded.
- Add support for updating sw_params at runtime, mostly the min-avail param.
- Capture and playback nodes are now assumed to use a different clock and will activate the adaptive resampler when linked. This assumption is removed in Pro Audio mode. This provide a better experience out of the box with most devices.
- Fix setting properties with PIPEWIRE_PROPS again.
- Don't use 64 bits atomic operations for sync_timeout. (#1867)
- Cleanup in error cases was improved, avoiding some crashes. (#2394)