Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 7f47feff authored by Jakub Tyszkowski's avatar Jakub Tyszkowski
Browse files

LeAudio: Allow GMCS to control the Live context

With this change, the generic MCS declares control
over the "Live" context. This can be used by the recorder app
to implement the media session controller.

This adds support to Content Control Id Keeper to hold
multiple contexts under the same CCID value, and by this allows
a single control service to declare control over multiple audio
contexts. This information is then used in stream establishment so
that the remote would know which control service to use for stream
control.

Additionally it
 - removes 'virtual' declaration as Pimpl design pattern is used for
   compile time function call dispatch
 - disambiguates native API by using the proper type for a single
   and complex context type
 - properly support multiple contexts at the top and native layer
   resulting in proper entries for each individual context
 - improves robustness by validating context input parameter
 - improves robustness for multple calls with the same client UUID
   (previously we were leaking ccid values from the ccid pool)
 - moves the helper function used for getting CCID list for the complex
   context types into the CCID keeper
 - adds java code unit tests
 - adds native code unit tests

Bug: 262488856
Tag: #feature
Test: atest ContentControlIdKeeperTest bluetooth_le_audio_test bluetooth_test_broadcaster --no-bazel-mode
Change-Id: Iadcd75023c71b8ee76950633c7c779dc5ce2e6d1
parent 064b49b4
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment