platform/upstream/pulseaudio.git
10 years agointrospect: Fix ABI break introduced by b98a2e1
Luiz Augusto von Dentz [Mon, 4 Nov 2013 17:41:22 +0000 (19:41 +0200)]
introspect: Fix ABI break introduced by b98a2e1

The size of pa_card_profile_info cannot change even if it just a field
appended to end because each entry is appended to a contiguous memory
and accessed by offset this may lead clients to access invalid data.

To fix a new struct called pa_card_profile_info2 is introduced and shall
be used for now on while pa_card_profile_info shall be considered
deprecated but it is still mantained for backward compatibility.

A new field called profiles2 is introduced to pa_card_info, this new field
is an array of pointers to pa_card_profile_info2 so it should be possible
to append new fields to the end of the pa_card_profile_info2 without
breaking binary compatibility as the entries are not accessed by offset.

11 years agoalsa-mixer: Add internal surround speaker elements
David Henningsson [Mon, 14 Oct 2013 14:06:45 +0000 (16:06 +0200)]
alsa-mixer: Add internal surround speaker elements

These kcontrol names have started to show up lately, in
combination with surround internal speakers.

BugLink: https://bugs.launchpad.net/bugs/1236965
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
11 years agoconsole-kit: Remove logging of every message on the bus
João Paulo Rechi Vita [Tue, 29 Oct 2013 20:50:43 +0000 (17:50 -0300)]
console-kit: Remove logging of every message on the bus

11 years agotests: Extract PA_CPU_TEST* macros to separate header
Peter Meerwald [Tue, 16 Jul 2013 20:00:35 +0000 (22:00 +0200)]
tests: Extract PA_CPU_TEST* macros to separate header

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
11 years agodaemon conf: "high-priority" setting isn't respected
Pierre Ossman [Fri, 1 Nov 2013 13:50:51 +0000 (14:50 +0100)]
daemon conf: "high-priority" setting isn't respected

The code got removed by accident during the cleanup in commit 9c438bcac671. So
this patch is needed to bring it back and make things work like documented.

11 years agozsh-completion: Add --monitor-stream completion to pacat
poljar (Damir Jelić) [Thu, 15 Aug 2013 12:08:44 +0000 (14:08 +0200)]
zsh-completion: Add --monitor-stream completion to pacat

11 years agosimple: Improve pa_simple_read() documentation
Tanu Kaskinen [Fri, 4 Oct 2013 10:39:40 +0000 (13:39 +0300)]
simple: Improve pa_simple_read() documentation

There was a question in IRC about whether pa_simple_read() blocks or
not. It's already documented on the simple API overview page, but it's
good to say it also in the function reference. As a bonus, I added
some additional details to the documentation too.

11 years agobluetooth: Fix variable constness
Tanu Kaskinen [Sun, 29 Sep 2013 15:49:23 +0000 (18:49 +0300)]
bluetooth: Fix variable constness

The string points to memory inside a DBusMessage, so we don't own the string.

11 years agobluetooth: Remove adapter_remove_all()
Tanu Kaskinen [Sun, 29 Sep 2013 15:49:22 +0000 (18:49 +0300)]
bluetooth: Remove adapter_remove_all()

The function was redundant, because all it did was call adapter_free()
for each adapter in the hashmap, and that can be delegated to
pa_hashmap when freeing or emptying it.

11 years agozsh-completion: Fix pacat device completion
poljar (Damir Jelić) [Thu, 15 Aug 2013 12:08:43 +0000 (14:08 +0200)]
zsh-completion: Fix pacat device completion

The pacat completion didn't complete the right devices for the --record
and --playback flags.

This patch fixes this and makes the device completion for pacat easily
expandable.

11 years agobash-completion: Add --monitor-stream completion to pacat
poljar (Damir Jelić) [Thu, 15 Aug 2013 12:08:42 +0000 (14:08 +0200)]
bash-completion: Add --monitor-stream completion to pacat

11 years agomodargs: Add pa_modargs_get_sample_rate()
Peter Meerwald [Thu, 8 Aug 2013 06:19:34 +0000 (08:19 +0200)]
modargs: Add pa_modargs_get_sample_rate()

