# 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_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 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_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 [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 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"