|Reported by:||Fernando de Oliveira||Owned by:||Fernando de Oliveira|
Description (last modified by )
[pulseaudio-discuss] [ANNOUNCE] PulseAudio 8.0 is out! Arun Raghavan arun at accosted.net Thu Jan 21 23:51:25 PST 2016 ... Hello, I'm pleased to announce the availability of PulseAudio 8.0. A short summary of the changes in this release: * Automatic routing more likely to change profile * OS X and NetBSD support improvements * Systemd journal logging for clients * New LFE balance programming interface * Module-dbus-protocol improvements * More flexible configuration file handling * pulsecore-8.0.so moved to a private directory * New script for measuring memory consumption * Various bug fixes and small improvements Of note to packages is the availability of a more flexible configuration for distribution-specific config, and the change in installation path of the libpulsecore. ... Cheers and a good weekend, Arun
PulseAudio 8.0 release notes Changes at a glance [see above] Notes for end users Automatic routing more likely to change profile In case a sound card contains more than one profile (e g analog and HDMI profiles), module-switch-on-port-available will now switch away from the profile when no ports are available. E g, on a HTPC with headphones and HDMI outputs only, unplugging headphones will reroute the sound to HDMI, which did not work before. In addition, we also remember the last used profile for a port, so the expected HDMI profile is chosen (instead of just falling back to stereo). Note that many systems have HDMI and analog output on separate sound cards, so this might not improve the situation for all systems. OS X support improvements Some improvements were made to PulseAudio's OS X support. The most notable change is that the default configuration should now work out-of-the-box, thanks to adding module-coreaudio-detect to the default configuration. NetBSD support improvements PulseAudio is available to NetBSD users through the pkgsrc framework. The pkgsrc version of PulseAudio has carried many patches, most of which have now been applied upstream, so the difference between the upstream and pkgsrc versions is now much smaller. PULSE_LOG_JOURNAL environment variable If the PULSE_LOG_JOURNAL environment variable is defined, all client libraries will log their output to the systemd journal. (If both PULSE_LOG_JOURNAL and PULSE_LOG_SYSLOG are defined, logging to the systemd journal takes a higher precedence.) New script for measuring memory consumption A new script was created for measuring the server memory consumption growth when the number of clients increases. The script's location is scripts/benchmark_memory_usage.sh in the source code tree, and it's meant to only be run from the source code tree. Notes for application developers New LFE balance programming interface There's a new API for controlling the LFE (a.k.a. subwoofer) channel volume relative to all other (except mono and aux) channels. Some background: the "native" volume representation in PulseAudio is to have independent volume for each channel, but some UIs may prefer to have one "overall volume" slider and two sliders for controlling the left-right and rear-front balances. There have always been helper functions for mapping the left-right and rear-front balances to per-channel volumes and vice versa. The LFE channel is not included in any of the conversions, however. To allow users to also control the LFE channel volume some UIs (at least the Gnome sound configuration tool) have added the LFE channel control as a separate slider, but in practice that had weird interactions with the overall volume slider. To resolve this problem, we now have helper functions for controlling the balance between LFE and non-LFE channels, which allow changing the balance without affecting the overall volume. All applications that present the left-right and rear-front balances to the user are advised to start using the new API for dealing with the LFE volume. The new functions are pa_cvolume_get_lfe_balance, pa_cvolume_set_lfe_balance and pa_channel_map_can_lfe_balance. Module-dbus-protocol improvements Port and card profile availability is now visible through the D-Bus API. Notes for packagers More flexible configuration file handling The configuration files /etc/pulse/client.conf and /etc/pulse/daemon.conf can now be amended by creating files under /etc/pulse/client.conf.d and /etc/pulse/deamon.conf.d. This makes it easier for distributions to handle a situation where some configuration option should be set differently if a particular package is installed. Options set in the files installed in the .d directories override the options set in the main files. pulsecore-8.0.so moved to a private directory pulsecore-X.Y.so used to be installed in the top level /usr/lib directory, but that was not a good place for it, since it's an internal library not meant for applications. The library is now installed under /usr/lib/pulseaudio. git shortlog Ahmed S. Darwish (5): • log: Introduce PULSE_LOG_JOURNAL environment variable • log: Fix compilation error on non-systemd systems • build-sys: bootstrap.sh: Do a make only if configure has succeeded • scripts: Introduce benchmark_memory_usage.sh • scripts: Plot memory benchmarks using gnuplot Alexander E. Patrakov (1): • alsa-sink: Don't pretend to support passthrough on HDMI surround sinks Andrey Semashev (1): • soxr: Use soxr_clear() if libsoxr version is 0.1.2 or later. Arun Raghavan (15): • resampler: Don't expose soxr methods if they are not supported • tests: Set appropriate timeouts for a couple of tests • build: Add IRC notifications to Travis • sink: Make early drain reporting propagate down to filters • source: Deal with filter having more channels than the master • alsa: Use helper function for byte conversion across sample specs • tests: Make echo-cancel-test not crash • echo-cancel: Don't skip canceller when sink is inactive • build: Move to using Travis trusty images • daemon: Sanitise message about unsupported high res timers • alsa: Don't disable timer-based scheduling on USB devices • sink-input, source-output: Add some debug output on start_move() • stream: Clarify pa_stream_writable_size() documentation • build-sys: Use #ifdef with HAVE_FAST_64BIT_OPERATIONS • Update NEWS for 8.0 David Henningsson (23): • alsa-mixer: Add "Mic Boost" and "Line Boost" to analog-input.conf • client: Use pa_xnew0 when creating a client • card: Use pa_xnew0 when creating a card • shm: Warn on not being able to open shm files • card: Use pa_xmalloc0 when creating card profiles • module-alsa-card: Report available ports before unavailable ones • pstream: Fix use-after-free in srb_callback • alsa-mixer: Ignore volume with unexpected number of channels • volume: Refactor get/set balance/fade • volume: Add LFE balance API • alsa-mixer: Add "Front Headphone" to headset mic path • alsa-mixer: Return early in case of no mixer poll descriptors • card: Add variables for splitting up a profile • alsa-mixer: Fill in input and output names • device-port: Add preferred_profile field to pa_device_port • card: Update preferred_profile for ports when profile changes • card-restore: Save and restore "preferred profile" of port • module-switch-on-port-available: Use input and output names • module-switch-on-port-available: Route to preferred profile • module-card-restore: Remove "version" from internal entry struct • card: Only update port's preferred profile if profile is saved • typedefs.h: Move some typedefs to a separate file • gitignore: Add .orig and .rej to gitignore Deepak Srivastava (1): • Rename functions with "tostring" in the name to one with "to_string" to conform with the convention. Felipe Sateler (5): • daemon: Use Type=notify for systemd service • pulseaudio.1: document that systemd notification only works without daemonization • build-sys: Make pulsecore a private library • travis: Run make install in travis. • build-sys: Fix install order of libpulsecore Georg Chini (2): • null-sink: correct update of timestamp when state changes to RUNNING or IDLE • loopback: Validate the rate parameter Jason Gerecke (1): • bluetooth: Prevent aborts caused by invalid module arguments John Horan (1): • make availability of ports visible over dbus Juho Hämäläinen (2): • dbus: Add card profile availability info to API • alsa-mixer: Have valid proplist for synthesized path as well. Julien Isorce (2): • core-util: avoid calling fchmod if already right mode • thread-mainloop: keep SIGSYS unblocked if currently trapped Kamil Rytarowski (7): • netbsd: NetBSD ships with paccept(2) a superset of Linux-specific accept4() • netbsd: Improve handling of and headers • netbsd: Fix unportable test(1) construct • core-rtclock: Add missing declaration of struct timespec • core, pulse, modules: Fix undefined behavior with array subscript of invalid type • netbsd: Revamp NetBSD platform checks • NetBSD: Stop depending upon nonstandard __WORDSIZE KimJeongYeon (1): • module-tunnel: Fix double free Kiran Krishnappa (1): • module: Remove redundant core argument from pa_module_unload() Lev Melnikovsky (1): • rtp: fix non null terminated string / non portable sscanf Manish Sogi (1): • bluetooth: bluez4: Remove the unused "auto_connect" parameter as it is not used in bluez4 Mihai Moldovan (4): • configure.ac: add HAVE_COREAUDIO to automake and code. • default.pa.in: load module-coreaudio-detect if HAVE_COREAUDIO. • system.pa.in: load module-coreaudio-detect if HAVE_COREAUDIO. • module-coreaudio-device: get channel name as CFString and convert to plain C string. Mingye Wang (Arthur2e5) (1): • i18n: Updated zh_CN translation Nazar Mokrynskyi (1): • alsa-mixer: sb-omni-surround-5.1.conf: remove analog-surround-21, add Linux 4.3+ support Peter Mattern (1): • pacmd: Fix typo in set-default-* help Peter Meerwald (1): • core: Fallbacks for machine-id in filesystem Pierre Ossman (1): • context: continue without srbchannel if it fails Ross Burton (1): • git-version-gen: Avoid further processing when tarball-version is present Shawn Walker (1): • build-sys: don't use the nodelete linker flag on executables Takashi Iwai (1): • alsa-mixer: Recognize "Dock Line Out" jack Tanu Kaskinen (12): • alsa-mixer: Add "Dock Line Out" jack handling to analog-output-speaker-always • build-sys: fix the default bash completion directory • alsa-ucm: fix pa_device_port.profiles leak • man: document when system.pa is used instead of default.pa • man: remove a reference to pacmd from default.pa.5 • core-util: improve comments in pa_machine_id() • build-sys: fix PULSE_LOCALEDIR definition • conf-parser: add support for .d directories • client-conf, daemon-conf: enable .d directories • always-sink: simplify hook management with pa_module_hook_connect() • build-sys: bump sonames • build-sys: add typedefs.h to libpulsecore SOURCES Thomas Petazzoni (1): • pulsecore/packet: avoid redefinition of pa_packet structure Yuri Chornoivan (1): • i18n: Update Ukrainian translation Zbigniew Kempczyński (1): • alsa-sink: Avoid unloading alsa-sink module before calling try_recover() jungsup lee (1): • rtpoll: Fix build error when building with DEBUG_TIMING
Change History (4)
comment:2 by , 6 years ago
|Summary:||pulseaudio-7.99.1 - release candidate for 8.0 (placeholder) → pulseaudio-8.0|
Note: See TracTickets for help on using tickets.