blob: 64c07ca60d7c2b9eff50e2250190d373c2cd6129 [file] [log] [blame]
# 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
bool
depends on BT_CONN
select BT_SMP
select BT_ISO_UNICAST
config BT_BAP_UNICAST_SERVER
bool "Bluetooth Unicast Audio Server Support [EXPERIMENTAL]"
select EXPERIMENTAL
select BT_PERIPHERAL
select BT_BAP_UNICAST
select BT_ISO_PERIPHERAL
select BT_GATT_DYNAMIC_DB
select BT_GATT_CACHING
select BT_ASCS
help
This option enables support for Bluetooth Unicast Audio Server
using Isochronous channels.
config BT_BAP_UNICAST_CLIENT
bool "Bluetooth Unicast Audio Client Support [EXPERIMENTAL]"
select EXPERIMENTAL
select BT_BAP_UNICAST
select BT_ISO_CENTRAL
select BT_CENTRAL
select BT_GATT_CLIENT
select BT_GATT_AUTO_DISCOVER_CCC
select BT_GATT_AUTO_UPDATE_MTU
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 255
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 255
help
Number of octets to support for Codec Specific Configuration metadata.
config BT_AUDIO_CODEC_CAP_MAX_DATA_SIZE
int "Codec Capabilities Data Size"
default 19
range 0 255
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 255
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"
depends on BT_BAP_UNICAST
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 255
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 255
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
select BT_AUDIO_TX
config BT_BAP_UNICAST_CLIENT_ASE_SRC
def_bool BT_BAP_UNICAST_CLIENT_ASE_SRC_COUNT > 0
select BT_AUDIO_RX
endif # BT_BAP_UNICAST_CLIENT
config BT_BAP_BROADCAST_SOURCE
bool "Bluetooth Broadcast Source Audio Support [EXPERIMENTAL]"
select EXPERIMENTAL
select BT_ISO_BROADCASTER
select BT_AUDIO_TX
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 [EXPERIMENTAL]"
select EXPERIMENTAL
select BT_ISO_SYNC_RECEIVER
select BT_AUDIO_RX
depends on BT_PERIPHERAL
depends on BT_PAC_SNK
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 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 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 [EXPERIMENTAL]"
select EXPERIMENTAL
select BT_OBSERVER
select BT_EXT_ADV
select BT_PER_ADV_SYNC
select BT_ISO_SYNC_RECEIVER
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_MAX_METADATA_LEN
int "Scan Delegator Maximum Metadata Length"
default 32
range 0 255
help
The maximum metadata length support by the BASS server.
config BT_BAP_SCAN_DELEGATOR_MAX_SUBGROUPS
int "Scan Delegator Maximum Number of Subgroups support"
default 1
range 0 31
help
The maximum number of BIS subgroups supported.
endif # BT_BAP_SCAN_DELEGATOR
config BT_BAP_BROADCAST_ASSISTANT
bool "Basic Audio Profile Broadcast Assistant role support [EXPERIMENTAL]"
select EXPERIMENTAL
select BT_OBSERVER
select BT_EXT_ADV
select BT_PER_ADV_SYNC
select BT_ISO_SYNC_RECEIVER
select BT_GATT_CLIENT
select BT_GATT_AUTO_DISCOVER_CCC
select BT_GATT_AUTO_UPDATE_MTU
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 255
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
rsource "Kconfig.pacs"
rsource "Kconfig.ascs"