[ANNOUNCE] PulseAudio 3.0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi folks,
I'm pleased to announce that PulseAudio 3.0 is now out!

For those of you following the release candidates, there has been only
one minor commit since 2.99.3. A full set of release notes is up at
(props to Tanu for populating most of it):

http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/3.0

The tl;dr version for the lazy is: easier setup when your device is a
Bluetooth source, some ARM NEON optimisations, configurable latency
offsets, ALSA UCM support for embedded folks, and a _lot_ of other fixes
and infrastructure changes.

Packagers, please do look at the packaging section on the wiki for some
changes that you should be aware of.

Tarballs are at:

http://freedesktop.org/software/pulseaudio/releases/pulseaudio-3.0.tar.xz
MD5: cc6e7cafff9249c5066263ee578662de
SHA1: 875ee8c39bb8413007004ffd31f6b35d6508a194

Our thanks go out to all contributors, old and new, for being awesome
and contributing to PulseAudio. Special mentions for our 3 GSoC students
whose work is also included in this release. We hope to continue seeing
their names in the shortlog in future releases.

A new version of Pavucontrol will follow soon, exposing some of the new
features that have been added in recent times.

Cheers,
Arun

----

Andika Triwidada (1):
      i18n: Add Indonesian translation.

Arti Trivedi Bora (4):
      modules: Use pa_streq instead of strcmp.
      pulsecore: Use pa_streq instead of strcmp.
      tests: use pa_streq instead of strcmp
      daemon: use pa_streq instead of strcmp

Arun Raghavan (68):
      sink-input,source-output: Avoid unneccessary rate updates
      role-cork: Fix a minor leak
      core-util: Add a pa_split_in_place() string utility function
      core-util: Make pa_make_secure_dir() act like mkdir -p
      auth: Create cookie directory if it doesn't exist
      pactl: Print sink-input/source-output corked status
      glib: Stop using g_source_get_current_time()
      core-util: Fix permissions handling while creating directories
      Revert "role-cork: Fix a minor leak"
      role-cork: Fix incorrect check at deinitialisation time
      Revert "Revert "role-cork: Fix a minor leak""
      role-cork: Fix another minor leak
      alsa: Allow channel count probe on open by mapping
      alsa: Add a proplist to mappings
      alsa: Add separate sinks/sources for UCM modifiers if needed
      i18n: Remove module-hal-detect reference in POTFILES
      echo-cancel: Print what AEC engine is being used
      build: Avoid libstdc++ dep for module-echo-cancel if possible
      i18n: module-coreaudio-device now has some translatable strings
      build: Fix distcheck failure on libwebrtc-util
      tests: Factor out Orc test code into cpu-test
      tests: Make cpu-test less verbose
      build: Merge bluez pkg-config checks into one
      Revert "build: Merge bluez pkg-config checks into one"
      stream: Allow record streams to start muted
      core: Separate ARM CPU detection from initialisation
      tests: Factor out ARM svolume test into cpu-test
      tests: Minor cpu-test reorganisation
      core: Document ARM-optimised svolume code a bit
      core: Fix a litte-endian bug in ARM svolume code
      tests: Add a copyright header to cpu-test
      tests: Factor out core sconv test code in cpu-test
      tests: Reorganise cpu-test to reuse code
      tests: Add a basic sanity test to sconv cpu-test
      tests: Run sconv tests with multiple alignments
      build-sys: Add volume code to libpulsecommon
      sconv: Fix NEON sconv rounding code
      tests: Allow off-by-one error in sconv test
      tests: Increase sconv cpu-test timeout
      tests: Print average outer-loop iteration time in cpu-test
      tests: Minor cpu-test fixes for non-NEON builds
      core: Fix warning on non-win32 builds
      tests: Run svolume test for various sample alignments
      tests: Make cpu-test less verbose
      tests: Run svolume on different channel counts
      tests: Fix a cpu-test debug message
      build-sys: Drop -Wvla from compiler flags
      tests: Minor alignment adjustment fix for cpu-test
      svolume: Fix ARM alignment issues
      Revert "core: adjust playing_for and underrun_for at rewind"
      build-sys: Bump soname
      i18n: Fix POTFILES for poll changes
      build-sys: Document libpulsecommon vs. libpulse duplication
      alsa: Drop verbosity on UCM message
      Revert "tests: modify alsa-time-test to use 'check' framework"
      introspect: Minor documentation fix
      man: Correction for how sample rate switching is disabled
      sink, source: Prevent unnecessary rate update attempts
      modules: Micro-optimisation for rewind_requested paths
      build-sys: Bump BlueZ dependency to 4.99
      build-sys: Bump soname
      build-sys: Drop ChangeLog generation
      source-output: Fix volume fixup for rate update
      sink-input, source-output: Check rate update success for passthrough
      core: Remove bad free() call
      alsa: Try to support non-standard rates in alsa-sink/source
      build-sys: Bump soname
      build-sys: Bump soname

Chan-yeol Park (1):
      bluetooth: Remove ipc.[ch] files in the bluetooth module

Colin Walters (1):
      git-version-gen: Honor GIT_DESCRIBE_FOR_BUILD environment variable

David Henningsson (22):
      once: Fix race causing pa_once to sometimes run twice
      alsa-mixer: Add special profiles for some laptops missing speaker and/or internal mic
      alsa-mixer: Add Phantom Jack support
      alsa-mixer: Always turn "Inverted Internal Mic" off
      alsa-mixer: Add "Front Headphone" jack
      alsa-mixer: Document "state.plugged" and "state.unplugged"
      alsa-mixer: Add "Front Headphone Jack" (fixup)
      alsa-mixer: Add "Headphone Mic" support for 3-pin ASUS netbooks
      resampler: Fix volume on downmix to mono
      alsa-mixer: Add "iec958-stereo-input" to well known path names
      flist: Increase default list size to 256
      alsa-mixer: Cache failure to open inputs/output mappings
      alsa-mixer: Remove analog-output-lfe-on-mono
      cli: Output asterisk when default sink/source is found
      alsa-sink/source: Warn for scheduling delays
      alsa-mixer: Don't let "Mic Jack Mode" alone create a "Line In" path
      alsa-mixer: Add a few more machines to internal mic whitelist
      alsa-mixer: Add "CLFE" and "Bass Speaker" names
      alsa-mixer: Prefer "Digital Input Source:Digital Mic 1"
      alsa udev quirks: Add some more Dell devices to speaker whitelist
      alsa-mixer: Add Dell Inspiron One 2020 to mic whitelist
      alsa-mixer: Add device.icon-name property for some common ports

Deng Zhengrong (48):
      cli: Add set-log-target command for pacmd
      daemon: use pa_streq instead of plain strcmp
      x11: fix the wrong parameter sequence in pax11publish
      build: Add gcov coverage support
      pacmd: add help info for 'set-log-target'
      xen: add the HAVE_CONFIG_H macro guard
      add a new log target that enables to create new log file if it exists
      bluetooth: add a parenthesis around pa_streq()
      man: document option `set-log-target`
      core: add more verbose error info
      build-sys: add `check` test framework
      tests: modify mix-test to use new 'check' test framework
      tests: add cpu test
      tests: modify mainloop-test to use new 'check' framework
      tests: modify utf8-test to use new 'check' test framework
      tests: modify strlist-test to use new 'check' framework
      build: add a target to ease the creation of coverage files
      tests: enable to test standalone pulseaudio daemon
      tests: modify volume_test to use new 'check' framework
      tests: modify usergroup-test to use 'check' test framework
      tests: modify format-test to use 'check' framework
      tests: modify get-binary-name-test to use 'check' framework
      tests: modify thread-test to use 'check' framework
      tests: modify thread-mainloop-test to use 'check' framework
      tests: modify alsa-time-test to use 'check' framework
      tests: modify asyncmsgq-test to new 'check' framework
      tests: modify asyncq-test to use 'check' framework
      tests: modify channelmap-tets to use 'check' framework
      tests: modify cpulimit-test to use 'check' framework
      tests: modify queue-test to use 'check' framework
      tests: modify connect-stress to use 'check' framework
      tests: modify memblock-test to use 'check' framework
      tests: modify proplist-test to use 'check' framework
      tests: modify memblockq-test to use 'check' framework
      tests: modify hook-list-test to use 'check' framework
      tests: modify extended-test to use 'check' framework
      tests: modify sync-playback to use 'check' framework
      tests: modify smoother-test to use 'check' framework
      tests: modify interpol-test to use 'check' framework
      tests: modify sigbus-test to use 'check' framework
      tests: modify sig2str-test to use 'check' framework
      tests: modify rtpoll-test to use 'check' framework
      tests: modify lock-autospawn-test to use 'check' framework
      tests: modify once-test to use 'check' framework
      tests: modify ipacl-test to use 'check' framework
      tests: fix the wrong library path in check-daemon
      tests: make 'check' optional
      build: fix Mac OS X configure process