return sample rate from the "rate" module argument

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
11 years agomodargs: Add pa_modargs_get_resample_method()
Peter Meerwald [Thu, 8 Aug 2013 06:19:33 +0000 (08:19 +0200)]
modargs: Add pa_modargs_get_resample_method()

Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
11 years agomainloop, glib-mainloop: time_restart could cause incorrect event ordering
Ben Brewer [Thu, 25 Jul 2013 12:44:29 +0000 (13:44 +0100)]
mainloop, glib-mainloop: time_restart could cause incorrect event ordering

This fixes a bug where calling time_restart can leave the current event
in the cache, even though the restart scheduled the event in the future.
This would cause the event to get executed more frequently than it should.

11 years agotests: Resampler output memchunk may be reset (zero)
Peter Meerwald [Tue, 16 Jul 2013 15:09:14 +0000 (17:09 +0200)]
tests: Resampler output memchunk may be reset (zero)

Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
11 years agomemblock: Fix typo in description of pa_memblock_unref_fixed(), cleanup
Peter Meerwald [Tue, 16 Jul 2013 15:09:13 +0000 (17:09 +0200)]
memblock: Fix typo in description of pa_memblock_unref_fixed(), cleanup

Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
11 years agoUpdated Brazilian Portuguese translation
Rafael Ferreira [Tue, 22 Oct 2013 21:54:24 +0000 (19:54 -0200)]
Updated Brazilian Portuguese translation

Signed-off-by: Rafael Ferreira <rafael.f.f1@gmail.com>
11 years agobluetooth: Track discovery modules by index
João Paulo Rechi Vita [Mon, 14 Oct 2013 19:18:03 +0000 (16:18 -0300)]
bluetooth: Track discovery modules by index

Previously module-bluez5-discover and module-bluez4-discover were being
tracked using their pa_module pointer. But during daemon shutdown these
modules are unloaded before module-bluetooth-discover, leaving stale
pointers in module-bluetooth-discover's userdata. To avoid this problem
this commit makes module-bluetooth-discover keep track of
module-bluez5-discover and module-bluez4-discovery by their indexes.

11 years agobuild-sys: Print CPPFLAGS in configure
Tanu Kaskinen [Sat, 12 Oct 2013 09:45:58 +0000 (12:45 +0300)]
build-sys: Print CPPFLAGS in configure

I needed this for verifying that the conditional defining of
_FORTIFY_SOURCE works.

11 years agobuild-sys: Don't define _FORTIFY_SOURCE when building with -O0
Tanu Kaskinen [Sat, 12 Oct 2013 09:45:09 +0000 (12:45 +0300)]
build-sys: Don't define _FORTIFY_SOURCE when building with -O0

11 years agosndfile-util: fix format for 24bit depth wav files
Kiran Krishnappa [Thu, 10 Oct 2013 06:30:09 +0000 (23:30 -0700)]
sndfile-util: fix format for 24bit depth wav files

PA_SAMPLE_24NE generated in pa_sndfile_read_sample_spec is not
handled in pa_sndfile_readf and writef function. paplay/parecord
used to get aborted for 24bit depth wav files

11 years agoalsa: Fix crash when loading bare ALSA sink/source
Jan Alexander Steffens (heftig) [Wed, 9 Oct 2013 18:29:39 +0000 (20:29 +0200)]
alsa: Fix crash when loading bare ALSA sink/source

module-alsa-{sink,source}.c call pa_alsa_{sink,source}_new with
mapping set to NULL. Guard against this, like the rest of the
function does.

module-alsa-card does not use NULL, so this went unnoticed so far.

11 years agobuild-sys: Fix building with Android toolchain
Anton Lundin [Wed, 18 Sep 2013 14:22:00 +0000 (16:22 +0200)]
build-sys: Fix building with Android toolchain

Signed-off-by: Anton Lundin <glance@acc.umu.se>
11 years agotunnel-sink-new: Fix a possible crash
Alexander Couzens [Mon, 16 Sep 2013 11:06:27 +0000 (13:06 +0200)]
tunnel-sink-new: Fix a possible crash

When the creation of u->thread fails, then pa_thread_mq_done() in
pa__done() will crash, because pa_thread_mq_init() was never called.
Allocating the thread_mq object separately, instead of embedding it
in the userdata struct, allows pa__done() to call pa_thread_mq_done()
only when necessary.

