LE Audio: Dynamically generate BASS receive states #72879
Labels
area: API
Changes to public APIs
area: Bluetooth Audio
area: Bluetooth
area: optimization
Enhancement
Changes/Updates/Additions to existing features
Is your enhancement proposal related to a problem? Please describe.
The BASS receive states store information about the broadcast source. The challenge with this is, is that the more data the broadcast source has (e.g number of subgroups or metadata), the more data we need to store. Since we also do not know the configuration of broadcast sources at build time, this makes it difficult to properly store.
We do, however, know that the BASE is maximum
BASE_MAX_SIZE
, and we know that we any BASE can be stored in that amount of octets.Describe the solution you'd like
Instead of using
CONFIG_BT_BAP_BASS_MAX_SUBGROUPS
andCONFIG_BT_AUDIO_CODEC_CFG_MAX_METADATA_SIZE
in the BASS receive states, we can just allocateBASE_MAX_SIZE
per receive state, and then dynamically generate the the receive state when it is being read by broadcast assistants.This should reduce the number of Kconfig options we rely on, while also making the memory size more expectable, while also support any configuration.
There may be places where
CONFIG_BT_BAP_BASS_MAX_SUBGROUPS
needs to be replaced byBASE_SUBGROUP_MAX_COUNT
.Describe alternatives you've considered
N/A
Additional context
N/A
The text was updated successfully, but these errors were encountered: