diff -Nru pulseaudio-3.99.2/.tarball-version pulseaudio-4.0/.tarball-version --- pulseaudio-3.99.2/.tarball-version 2013-05-23 03:24:24.000000000 +0000 +++ pulseaudio-4.0/.tarball-version 2013-06-03 18:47:32.000000000 +0000 @@ -1 +1 @@ -3.99.2 +4.0 diff -Nru pulseaudio-3.99.2/.version pulseaudio-4.0/.version --- pulseaudio-3.99.2/.version 2013-05-23 03:24:24.000000000 +0000 +++ pulseaudio-4.0/.version 2013-06-03 18:47:32.000000000 +0000 @@ -1 +1 @@ -3.99.2 +4.0 diff -Nru pulseaudio-3.99.2/Makefile.in pulseaudio-4.0/Makefile.in --- pulseaudio-3.99.2/Makefile.in 2013-05-23 03:23:00.000000000 +0000 +++ pulseaudio-4.0/Makefile.in 2013-06-03 18:44:36.000000000 +0000 @@ -79,7 +79,7 @@ $(srcdir)/config.h.in $(srcdir)/libpulse-mainloop-glib.pc.in \ $(srcdir)/libpulse-simple.pc.in $(srcdir)/libpulse.pc.in \ $(top_srcdir)/configure $(top_srcdir)/src/pulse/version.h.in \ - compile config.guess config.rpath config.sub depcomp \ + NEWS compile config.guess config.rpath config.sub depcomp \ install-sh ltmain.sh missing mkinstalldirs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acx_libwrap.m4 \ diff -Nru pulseaudio-3.99.2/NEWS pulseaudio-4.0/NEWS --- pulseaudio-3.99.2/NEWS 1970-01-01 00:00:00.000000000 +0000 +++ pulseaudio-4.0/NEWS 2013-06-03 18:38:08.000000000 +0000 @@ -0,0 +1,55 @@ +PulseAudio 4.0 + +Changes at a glance: + + * Better handling of low latency requests + * Optimisations while mixing (generic, ARM NEON) + * Default resampler is now speex-float-1 (lower CPU usage) + * Major Bluetooth refactoring for better reliability and easier maintenance + * Fixes for graceful hand-off to/from JACK + * New module to apply ducking based on stream roles + * Echo canceller infrastructure fixes + * Bash and zsh completion for command line tools + * Solaris and OS X fixes + * Lots of other enhancements, bug fixes, and documenation and i18n updates + +Detailed change log: + + http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/4.0 + +Contributors: + + Akihiro Tsukada + Albert Zeyer + Arun Raghavan + Christoph Gysin + David Henningsson + Flavio Ceolin + Jarkko Suontausta + Javier Jardón + João Paulo Rechi Vita + Jyri Sarha + Luiz Augusto von Dentz + Maarten Lankhorst + Marc-Antoine Perennou + Martin Pitt + Matěj Laitl + Mikel Astiz + Paul Meng + Peter Meerwald + Peter Nelson + Piotr Drąg + poljar (Damir Jelić) + Robin H. Johnson + Stefan Huber + Ștefan Săftescu + Tanu Kaskinen + Vadim Troshchinskiy + Wang Xingchao + Yuri Chornoivan + +---- + +Change logs for previous versions can be seen at: + + http://www.freedesktop.org/wiki/Software/PulseAudio/Notes diff -Nru pulseaudio-3.99.2/configure pulseaudio-4.0/configure --- pulseaudio-3.99.2/configure 2013-05-23 03:22:56.000000000 +0000 +++ pulseaudio-4.0/configure 2013-06-03 18:44:34.000000000 +0000 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for pulseaudio 3.99.2. +# Generated by GNU Autoconf 2.69 for pulseaudio 4.0. # # Report bugs to . # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='pulseaudio' PACKAGE_TARNAME='pulseaudio' -PACKAGE_VERSION='3.99.2' -PACKAGE_STRING='pulseaudio 3.99.2' +PACKAGE_VERSION='4.0' +PACKAGE_STRING='pulseaudio 4.0' PACKAGE_BUGREPORT='pulseaudio-discuss (at) lists (dot) freedesktop (dot) org' PACKAGE_URL='http://pulseaudio.org/' @@ -1691,7 +1691,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures pulseaudio 3.99.2 to adapt to many kinds of systems. +\`configure' configures pulseaudio 4.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1761,7 +1761,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of pulseaudio 3.99.2:";; + short | recursive ) echo "Configuration of pulseaudio 4.0:";; esac cat <<\_ACEOF @@ -2023,7 +2023,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -pulseaudio configure 3.99.2 +pulseaudio configure 4.0 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2613,7 +2613,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by pulseaudio $as_me 3.99.2, which was +It was created by pulseaudio $as_me 4.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3555,7 +3555,7 @@ # Define the identity of the package. PACKAGE='pulseaudio' - VERSION='3.99.2' + VERSION='4.0' cat >>confdefs.h <<_ACEOF @@ -3700,7 +3700,7 @@ # The stable ABI for client applications, for the version info x:y:z # always will hold y=z -LIBPULSE_VERSION_INFO=16:1:16 +LIBPULSE_VERSION_INFO=16:2:16 # A simplified, synchronous, ABI-stable interface for client @@ -27618,7 +27618,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by pulseaudio $as_me 3.99.2, which was +This file was extended by pulseaudio $as_me 4.0, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -27685,7 +27685,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -pulseaudio config.status 3.99.2 +pulseaudio config.status 4.0 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -Nru pulseaudio-3.99.2/configure.ac pulseaudio-4.0/configure.ac --- pulseaudio-3.99.2/configure.ac 2013-05-23 03:22:47.000000000 +0000 +++ pulseaudio-4.0/configure.ac 2013-06-03 18:43:40.000000000 +0000 @@ -44,7 +44,7 @@ # The stable ABI for client applications, for the version info x:y:z # always will hold y=z -AC_SUBST(LIBPULSE_VERSION_INFO, [16:1:16]) +AC_SUBST(LIBPULSE_VERSION_INFO, [16:2:16]) # A simplified, synchronous, ABI-stable interface for client # applications, for the version info x:y:z always will hold y=z diff -Nru pulseaudio-3.99.2/debian/changelog pulseaudio-4.0/debian/changelog --- pulseaudio-3.99.2/debian/changelog 2013-05-23 05:10:13.000000000 +0000 +++ pulseaudio-4.0/debian/changelog 2013-06-20 13:15:22.000000000 +0000 @@ -1,17 +1,23 @@ -pulseaudio (1:3.99.2-0ubuntu1~raring1) raring; urgency=low +pulseaudio (1:4.0-0ubuntu1~raring2) raring; urgency=low [ Luke Yelavich ] * New upstream test release * Drop all patches originally taken from upstream * 0022-inotify-wrapper-Quit-daemon-if-pid-file-is-removed.patch: Refreshed * Update symbols files + * Update shlibs [ David Henningsson ] * 0019-disable-dbus-protocol.patch: Dropped, bug fixed upstream * 0007-handle-Master-Front.patch: Dropped. "Master Front" does not exist as of Linux 3.9 + * Drop references to pulseaudio-module-udev, pulseaudio-rygel-media-server and + pulseaudio-module-hal. We didn't have them in 12.04 and we don't support + upgrades bypassing 12.04. + * Ship new module-remap-source module and bash completion + * Add an build/run autopkgtest for libpulse-dev - -- Luke Yelavich Thu, 23 May 2013 15:09:54 +1000 + -- David Henningsson Thu, 20 Jun 2013 15:15:17 +0200 pulseaudio (1:3.0-0ubuntu7) saucy; urgency=low diff -Nru pulseaudio-3.99.2/debian/control pulseaudio-4.0/debian/control --- pulseaudio-3.99.2/debian/control 2013-05-23 05:10:13.000000000 +0000 +++ pulseaudio-4.0/debian/control 2013-06-17 22:34:36.000000000 +0000 @@ -33,6 +33,8 @@ libssl-dev, libtdb-dev, libudev-dev (>= 143) [linux-any], + libsystemd-daemon-dev [linux-any], + libsystemd-login-dev [linux-any], libwrap0-dev, libx11-xcb-dev, libxcb1-dev (>= 1.6), @@ -40,20 +42,17 @@ Standards-Version: 3.8.1 XS-Debian-Vcs-Git: git://git.debian.org/git/pkg-pulseaudio/pulseaudio.git XS-Debian-Vcs-Browser: http://git.debian.org/?p=pkg-pulseaudio/pulseaudio.git +XS-Testsuite: autopkgtest Vcs-Bzr: http://bazaar.launchpad.net/~ubuntu-audio-dev/pulseaudio/ubuntu Homepage: http://www.pulseaudio.org Package: pulseaudio Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, adduser, - lsb-base (>= 3.2-13), consolekit, + lsb-base (>= 3.2-13), libpam-systemd, udev (>= 143) [linux-any], libasound2-plugins [linux-any], libpulse0 (= ${binary:Version}) -Conflicts: libltdl3 (<< 1.5.24-1), pulseaudio-module-udev (<< ${binary:Version}), - pulseaudio-module-rygel-media-server (<< ${binary:Version}) -Replaces: pulseaudio-module-hal, pulseaudio-module-udev (<< ${binary:Version}), - pulseaudio-module-rygel-media-server (<< ${binary:Version}), - libpulse-browse0 (<< ${binary:Version}) +Conflicts: libltdl3 (<< 1.5.24-1) Provides: pulseaudio-module-hal, pulseaudio-module-udev, pulseaudio-module-rygel-media-server Recommends: pulseaudio-module-x11, gstreamer0.10-pulseaudio, rtkit, pulseaudio-utils @@ -90,7 +89,6 @@ Priority: extra Section: debug Depends: ${misc:Depends}, pulseaudio (= ${binary:Version}) -Replaces: pulseaudio-module-hal-dbg, pulseaudio-module-udev-dbg (<< ${binary:Version}), pulseaudio-module-rygel-media-server-dbg (<< ${binary:Version}) Description: PulseAudio sound server (debugging symbols) PulseAudio, previously known as Polypaudio, is a sound server for POSIX and WIN32 systems. It is a drop in replacement for the ESD sound server with diff -Nru pulseaudio-3.99.2/debian/libpulse0.symbols pulseaudio-4.0/debian/libpulse0.symbols --- pulseaudio-3.99.2/debian/libpulse0.symbols 2013-05-23 05:10:13.000000000 +0000 +++ pulseaudio-4.0/debian/libpulse0.symbols 2013-06-17 22:34:36.000000000 +0000 @@ -226,7 +226,7 @@ pa_operation_cancel@PULSE_0 1:0.99.1 pa_operation_get_state@PULSE_0 1:0.99.1 pa_operation_ref@PULSE_0 1:0.99.1 - pa_operation_set_state_callback@PULSE_0 1:3.99.1-0ubuntu1 + pa_operation_set_state_callback@PULSE_0 1:3.99.1 pa_operation_unref@PULSE_0 1:0.99.1 pa_parse_sample_format@PULSE_0 1:0.99.1 pa_path_get_filename@PULSE_0 1:0.99.1 diff -Nru pulseaudio-3.99.2/debian/pulseaudio-utils.install pulseaudio-4.0/debian/pulseaudio-utils.install --- pulseaudio-3.99.2/debian/pulseaudio-utils.install 2013-05-23 05:10:13.000000000 +0000 +++ pulseaudio-4.0/debian/pulseaudio-utils.install 2013-06-17 22:34:36.000000000 +0000 @@ -8,3 +8,4 @@ usr/bin/padsp usr/bin/pax11publish usr/bin/pasuspender +etc/bash_completion.d/pulseaudio-bash-completion.sh diff -Nru pulseaudio-3.99.2/debian/pulseaudio.install pulseaudio-4.0/debian/pulseaudio.install --- pulseaudio-3.99.2/debian/pulseaudio.install 2013-05-23 05:10:13.000000000 +0000 +++ pulseaudio-4.0/debian/pulseaudio.install 2013-06-17 22:34:36.000000000 +0000 @@ -17,7 +17,7 @@ usr/lib/pulse-*/modules/module-alsa-sink.so usr/lib/pulse-*/modules/module-alsa-source.so usr/lib/pulse-*/modules/module-always-sink.so -usr/lib/pulse-*/modules/module-console-kit.so +usr/lib/pulse-*/modules/module-systemd-login.so usr/lib/pulse-*/modules/module-device-restore.so usr/lib/pulse-*/modules/module-echo-cancel.so usr/lib/pulse-*/modules/module-stream-restore.so @@ -49,6 +49,7 @@ usr/lib/pulse-*/modules/module-pipe-source.so usr/lib/pulse-*/modules/module-position-event-sounds.so usr/lib/pulse-*/modules/module-remap-sink.so +usr/lib/pulse-*/modules/module-remap-source.so usr/lib/pulse-*/modules/module-rescue-streams.so usr/lib/pulse-*/modules/module-rtp-recv.so usr/lib/pulse-*/modules/module-rtp-send.so diff -Nru pulseaudio-3.99.2/debian/pulseaudio.shlibs pulseaudio-4.0/debian/pulseaudio.shlibs --- pulseaudio-3.99.2/debian/pulseaudio.shlibs 2013-05-23 05:10:13.000000000 +0000 +++ pulseaudio-4.0/debian/pulseaudio.shlibs 2013-06-17 22:34:36.000000000 +0000 @@ -1 +1 @@ -libpulsecore 3.99 pulseaudio +libpulsecore 4.0 pulseaudio diff -Nru pulseaudio-3.99.2/debian/rules pulseaudio-4.0/debian/rules --- pulseaudio-3.99.2/debian/rules 2013-05-23 05:10:13.000000000 +0000 +++ pulseaudio-4.0/debian/rules 2013-06-17 22:34:36.000000000 +0000 @@ -56,8 +56,8 @@ LDFLAGS += -Wl,--no-as-needed DEB_CONFIGURE_EXTRA_FLAGS = --enable-x11 --disable-hal-compat \ --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \ - --with-module-dir=\$${prefix}/lib/pulse-3.99/modules -DEB_DH_MAKESHLIBS_ARGS_ALL = --exclude=usr/lib/pulse-3.99/modules + --with-module-dir=\$${prefix}/lib/pulse-4.0/modules +DEB_DH_MAKESHLIBS_ARGS_ALL = --exclude=usr/lib/pulse-4.0/modules DEB_DH_INSTALL_ARGS = --sourcedir=$(CURDIR)/debian/tmp DEB_UPDATE_RCD_PARAMS = start 50 2 3 4 5 . stop 15 1 . diff -Nru pulseaudio-3.99.2/debian/tests/build pulseaudio-4.0/debian/tests/build --- pulseaudio-3.99.2/debian/tests/build 1970-01-01 00:00:00.000000000 +0000 +++ pulseaudio-4.0/debian/tests/build 2013-06-17 22:34:36.000000000 +0000 @@ -0,0 +1,30 @@ +#!/bin/sh +# autopkgtest check: Build and run a program against pulseaudio, to verify that the +# headers and pkg-config file are installed correctly +# (C) 2013 Canonical Ltd. +# Author: Martin Pitt +# Author: David Henningsson + +set -e + +WORKDIR=$(mktemp -d) +trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM +cd $WORKDIR +cat < buildtest.c +#include +#include + +int main() +{ + pa_mainloop * ml = pa_mainloop_new(); + assert(ml); + pa_mainloop_free(ml); + return 0; +} +EOF + +gcc -o buildtest buildtest.c $(pkg-config --cflags --libs libpulse) +echo "build: OK" +[ -x buildtest ] +./buildtest +echo "run: OK" diff -Nru pulseaudio-3.99.2/debian/tests/control pulseaudio-4.0/debian/tests/control --- pulseaudio-3.99.2/debian/tests/control 1970-01-01 00:00:00.000000000 +0000 +++ pulseaudio-4.0/debian/tests/control 2013-06-17 22:34:36.000000000 +0000 @@ -0,0 +1,2 @@ +Tests: build +Depends: libpulse-dev, build-essential diff -Nru pulseaudio-3.99.2/src/modules/macosx/module-coreaudio-device.c pulseaudio-4.0/src/modules/macosx/module-coreaudio-device.c --- pulseaudio-3.99.2/src/modules/macosx/module-coreaudio-device.c 2012-11-19 09:32:25.000000000 +0000 +++ pulseaudio-4.0/src/modules/macosx/module-coreaudio-device.c 2013-06-03 12:45:31.000000000 +0000 @@ -183,7 +183,7 @@ struct userdata *u; pa_sample_spec *ss; bool is_source; - UInt32 v, total = 0; + UInt32 v = 0, total = 0; UInt32 err, size = sizeof(v); AudioObjectPropertyAddress property_address; AudioObjectID stream_id; @@ -205,26 +205,35 @@ pa_assert(u); - property_address.mScope = kAudioObjectPropertyScopeGlobal; + property_address.mScope = is_source ? kAudioDevicePropertyScopeInput : kAudioDevicePropertyScopeOutput; property_address.mElement = kAudioObjectPropertyElementMaster; /* get the device latency */ property_address.mSelector = kAudioDevicePropertyLatency; - size = sizeof(total); - AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &total); - total += v; + size = sizeof(v); + err = AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &v); + if (!err) + total += v; + else + pa_log_warn("Failed to get device latency: %i", err); /* the IOProc buffer size */ property_address.mSelector = kAudioDevicePropertyBufferFrameSize; size = sizeof(v); - AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &v); - total += v; + err = AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &v); + if (!err) + total += v; + else + pa_log_warn("Failed to get buffer frame size: %i", err); /* IOProc safety offset - this value is the same for both directions, hence we divide it by 2 */ property_address.mSelector = kAudioDevicePropertySafetyOffset; size = sizeof(v); - AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &v); - total += v / 2; + err = AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &v); + if (!err) + total += v / 2; + else + pa_log_warn("Failed to get safety offset: %i", err); /* get the stream latency. * FIXME: this assumes the stream latency is the same for all streams */ @@ -233,11 +242,15 @@ err = AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &stream_id); if (!err) { property_address.mSelector = kAudioStreamPropertyLatency; + property_address.mScope = kAudioObjectPropertyScopeGlobal; size = sizeof(v); err = AudioObjectGetPropertyData(stream_id, &property_address, 0, NULL, &size, &v); if (!err) total += v; - } + else + pa_log_warn("Failed to get stream latency: %i", err); + } else + pa_log_warn("Failed to get streams: %i", err); return pa_bytes_to_usec(total * pa_frame_size(ss), ss); } diff -Nru pulseaudio-3.99.2/src/pulse/version.h pulseaudio-4.0/src/pulse/version.h --- pulseaudio-3.99.2/src/pulse/version.h 2013-05-23 03:23:13.000000000 +0000 +++ pulseaudio-4.0/src/pulse/version.h 2013-06-03 18:44:59.000000000 +0000 @@ -35,7 +35,7 @@ /** Return the version of the header files. Keep in mind that this is a macro and not a function, so it is impossible to get the pointer of it. */ -#define pa_get_headers_version() ("3.99.0") +#define pa_get_headers_version() ("4.0.0") /** Return the version of the library the current application is * linked to. */ @@ -52,10 +52,10 @@ #define PA_PROTOCOL_VERSION 28 /** The major version of PA. \since 0.9.15 */ -#define PA_MAJOR 3 +#define PA_MAJOR 4 /** The minor version of PA. \since 0.9.15 */ -#define PA_MINOR 99 +#define PA_MINOR 0 /** The micro version of PA (will always be 0 from v1.0 onwards). \since 0.9.15 */ #define PA_MICRO 0