11 years agotunnel-sink-new: remove switch-default from state change callbacks
Alexander Couzens [Mon, 16 Sep 2013 11:06:34 +0000 (13:06 +0200)]
tunnel-sink-new: remove switch-default from state change callbacks

Using default sections for switch(state) in state change callbacks will prevent
useful compiler warnings for non-handled cases

11 years agoalsa-mixer: Drop all unused paths, not only unsupported paths
David Henningsson [Mon, 23 Sep 2013 11:40:26 +0000 (13:40 +0200)]
alsa-mixer: Drop all unused paths, not only unsupported paths

This is a cleaner solution, because it also removes paths that are
being removed because they are subsets of other paths.

Otherwise, the lingering paths could cause jack detection related
assertion failures.

BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=69676
Reported-and-tested-by: Kalev Lember <kalevlember@gmail.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
11 years agoi18n: Update bluetooth bits in POTFILES
Arun Raghavan [Mon, 30 Sep 2013 12:40:34 +0000 (18:10 +0530)]
i18n: Update bluetooth bits in POTFILES

11 years agodefault/system.pa: Do not load module-dbus-protocol
David Henningsson [Fri, 27 Sep 2013 08:22:53 +0000 (10:22 +0200)]
default/system.pa: Do not load module-dbus-protocol

The author of this module, Tanu Kaskinen, has said that this module
"is not suitable for general use". Also, it is still causing crashes
on card removal (see bug 69871).

Qpaeq, and possibly other tools, use this module - but they can load
the module manually if they still wish to use it.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
11 years agoalsa-ucm: Fix bad rate check
Arun Raghavan [Mon, 30 Sep 2013 09:45:36 +0000 (15:15 +0530)]
alsa-ucm: Fix bad rate check

Need to check the rate value for being > 0 not the return value of
pa_atou().

11 years agoalsa-ucm: Don't allow Playback/CaptureRate to be 0
Arun Raghavan [Mon, 30 Sep 2013 03:02:16 +0000 (08:32 +0530)]
alsa-ucm: Don't allow Playback/CaptureRate to be 0

This was a review comment on the original patch that I missed fixing.

11 years agobluetooth: Add a comment about messing with the IDLE suspend cause
Tanu Kaskinen [Sun, 29 Sep 2013 16:47:16 +0000 (19:47 +0300)]
bluetooth: Add a comment about messing with the IDLE suspend cause

11 years agohashmap: Add a key+value iterator
Arun Raghavan [Fri, 20 Sep 2013 11:57:32 +0000 (17:27 +0530)]
hashmap: Add a key+value iterator

11 years agobluetooth: Revive module-bluetooth-discover
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:59 +0000 (19:45 -0300)]
bluetooth: Revive module-bluetooth-discover

Create a wrapper module called module-bluetooth-discover to avoid
breaking backward-compatibility of default.pa. This wrapper may
eventually be dropped altoghether with BlueZ 4 support.

11 years agocli-command: Use pa_module_exists() in .ifexists
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:58 +0000 (19:45 -0300)]
cli-command: Use pa_module_exists() in .ifexists

11 years agomodule: Create pa_module_exists()
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:57 +0000 (19:45 -0300)]
module: Create pa_module_exists()

This new function checks if a certain module name is available in the
system.

11 years agobluetooth: Fail to load driver if discovery module is not loaded
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:56 +0000 (19:45 -0300)]
bluetooth: Fail to load driver if discovery module is not loaded

For quite some time now the device driver module doesn't work well
without the discovery module, so for the BlueZ 5 support we'll prevent
the device driver module to be loaded if the discovery module is not
loaded.

11 years agobluetooth: Implement get_n_used() for module-bluez5-device
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:55 +0000 (19:45 -0300)]
bluetooth: Implement get_n_used() for module-bluez5-device

11 years agobluetooth: Handle changes to BlueZ 5 transports state
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:54 +0000 (19:45 -0300)]
bluetooth: Handle changes to BlueZ 5 transports state

11 years agobluetooth: Process source messages for BlueZ 5 cards
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:53 +0000 (19:45 -0300)]
bluetooth: Process source messages for BlueZ 5 cards

