| # 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_PACS |
| depends on BT_BONDABLE |
| help |
| This option enables support for Bluetooth Unicast Audio Server |
| using Isochronous channels. |
| |
| config BT_BAP_UNICAST_CLIENT |
| bool "Bluetooth Unicast Audio Client Support" |
| select BT_GATT_CLIENT |
| select BT_GATT_AUTO_DISCOVER_CCC |
| select 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 |
| 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" |
| 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" |
| select BT_ISO_SYNC_RECEIVER |
| select BT_AUDIO_RX |
| select 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 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" |
| select BT_EXT_ADV |
| select BT_PER_ADV_SYNC |
| select 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" |
| 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 |
| 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" |