Peter Meerwald [Thu, 23 Oct 2014 14:09:45 +0000 (16:09 +0200)]
tagstruct: Distinguish pa_tagstruct_new() use cases
pa_tagstruct_new() is called either with no data, i.e. (NULL, 0)
to create a dynamic tagstruct or with a pointer to fixed data
introduce a new function pa_tagstruct_new_fixed() for the latter case
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Alexander E. Patrakov [Sun, 22 Feb 2015 11:39:14 +0000 (16:39 +0500)]
echo-cancel: fix the obviously-wrong "buffer+=buffer" logic
Same bug as in module-loopback, pointed out by Georg Chini in a private
email.
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
Jaska Uimonen [Thu, 6 Nov 2014 13:52:02 +0000 (15:52 +0200)]
socket-server: add tcp support for systemd socket activation
Tanu Kaskinen [Wed, 4 Feb 2015 21:50:24 +0000 (23:50 +0200)]
alsa: Don't access pa_sink/source_new_data after done() has been called
This change doesn't affect behaviour, because accessing boolean fields
in the new data was safe even after the done() call, but it was still
bad style.
Muhammet Kara [Sun, 22 Feb 2015 11:17:14 +0000 (13:17 +0200)]
i18n: Updated Turkish translation
Peter Meerwald [Thu, 19 Feb 2015 13:23:16 +0000 (14:23 +0100)]
alsa: Fix spelling of officially
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Tanu Kaskinen [Tue, 17 Feb 2015 19:40:13 +0000 (21:40 +0200)]
tagstruct: Refactor writing/reading basic types
While adding functions for writing and reading pa_bvolume structs, I
found myself wondering if I could make it simpler to write and read
the basic types that a pa_bvolume consists of, without having to worry
about network byte ordering, remembering to call extend() and getting
the length and read index adjustments just right. This is what I came
up with.
There is a functional change too: previously the
pa_tagstruct_get_foo() functions didn't modify the read index in case
of errors, but now, due to read_tag() modifying the read index at an
early stage, the read index gets modified also in case of errors. I
have checked the call sites, and I believe there's no code that would
rely on the "no read index modification on error" property of the old
functions. If reading anything from a tagstruct fails, the whole
tagstruct is considered invalid (typically resulting in a protocol
error and client connection teardown).
Alexander E. Patrakov [Wed, 11 Feb 2015 16:50:47 +0000 (21:50 +0500)]
module-loopback: don't use 0 for custom source output message id
Message id 0 is PA_SOURCE_OUTPUT_MESSAGE_GET_LATENCY. So, every time PulseAudio
sent PA_SOURCE_OUTPUT_MESSAGE_GET_LATENCY message to the loopback source output,
it actually hit the SOURCE_OUTPUT_MESSAGE_LATENCY_SNAPSHOT handler instead. As a
result, the SOURCE_OUTPUT_MESSAGE_LATENCY_SNAPSHOT handler was called when not
intended, the default PA_SOURCE_OUTPUT_MESSAGE_GET_LATENCY handler was not called
at all, and the latency was thus evaluated incorrectly.
Reported-by: Georg Chini <georg@chini.tk>
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
David Henningsson [Mon, 16 Feb 2015 09:41:54 +0000 (10:41 +0100)]
alsa-util: Make two of the warnings "debug" instead of "error"
...because we will later try with plug:* which will probably succeed,
so this is not an error.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Peter Meerwald [Sat, 15 Nov 2014 12:33:19 +0000 (13:33 +0100)]
alsa-util: No logging when sound card only supports non-interleaved sample format
as suggested by
https://bugs.freedesktop.org/show_bug.cgi?id=84804
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Andrey Semashev [Wed, 14 Jan 2015 19:22:04 +0000 (22:22 +0300)]
Added documentation for soxr resampling methods.
Andrey Semashev [Wed, 14 Jan 2015 19:22:03 +0000 (22:22 +0300)]
Added libsoxr detection and optional build of soxr resampler backend.
Andrey Semashev [Wed, 14 Jan 2015 19:22:02 +0000 (22:22 +0300)]
Enabled libsoxr resampler backend.
Added ID and names for the resampler presets and also updated the working sample rate deduction to take the new resampler into account. The initial libsoxr backend version does not variable rate resampling, so it is disabled in this case.
Andrey Semashev [Wed, 14 Jan 2015 19:22:01 +0000 (22:22 +0300)]
Added libsoxr resampler backend.
The new backend supports 3 quality levels: mq, hq and vhq; 16-bit integer and 32-bit float samples. Discussion and quality assessment are here:
http://comments.gmane.org/gmane.comp.audio.pulseaudio.general/22158
Peter Meerwald [Mon, 17 Nov 2014 10:34:59 +0000 (11:34 +0100)]
pacat: State purpose of program depending how it was invoked
see https://bugs.freedesktop.org/show_bug.cgi?id=68135
state purpose of paplay/parec/pamon/parecord/pacat when invoked with -h
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Mon, 17 Nov 2014 10:02:25 +0000 (11:02 +0100)]
man: Install man page symlinks to pacat for paplay, parec, parecord, pamon
see https://bugs.freedesktop.org/show_bug.cgi?id=68135
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Mon, 17 Nov 2014 09:44:31 +0000 (10:44 +0100)]
man: Drop separate paplay man page, move info to pacat man page
see https://bugs.freedesktop.org/show_bug.cgi?id=68135
pacat and paplay man pages both claim to describe the paplay program
(which is actually a symlink to pacat) -- this is inconsistent and
redundant, so drop the paplay man page
a follow-up patch will add man page symlink for all programs
implemented by pacat, not just paplay
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Sat, 15 Nov 2014 15:06:22 +0000 (16:06 +0100)]
man: Describe optional prefix {string} in server address
see https://bugs.freedesktop.org/show_bug.cgi?id=84024
v2: (thanks Tanu Kaskinen)
* fix wording wrt machine id
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Sat, 15 Nov 2014 14:24:22 +0000 (15:24 +0100)]
context: pa_context_connect() with PA_CONTEXT_NOFAIL should return 0 when waiting for PA on D-Dus
see
https://bugs.freedesktop.org/show_bug.cgi?id=85011
in case NOAUTOSPAWN is set and no server has been specified, PA starts listening on DBUS
for a new server, and the state is PA_CONTEXT_CONNECTING, but pa_context_connect()
returns -1; it should return 0.
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Tanu Kaskinen [Wed, 7 Jan 2015 14:56:50 +0000 (16:56 +0200)]
dynarray: Add PA_DYNARRAY_FOREACH
The PA_DYNARRAY_FOREACH macro requires that pa_dynarray_get() returns
NULL if the index is out of bounds.
Tanu Kaskinen [Wed, 7 Jan 2015 14:56:49 +0000 (16:56 +0200)]
dynarray: Add pa_dynarray_remove_by_data()
Tanu Kaskinen [Wed, 7 Jan 2015 14:56:48 +0000 (16:56 +0200)]
dynarray: Add pa_dynarray_remove_by_index()
Also, remove the talk about "fast" variants of functions that remove
entries from an array. Currently there's no need for order-preserving
functions, so all functions are "fast".
Tanu Kaskinen [Wed, 7 Jan 2015 14:56:47 +0000 (16:56 +0200)]
dynarray: Add pa_dynarray_last()
Alexander E. Patrakov [Wed, 31 Dec 2014 07:28:03 +0000 (12:28 +0500)]
Make pa_socket_server_new static
While at it, also remove SOCKET_SERVER_GENERIC, because it is always
being overwritten with a specific socket type.
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
Tanu Kaskinen [Mon, 3 Nov 2014 09:47:58 +0000 (11:47 +0200)]
socket-server: pa_socket_server_new() can't fail, so don't check its return value
An assertion was already used in pa_socket_server_new_unix(), this
makes the TCP variants consistent with that.
Even if pa_socket_server_new() could fail, the error handling wasn't
good, because there was no "goto fail", meaning that the fd would have
been leaked.
David Henningsson [Thu, 12 Feb 2015 14:09:38 +0000 (15:09 +0100)]
Update NEWS file
Some more contributors during the RC cycle.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Tanu Kaskinen [Fri, 6 Feb 2015 22:15:34 +0000 (00:15 +0200)]
alsa: Don't try to use ELD controls with UCM
This fixes a crash that occurred when trying to access non-existent
port data. Doing this:
pa_alsa_port_data *data = PA_DEVICE_PORT_DATA(port);
is not a good idea when using UCM, because in the UCM mode ports don't
have any data, so the data pointer points to some random memory.
Arun Raghavan [Tue, 3 Feb 2015 06:02:57 +0000 (11:32 +0530)]
shell-completion: bash: Fix pactl list source-outputs
Georg Chini [Sat, 31 Jan 2015 21:05:27 +0000 (22:05 +0100)]
loopback: Don't push zero-sized block to memblockq
During my work on module-loopback I found a bug that sometimes crashes pulse when
module-loopback is loaded due to pushing a zero-length block into the memblockq.
As there is a one-line fix I thought you might want it for 6.0.
Arun Raghavan [Sat, 31 Jan 2015 05:04:48 +0000 (10:34 +0530)]
build-sys: libwebrtc-util needs libpulsecore
David Henningsson [Thu, 29 Jan 2015 15:24:35 +0000 (10:24 -0500)]
alsa-mixer: Make speaker unavailable when Line Out is plugged in
ALSA mutes speaker when Line Out is plugged in by default, so
we should follow that convention.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Tanu Kaskinen [Thu, 29 Jan 2015 11:53:08 +0000 (13:53 +0200)]
alsa-mixer: Add lineout to surround21 mappings
This makes the analog-surround-21 mapping consistent with other
surround mappings. I'm not sure if this makes any practical
difference, though.
David Henningsson [Wed, 28 Jan 2015 20:10:55 +0000 (15:10 -0500)]
module-device-restore: Fix memory leak in read_sink_format_reply
This function could sometimes leak a perportentry.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Wed, 21 Jan 2015 14:06:53 +0000 (15:06 +0100)]
protocol-native: Disable srbchannel by default
Recent testing has shown some srbchannel related bugs that
indicates that the srbchannel feature is not ready to be enabled
by default.
Therefore, temporary disable it for the 6.0 release and re-enable
it in git master once 6.0 is released.
Bugs:
https://bugs.freedesktop.org/show_bug.cgi?id=88452
https://bugs.freedesktop.org/show_bug.cgi?id=88167
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Ondrej Holecek [Wed, 26 Nov 2014 13:14:51 +0000 (14:14 +0100)]
update FSF addresses to FSF web page
FSF addresses used in PA sources are no longer valid and rpmlint
generates numerous warnings during packaging because of this.
This patch changes all FSF addresses to FSF web page according to
the GPL how-to: https://www.gnu.org/licenses/gpl-howto.en.html
Done automatically by sed-ing through sources.
Tanu Kaskinen [Tue, 13 Jan 2015 20:36:17 +0000 (22:36 +0200)]
i18n: Fix up the Turkish translation
The translation was not added to LINGUAS and there was this error from
msgfmt:
tr.po:2801: 'msgid' and 'msgstr' entries do not both begin with '\n'
kozdincer [Mon, 12 Jan 2015 14:17:11 +0000 (16:17 +0200)]
i18n: Add Turkish translation
David Henningsson [Tue, 13 Jan 2015 10:28:16 +0000 (11:28 +0100)]
alsa-mixer: Mute headphones and speakers on line out path
When line out path is active, we want to mute speakers for obvious
reasons, and headphones to avoid volume spikes.
Reported-by: TienFu Chen <tienfu.chen@canonical.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Boris Egorov [Mon, 12 Jan 2015 17:52:12 +0000 (23:52 +0600)]
pacmd: add missing 'else' keyword
See code above for proper behavior.
Issue detected by PVS Studio
Boris Egorov [Mon, 12 Jan 2015 17:52:11 +0000 (23:52 +0600)]
tunnel: use proper value for pa_source_state switch
pa_source_state_t can have value PA_SOURCE_INVALID_STATE, not
PA_SINK_INVALID_STATE. It happens to be the same here, but it can break
sometimes.
Issue detected by PVS Studio.
Boris Egorov [Mon, 12 Jan 2015 17:52:10 +0000 (23:52 +0600)]
alsa-util: fix parenthesis position in err assignment
Issue detected by CppCheck and PVS Studio
Wim Taymans [Wed, 7 Jan 2015 10:20:01 +0000 (11:20 +0100)]
svolume.orc: avoid parameter loading undefined behaviour
In some cases, depending on the instruction that performs the load, orc
ignores the size of the parameter when loading it for the first time.
Explicitly load the parameter into a temp to make sure it is loaded
correctly, like we do for the 2ch case.
See https://bugzilla.gnome.org/show_bug.cgi?id=742271
David Henningsson [Thu, 8 Jan 2015 12:11:17 +0000 (13:11 +0100)]
memblock: Fix more block ID collisions
Since the srb memblock and the audio data were coming from separate
pools, and the base index was per pool, they could actually still
collide.
This patch changes the base index to be global and atomically
incremented.
Reported-by: Arun Raghavan <arun@accosted.net>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Felipe Sateler [Thu, 8 Jan 2015 00:01:14 +0000 (21:01 -0300)]
pactl: fix getopt indexing for set-*-volume
When pactl is invoked with any options or the -- specifier, optind will
be > 1. Therefore using a static 3 value is wrong. Use optind+2 as both
offset and count difference.
Bug-Debian: http://bugs.debian.org/774810
Tanu Kaskinen [Mon, 5 Jan 2015 13:44:15 +0000 (15:44 +0200)]
build-sys: Don't enable libsamplerate by default
The libsamplerate based resamplers have been deprecated, so it's best
to not build them by default.
Tanu Kaskinen [Mon, 29 Dec 2014 22:33:05 +0000 (00:33 +0200)]
tunnel-sink-new: Fix stale audio on resume
I noticed that when resuming the tunnel sink, there was a small amount
of previously played audio before the new audio started to play.
Normally that probably wouldn't be noticeable, because there would be
a few seconds of silence played before suspending the sink due to
inactivity, so the unwanted old audio would be just silence, but in my
configuration sinks are suspended immediately when there's nothing
playing to them, so the glitch becomes audible.
Josef Andersson [Mon, 29 Dec 2014 14:01:26 +0000 (16:01 +0200)]
i18n: Update the Swedish translation
Alexander E. Patrakov [Sat, 29 Nov 2014 16:09:30 +0000 (21:09 +0500)]
Fix the WhatIsWrongWithSystemWide URL
Pavel Machek reported in his blog that our message about the system mode
has a dead link in it. And this link is also present in translations.
So, I replaced it in the source and fixed all translations using a script:
for a in po/*.po ; do msgcat --no-wrap $a | sed
's@http://pulseaudio.org/wiki/WhatIsWrongWithSystemMod
@http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode @g' | sed
's@http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode@http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/@g'
| sed 's@/\.@/ .@g' | sed 's@/,@/ ,@g' | msgcat - > $a.new
git add -i # to filter out formatting changes
The "/." and "/," replacements are needed so that various terminal
emulators don't include the trailing "." or "," into the clickable URL.
The resulting patch is attached, just in case, in order to avoid
damaging non-ASCII characters.
--
Alexander E. Patrakov
>From
7dcd197571840e467d688f0f7354253730bbcc15 Mon Sep 17 00:00:00 2001
From: "Alexander E. Patrakov" <patrakov@gmail.com>
Date: Sat, 29 Nov 2014 20:56:27 +0500
Subject: [PATCH] Fix the WhatIsWrongWithSystemWide URL
Reported by Pavel Machek in http://pavelmachek.livejournal.com/126190.html
All translations were also fixed using a script.
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
Alexander E. Patrakov [Sat, 29 Nov 2014 16:49:11 +0000 (21:49 +0500)]
Fix URLs still pointing to the old wiki
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
David Henningsson [Fri, 19 Dec 2014 12:46:11 +0000 (13:46 +0100)]
Revert "launch: Disable autospawn by default when systemd daemon support is enabled."
This reverts commit
7276faca72e9696d4891daff139aee52509f43bf.
Using the new systemd socket activation for PulseAudio will cause PulseAudio to not
have any connection with D-Bus, breaking device reservation protocol, module-jackdbus-detect
and module-dbus-protocol. Therefore, autospawn is now still enabled by default even if you
build with systemd daemon headers.
Tanu Kaskinen [Tue, 16 Dec 2014 11:14:41 +0000 (13:14 +0200)]
card-restore: Fix profile restoring with bluetooth
The bluetooth card is created when the first profile becomes
available, which means that the card may have profiles that are not
available when the card is initialized. If module-card-restore tries
to restore such profile, that will fail, and the card will be
initialized with the "off" profile active.
This patch modifies module-card-restore so that if follows the profile
availability status, and when the saved profile becomes available, it
is activated. Additionally, module-card-restore is modified so that it
doesn't even try to restore unavailable profiles, when the necessary
information is available. In practice there are two existing places
where the profile is restored, and only one of those contexts has the
necessary information available. Unfortunately, it's the more
important context (card creation) where the information is not
available. This means that module-card-restore will set the initial
profile of a new card even if the profile is unavailable, and this
will cause an ugly warning in the log, even though there's nothing
abnormal happening.
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=87081
David Henningsson [Fri, 19 Dec 2014 09:24:47 +0000 (10:24 +0100)]
bluez5: Do not suspend on no -> unknown profile transitions
In case a transport is currently disconnected and transitions to
idle, that should not count as a "remote hang up" event.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Arun Raghavan [Tue, 4 Nov 2014 08:46:06 +0000 (14:16 +0530)]
introspect: Minor documentation fix
David Henningsson [Tue, 9 Dec 2014 21:58:36 +0000 (22:58 +0100)]
memblock: Initialize mempool object to zero
This fixes a "use of uninitialised value" error in previous memblock commit.
Reported-by: Alexander Patrakov <patrakov@gmail.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Thu, 4 Dec 2014 21:06:30 +0000 (22:06 +0100)]
srbchannel: Check return value of pa_memblock_new_pool
In case PA_MEMPOOL_DISABLE is set, pa_memblock_new_pool can return
NULL. It does not make sense to set up a srbchannel without a shared
memory pool, so just fail in this case.
Reported-by: Alexander Patrakov <patrakov@gmail.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Tanu Kaskinen [Mon, 8 Dec 2014 13:04:40 +0000 (15:04 +0200)]
i18n: Add French translation for "Speaker"
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=87073
Alexander E. Patrakov [Thu, 4 Dec 2014 15:34:09 +0000 (20:34 +0500)]
Warn on loading module-dbus-protocol
See also
https://www.mail-archive.com/ubuntu-audio-dev@lists.launchpad.net/msg00268.html
The warning may be useful for users who carried over the module-loading
statement from default configuration files shipped with old PulseAudio
versions.
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
Jason Newton [Fri, 5 Dec 2014 08:38:31 +0000 (08:38 +0000)]
module-equalizer-sink: remove erroneous fixme
pa_memblockq_drop is guaranteed to drop the chunk we just extracted from the
memblockq which internally unrefs the chunk.
Jason Newton [Fri, 5 Dec 2014 08:38:30 +0000 (08:38 +0000)]
module-equalizer-sink: use fftwf_free in all the right places
Several mallocs were made using fftwf_malloc and were erroneously freed by
pa_xfree. This patch corrects these calls of pa_xfree to fftwf_free.
Alexander E. Patrakov [Thu, 4 Dec 2014 15:34:08 +0000 (20:34 +0500)]
Warn on loading module-equalizer-sink
See objections to the code in this email:
http://lists.freedesktop.org/archives/pulseaudio-discuss/2014-March/020174.html
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
David Henningsson [Fri, 5 Dec 2014 10:54:39 +0000 (11:54 +0100)]
memblock: Avoid block ID collisions when exporting memory blocks
Every new memexport object now gets an ever increasing base index,
that prevents block ID collisions between different memexport
objects on the same pstream.
In particular, this prevents block ID collision between the srb memblock
(which has its own memexport object) and audio data blocks.
Reported-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Tanu Kaskinen [Fri, 5 Dec 2014 13:51:35 +0000 (15:51 +0200)]
module: Fix unsafe iteration
This fixes an issue when requesting module unload for
module-bluetooth-discover. When unloading the module, it also unloads
module-bluez4-discover and/or module-bluez5-discover, and that
invalidated the state variable that was used for iterating through the
modules idxset.
The pa_module.unload_requested flag could now otherwise be removed,
but it's still being (ab)used in the bluetooth modules.
David Henningsson [Wed, 3 Dec 2014 11:46:28 +0000 (12:46 +0100)]
core-util: Fix build on mingw32
mingw32 does not have "getuid", so ifdef it properly.
Reported-by: Michael DePaulo <mikedep333@gmail.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Fri, 28 Nov 2014 12:43:07 +0000 (13:43 +0100)]
bluez5: Fix free order of adapters and devices
Because the adapters reference the devices hashmap on free, we mush
free the adapters hashmap first and then the devices hashmap.
Reported-by: Alexander Patrakov <patrakov@gmail.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Tue, 2 Dec 2014 08:22:47 +0000 (09:22 +0100)]
build-sys: Don't build srbchannel-test on targets without srbchannel
Reported-by: Felipe Sateler <fsateler@debian.org>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Felipe Sateler [Sat, 29 Nov 2014 19:54:57 +0000 (16:54 -0300)]
Fix #defines for Debian GNU/kFreeBSD
Because debian does not run with the freebsd libc, but rather uses the
GNU one, it chose to not define __FreeBSD__, but rather __FreeBSD_kernel__.
Use the alternative when the functionality tested is for kernel
features, and keep the __FreeBSD__ one when using freebsd libc
headers.
If this patch is applied, debian could drop all the current patches when
importing 6.0 :)
Yuri Chornoivan [Tue, 25 Nov 2014 08:48:22 +0000 (10:48 +0200)]
Update Ukrainian translation
Piotr Drąg [Sat, 22 Nov 2014 19:14:41 +0000 (20:14 +0100)]
Updated Polish translation
Tanu Kaskinen [Sun, 23 Nov 2014 13:23:39 +0000 (15:23 +0200)]
build-sys: Fix the BlueZ 5 native headset backend check
If the libbluetooth headers aren't available, we shouldn't treat that
as an error unless --enable-bluez5-native-headset has been explicitly
given to configure.
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=86582
Tanu Kaskinen [Sun, 23 Nov 2014 13:23:38 +0000 (15:23 +0200)]
build-sys: Always define bluetooth related HAVE_* variables
I don't know if it can cause any problems if HAVE_BLUEZ_4,
HAVE_BLUEZ_5, HAVE_BLUEZ, HAVE_BLUEZ_5_OFONO_HEADSET or
HAVE_BLUEZ_5_NATIVE_HEADSET are undefined when the corresponding
features are not enabled, but it certainly won't hurt to define the
variables also when the features are not enabled.
Tanu Kaskinen [Sun, 23 Nov 2014 13:33:02 +0000 (15:33 +0200)]
NEWS: Zsh completion support isn't new in 6.0
There have been several fixes to the Zsh completion during the current
development cycle, but the completion was initially implemented
already in 4.0.
Cheng-Chia Tseng [Sun, 23 Nov 2014 12:30:14 +0000 (14:30 +0200)]
i18n: update Chinese (traditional) translation
David Henningsson [Fri, 21 Nov 2014 13:36:36 +0000 (14:36 +0100)]
po: add pulseaudio.service.in to POTFILES.in
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Fri, 21 Nov 2014 12:33:30 +0000 (13:33 +0100)]
NEWS: Write entry for 6.0
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Fri, 21 Nov 2014 12:27:31 +0000 (13:27 +0100)]
configure: Bump sonames
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Wim Taymans [Fri, 14 Nov 2014 14:01:35 +0000 (15:01 +0100)]
bluetooth: set gain correctly
Send the right command to set the speaker and microphone gain.
Note that setting the volume on the Headset should use the unsolicited
result code. Receiving the volume from the Headset uses the AT
command.
Tanu Kaskinen [Wed, 19 Nov 2014 16:43:07 +0000 (18:43 +0200)]
raop: Fix a memory leak
a.path_or_host wasn't freed after calling pa_parse_address().
Peter Meerwald [Sun, 9 Nov 2014 16:38:27 +0000 (17:38 +0100)]
alsa-mixer: Use pa_assert_not_reached()
get rid of the following warning when compiling with NDEBUG:
modules/alsa/alsa-mixer.c: In function 'element_is_subset':
modules/alsa/alsa-mixer.c:3125:18: warning: 'a_limit' may be used uninitialized in this function [-Wmaybe-uninitialized]
long a_limit;
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Sun, 9 Nov 2014 16:33:00 +0000 (17:33 +0100)]
tests: Use pa_assert_se() to get rid of an used variable warning
when compiled with NDEBUG
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Sun, 9 Nov 2014 16:34:11 +0000 (17:34 +0100)]
core: Annotate variables only used within assert()s to be PA_UNUSED
supresses a warning when compiling with NDEBUG:
pulsecore/aupdate.c: In function 'pa_aupdate_read_end':
pulsecore/aupdate.c:82:14: warning: variable 'n' set but not used [-Wunused-but-set-variable]
unsigned n;
pulsecore/sink-input.c: In function 'pa_sink_input_unlink':
pulsecore/sink-input.c:648:27: warning: variable 'p' set but not used [-Wunused-but-set-variable]
pa_source_output *o, *p = NULL;
pulsecore/sink-input.c: In function 'find_filter_sink_input':
pulsecore/sink-input.c:1523:14: warning: unused variable 'i' [-Wunused-variable]
unsigned i = 0;
pulsecore/sink-input.c: In function 'pa_sink_input_start_move':
pulsecore/sink-input.c:1569:27: warning: variable 'p' set but not used [-Wunused-but-set-variable]
pa_source_output *o, *p = NULL;
CC pulsecore/libpulsecore_5.0_la-sink.lo
pulsecore/sink.c: In function 'pa_sink_unlink':
pulsecore/sink.c:673:24: warning: variable 'j' set but not used [-Wunused-but-set-variable]
pa_sink_input *i, *j = NULL;
pulsecore/source-output.c: In function 'find_filter_source_output':
pulsecore/source-output.c:1179:9: warning: unused variable 'i' [-Wunused-variable]
int i = 0;
CC pulsecore/libpulsecore_5.0_la-source.lo
pulsecore/source.c: In function 'pa_source_unlink':
pulsecore/source.c:616:27: warning: variable 'j' set but not used [-Wunused-but-set-variable]
pa_source_output *o, *j = NULL;
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Sun, 9 Nov 2014 16:28:36 +0000 (17:28 +0100)]
macro: Add macro PA_UNUSED
the macro PA_UNUSED may be used to suppress a warning when a variable
is not used, or assigned and never used; this typically happens
when the only use of the variable is within an assert() that can
be optimized away (i.e. with NDEBUG set)
has an effect with GCC only
v2: (thanks to Alexander Patrakov)
* fix patch subject/description
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Sun, 9 Nov 2014 15:45:32 +0000 (16:45 +0100)]
macro: Abort() when pa_assert_not_reached() even for NDEBUG
fixes many warnings when compiling with NDEBUG, such as
CC pulse/libpulse_la-channelmap.lo
pulse/channelmap.c: In function 'pa_channel_map_init_auto':
pulse/channelmap.c:397:1: warning: control reaches end of non-void function [-Wreturn-type]
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Tue, 11 Nov 2014 14:39:59 +0000 (15:39 +0100)]
build-sys: Deprecate libsamplerate support
output DEPRECATED warnings for libsamplerate in configure and
PA daemon's log
libsamplerate offers no particular advantage over the speex
resampler and is distributed under GPL; support for it will be removed
in one of the next releases
v2: (thanks Arun Raghavan)
* log a warning (instead of info)
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Peter Meerwald [Fri, 14 Nov 2014 15:12:12 +0000 (16:12 +0100)]
alsa-util: Finish description of pa_alsa_set_hw_params()
... which stops mid-sentence and logging cleanup
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
David Henningsson [Mon, 17 Nov 2014 12:04:32 +0000 (13:04 +0100)]
dbus-iface: Initialize "new_active" variable to NULL
Fixes warning: 'new_active' may be used uninitialized in this function,
and could potentially cause erronous behaviour in case an invalid port
name was specified.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Sjoerd Simons [Sun, 16 Nov 2014 22:15:50 +0000 (23:15 +0100)]
Alsa: Correct port availability with multiple jacks
In case there are two independent jacks for one port (e.g. Dock
Headphone Jack and Headphone Jack), the availability ends up being
incorrect if the first one was _NO (not plugged) and the second gets
_YES (plugged). Also pulse complains about the state being inconsistent
which isn't true.
Fix this by preferring more precise states (yes/no) over unknown and yes
over others. However in case a plugged jack makes the port unavailable
let that overrule everything else.
Tanu Kaskinen [Sun, 2 Nov 2014 18:50:37 +0000 (20:50 +0200)]
dbus: Fix the ActivePort property handler
The old code tried to look up the port object by using an object path,
but the ports hashmap uses port names as keys, so the method failed
always.
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=85369
Tanu Kaskinen [Sat, 1 Nov 2014 16:28:43 +0000 (18:28 +0200)]
shell-completion: zsh: Fix the set-card-profile description
Tanu Kaskinen [Sat, 1 Nov 2014 16:28:33 +0000 (18:28 +0200)]
shell-completion: zsh: Fix set-default-sink/source completion
The _devices() function didn't recognize the set-default-* commands,
and as a result it didn't generate any completions.
David Henningsson [Mon, 10 Nov 2014 15:13:13 +0000 (16:13 +0100)]
bluetooth: Select headset backend through module argument
This patch adds a module argument "headset=ofono|native|auto" to
module-bluetooth-discover and module-bluez5-discover.
To make Arun's happy, the default is 'native' if compiled in, otherwise
'ofono'. 'Auto' will try to autoswitch depending on whether ofono is
running or not.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Mon, 3 Nov 2014 11:17:41 +0000 (12:17 +0100)]
bluez 5: remove null headset backend
There is no need to have a "null" backend anymore.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Mon, 3 Nov 2014 11:16:31 +0000 (12:16 +0100)]
bluez 5: Fix a debug message
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Mon, 3 Nov 2014 11:13:20 +0000 (12:13 +0100)]
bluez 5: Load the native headset backend if the oFono one is unavailable
This implements some autodetect if both headset backends are compiled in:
First we try to contact the oFono service, if that's not working,
then we start the native backend instead.
Likewise if the oFono service is going offline/online, we load/unload
the native backend accordingly.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
David Henningsson [Mon, 3 Nov 2014 10:01:00 +0000 (11:01 +0100)]
bluez 5: Build both headset backends, if available
Enable both ofono and native backends to be built into the same
libbluez5-util. Never build the null backend.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Andrey Semashev [Wed, 12 Nov 2014 20:49:13 +0000 (23:49 +0300)]
resampler: Fix sample_format_more_precise() for the case of comparing against PA_SAMPLE_S32BE
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Tanu Kaskinen [Wed, 12 Nov 2014 12:55:45 +0000 (14:55 +0200)]
.gitignore: Add pulseaudio.service
Tanu Kaskinen [Wed, 12 Nov 2014 08:53:15 +0000 (10:53 +0200)]
build-sys: Fix a variable value check
Mauro Guerrera [Mon, 10 Nov 2014 18:15:08 +0000 (18:15 +0000)]
build-sys: Fix daemon linking when building with systemd-daemon support
Seems that after commit
467b4b9be systemd usage has been added into
src/daemon/main.c but there is no link for the corresponding
library in the final pulseaudio binary.
This might be missed in some build systemd due to overlinking,
but it's correct to add this in here explicitly
Signed-off-by: Colin Guthrie <colin@mageia.org>
David Henningsson [Mon, 10 Nov 2014 13:15:39 +0000 (14:15 +0100)]
rtpoll: Fixup pa_rtpoll_run
Commit
fa092af59cf64902a5caa99 removed an argument to pa_rtpoll_run, but
forgot to remove that argument for all callers to pa_rtpoll_run.
This commit removes the remaining ones.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Peter Meerwald [Tue, 28 Oct 2014 12:46:37 +0000 (13:46 +0100)]
rtpoll: Drop extra wait_op argument to pa_rtpoll_run()
is always true, not used
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>