11 years agobluetooth: Process sink messages for BlueZ 5 cards
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:52 +0000 (19:45 -0300)]
bluetooth: Process sink messages for BlueZ 5 cards

11 years agobluetooth: Create I/O thread function for BlueZ 5 cards
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:51 +0000 (19:45 -0300)]
bluetooth: Create I/O thread function for BlueZ 5 cards

Create the thread function, the render and push functions for A2DP, the
process message function for communication between the I/O thread and
the main thread, and other helper functions related to them.

11 years agobluetooth: Set card profile for BlueZ 5 cards
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:50 +0000 (19:45 -0300)]
bluetooth: Set card profile for BlueZ 5 cards

11 years agobluetooth: Start / stop I/O thread for BlueZ 5 cards
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:49 +0000 (19:45 -0300)]
bluetooth: Start / stop I/O thread for BlueZ 5 cards

11 years agobluetooth: Create source for BlueZ 5 cards
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:48 +0000 (19:45 -0300)]
bluetooth: Create source for BlueZ 5 cards

11 years agobluetooth: Create sink for BlueZ 5 cards
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:47 +0000 (19:45 -0300)]
bluetooth: Create sink for BlueZ 5 cards

11 years agobluetooth: Initialize profiles for BlueZ 5 cards
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:46 +0000 (19:45 -0300)]
bluetooth: Initialize profiles for BlueZ 5 cards

Initialized the currently active profile, configure and acquire the
transport.

11 years agobluetooth: Create BlueZ 5 card profile for each audio UUID
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:45 +0000 (19:45 -0300)]
bluetooth: Create BlueZ 5 card profile for each audio UUID

11 years agobluetooth: Create BlueZ 5 card ports
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:44 +0000 (19:45 -0300)]
bluetooth: Create BlueZ 5 card ports

11 years agobluetooth: Create BlueZ 5 card
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:43 +0000 (19:45 -0300)]
bluetooth: Create BlueZ 5 card

11 years agobluetooth: Unload module-bluez5-device on device's disconnection
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:42 +0000 (19:45 -0300)]
bluetooth: Unload module-bluez5-device on device's disconnection

11 years agobluetooth: Get BlueZ 5 device object
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:41 +0000 (19:45 -0300)]
bluetooth: Get BlueZ 5 device object

Get the remote device information stored in pa_bluetooth_discovery. This
also creates the mandatory parameter 'path' for module-bluez5-device,
which is used to inform the object path of the remote device in BlueZ on
the module load.

11 years agobluetooth: Create module-bluez5-device
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:40 +0000 (19:45 -0300)]
bluetooth: Create module-bluez5-device

11 years agobluetooth: Track devices in module-bluez5-discover
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:39 +0000 (19:45 -0300)]
bluetooth: Track devices in module-bluez5-discover

11 years agobluetooth: Handle PropertiesChanged for org.bluez.MediaTransport1
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:38 +0000 (19:45 -0300)]
bluetooth: Handle PropertiesChanged for org.bluez.MediaTransport1

11 years agobluetooth: Handle PropertiesChanged for org.bluez.Device1
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:37 +0000 (19:45 -0300)]
bluetooth: Handle PropertiesChanged for org.bluez.Device1

11 years agobluetooth: Protect from a misbehaving bluetoothd
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:36 +0000 (19:45 -0300)]
bluetooth: Protect from a misbehaving bluetoothd

bluetoothd always send the GetManagedObjects() reply messages with the
objects array argument following an in-depth order starting from the
root. That means parents will always be known at the time their children
objects are parsed, if clients parse the objects in the same order they
appear in the array, as we do in PulseAudio.

This commit tries to protect PulseAudio in the case bluetoothd changes
that behavior for some reason. It hasn't been tested, since this
situation never occurs.

11 years agobluetooth: Parse BlueZ 5 device properties
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:35 +0000 (19:45 -0300)]
bluetooth: Parse BlueZ 5 device properties

This code is based on previous work by Mikel Astiz.

11 years agobluetooth: Handle PropertiesChanged for org.bluez.Adapter1
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:34 +0000 (19:45 -0300)]
bluetooth: Handle PropertiesChanged for org.bluez.Adapter1

11 years agobluetooth: Register endpoints with BlueZ 5 adapter
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:33 +0000 (19:45 -0300)]
bluetooth: Register endpoints with BlueZ 5 adapter

11 years agobluetooth: Parse BlueZ 5 adapter properties
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:32 +0000 (19:45 -0300)]
bluetooth: Parse BlueZ 5 adapter properties

11 years agobluetooth: Parse BlueZ 5 D-Bus interfaces
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:31 +0000 (19:45 -0300)]
bluetooth: Parse BlueZ 5 D-Bus interfaces

Parse the arguments of the InterfacesAdded signal and the
GetManagedObjects() reply.

This code is based on previous work by Mikel Astiz.

11 years agobluetooth: Handle InterfacesAdded and InterfacesRemoved
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:30 +0000 (19:45 -0300)]
bluetooth: Handle InterfacesAdded and InterfacesRemoved

This code is based on previous work by Mikel Astiz.

11 years agobluetooth: Create a function to remove only one adapter object
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:29 +0000 (19:45 -0300)]
bluetooth: Create a function to remove only one adapter object

11 years agobluetooth: Get managed objects
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:28 +0000 (19:45 -0300)]
bluetooth: Get managed objects

Get objects from the BlueZ 5 object manager. This code is based on
previous work by Mikel Astiz.

11 years agobluetooth: Add utility function to send D-Bus messages with reply
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:27 +0000 (19:45 -0300)]
bluetooth: Add utility function to send D-Bus messages with reply

11 years agobluetooth: Implement org.bluez.MediaEndpoint1.ClearConfiguration()
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:26 +0000 (19:45 -0300)]
bluetooth: Implement org.bluez.MediaEndpoint1.ClearConfiguration()

11 years agobluetooth: Implement org.bluez.MediaEndpoint1.SelectConfiguration()
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:25 +0000 (19:45 -0300)]
bluetooth: Implement org.bluez.MediaEndpoint1.SelectConfiguration()

11 years agobluetooth: Implement org.bluez.MediaEndpoint1.SetConfiguration()
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:24 +0000 (19:45 -0300)]
bluetooth: Implement org.bluez.MediaEndpoint1.SetConfiguration()

11 years agobluetooth: Register MediaEndpoint1 objects with D-Bus
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:23 +0000 (19:45 -0300)]
bluetooth: Register MediaEndpoint1 objects with D-Bus

11 years agobluetooth: Create pa_bluetooth_transport for BlueZ 5 support
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:22 +0000 (19:45 -0300)]
bluetooth: Create pa_bluetooth_transport for BlueZ 5 support

Create the pa_bluetooth_transport structure to store information about
the bluetooth transport and utility functions to manipulate this
structure. The acquire() and release() operations are function pointers
in the pa_bluetooth_transport structure to make possible for different
transport backends to provide different implementations of these
operations. Thre is also a userdata field for the transport backend
provide data for the acquire/release functions.

This commit also creates a new function
pa_bluetooth_device_any_transport_connected() to check if there is any
audio connection between the host and a remote device.

11 years agobluetooth: Remove all devices and adapters when org.bluez goes away
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:21 +0000 (19:45 -0300)]
bluetooth: Remove all devices and adapters when org.bluez goes away

11 years agobluetooth: Create pa_bluetooth_device for BlueZ 5 support
João Paulo Rechi Vita [Wed, 18 Sep 2013 21:16:58 +0000 (16:16 -0500)]
bluetooth: Create pa_bluetooth_device for BlueZ 5 support

Create a structure pa_bluetooth_device to store information about the
bluetooth device and utility functions to manipulate this structure.

11 years agobluetooth: Create pa_bluetooth_adapter for BlueZ 5 support
João Paulo Rechi Vita [Wed, 18 Sep 2013 21:16:57 +0000 (16:16 -0500)]
bluetooth: Create pa_bluetooth_adapter for BlueZ 5 support

11 years agobluetooth: Create infrastrucure for bluetooth hooks
João Paulo Rechi Vita [Wed, 18 Sep 2013 21:16:56 +0000 (16:16 -0500)]
bluetooth: Create infrastrucure for bluetooth hooks

Create a pa_bluetooth_hook enum type and API to get pa_hooks from the
opaque pa_bluetooth_discovery struct.

