The release of the sound server PulseAudio 17.0 has been announced, which acts as an intermediary between applications and various low-level audio subsystems, abstracting hardware interaction. PulseAudio allows volume control and sound mixing at the level of individual applications, organizes audio input, mixing, and output when multiple input and output channels or sound cards are present, enables on-the-fly changes to audio stream formats and the use of plugins, and allows transparent redirection of audio streams to another machine. The PulseAudio code is distributed under the LGPL 2.1+ license. It supports operation on Linux, Solaris, FreeBSD, OpenBSD, DragonFlyBSD, NetBSD, macOS, and Windows.
It is noted that there are not many improvements in the new branch PulseAudio 17.0, and the project development has recently slowed down as the community's main focus is now on the development of multimedia. server Pipewire, the WirePlumber sound session manager, and related projects. Key improvements in PulseAudio 17.0:
- The method of reflecting ALSA UCM (Use Case Manager) sound routing settings in PulseAudio profiles has been changed. Instead of generating combined ports for all non-conflicting devices (i.e., devices not marked as conflicting and not using the same PlaybackPCM and CapturePCM), a single PulseAudio profile is now created. Additionally, different inputs and outputs are now presented as separate sources and sinks rather than as different ports within a single source and sink.
- Improved battery level indication for Bluetooth devices. Host devices based on PulseAudio can now also transmit battery level information to external Bluetooth devices; for example, when a PulseAudio-based device is connected to a car infotainment system, this system will display the battery level of the connected device.
- Support for the Bluetooth codec FastStream has been added, allowing for higher quality bidirectional audio.
- The webrtc-audio-processing library has been updated to version 1.3, which improves echo suppression and increases resistance to sampling frequency drift.
- In the module-role-cork module, the ability to use role groups as a trigger for muting and unmuting sound has been implemented.
- When loading ALSA profiles, file paths now follow the XDG specification (first $XDG_DATA_HOME, then $XDG_DATA_DIRS, and finally the old path).
- The maximum supported sample rate (PA_RATE_MAX) has been increased to 768kHz.
Source: opennet.ru
