vivian,zhang [Tue, 18 Jun 2013 08:23:45 +0000 (16:23 +0800)]
add bluetooth a2dp aptx codec support - samsung
vivian,zhang [Tue, 18 Jun 2013 08:21:32 +0000 (16:21 +0800)]
add policy module - samsung
vivian,zhang [Tue, 18 Jun 2013 08:20:04 +0000 (16:20 +0800)]
add support for dlog - samsung
vivian,zhang [Tue, 18 Jun 2013 08:18:58 +0000 (16:18 +0800)]
Enhance for echo cancel - samsung
Change-Id: I625ca676228b58b5d53f72b9d14b3e811d212d1e
vivian,zhang [Tue, 18 Jun 2013 08:12:20 +0000 (16:12 +0800)]
Add preload fileter for resample - samsung
Change-Id: Ia57b4eb1848d53bbfa15c04b25f4821554aff28f
vivian,zhang [Tue, 18 Jun 2013 08:11:16 +0000 (16:11 +0800)]
add support for samsung power management - samsung
Conflicts:
src/modules/module-suspend-on-idle.c
Change-Id: Icef98de31319023df85bcb5b89e4d66a2040edcb
vivian,zhang [Tue, 18 Jun 2013 08:10:15 +0000 (16:10 +0800)]
changes to pa simple api - samsung
Change-Id: I997c02217a8dc14524480164aa0baeea901c7b4e
Jaska Uimonen [Thu, 5 Sep 2013 09:21:19 +0000 (12:21 +0300)]
add parameter to define key used in stream restore.
It is possible now to use preferred_stream_group
command line parameter when loading module stream
restore. This key will be searched from the stream's
proplist and if found it is used as key when
restoring the volumes and other values. There's also
special value media.role.within.appication.name you
can use to enable restoring stream roles within
application. So different streams with different
roles within application will save their volumes.
If the preferred stream group parameter is left out
module stream restore will fallback to old default
functionality.
Change-Id: I636f47b43476f3d4cd6c14244eafcd050683bb69
Jaska Uimonen [Wed, 14 Aug 2013 12:00:52 +0000 (15:00 +0300)]
adjust default bluetooth profile to off
vivian,zhang [Thu, 18 Jul 2013 10:43:14 +0000 (18:43 +0800)]
add conditional murphy module loading to default.pa.in
Change-Id: I8199f4530ef5f10cf65488969b3a8998e05cb65c
Jaska Uimonen [Thu, 7 Mar 2013 11:41:44 +0000 (13:41 +0200)]
add internal corking state for sink-input
Jaska Uimonen [Wed, 5 Dec 2012 07:53:12 +0000 (09:53 +0200)]
node-manager: adding node support for pactl
Jaska Uimonen [Tue, 4 Dec 2012 07:53:14 +0000 (09:53 +0200)]
node manager: adding external node manager API
Janos Kovacs [Thu, 16 Aug 2012 00:47:48 +0000 (03:47 +0300)]
make pa_thread_mq_done() safe for subsequent calls
Jaska Uimonen [Sun, 10 Jun 2012 12:13:11 +0000 (15:13 +0300)]
jack detection fix for wired headset
Jaska Uimonen [Tue, 5 Jun 2012 08:36:13 +0000 (11:36 +0300)]
build-sys: install files for a module development.
Jaska Uimonen [Wed, 8 Aug 2012 08:14:40 +0000 (11:14 +0300)]
volume ramp: add client api support for volume ramping
Jaska Uimonen [Wed, 8 Aug 2012 08:14:38 +0000 (11:14 +0300)]
volume ramp: adding volume ramping to sink-input
Jaska Uimonen [Wed, 8 Aug 2012 08:14:39 +0000 (11:14 +0300)]
volume ramp: add volume ramping to sink
Jaska Uimonen [Wed, 8 Aug 2012 08:14:37 +0000 (11:14 +0300)]
volume ramp: additions to the low level infra
Luiz Augusto von Dentz [Mon, 16 Sep 2013 12:10:51 +0000 (15:10 +0300)]
bluetooth: Set 'off' profile as default for newly create cards
This makes sure that pa_card_new doesn't select one profile based on
priority which may conflict with audio policy.
Luiz Augusto von Dentz [Fri, 23 Aug 2013 16:44:23 +0000 (19:44 +0300)]
bluetooth: Fixes HFP audio transfer when initiator
This makes sure org.ofono.HandsfreeAudioCard.Connect is called regardless
of the optional flag and also makes sure to update the profile state
whenever SCO is disconnected.
Luiz Augusto von Dentz [Fri, 23 Aug 2013 16:19:34 +0000 (19:19 +0300)]
bluetooth: Implement transport release for hf_audio_agent transports
João Paulo Rechi Vita [Wed, 27 Mar 2013 04:43:42 +0000 (01:43 -0300)]
bluetooth: Suspend sink/source on HFP's stream HUP
When the Audio Connection is disconnected the sink and source should be
suspended.
Luiz Augusto von Dentz [Fri, 23 Aug 2013 09:56:40 +0000 (12:56 +0300)]
bluetooth: Fix not handle fd in DEFER_SETUP state
The fd passed over NewConnection is in DEFER_SETUP and need to be read to
be accept otherwise it wont work.
João Paulo Rechi Vita [Thu, 11 Jul 2013 16:23:31 +0000 (13:23 -0300)]
bluetooth: Implement org.ofono.HandsfreeAudioAgent.NewConnection()
João Paulo Rechi Vita [Thu, 11 Jul 2013 15:53:10 +0000 (12:53 -0300)]
bluetooth: Handle CardRemoved signal
João Paulo Rechi Vita [Thu, 11 Jul 2013 14:47:37 +0000 (11:47 -0300)]
bluetooth: Handle CardAdded signal
João Paulo Rechi Vita [Thu, 11 Jul 2013 14:43:48 +0000 (11:43 -0300)]
bluetooth: Track oFono service
João Paulo Rechi Vita [Wed, 10 Jul 2013 01:22:28 +0000 (22:22 -0300)]
bluetooth: Implement transport acquire for hf_audio_agent transports
João Paulo Rechi Vita [Wed, 10 Jul 2013 00:37:26 +0000 (21:37 -0300)]
bluetooth: Parse HandsfreeAudioCard properties
João Paulo Rechi Vita [Wed, 10 Jul 2013 00:03:28 +0000 (21:03 -0300)]
bluetooth: List HandsfreeAudioCard objects from oFono
João Paulo Rechi Vita [Tue, 9 Jul 2013 23:59:12 +0000 (20:59 -0300)]
bluetooth: Register/Unregister Handsfree Audio Agent with oFono
Register as a HandsfreeAudioAgent with oFono during backend
initialization and unregiter during backend finalization. This commit
also adds a check when receiving method calls or signals to make sure
the sender matches with the D-Bus service we're registered with.
João Paulo Rechi Vita [Wed, 10 Jul 2013 16:00:16 +0000 (13:00 -0300)]
bluetooth: Create pa_bluetooth_dbus_send_and_add_to_pending() for oFono backend
João Paulo Rechi Vita [Wed, 10 Jul 2013 15:18:07 +0000 (12:18 -0300)]
bluetooth: Monitor D-Bus signals
João Paulo Rechi Vita [Tue, 9 Jul 2013 23:22:17 +0000 (20:22 -0300)]
bluetooth: Create Handsfree Audio Agent oFono backend
João Paulo Rechi Vita [Tue, 9 Jul 2013 22:08:15 +0000 (19:08 -0300)]
bluetooth: Create Handsfree Audio Agent NULL backend
João Paulo Rechi Vita [Wed, 10 Jul 2013 12:45:01 +0000 (09:45 -0300)]
bluetooth: Add basic support for HEADSET profiles
This commit adds basic support for devices implementing HSP Headset
Unit, HSP Audio Gateway, HFP Handsfree Unit, HFP Audio Gateway to the
BlueZ 5 bluetooth audio devices driver module (module-bluez5-device).
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.
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.
Tanu Kaskinen [Sat, 12 Oct 2013 09:45:09 +0000 (12:45 +0300)]
build-sys: Don't define _FORTIFY_SOURCE when building with -O0
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
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.
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>
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.
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
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>
Arun Raghavan [Mon, 30 Sep 2013 12:40:34 +0000 (18:10 +0530)]
i18n: Update bluetooth bits in POTFILES
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>
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().
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.
Tanu Kaskinen [Sun, 29 Sep 2013 16:47:16 +0000 (19:47 +0300)]
bluetooth: Add a comment about messing with the IDLE suspend cause
Arun Raghavan [Fri, 20 Sep 2013 11:57:32 +0000 (17:27 +0530)]
hashmap: Add a key+value iterator
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.
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:58 +0000 (19:45 -0300)]
cli-command: Use pa_module_exists() in .ifexists
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.
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.
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
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:54 +0000 (19:45 -0300)]
bluetooth: Handle changes to BlueZ 5 transports state
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:53 +0000 (19:45 -0300)]
bluetooth: Process source 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
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.
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:50 +0000 (19:45 -0300)]
bluetooth: Set card profile 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
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:48 +0000 (19:45 -0300)]
bluetooth: Create source 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
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.
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
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:44 +0000 (19:45 -0300)]
bluetooth: Create BlueZ 5 card ports
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:43 +0000 (19:45 -0300)]
bluetooth: Create BlueZ 5 card
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
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.
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:40 +0000 (19:45 -0300)]
bluetooth: Create module-bluez5-device
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:39 +0000 (19:45 -0300)]
bluetooth: Track devices in module-bluez5-discover
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:38 +0000 (19:45 -0300)]
bluetooth: Handle PropertiesChanged for org.bluez.MediaTransport1
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:37 +0000 (19:45 -0300)]
bluetooth: Handle PropertiesChanged for org.bluez.Device1
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.
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.
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:34 +0000 (19:45 -0300)]
bluetooth: Handle PropertiesChanged for org.bluez.Adapter1
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:33 +0000 (19:45 -0300)]
bluetooth: Register endpoints with BlueZ 5 adapter
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:32 +0000 (19:45 -0300)]
bluetooth: Parse BlueZ 5 adapter properties
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.
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.
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
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.
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
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:26 +0000 (19:45 -0300)]
bluetooth: Implement org.bluez.MediaEndpoint1.ClearConfiguration()
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:25 +0000 (19:45 -0300)]
bluetooth: Implement org.bluez.MediaEndpoint1.SelectConfiguration()
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:24 +0000 (19:45 -0300)]
bluetooth: Implement org.bluez.MediaEndpoint1.SetConfiguration()
João Paulo Rechi Vita [Tue, 24 Sep 2013 22:45:23 +0000 (19:45 -0300)]
bluetooth: Register MediaEndpoint1 objects with D-Bus
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.
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
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.
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
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.
João Paulo Rechi Vita [Wed, 18 Sep 2013 21:16:55 +0000 (16:16 -0500)]
bluetooth: Track org.bluez 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.
João Paulo Rechi Vita [Tue, 13 Aug 2013 04:53:59 +0000 (01:53 -0300)]
bluetooth: Create stub for module-bluez5-discover
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
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