From: Mikel Astiz <[email protected]>

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(-)

-- 
1.7.11.7

_______________________________________________
pulseaudio-discuss mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to