Eero Nurkkala (2):
      alsa-sink: add missing header 'signal.h'
      alsa-source: add missing header 'signal.h'

Feng Wei (3):
      alsa: Integrate UCM basic functions
      alsa: Add UCM jack detection
      alsa: Catch role matched streams to enable/disable modifier

Flavio Ceolin (4):
      sink-input: Remove redundant check in pa_sink_input_request_rewind().
      modargs: New function: pa_modargs_get_value_double().
      pulse: Fix for volume documentation
      utils: Adding a function to get volume from string

Fr?d?ric Dalleau (6):
      loopback: Enable routing on loopback streams
      bluetooth: module-bluetooth-policy initial commit
      pacmd: Display inputs and outputs PASSTHROUGH flag
      loopback: Cork sink-input if source is suspended
      loopback: Cork source-output if sink is suspended
      resampler: Fix crash if 'auto' resampler chooses ffmpeg with variable rate

Fr?d?ric Danis (2):
      bluetooth: Fix crash on disconnection
      bluetooth: Fix bluetooth.nrec property not updated

Harsh Prateek Bora (2):
      modules: Use PA_IDXSET_FOREACH wherever applicable.
      pulsecore: Use PA_IDXSET_FOREACH wherever applicable.

Ismo Puustinen (2):
      ladspa: D-Bus interface for setting algorithm parameters on-the-fly.
      ladspa: Added a python script for testing.

Jan Alexander Steffens (heftig) (1):
      alsa-mixer: Actually install analog-input-headphone-mic.conf

Jarkko Nikula (2):
      alsa: move pa_alsa_setting_select close to pa_alsa_path_select
      alsa: Merge pa_alsa_setting_select with pa_alsa_path_select

Jarkko Suontausta (1):
      bluetooth: Release transport when the pa_rtpoll_run loop finishes.

Juho H?m?l?inen (1):
      stream-restore: Add missing method handler argument.

Lennart Poettering (14):
      util: XDG_SESSION_COOKIE is unsuitable as session ID
      proplist: document new meaning of the session ID
      util: /etc/machine-id should be tried first, the D-Bus only as fallback for legacy systems
      util: use the return value of gethosid() as fallback, not the address of the function
      build-sys: readd stub makefiles to subdirectories to make building with emacs easier
      build-sys: remove HAL support, it's obsolete since years
      rtkit: update drop-in files
      context: get rid of really old runtime dir logic, i.e. break compat with >4y-old PA
      util: hook up pa_get_runtime_dir() with XDG_RUNTIME_DIR
      core-util: move configuration home directory from ~/,pulse to ~/.config/pulse to follow XDG basedir spec
      man: update man pages to only refer to the new place for the configuration files
      core-util: when searching for configuration files, honour XDG basedir spec
      auth: move cookie file to ~/.config/pulse/cookie
      gnome: start PA early in the gnome session

Luiz Augusto von Dentz (2):
      bluetooth: Remove built-in/static SBC codec
      bluetooth: Don't force any profile on discovery module

Marc-Antoine Perennou (1):
      udev: Don't use deprecated udev_get_*_path() functions

Martin-?ric Racine (1):
      manpage, finnish translation: fix spelling errors

Matthijs Kooijman (1):
      equalizer: Don't cleanup u->sink in sink_input_kill_cb yet

Mihai Moldovan (1):
      core-util: use the generic PATH_MAX variant of pa_realpath on Mac OS X

