The range of BT_BAP_BROADCAST_SNK_SUBGROUP_COUNT should be relative to BT_BAP_BASS_MAX_SUBGROUPS. The broadcast sink depends on the scan delegator, and thus it does not make sense for the broadcast sink to support more subgroups than what the scan delegator supports. Since this no longer relates to the number of streams, there may be new runtime errors if applications attempt to sync to more subgroups than the number of ISO channels supported. Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
289 lines
8.9 KiB
Plaintext
289 lines
8.9 KiB
Plaintext
# Bluetooth Audio - Basic Audio Profile configuration options
|
|
#
|
|
# Copyright (c) 2020 Intel Corporation
|
|
# Copyright (c) 2022-2023 Nordic Semiconductor ASA
|
|
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
config BT_BAP_UNICAST
|
|
def_bool BT_BAP_UNICAST_SERVER || BT_BAP_UNICAST_CLIENT
|
|
|
|
config BT_BAP_UNICAST_SERVER
|
|
bool "Bluetooth Unicast Audio Server Support"
|
|
depends on BT_GATT_DYNAMIC_DB
|
|
depends on BT_GATT_CACHING
|
|
depends on BT_PERIPHERAL
|
|
depends on BT_ISO_PERIPHERAL
|
|
depends on BT_ASCS
|
|
depends on BT_BONDABLE
|
|
select BT_PAC_SRC if BT_ASCS_ASE_SNK
|
|
select BT_PAC_SNK if BT_ASCS_ASE_SRC
|
|
help
|
|
This option enables support for Bluetooth Unicast Audio Server
|
|
using Isochronous channels.
|
|
|
|
config BT_BAP_UNICAST_CLIENT
|
|
bool "Bluetooth Unicast Audio Client Support"
|
|
depends on BT_GATT_CLIENT
|
|
depends on BT_GATT_AUTO_DISCOVER_CCC
|
|
depends on BT_GATT_AUTO_UPDATE_MTU
|
|
depends on BT_CENTRAL
|
|
depends on BT_ISO_CENTRAL
|
|
depends on BT_BONDABLE
|
|
help
|
|
This option enables support for Bluetooth Unicast Audio Client
|
|
using Isochronous channels.
|
|
|
|
config BT_AUDIO_CODEC_CFG_MAX_DATA_SIZE
|
|
int "Codec Specific Configuration Data Size"
|
|
default 19
|
|
range 0 $(UINT8_MAX)
|
|
help
|
|
Number of octets to support for Codec Specific Configuration data.
|
|
The default value 19 matches the required fields for the LC3 codec.
|
|
|
|
config BT_AUDIO_CODEC_CFG_MAX_METADATA_SIZE
|
|
int "Codec Specific Configuration Metadata Size"
|
|
default 4
|
|
range 0 $(UINT8_MAX)
|
|
help
|
|
Number of octets to support for Codec Specific Configuration metadata.
|
|
|
|
config BT_BAP_BASS_MAX_SUBGROUPS
|
|
int "Maximum number of subgroups supported for the BASS receive states"
|
|
default 1
|
|
range 1 24
|
|
help
|
|
This option sets the maximum number of subgroups supported.
|
|
Due to limitations in advertising data, the maximum size of all subgroups are 249.
|
|
The minimum size of a subgroup is 10 octets.
|
|
So effectively there can be a maximum of 24 subgroups in a BASE.
|
|
|
|
config BT_AUDIO_CODEC_CAP_MAX_DATA_SIZE
|
|
int "Codec Capabilities Data Size"
|
|
default 19
|
|
range 0 $(UINT8_MAX)
|
|
help
|
|
Number of octets to support for Codec Specific Capabilities data.
|
|
The default value 19 matches the required fields for the LC3 codec.
|
|
|
|
config BT_AUDIO_CODEC_CAP_MAX_METADATA_SIZE
|
|
int "Codec Capabilities Metadata Size"
|
|
default 4
|
|
range 0 $(UINT8_MAX)
|
|
help
|
|
Number of octets to support for Codec Specific Capabilities metadata.
|
|
|
|
if BT_BAP_UNICAST_CLIENT
|
|
config BT_BAP_UNICAST_CLIENT_GROUP_COUNT
|
|
int "Basic Audio Unicast Group count"
|
|
default BT_ISO_MAX_CIG
|
|
range 1 BT_ISO_MAX_CIG
|
|
help
|
|
This option sets the number of connected audio groups to support as
|
|
the unicast client.
|
|
|
|
config BT_BAP_UNICAST_CLIENT_GROUP_STREAM_COUNT
|
|
int "Basic Audio Profile Unicast Group Connected Isochronous Stream (CIS) count"
|
|
depends on BT_BAP_UNICAST_CLIENT_GROUP_COUNT > 0
|
|
default 1
|
|
range 1 BT_ISO_MAX_CHAN if BT_ISO_MAX_CHAN < 31
|
|
range 1 31
|
|
help
|
|
This option sets the maximum number of CIS per unicast group to support.
|
|
Since BAP streams are unidirectional, two BAP streams may use a single CIS, the number of
|
|
BAP audio streams per group may be up to twice of this value.
|
|
|
|
config BT_BAP_UNICAST_CLIENT_ASE_SNK_COUNT
|
|
int "Basic Audio Profile ASE Sink count"
|
|
default 2
|
|
range 0 $(UINT8_MAX)
|
|
help
|
|
This option enables caching a number of Audio Stream Endpoint Sink
|
|
instances for Basic Audio Profile on a per connection basis.
|
|
|
|
config BT_BAP_UNICAST_CLIENT_ASE_SRC_COUNT
|
|
int "Basic Audio Profile ASE Source count"
|
|
default 2
|
|
range 0 $(UINT8_MAX)
|
|
help
|
|
This option enables caching a number of Audio Stream Endpoint Source
|
|
instances for Basic Audio Profile on a per connection basis.
|
|
|
|
config BT_BAP_UNICAST_CLIENT_ASE_SNK
|
|
def_bool BT_BAP_UNICAST_CLIENT_ASE_SNK_COUNT > 0
|
|
|
|
config BT_BAP_UNICAST_CLIENT_ASE_SRC
|
|
def_bool BT_BAP_UNICAST_CLIENT_ASE_SRC_COUNT > 0
|
|
|
|
endif # BT_BAP_UNICAST_CLIENT
|
|
|
|
config BT_BAP_BROADCAST_SOURCE
|
|
bool "Bluetooth Broadcast Source Audio Support"
|
|
depends on BT_ISO_BROADCASTER
|
|
help
|
|
This option enables support for Bluetooth Broadcast Source Audio using
|
|
Isochronous channels.
|
|
if BT_BAP_BROADCAST_SOURCE
|
|
|
|
config BT_BAP_BROADCAST_SRC_SUBGROUP_COUNT
|
|
int "Basic Audio Broadcast Source subgroup count"
|
|
default 1
|
|
range 1 BT_ISO_MAX_CHAN if BT_ISO_MAX_CHAN < 31
|
|
range 1 31
|
|
help
|
|
This option sets the maximum number of subgroups per broadcast source
|
|
to support.
|
|
|
|
config BT_BAP_BROADCAST_SRC_COUNT
|
|
int "Basic Audio Broadcaster source count"
|
|
default 1
|
|
range 1 BT_ISO_MAX_BIG
|
|
help
|
|
This option sets the number of broadcast sources to support.
|
|
One broadcast source can send multiple streams
|
|
(up to BT_BAP_BROADCAST_SRC_STREAM_COUNT per broadcast source).
|
|
|
|
|
|
config BT_BAP_BROADCAST_SRC_STREAM_COUNT
|
|
int "Basic Audio Broadcast Source Stream count"
|
|
default 1
|
|
range 1 BT_ISO_MAX_CHAN if BT_ISO_MAX_CHAN < 31
|
|
range 1 31
|
|
help
|
|
This option sets the maximum number of streams per broadcast source
|
|
to support.
|
|
|
|
endif # BT_BAP_BROADCAST_SOURCE
|
|
|
|
config BT_BAP_BROADCAST_SINK
|
|
bool "Bluetooth Broadcast Sink Audio Support"
|
|
depends on BT_ISO_SYNC_RECEIVER
|
|
depends on BT_PAC_SNK
|
|
depends on BT_PERIPHERAL
|
|
depends on BT_BAP_SCAN_DELEGATOR
|
|
help
|
|
This option enables support for Bluetooth Broadcast Sink Audio using
|
|
Isochronous channels.
|
|
|
|
if BT_BAP_BROADCAST_SINK
|
|
|
|
config BT_BAP_BROADCAST_SNK_SUBGROUP_COUNT
|
|
int "Basic Audio Profile Broadcast Sink subgroup count"
|
|
default BT_BAP_BASS_MAX_SUBGROUPS
|
|
range 1 BT_BAP_BASS_MAX_SUBGROUPS
|
|
help
|
|
This option sets the maximum number of subgroups per broadcast sink
|
|
to support.
|
|
|
|
config BT_BAP_BROADCAST_SNK_COUNT
|
|
int "Basic Audio Broadcaster Sink count"
|
|
default 1
|
|
range 0 BT_ISO_MAX_BIG
|
|
help
|
|
This option sets the number of broadcast sinks to support.
|
|
One broadcast sink can receive multiple streams
|
|
(up to BT_BAP_BROADCAST_SNK_STREAM_COUNT per broadcast sink).
|
|
|
|
config BT_BAP_BROADCAST_SNK_STREAM_COUNT
|
|
int "Basic Audio Broadcast Sink Stream count"
|
|
depends on BT_BAP_BROADCAST_SNK_COUNT > 0
|
|
default 1
|
|
range 1 BT_ISO_MAX_CHAN if BT_ISO_MAX_CHAN < 31
|
|
range 1 31
|
|
help
|
|
This option sets the maximum number of streams per broadcast sink
|
|
to support.
|
|
|
|
endif # BT_BAP_BROADCAST_SINK
|
|
|
|
config BT_BAP_SCAN_DELEGATOR
|
|
bool "Basic Audio Profile Scan Delegator role support"
|
|
depends on BT_EXT_ADV
|
|
depends on BT_PER_ADV_SYNC
|
|
depends on BT_ISO_SYNC_RECEIVER
|
|
depends on BT_OBSERVER
|
|
depends on BT_GATT_DYNAMIC_DB
|
|
depends on BT_BONDABLE
|
|
help
|
|
This option enables support for the Scan Delegator role and the
|
|
Broadcast Audio Scan Service (BASS).
|
|
|
|
if BT_BAP_SCAN_DELEGATOR
|
|
|
|
config BT_BAP_SCAN_DELEGATOR_RECV_STATE_COUNT
|
|
int "Scan Delegator Receive State Count"
|
|
default 1
|
|
range 1 3
|
|
help
|
|
Sets the number of receive state characteristics present on the
|
|
server. Each characteristic may hold information to sync to a
|
|
periodic advertise or a broadcast isochronous stream.
|
|
|
|
config BT_BAP_SCAN_DELEGATOR_BUF_TIMEOUT
|
|
int "Milliseconds of timeout when handle concurrent access to the long read ASE buffer"
|
|
range 0 1000
|
|
default 50
|
|
help
|
|
The maximum number of milliseconds that the scan delegator implementation will wait
|
|
before rejecting a read or dropping a notification if the scan delegator state is
|
|
being accessed by another thread.
|
|
|
|
endif # BT_BAP_SCAN_DELEGATOR
|
|
|
|
config BT_BAP_BROADCAST_ASSISTANT
|
|
bool "Basic Audio Profile Broadcast Assistant role support"
|
|
depends on BT_EXT_ADV
|
|
depends on BT_PER_ADV_SYNC
|
|
depends on BT_ISO_SYNC_RECEIVER
|
|
depends on BT_GATT_CLIENT
|
|
depends on BT_GATT_AUTO_DISCOVER_CCC
|
|
depends on BT_GATT_AUTO_UPDATE_MTU
|
|
depends on BT_OBSERVER
|
|
depends on BT_BONDABLE
|
|
help
|
|
This option enables support for the Broadcast Assistant role.
|
|
|
|
if BT_BAP_BROADCAST_ASSISTANT
|
|
|
|
config BT_BAP_BROADCAST_ASSISTANT_RECV_STATE_COUNT
|
|
int "Broadcast Assistant Max Receive State Count"
|
|
default 1
|
|
range 1 $(UINT8_MAX)
|
|
help
|
|
Sets the number of maximum receive stat characteristics that will be
|
|
discovered and ready to use. Each characteristic may hold information
|
|
to sync to a periodic advertise or a broadcast isochronous stream.
|
|
|
|
endif # BT_BAP_BROADCAST_ASSISTANT
|
|
|
|
config BT_BAP_DEBUG_STREAM_DATA
|
|
bool "Bluetooth Audio Stream data debug"
|
|
depends on BT_BAP_STREAM_LOG_LEVEL_DBG
|
|
help
|
|
Use this option to enable Bluetooth Audio Stream data debug logs for
|
|
the Bluetooth Audio functionality. This will enable debug logs for all
|
|
audio data received and sent.
|
|
|
|
config BT_BAP_STREAM
|
|
# Virtual/hidden option
|
|
bool
|
|
default y if BT_ASCS || BT_BAP_UNICAST_CLIENT || \
|
|
BT_BAP_BROADCAST_SOURCE || BT_BAP_BROADCAST_SINK
|
|
|
|
config BT_BAP_DEBUG_STREAM_SEQ_NUM
|
|
bool "Bluetooth Audio Stream sequence number debug"
|
|
depends on BT_BAP_STREAM_LOG_LEVEL >= BT_BAP_STREAM_LOG_LEVEL_WRN
|
|
default y
|
|
help
|
|
Use this option to enable Bluetooth Audio Stream sequence number debugging logs for
|
|
the Bluetooth Audio functionality. This will provide a warning if the application
|
|
provides unexpected sequence numbers.
|
|
|
|
config BT_BAP_BASE
|
|
def_bool BT_BAP_BROADCAST_SINK || BT_BAP_BROADCAST_ASSISTANT || BT_BAP_SCAN_DELEGATOR
|
|
|
|
rsource "Kconfig.pacs"
|
|
rsource "Kconfig.ascs"
|