Description
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
and CONFIG_BT_AUDIO_CODEC_CFG_MAX_METADATA_SIZE
in the BASS receive states, we can just allocate BASE_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 by BASE_SUBGROUP_MAX_COUNT
.
Describe alternatives you've considered
N/A
Additional context
N/A
Metadata
Metadata
Assignees
Type
Projects
Status