11 years agobluetooth: Track org.bluez for BlueZ 5
João Paulo Rechi Vita [Wed, 18 Sep 2013 21:16:55 +0000 (16:16 -0500)]
bluetooth: Track org.bluez for BlueZ 5

11 years agobluetooth: Create pa_bluetooth_discovery for BlueZ 5
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:54:00 +0000 (01:54 -0300)]
bluetooth: Create pa_bluetooth_discovery for BlueZ 5

pa_bluetooth_discovery is the struct that holds information about known
Bluetooth audio devices and other information about the Bluetooth stack.

This commit also creates bluez5-util.[ch], which will hold a lot of
utility functions to help with the BlueZ 5 support.

11 years agobluetooth: Create stub for module-bluez5-discover
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:59 +0000 (01:53 -0300)]
bluetooth: Create stub for module-bluez5-discover

11 years agobuild: Add support for enabling/disabling BlueZ 5 support
João Paulo Rechi Vita [Fri, 16 Aug 2013 12:40:54 +0000 (09:40 -0300)]
build: Add support for enabling/disabling BlueZ 5 support

11 years agobuild: Make the build of bluetooth modules BlueZ 4 specific
João Paulo Rechi Vita [Fri, 16 Aug 2013 12:31:45 +0000 (09:31 -0300)]
build: Make the build of bluetooth modules BlueZ 4 specific

11 years agobluetooth: Remove module-bluetooth-proximity
João Paulo Rechi Vita [Fri, 16 Aug 2013 12:30:41 +0000 (09:30 -0300)]
bluetooth: Remove module-bluetooth-proximity

module-bluetooth-proximity has not worked for quite a while, since it
uses pre-BlueZ4 APIs. Nobody complained since then, which is a good
indication that it doesn't have much users. Even the original commit
message refers to it more as a toy than as something of great use: "add
new fun module that automatically mutes your audio devices when you
leave with your bluetooth phone, and unmutes when you come back"

Removing it we completely remove the dependency on libbluetooth.

11 years agobluetooth: Prefix BlueZ 4 card profiles enum with PA_BLUEZ4_
João Paulo Rechi Vita [Thu, 15 Aug 2013 19:17:26 +0000 (16:17 -0300)]
bluetooth: Prefix BlueZ 4 card profiles enum with PA_BLUEZ4_

Also typedef the enum as pa_bluez4_profile_t.

11 years agobluetooth: Register BlueZ 4 endpoints in a separate object path
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:55 +0000 (01:53 -0300)]
bluetooth: Register BlueZ 4 endpoints in a separate object path

We need diferent object paths for BlueZ 4 and BlueZ 5 endpoints to avoid
crashing the daemon in the case both modules are loaded in parallel.

11 years agobluetooth: Name BlueZ 4 symbols accordingly
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:54 +0000 (01:53 -0300)]
bluetooth: Name BlueZ 4 symbols accordingly

We need diferent symbol prefixing for the current BlueZ 4 support and
the new BlueZ 5 support which is about to enter the codebase, to avoid
symbol clashing and crashing the daemon in the case both modules are
loaded at the same time.

This commit replaces all pa_bluetooth_ and pa_bt_ (for consistency)
prefixes with pa_bluez4_, for both lower-case and upper-case, what was
done with the following sed commands:

 $ sed -i s/pa_bluetooth_/pa_bluez4_/g src/modules/bluetooth/*bluez4*
 $ sed -i s/PA_BLUETOOTH_/PA_BLUEZ4_/g src/modules/bluetooth/*bluez4*
 $ sed -i s/pa_bt_/pa_bluez4_/g src/modules/bluetooth/*bluez4*
 $ sed -i s/PA_BT_/PA_BLUEZ4_/g src/modules/bluetooth/*bluez4*

11 years agobluetooth: Rename shared struct to make it BlueZ 4 specific
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:53 +0000 (01:53 -0300)]
bluetooth: Rename shared struct to make it BlueZ 4 specific

11 years agobluetooth: Rename bluetooth modules to BlueZ 4
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:52 +0000 (01:53 -0300)]
bluetooth: Rename bluetooth modules to BlueZ 4

11 years agobluetooth: Update modules description and copyright
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:51 +0000 (01:53 -0300)]
bluetooth: Update modules description and copyright

The current set of bluetooth modules only support up to BlueZ 4. Since
the BlueZ API when through a big change with the release of BlueZ 5 the
modules will be forked into a new set for BlueZ 5.

This commit also fixes the spelling of Bluetooth (it's a trademark which
should always be spelled with capital B) and the spelling of my name,
and also update the copyright note dates throughout the Bluetooth
modules.

11 years agoRevert "bluetooth: Detect BlueZ 5"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:50 +0000 (01:53 -0300)]
Revert "bluetooth: Detect BlueZ 5"

This reverts commit 2247b187393ef68879162faee8b422da9f5e556f.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: Parse the tree returned by ObjectManager"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:49 +0000 (01:53 -0300)]
Revert "bluetooth: Parse the tree returned by ObjectManager"

This reverts commit c4bd51a34547ed0991ff3c7219c2d5de49669ca8.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: Fix error checking style"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:48 +0000 (01:53 -0300)]
Revert "bluetooth: Fix error checking style"

This reverts commit d9ed42c40f744b273c8d466e95dd4a06e41364b9.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: BlueZ 5 interface rename to org.bluez.MediaEndpoint1"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:47 +0000 (01:53 -0300)]
Revert "bluetooth: BlueZ 5 interface rename to org.bluez.MediaEndpoint1"

This reverts commit d22ea7ff7630bef83a3bf8c26cc56c196dec33a1.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: BlueZ 5 interface rename to org.bluez.Media1"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:46 +0000 (01:53 -0300)]
Revert "bluetooth: BlueZ 5 interface rename to org.bluez.Media1"

This reverts commit 61e8fd8854308cb2d41e6313f25ae7131c912ea8.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: BlueZ 5 interface rename to org.bluez.MediaTransport1"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:45 +0000 (01:53 -0300)]
Revert "bluetooth: BlueZ 5 interface rename to org.bluez.MediaTransport1"

This reverts commit cfb96b2530690df113e1aceb5b82fc166f9d2cfd.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: Support ObjectManager interface add/remove"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:44 +0000 (01:53 -0300)]
Revert "bluetooth: Support ObjectManager interface add/remove"

This reverts commit 114edb0696ce979ad10f5616067afda1b76ae4e2.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: Support Properties.PropertiesChanged signal"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:43 +0000 (01:53 -0300)]
Revert "bluetooth: Support Properties.PropertiesChanged signal"

This reverts commit 235611a7d13ab251689f5b480183d7f39e043a2e.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: Parse media transport's properties"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:42 +0000 (01:53 -0300)]
Revert "bluetooth: Parse media transport's properties"

This reverts commit 2f79fb580ad583b2492b567d32630e7e03883855.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: Support media transport's State property"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:41 +0000 (01:53 -0300)]
Revert "bluetooth: Support media transport's State property"

This reverts commit 6fdf2b05b8867d4597c497243b469ecd0d8c2426.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: Update to new BlueZ 5 transport acquire/release API"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:40 +0000 (01:53 -0300)]
Revert "bluetooth: Update to new BlueZ 5 transport acquire/release API"

This reverts commit 9615def4b96f0bab365ddc03f6c003f382a54752.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agoRevert "bluetooth: Support transport auto-release"
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:39 +0000 (01:53 -0300)]
Revert "bluetooth: Support transport auto-release"

This reverts commit 0e4c16e120f95b122c7139deb046192927d1b6c7.

This is part of the reversion of BlueZ 5 support so it can be added back
in a separate set of modules. This makes the code easier to maintain and
decrease PulseAudio's binary size.

11 years agobuild-sys: Support building pulseaudio as a submodule
Anton Lundin [Wed, 18 Sep 2013 14:20:42 +0000 (16:20 +0200)]
build-sys: Support building pulseaudio as a submodule

When pulseaudio is a submodule, .git is a file.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
11 years agomutex: Fix compiler warning when priority inheritance is not supported
Arun Raghavan [Sat, 28 Sep 2013 03:42:01 +0000 (09:12 +0530)]
mutex: Fix compiler warning when priority inheritance is not supported

'r' is unused in the case where prioritiy inheritance is not detected at
configure time.