|Home • About • Community • Download • Documentation • Planet|
[[!format rawhtml """
PulseAudio 4.0 Release Notes
TODO: Short introduction.
Notes for Application Developers
So far card profiles have been static, that is, the set of profiles on a card has never changed after the creation of the card object. While that has never been promised in the API documentation, it may be that some applications have the assumption that the profiles are static. Due to the nature of the Bluetooth protocol, it has turned out to be necessary to be able to add profiles to a card after it has been created. So, make sure your application doesn't crash or otherwise behave badly if new profiles suddenly appear on a card. It's best to prepare for profiles disappearing too.
Have you ever wanted to get a callback from pa_operation when it's cancelled (perhaps due to disconnection)? That's now possible with this new function: pa_operation_set_state_callback().
Notes for Packagers
D-Bus dependency version has been bumped to 1.4.12.
pa_format_info_free2 symbol has been dropped from libpulse. The pa_format_info_free2 symbol was never part of the public API, but was still exported in the ABI in the previous version of PulseAudio. It is now completely dropped. Since it was never exposed in any header files, the only programs affected should be test tools specifically looking for missing symbols.
Changes in More Detail
New Module: module-role-ducking
module-role-ducking lowers the volume of less important streams when a more important stream appears, and raises the volume back up once the important stream has finished (this is called "ducking"). The decision whether a stream has high or low priority is made based on the stream role (the media.role property). By default, "music" and "video" streams are ducked, and "phone" streams trigger the ducking. This module is not loaded by default.
[[!format txt """ TODO """]]