Mikel Astiz (67):
      bluetooth: Don't use the old socket IPC mechanism with BlueZ
      bluetooth: Refactor property parsing code
      bluetooth: Remove library for IPC to BlueZ
      bluetooth: Minor style fixes
      bluetooth: Consider different input and output MTU
      bluetooth: Avoid duplicating profile argument twice
      bluetooth: Replace deprecated ListAdapters()
      bluetooth: Replace deprecated ListDevices()
      bluetooth: Remove minor unnecessary check
      bluetooth: Minor style fix
      bluetooth: Fix missing state checks for a2dp_source
      bluetooth: Fix bluetooth.protocol property
      bluetooth: Trivial style fix
      bluetooth: Generalize module-bluetooth-policy
      bluetooth: Support HFGW in module-bluetooth-policy
      loopback: Disable adjust timer when suspended
      bluetooth: Remove return value of bt_transport_config()
      bluetooth: Remove return value of setup_stream()
      bluetooth: Refactor parsing of signal PropertyChanged
      bluetooth: Refactor code to helper function
      bluetooth: Fix wrongly set "phone" role for HFGW
      bluetooth: Fix using garbage memory
      bluetooth: Fix check if transport exists before acquire
      sink, source: Support creating suspended sinks and sources
      bluetooth: Provide dummy set_port callbacks
      bluetooth: Config MTU transport after acquire
      bluetooth: Support port availability flag
      bluetooth: Set profile even if transport not acquired
      bluetooth: Do not acquire transport during profile change
      bluetooth: Acquire transport when becomes available
      bluetooth: Release transport when not available
      bluetooth: Do not switch to HFGW automatically
      bluetooth: Let suspend-on-idle request audio in headset
      bluetooth: Add port availability transition policies
      bluetooth: Ignore Device.DisconnectRequested
      bluetooth: Trivial function rename
      bluetooth: Fix potential assertion failure
      bluetooth: Don't find device if set profile is off
      bluetooth: Release transport in stop_thread()
      bluetooth: Unlink sink-sources in stop_thread()
      bluetooth: Remove stream moving code
      bluetooth: Use assertions when setting off profile
      bluetooth: Check return value of init_profile()
      bluetooth: Check return value of start_thread()
      bluetooth: Remove const qualifier for transports
      bluetooth: Add hook to tell transport was removed
      bluetooth: Set to off if transport removed
      bluetooth: Set to off instead of failing module load
      bluetooth: Hold transport pointer while profile set
      bluetooth: Remove const qualifier for device
      bluetooth: Add hook to tell device was removed
      bluetooth: Self unload module-bluetooth-device
      bluetooth: Hold device pointer while module loaded
      bluetooth: Refactor code to create card profiles
      bluetooth: Refactor code to create profile ports
      card: Support adding profiles dynamically
      card: Support adding ports dynamically
      bluetooth: Add hook to announce late UUIDs
      bluetooth: Rename former device_is_audio()
      bluetooth: Run the discovery hook only when necessary
      bluetooth: Merge headset ports into one
      bluetooth: Disable profile auto-switch policy for headsets
      conf: Load bluetooth-policy module by default
      bluetooth: Trivially refactor to call setup_stream() directly
      bluetooth: Do not setup stream before thread starts
      bluetooth: Request headset audio during profile switch
      bluetooth: Fix unacquired transports during sink resume

Niels Ole Salscheider (3):
      virtual-surround: Add silence to hrir if necessary.
      virtual-surround: Limit the number of hrir samples.
      virtual-surround: check if resampled memblock is not equal to input

Paul Menzel (1):
      Fix spelling of separated: s, sepera, separa, g

Peter Meerwald (13):
      pipe: whitespace and log output cleanup
      pipe: check return value of mkfifo()
      memblock: Fix typos.
      build: Fix static linking
      core: Set volumes const in pa_do_volume_func_t
      modules: Add null/dummy echo canceller
      daemon: Fix redundant redeclaration warning
      svolume_arm: Fix a const warning.
      echo-cancel: Fix false warning in webrtc AEC.
      rtp: Fix warning using pa_assert_not_reached()
      core: Add ARM NEON optimized sample conversion code
      tests: Fix test description in cpu-test
      tests: Implement test code for ARM NEON sconv s16_to_float

Pierre-Louis Bossart (1):
      alsa: get avail, delay, timestamps in a single kernel call

Sjoerd Simons (2):
      build-sys: webrtc-utils needs to be installed before module-echo-cancel
      build-sys: Correct bluez support error if sbc is missing

Sjors Gielen (1):
      osx: Add a single "On" profile to coreaudio devices. Fixes crash on OS X.

