[pulseaudio-discuss] [PATCH v0 00/11] Bluetooth: Late UUID support

Mikel Astiz mikel.astiz.oss at gmail.com
Mon Oct 22 01:46:32 PDT 2012

From: Mikel Astiz <mikel.astiz at bmw-carit.de>

module-bluetooth-device creates a card profile for each bluetooth profile (UUID) that the device supports. This information is retrieved from the UUID list exposed by BlueZ in the D-Bus API.

Assuming this UUID is a static list is a wrong assumption. For example, during device pairing, BlueZ will report the UUIDs incrementally, that is, as soon as each of the profile has been discovered. There is nothing BlueZ can do to overcome this, since there is no strict guarantee about when a UUID will be discovered. Devices might even hide their UUIDs, and still later connect the profile.

PulseAudio does not currently support creating card profiles dynamically. This patchset proposes such feature in order to be used by the Bluetooth modules. The approach has been kept as simple as possible, avoiding additional hooks in the core and even avoiding a new D-Bus signal to announce newly created profiles.

Additionally, patches 04, 06 and 07/11 introduce some further -and somehow unrelated- changes in module-bluetooth-device. This is included here for convenience, due to the device-specific hooks added in patches 05 and 08/11.

Mikel Astiz (11):
  card: Support adding profiles dynamically
  card: Support adding ports dynamically
  dbus: Support dynamically created card profiles
  bluetooth: Remove const qualifier for device
  bluetooth: Add hook to tell device was removed
  bluetooth: Self unload module-bluetooth-device
  bluetooth: Hold device pointer while module loaded
  bluetooth: Add hook to announce late UUIDs
  bluetooth: Refactor code to create card profiles
  bluetooth: Refactor code to create profile ports
  bluetooth: Handle UUIDs announced later

 src/modules/bluetooth/bluetooth-util.c            |  24 ++-
 src/modules/bluetooth/bluetooth-util.h            |  15 +-
 src/modules/bluetooth/module-bluetooth-device.c   | 231 +++++++++++++---------
 src/modules/bluetooth/module-bluetooth-discover.c |   6 +-
 src/modules/dbus/iface-card.c                     |  30 +++
 src/pulsecore/card.c                              |  40 ++++
 src/pulsecore/card.h                              |   3 +
 7 files changed, 247 insertions(+), 102 deletions(-)


More information about the pulseaudio-discuss mailing list