Changes between Initial Version and Version 1 of Ticket #7302

01/22/2016 04:26:26 PM (6 years ago)
Fernando de Oliveira


  • Ticket #7302

    • Property Milestone hold
  • Ticket #7302 – Description

    initial v1  
    1 []
    3 This is a release candidate for 8.0.
    5 To be included in the book only if needed by some other package.
     58678442ba0bb4b4c33ac6f62542962df  pulseaudio-8.0.tar.xz
    8 [pulseaudio-discuss] [ANNOUNCE] PulseAudio 8.0 RC1
     10[pulseaudio-discuss] [ANNOUNCE] PulseAudio 8.0 is out!
    911Arun Raghavan arun at
    10 Mon Dec 28 04:56:42 PST 2015
    12 Hi folks,
    13 As promised, master has been frozen for the 8.0 release. I've rolled
    14 out the RC1 tarball (7.99.1, as usual). Please test and file bugs if
    15 you see regressions. Get it at:
    18 MD5: 257bf53e4cb00227d7d1abb964655c7c
    19 SHA1: e5ad51227c4833e7c1955683fd4cf9ec7f4bf8df
    21 In addition to the usual set of bug fixes and misc improvements,
    22 interesting changes include a new balance-based volume API, routing
    23 improvements, and .d directory support.
    25 >From a packaging perspective, the last bit is likely interesting (you
    26 can ship distro config as separate files instead of mucking about with
    27 the current file in /etc/pulse). Also of note is the move of
    28 libpulsecore out of libdir since it's a private library.
    30 We'll have a detailed changelog with the final release, of course.
    32 Cheers!
     12Thu Jan 21 23:51:25 PST 2016
     17I'm pleased to announce the availability of PulseAudio 8.0. A short
     18summary of the changes in this release:
     20 * Automatic routing more likely to change profile
     21 * OS X and NetBSD support improvements
     22 * Systemd journal logging for clients
     23 * New LFE balance programming interface
     24 * Module-dbus-protocol improvements
     25 * More flexible configuration file handling
     26 * moved to a private directory
     27 * New script for measuring memory consumption
     28 * Various bug fixes and small improvements
     30Of note to packages is the availability of a more flexible
     31configuration for distribution-specific config, and the change in
     32installation path of the libpulsecore.
     36Cheers and a good weekend,
     43PulseAudio 8.0 release notes
     44Changes at a glance
     46[see above]
     48Notes for end users
     50Automatic routing more likely to change profile
     52In case a sound card contains more than one profile (e g analog and HDMI
     53profiles), module-switch-on-port-available will now switch away from the
     54profile when no ports are available. E g, on a HTPC with headphones and
     55HDMI outputs only, unplugging headphones will reroute the sound to HDMI,
     56which did not work before. In addition, we also remember the last used
     57profile for a port, so the expected HDMI profile is chosen (instead of
     58just falling back to stereo).
     60Note that many systems have HDMI and analog output on separate sound
     61cards, so this might not improve the situation for all systems.
     63OS X support improvements
     65Some improvements were made to PulseAudio's OS X support. The most
     66notable change is that the default configuration should now work
     67out-of-the-box, thanks to adding module-coreaudio-detect to the default
     70NetBSD support improvements
     72PulseAudio is available to NetBSD users through the pkgsrc framework.
     73The pkgsrc version of PulseAudio has carried many patches, most of which
     74have now been applied upstream, so the difference between the upstream
     75and pkgsrc versions is now much smaller.
     77PULSE_LOG_JOURNAL environment variable
     79If the PULSE_LOG_JOURNAL environment variable is defined, all client
     80libraries will log their output to the systemd journal. (If both
     81PULSE_LOG_JOURNAL and PULSE_LOG_SYSLOG are defined, logging to the
     82systemd journal takes a higher precedence.)
     84New script for measuring memory consumption
     86A new script was created for measuring the server memory consumption
     87growth when the number of clients increases. The script's location is
     88scripts/ in the source code tree, and it's
     89meant to only be run from the source code tree.
     91Notes for application developers
     93New LFE balance programming interface
     95There's a new API for controlling the LFE (a.k.a. subwoofer) channel
     96volume relative to all other (except mono and aux) channels.
     98Some background: the "native" volume representation in PulseAudio is to
     99have independent volume for each channel, but some UIs may prefer to
     100have one "overall volume" slider and two sliders for controlling the
     101left-right and rear-front balances. There have always been helper
     102functions for mapping the left-right and rear-front balances to
     103per-channel volumes and vice versa. The LFE channel is not included in
     104any of the conversions, however. To allow users to also control the LFE
     105channel volume some UIs (at least the Gnome sound configuration tool)
     106have added the LFE channel control as a separate slider, but in practice
     107that had weird interactions with the overall volume slider.
     109To resolve this problem, we now have helper functions for controlling
     110the balance between LFE and non-LFE channels, which allow changing the
     111balance without affecting the overall volume. All applications that
     112present the left-right and rear-front balances to the user are advised
     113to start using the new API for dealing with the LFE volume.
     115The new functions are pa_cvolume_get_lfe_balance,
     116pa_cvolume_set_lfe_balance and pa_channel_map_can_lfe_balance.
     118Module-dbus-protocol improvements
     120Port and card profile availability is now visible through the D-Bus API.
     122Notes for packagers
     124More flexible configuration file handling
     126The configuration files /etc/pulse/client.conf and
     127/etc/pulse/daemon.conf can now be amended by creating files under
     128/etc/pulse/client.conf.d and /etc/pulse/deamon.conf.d. This makes it
     129easier for distributions to handle a situation where some configuration
     130option should be set differently if a particular package is installed.
     131Options set in the files installed in the .d directories override the
     132options set in the main files.
     133 moved to a private directory
     135 used to be installed in the top level /usr/lib
     137directory, but that was not a good place for it, since it's an internal
     138library not meant for applications. The library is now installed under
     141git shortlog
     143Ahmed S. Darwish (5):
     144    • log: Introduce PULSE_LOG_JOURNAL environment variable
     145    • log: Fix compilation error on non-systemd systems
     146    • build-sys: Do a make only if configure has succeeded
     147    • scripts: Introduce
     148    • scripts: Plot memory benchmarks using gnuplot
     150Alexander E. Patrakov (1):
     151    • alsa-sink: Don't pretend to support passthrough on HDMI surround
     152      sinks
     154Andrey Semashev (1):
     155    • soxr: Use soxr_clear() if libsoxr version is 0.1.2 or later.
     157Arun Raghavan (15):
     158    • resampler: Don't expose soxr methods if they are not supported
     159    • tests: Set appropriate timeouts for a couple of tests
     160    • build: Add IRC notifications to Travis
     161    • sink: Make early drain reporting propagate down to filters
     162    • source: Deal with filter having more channels than the master
     163    • alsa: Use helper function for byte conversion across sample specs
     164    • tests: Make echo-cancel-test not crash
     165    • echo-cancel: Don't skip canceller when sink is inactive
     166    • build: Move to using Travis trusty images
     167    • daemon: Sanitise message about unsupported high res timers
     168    • alsa: Don't disable timer-based scheduling on USB devices
     169    • sink-input, source-output: Add some debug output on start_move()
     170    • stream: Clarify pa_stream_writable_size() documentation
     171    • build-sys: Use #ifdef with HAVE_FAST_64BIT_OPERATIONS
     172    • Update NEWS for 8.0
     174David Henningsson (23):
     175    • alsa-mixer: Add "Mic Boost" and "Line Boost" to analog-input.conf
     176    • client: Use pa_xnew0 when creating a client
     177    • card: Use pa_xnew0 when creating a card
     178    • shm: Warn on not being able to open shm files
     179    • card: Use pa_xmalloc0 when creating card profiles
     180    • module-alsa-card: Report available ports before unavailable ones
     181    • pstream: Fix use-after-free in srb_callback
     182    • alsa-mixer: Ignore volume with unexpected number of channels
     183    • volume: Refactor get/set balance/fade
     184    • volume: Add LFE balance API
     185    • alsa-mixer: Add "Front Headphone" to headset mic path
     186    • alsa-mixer: Return early in case of no mixer poll descriptors
     187    • card: Add variables for splitting up a profile
     188    • alsa-mixer: Fill in input and output names
     189    • device-port: Add preferred_profile field to pa_device_port
     190    • card: Update preferred_profile for ports when profile changes
     191    • card-restore: Save and restore "preferred profile" of port
     192    • module-switch-on-port-available: Use input and output names
     193    • module-switch-on-port-available: Route to preferred profile
     194    • module-card-restore: Remove "version" from internal entry struct
     195    • card: Only update port's preferred profile if profile is saved
     196    • typedefs.h: Move some typedefs to a separate file
     197    • gitignore: Add .orig and .rej to gitignore
     199Deepak Srivastava (1):
     200    • Rename functions with "tostring" in the name to one with
     201      "to_string" to conform with the convention.
     203Felipe Sateler (5):
     204    • daemon: Use Type=notify for systemd service
     205    • pulseaudio.1: document that systemd notification only works
     206      without daemonization
     207    • build-sys: Make pulsecore a private library
     208    • travis: Run make install in travis.
     209    • build-sys: Fix install order of libpulsecore
     211Georg Chini (2):
     212    • null-sink: correct update of timestamp when state changes to
     213      RUNNING or IDLE
     214    • loopback: Validate the rate parameter
     216Jason Gerecke (1):
     217    • bluetooth: Prevent aborts caused by invalid module arguments
     219John Horan (1):
     220    • make availability of ports visible over dbus
     222Juho Hämäläinen (2):
     223    • dbus: Add card profile availability info to API
     224    • alsa-mixer: Have valid proplist for synthesized path as well.
     226Julien Isorce (2):
     227    • core-util: avoid calling fchmod if already right mode
     228    • thread-mainloop: keep SIGSYS unblocked if currently trapped
     230Kamil Rytarowski (7):
     231    • netbsd: NetBSD ships with paccept(2) a superset of Linux-specific
     232      accept4()
     233    • netbsd: Improve handling of  and  headers
     234    • netbsd: Fix unportable test(1) construct
     235    • core-rtclock: Add missing declaration of struct timespec
     236    • core, pulse, modules: Fix undefined behavior with array subscript
     237      of invalid type
     238    • netbsd: Revamp NetBSD platform checks
     239    • NetBSD: Stop depending upon nonstandard __WORDSIZE
     241KimJeongYeon (1):
     242    • module-tunnel: Fix double free
     244Kiran Krishnappa (1):
     245    • module: Remove redundant core argument from pa_module_unload()
     247Lev Melnikovsky (1):
     248    • rtp: fix non null terminated string / non portable sscanf
     250Manish Sogi (1):
     251    • bluetooth: bluez4: Remove the unused "auto_connect" parameter as
     252      it is not used in bluez4
     254Mihai Moldovan (4):
     255    • add HAVE_COREAUDIO to automake and code.
     256    • load module-coreaudio-detect if HAVE_COREAUDIO.
     257    • load module-coreaudio-detect if HAVE_COREAUDIO.
     258    • module-coreaudio-device: get channel name as CFString and convert
     259      to plain C string.
     261Mingye Wang (Arthur2e5) (1):
     262    • i18n: Updated zh_CN translation
     264Nazar Mokrynskyi (1):
     265    • alsa-mixer: sb-omni-surround-5.1.conf: remove analog-surround-21,
     266      add Linux 4.3+ support
     268Peter Mattern (1):
     269    • pacmd: Fix typo in set-default-* help
     271Peter Meerwald (1):
     272    • core: Fallbacks for machine-id in filesystem
     274Pierre Ossman (1):
     275    • context: continue without srbchannel if it fails
     277Ross Burton (1):
     278    • git-version-gen: Avoid further processing when tarball-version is
     279      present
     281Shawn Walker (1):
     282    • build-sys: don't use the nodelete linker flag on executables
     284Takashi Iwai (1):
     285    • alsa-mixer: Recognize "Dock Line Out" jack
     287Tanu Kaskinen (12):
     288    • alsa-mixer: Add "Dock Line Out" jack handling to
     289      analog-output-speaker-always
     290    • build-sys: fix the default bash completion directory
     291    • alsa-ucm: fix pa_device_port.profiles leak
     292    • man: document when is used instead of
     293    • man: remove a reference to pacmd from
     294    • core-util: improve comments in pa_machine_id()
     295    • build-sys: fix PULSE_LOCALEDIR definition
     296    • conf-parser: add support for .d directories
     297    • client-conf, daemon-conf: enable .d directories
     298    • always-sink: simplify hook management with
     299      pa_module_hook_connect()
     300    • build-sys: bump sonames
     301    • build-sys: add typedefs.h to libpulsecore SOURCES
     303Thomas Petazzoni (1):
     304    • pulsecore/packet: avoid redefinition of pa_packet structure
     306Yuri Chornoivan (1):
     307    • i18n: Update Ukrainian translation
     309Zbigniew Kempczyński (1):
     310    • alsa-sink: Avoid unloading alsa-sink module before calling
     311      try_recover()
     313jungsup lee (1):
     314    • rtpoll: Fix build error when building with DEBUG_TIMING