Tanu Kaskinen (51):
      device-port: Create the profiles hashmap at initialization.
      device-port: Remove an out-of-date comment.
      native: Don't save device, volume or mute of new streams.
      sink, source: Fix setting the latency offset when the sink/source is unlinked.
      Fix a copy-paste error in PROTOCOL.
      pulse: Use more intuitive indexing with port infos in introspect.c.
      proplist: Change proplist_name_valid() to be public function pa_proplist_key_valid().
      tagstruct: Allow NULL proplist with pa_tagstruct_get_proplist().
      conf-parser: Pass parser state in a struct instead of function parameters.
      conf-parser: Pass parser state in a struct also for parse callbacks.
      conf-parser: Add support for parsing property lists.
      alsa-mixer: Add support for defining port property lists in the path configuration files.
      native: Send the actual port proplists with card info.
      pactl: Print card port properties with the "list" command.
      card: Don't crash if someone gives NULL name to pa_card_set_profile().
      sink, source: Always create a hashmap for ports.
      card: Ensure that there's always at least one profile.
      Assume that the profiles hashmap of ports is always non-NULL.
      Assume that the ports hashmap of cards is always non-NULL.
      card-restore: Handle reading NULL profile name from the database.
      alsa-mixer: Implement a new path option: "mute-during-activation".
      build-sys: Link utf8-test to libpulsecommon.
      Add comments referring to bug #53709.
      memblock: Add pa_memblock_acquire_chunk().
      object: Get rid of "warning: cast increases required alignment of target type"
      sink-input: Fix comment: s/push/peek/
      sink-input: Add a comment in pa_sink_input_request_rewind().
      sink: Remove an incorrect FIXME comment.
      bluetooth: Remove commented out code.
      .gitignore: Add cpu-test.
      rtp: Fix rtp_port reading.
      card: Store a pa_card pointer in pa_card_profile.
      build: Add a2dp-codecs.h to libbluetooth-util sources.
      memblockq: Fix the order of setting minreq and prebuf.
      resampler: Make sure that there are no overflows when multiplying potentially big numbers.
      loopback: Use the real sample spec once it's known.
      loopback: Don't fix the source output format/rate/channels.
      virtual-surround-sink: Fix setting max_request and max_rewind.
      combine: Keep the timer active in the null mode only when running.
      match: Use the SINK_INPUT_FIXATE hook instead of NEW.
      build: Add .gitignore files to EXTRA_DIST.
      device-restore: When restoring volume, print the restored volume to the log.
      build: Add PROTOCOL to EXTRA_DIST.
      pulse: Fix hole handling in pa_stream_peek().
      mainloop: Change wakeup_requested type from pa_bool_t to pa_atomic_t.
      mainloop: Don't care about the mainloop state variable when waking up the mainloop.
      sink: Process rewind requests also when suspended.
      bluetooth: Add a pa_bluetooth_discovery pointer to pa_bluetooth_device.
      bluetooth: Ignore Device.Connected
      bluetooth: Add helper pa_bluetooth_device_any_audio_connected()
      bluetooth: Unload device module when no audio profiles connected

Thomas Martitz (7):
      pacat: Enable binary mode on Windows.
      core: Transparently handle non-blocking sockets on Windows
      pacat: Replace read(), write() with pa_* equivalent.
      core: Slightly more helpful pa_cstrerror for unknown errors
      gccmacro: Disable printf-like format checking on mingw32 compilers.
      core: Proper poll() emulation to fix pacat and friends on Windows
      core-util: Don't error out on existing runtime directory.

Uoti Urpala (2):
      sink-input: Fix underrun_for calculation when resampling.
      core: adjust playing_for and underrun_for at rewind

Wieland Hoffmann (1):
      man pulse-daemon.conf: Correct typoes

poljar (8):
      pacmd: Added --help and --version descriptions to the man page.
      native: Use foreach to iterate trough modules.
      pactl: Add unloading modules by name.
      pacmd: Add unloading modules by name.
      bluetooth: Add ports to the bluetooth sink/source
      device-port: Add a latency variable to the port struct
      sink, source: Add a latency offset which is inherited from the port
      pacmd: Add functions to handle the latency offset

poljar (Damir Jelic) (2):
      introspect: Add functions to handle the latency offset.
      pactl: Add set-latency-offset command.

poljar (Damir Jeli?) (5):
      device-port: Change the latency offset type to a signed int.
      conf-parser: Initialize the state to zero immediately.
      device-port: Send a subscription event when the offset changes.
      man: Add latency offset documentation to the cli syntax.
      card-restore: Add the ability to save and restore the latency offset.



[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux