Parent: d3e40e82afba8bbc24df8c23272fbf8a68e6ed67
Author: Iulia Tanasescu <iulia.tanasescu@nxp.com>
Committer: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Date: 2025-02-12 17:53:47
Tree: 1e50b68191df9170a98aea9fcdf7dc0cfcb3a401
bass: Register bap attached/detached callbacks This removes the bass_bcast_probe and bass_bcast_remove APIs, in order to decouple the BASS and BAP plugins. Instead, since the BASS Server (BAP Scan Delegator) implementation needs to reference the bap session, BASS registers bap attached/detached callbacks with shared/bap. - After receiving a request from a Broadcast Assistant, the BASS Server creates a device for the Broadcaster and adds the UUID to probe. - The service is probed inside the BAP plugin, where a new bt_bap session is attached. The service is set as user data beforehand. - The bt_bap session is notified in the BASS bap_attached callback. The reference to the service is accessible from the user data. - The BASS Server takes ownership for the service by setting its user data. This way, short-lived PA sync will be skipped inside BAP, and the BASS Server will handle long-lived PA sync and stream configuration. - When the bt_bap session is removed, it will be notified in the bap_detached callback.
Diffstat
| M | profiles/audio/bap.c | | | 53 | +++++++++++++++++++++++++++++++++++++- - - - - - - - - - - - - - - - |
| M | profiles/audio/bass.c | | | 46 | ++++++++++++++++++++++++++- - - - - - - - - - - - - - - - - - - - |
| M | profiles/audio/bass.h | | | 5 | +- - - - |
3 files changed, 64 insertions(+), 40 deletions(-)