Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
cap.h
Go to the documentation of this file.
1
5
6/*
7 * Copyright (c) 2022-2025 Nordic Semiconductor ASA
8 *
9 * SPDX-License-Identifier: Apache-2.0
10 */
11
12#ifndef ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CAP_H_
13#define ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CAP_H_
14
32
33#include <stdbool.h>
34#include <stddef.h>
35#include <stdint.h>
36
44#include <zephyr/net_buf.h>
45
46#ifdef __cplusplus
47extern "C" {
48#endif
49
55
61
81 struct bt_csip_set_member_svc_inst **svc_inst);
82
85#if defined(CONFIG_BT_BAP_UNICAST_CLIENT) || defined(__DOXYGEN__)
100 struct bt_conn *conn, int err,
101 const struct bt_csip_set_coordinator_set_member *member,
102 const struct bt_csip_set_coordinator_csis_inst *csis_inst);
103
123 void (*unicast_start_complete)(int err, struct bt_conn *conn);
124
144 void (*unicast_update_complete)(int err, struct bt_conn *conn);
145
166 void (*unicast_stop_complete)(int err, struct bt_conn *conn);
167#endif /* CONFIG_BT_BAP_UNICAST_CLIENT */
168#if defined(CONFIG_BT_BAP_BROADCAST_SOURCE) || defined(__DOXYGEN__)
175
182 void (*broadcast_stopped)(struct bt_cap_broadcast_source *source, uint8_t reason);
183#endif /* CONFIG_BT_BAP_BROADCAST_SOURCE */
184};
185
200
208
217
231
241
257int bt_cap_stream_send(struct bt_cap_stream *stream, struct net_buf *buf, uint16_t seq_num);
258
276int bt_cap_stream_send_ts(struct bt_cap_stream *stream, struct net_buf *buf, uint16_t seq_num,
277 uint32_t ts);
278
293
302
316
321
324
333
334#if defined(CONFIG_BT_ISO_TEST_PARAMS) || defined(__DOXYGEN__)
344
354
363#endif /* CONFIG_BT_ISO_TEST_PARAMS */
364};
365
380 struct bt_cap_unicast_group **out_unicast_group);
381
398 const struct bt_cap_unicast_group_param *param);
399
420 const struct bt_cap_unicast_group_stream_pair_param params[],
421 size_t num_param);
422
434
444 void *user_data);
445
459 void *user_data);
460
466
477 struct bt_cap_unicast_group_info *info);
478
502
514
530
542
557
566
576
596
614
632
661
679
694
699
702
704 const struct bt_bap_qos_cfg *qos;
705
714
717
731
732#if defined(CONFIG_BT_ISO_TEST_PARAMS) || defined(__DOXYGEN__)
741
750
759#endif /* CONFIG_BT_ISO_TEST_PARAMS */
760};
761
782 const struct bt_cap_initiator_broadcast_create_param *param,
783 struct bt_cap_broadcast_source **broadcast_source);
784
805 struct bt_le_ext_adv *adv);
821 const uint8_t meta[], size_t meta_len);
822
836
855
872 struct net_buf_simple *base_buf);
873
883 void *user_data);
884
898 void *user_data);
899
931
946 void (*unicast_to_broadcast_created)(struct bt_cap_broadcast_source *broadcast_source);
947
958 void (*unicast_to_broadcast_complete)(int err, struct bt_conn *conn,
959 struct bt_cap_unicast_group *unicast_group,
960 struct bt_cap_broadcast_source *broadcast_source);
961
972 void (*broadcast_to_unicast_complete)(int err, struct bt_conn *conn,
973 struct bt_cap_broadcast_source *broadcast_source,
974 struct bt_cap_unicast_group *unicast_group);
975};
976
985
995
1014 const struct bt_cap_handover_unicast_to_broadcast_param *param);
1015
1059
1073 const struct bt_cap_handover_broadcast_to_unicast_param *param);
1074
1103
1119 void (*discovery_complete)(struct bt_conn *conn, int err,
1120 const struct bt_csip_set_coordinator_set_member *member,
1121 const struct bt_csip_set_coordinator_csis_inst *csis_inst);
1122
1123#if defined(CONFIG_BT_VCP_VOL_CTLR) || defined(__DOXYGEN__)
1134 void (*volume_changed)(struct bt_conn *conn, int err);
1135
1146 void (*volume_mute_changed)(struct bt_conn *conn, int err);
1147
1148#if defined(CONFIG_BT_VCP_VOL_CTLR_VOCS) || defined(__DOXYGEN__)
1159 void (*volume_offset_changed)(struct bt_conn *conn, int err);
1160#endif /* CONFIG_BT_VCP_VOL_CTLR_VOCS */
1161#endif /* CONFIG_BT_VCP_VOL_CTLR */
1162#if defined(CONFIG_BT_MICP_MIC_CTLR) || defined(__DOXYGEN__)
1173 void (*microphone_mute_changed)(struct bt_conn *conn, int err);
1174#if defined(CONFIG_BT_MICP_MIC_CTLR_AICS) || defined(__DOXYGEN__)
1185 void (*microphone_gain_changed)(struct bt_conn *conn, int err);
1186#endif /* CONFIG_BT_MICP_MIC_CTLR_AICS */
1187#endif /* CONFIG_BT_MICP_MIC_CTLR */
1188
1189#if defined(CONFIG_BT_BAP_BROADCAST_ASSISTANT) || defined(__DOXYGEN__)
1200 void (*broadcast_reception_start)(struct bt_conn *conn, int err);
1211 void (*broadcast_reception_stop)(struct bt_conn *conn, int err);
1222 void (*distribute_broadcast_code)(struct bt_conn *conn, int err);
1223#endif /* CONFIG_BT_BAP_BROADCAST_ASSISTANT */
1224};
1225
1236
1246
1266
1295
1330
1342
1353
1365
1377
1388
1397
1421
1432
1447
1456
1472
1484
1494
1513
1523
1542
1552
1564
1576
1586#ifdef __cplusplus
1587}
1588#endif
1589
1593
1594#endif /* ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CAP_H_ */
Bluetooth device address definitions and utilities.
Header for Bluetooth BAP.
Bluetooth Audio handling.
Bluetooth subsystem core APIs.
Bluetooth connection handling.
Bluetooth Coordinated Set Identification Profile (CSIP) APIs.
#define BT_BAP_BASS_MAX_SUBGROUPS
Maximum number of subgroups supported in the BAP Scan Delegator API.
Definition bap.h:51
int bt_cap_commander_discover(struct bt_conn *conn)
Discovers audio support on a remote device.
int bt_cap_commander_change_microphone_mute_state(const struct bt_cap_commander_change_microphone_mute_state_param *param)
Change the microphone mute state on one or more Common Audio Profile Acceptors.
int bt_cap_stream_send_ts(struct bt_cap_stream *stream, struct net_buf *buf, uint16_t seq_num, uint32_t ts)
Send data to Common Audio Profile stream with timestamp.
int bt_cap_commander_broadcast_reception_start(const struct bt_cap_commander_broadcast_reception_start_param *param)
Starts the reception of broadcast audio on one or more remote Common Audio Profile Acceptors.
int bt_cap_initiator_broadcast_audio_start(struct bt_cap_broadcast_source *broadcast_source, struct bt_le_ext_adv *adv)
Start Common Audio Profile broadcast source.
bool(* bt_cap_initiator_broadcast_foreach_stream_func_t)(struct bt_cap_stream *stream, void *user_data)
Callback function for bt_cap_initiator_broadcast_foreach_stream().
Definition cap.h:882
int bt_cap_stream_send(struct bt_cap_stream *stream, struct net_buf *buf, uint16_t seq_num)
Send data to Common Audio Profile stream without timestamp.
int bt_cap_commander_unregister_cb(const struct bt_cap_commander_cb *cb)
Unregister Common Audio Profile Commander callbacks.
int bt_cap_initiator_broadcast_foreach_stream(struct bt_cap_broadcast_source *broadcast_source, bt_cap_initiator_broadcast_foreach_stream_func_t func, void *user_data)
Iterate through all streams in a broadcast source.
int bt_cap_initiator_register_cb(const struct bt_cap_initiator_cb *cb)
Register Common Audio Profile Initiator callbacks.
int bt_cap_handover_register_cb(const struct bt_cap_handover_cb *cb)
Register Common Audio Profile Handover callbacks.
int bt_cap_unicast_group_foreach_stream(struct bt_cap_unicast_group *unicast_group, bt_cap_unicast_group_foreach_stream_func_t func, void *user_data)
Iterate through all streams in a unicast group.
int bt_cap_unicast_group_reconfig(struct bt_cap_unicast_group *unicast_group, const struct bt_cap_unicast_group_param *param)
Reconfigure unicast group.
int bt_cap_initiator_broadcast_get_base(struct bt_cap_broadcast_source *broadcast_source, struct net_buf_simple *base_buf)
Get the Broadcast Audio Stream Endpoint of a Common Audio Profile broadcast source.
int bt_cap_initiator_broadcast_audio_create(const struct bt_cap_initiator_broadcast_create_param *param, struct bt_cap_broadcast_source **broadcast_source)
Create a Common Audio Profile broadcast source.
int bt_cap_commander_cancel(void)
Cancel any current Common Audio Profile commander procedure.
int bt_cap_unicast_group_add_streams(struct bt_cap_unicast_group *unicast_group, const struct bt_cap_unicast_group_stream_pair_param params[], size_t num_param)
Add streams to a unicast group as a unicast client.
int bt_cap_stream_get_tx_sync(struct bt_cap_stream *stream, struct bt_iso_tx_info *info)
Get ISO transmission timing info for a Common Audio Profile stream.
int bt_cap_handover_unregister_cb(const struct bt_cap_handover_cb *cb)
Unregister Common Audio Profile Handover callbacks.
int bt_cap_unicast_group_get_info(const struct bt_cap_unicast_group *unicast_group, struct bt_cap_unicast_group_info *info)
Return structure holding information of unicast group.
int bt_cap_initiator_broadcast_audio_update(struct bt_cap_broadcast_source *broadcast_source, const uint8_t meta[], size_t meta_len)
Update broadcast audio streams for a Common Audio Profile broadcast source.
int bt_cap_initiator_unicast_audio_update(const struct bt_cap_unicast_audio_update_param *param)
Update unicast audio streams.
int bt_cap_handover_broadcast_to_unicast(const struct bt_cap_handover_broadcast_to_unicast_param *param)
Hands over the data streams in a broadcast source to a unicast group.
int bt_cap_commander_change_microphone_gain_setting(const struct bt_cap_commander_change_microphone_gain_setting_param *param)
Change the microphone gain setting on one or more Common Audio Profile Acceptors.
int bt_cap_unicast_group_delete(struct bt_cap_unicast_group *unicast_group)
Delete audio unicast group.
int bt_cap_initiator_unicast_audio_cancel(void)
Cancel any current Common Audio Profile Initiator procedure.
int bt_cap_initiator_unregister_cb(const struct bt_cap_initiator_cb *cb)
Unregister Common Audio Profile Initiator callbacks.
int bt_cap_handover_unicast_to_broadcast(const struct bt_cap_handover_unicast_to_broadcast_param *param)
Hands over the sink streams in a unicast group to a broadcast source.
int bt_cap_unicast_group_create(const struct bt_cap_unicast_group_param *param, struct bt_cap_unicast_group **out_unicast_group)
Create unicast group.
int bt_cap_commander_register_cb(const struct bt_cap_commander_cb *cb)
Register Common Audio Profile Commander callbacks.
int bt_cap_initiator_unicast_discover(struct bt_conn *conn)
Discovers audio support on a remote device.
int bt_cap_commander_broadcast_reception_stop(const struct bt_cap_commander_broadcast_reception_stop_param *param)
Stops the reception of broadcast audio on one or more remote Common Audio Profile Acceptors.
int bt_cap_commander_change_volume_mute_state(const struct bt_cap_commander_change_volume_mute_state_param *param)
Change the volume mute state on one or more Common Audio Profile Acceptors.
void bt_cap_stream_ops_register(struct bt_cap_stream *stream, struct bt_bap_stream_ops *ops)
Register Audio operations for a Common Audio Profile stream.
int bt_cap_initiator_broadcast_audio_delete(struct bt_cap_broadcast_source *broadcast_source)
Delete Common Audio Profile broadcast source.
bt_cap_set_type
Type of CAP set.
Definition cap.h:202
int bt_cap_handover_cancel(void)
Cancel any current Common Audio Profile Handover procedure.
int bt_cap_initiator_unicast_audio_start(const struct bt_cap_unicast_audio_start_param *param)
Setup and start unicast audio streams for a set of devices.
int bt_cap_commander_change_volume_offset(const struct bt_cap_commander_change_volume_offset_param *param)
Change the volume offset on one or more Common Audio Profile Acceptors.
int bt_cap_initiator_broadcast_audio_stop(struct bt_cap_broadcast_source *broadcast_source)
Stop broadcast audio streams for a Common Audio Profile broadcast source.
bool(* bt_cap_unicast_group_foreach_stream_func_t)(struct bt_cap_stream *stream, void *user_data)
Callback function for bt_cap_unicast_group_foreach_stream().
Definition cap.h:443
int bt_cap_commander_distribute_broadcast_code(const struct bt_cap_commander_distribute_broadcast_code_param *param)
Distributes the broadcast code on one or more remote Common Audio Profile Acceptors.
int bt_cap_acceptor_register(const struct bt_csip_set_member_register_param *param, struct bt_csip_set_member_svc_inst **svc_inst)
Register the Common Audio Service.
int bt_cap_initiator_unicast_audio_stop(const struct bt_cap_unicast_audio_stop_param *param)
Stop unicast audio streams.
int bt_cap_commander_change_volume(const struct bt_cap_commander_change_volume_param *param)
Change the volume on one or more Common Audio Profile Acceptors.
@ BT_CAP_SET_TYPE_CSIP
The set is a CSIP Coordinated Set.
Definition cap.h:206
@ BT_CAP_SET_TYPE_AD_HOC
The set is an ad-hoc set.
Definition cap.h:204
#define BT_ISO_BROADCAST_CODE_SIZE
Broadcast code size (16 octets).
Definition iso.h:144
Bluetooth ISO handling.
Buffer management.
#define bool
Definition stdbool.h:13
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
__INT8_TYPE__ int8_t
Definition stdint.h:72
__INT16_TYPE__ int16_t
Definition stdint.h:73
Bluetooth LE Device Address.
Definition addr.h:51
Codec specific configuration structure.
Definition audio.h:230
Struct to hold subgroup specific information for the receive state.
Definition bap.h:439
Abstract Audio Endpoint structure.
QoS configuration structure.
Definition bap.h:238
Stream operation.
Definition bap.h:751
Basic Audio Profile stream structure.
Definition bap.h:702
Abstract Audio Unicast Group structure.
Abstract Audio Broadcast Source structure.
Parameters part of bt_cap_commander_broadcast_reception_start_param for bt_cap_commander_broadcast_re...
Definition cap.h:1300
size_t num_subgroups
Number of subgroups.
Definition cap.h:1328
uint16_t pa_interval
Periodic advertising interval in milliseconds.
Definition cap.h:1315
uint32_t broadcast_id
24-bit broadcast ID
Definition cap.h:1318
bt_addr_le_t addr
Address of the advertiser.
Definition cap.h:1305
struct bt_bap_bass_subgroup subgroups[0]
Pointer to array of subgroups.
Definition cap.h:1325
union bt_cap_set_member member
Coordinated or ad-hoc set member.
Definition cap.h:1302
uint8_t adv_sid
SID of the advertising set.
Definition cap.h:1308
Parameters for starting broadcast reception.
Definition cap.h:1332
struct bt_cap_commander_broadcast_reception_start_member_param * param
The set of devices for this procedure.
Definition cap.h:1337
size_t count
The number of parameters in param.
Definition cap.h:1340
enum bt_cap_set_type type
The type of the set.
Definition cap.h:1334
Member parameters for stopping broadcast reception.
Definition cap.h:1355
uint8_t src_id
Source ID of the receive state.
Definition cap.h:1360
union bt_cap_set_member member
Coordinated or ad-hoc set member.
Definition cap.h:1357
size_t num_subgroups
Number of subgroups.
Definition cap.h:1363
Parameters for stopping broadcast reception.
Definition cap.h:1367
enum bt_cap_set_type type
The type of the set.
Definition cap.h:1369
struct bt_cap_commander_broadcast_reception_stop_member_param * param
The set of devices for this procedure.
Definition cap.h:1372
size_t count
The number of parameters in param.
Definition cap.h:1375
Callback structure for CAP procedures.
Definition cap.h:1105
void(* broadcast_reception_start)(struct bt_conn *conn, int err)
Callback for bt_cap_commander_broadcast_reception_start().
Definition cap.h:1200
void(* microphone_gain_changed)(struct bt_conn *conn, int err)
Callback for bt_cap_commander_change_microphone_gain_setting().
Definition cap.h:1185
void(* broadcast_reception_stop)(struct bt_conn *conn, int err)
Callback for bt_cap_commander_broadcast_reception_stop().
Definition cap.h:1211
void(* volume_changed)(struct bt_conn *conn, int err)
Callback for bt_cap_commander_change_volume().
Definition cap.h:1134
void(* volume_offset_changed)(struct bt_conn *conn, int err)
Callback for bt_cap_commander_change_volume_offset().
Definition cap.h:1159
void(* distribute_broadcast_code)(struct bt_conn *conn, int err)
Callback for bt_cap_commander_distribute_broadcast_code().
Definition cap.h:1222
void(* microphone_mute_changed)(struct bt_conn *conn, int err)
Callback for bt_cap_commander_change_microphone_mute_state().
Definition cap.h:1173
void(* volume_mute_changed)(struct bt_conn *conn, int err)
Callback for bt_cap_commander_change_volume_mute_state().
Definition cap.h:1146
void(* discovery_complete)(struct bt_conn *conn, int err, const struct bt_csip_set_coordinator_set_member *member, const struct bt_csip_set_coordinator_csis_inst *csis_inst)
Callback for bt_cap_commander_discover().
Definition cap.h:1119
Parameters part of bt_cap_commander_change_microphone_gain_setting_param for bt_cap_commander_change_...
Definition cap.h:1557
union bt_cap_set_member member
Coordinated or ad-hoc set member.
Definition cap.h:1559
int8_t gain
The microphone gain setting to set.
Definition cap.h:1562
Parameters for changing microphone mute state.
Definition cap.h:1566
enum bt_cap_set_type type
The type of the set.
Definition cap.h:1568
struct bt_cap_commander_change_microphone_gain_setting_member_param * param
The set of devices for this procedure.
Definition cap.h:1571
size_t count
The number of parameters in param.
Definition cap.h:1574
Parameters for changing microphone mute state.
Definition cap.h:1525
bool mute
The microphone mute state to set.
Definition cap.h:1540
size_t count
The number of members in members.
Definition cap.h:1533
union bt_cap_set_member * members
Coordinated or ad-hoc set member.
Definition cap.h:1530
enum bt_cap_set_type type
The type of the set.
Definition cap.h:1527
Parameters for changing volume mute state.
Definition cap.h:1496
size_t count
The number of members in members.
Definition cap.h:1504
bool mute
The volume mute state to set.
Definition cap.h:1511
enum bt_cap_set_type type
The type of the set.
Definition cap.h:1498
union bt_cap_set_member * members
Coordinated or ad-hoc set member.
Definition cap.h:1501
Parameters part of bt_cap_commander_change_volume_offset_param for bt_cap_commander_change_volume_off...
Definition cap.h:1461
int16_t offset
The offset to set.
Definition cap.h:1470
union bt_cap_set_member member
Coordinated or ad-hoc set member.
Definition cap.h:1463
Parameters for changing volume offset.
Definition cap.h:1474
struct bt_cap_commander_change_volume_offset_member_param * param
The set of devices for this procedure.
Definition cap.h:1479
enum bt_cap_set_type type
The type of the set.
Definition cap.h:1476
size_t count
The number of parameters in param.
Definition cap.h:1482
Parameters for changing absolute volume.
Definition cap.h:1434
size_t count
The number of members in members.
Definition cap.h:1442
union bt_cap_set_member * members
Coordinated or ad-hoc set member.
Definition cap.h:1439
enum bt_cap_set_type type
The type of the set.
Definition cap.h:1436
uint8_t volume
The absolute volume to set.
Definition cap.h:1445
Member parameters for distributing broadcast code.
Definition cap.h:1390
union bt_cap_set_member member
Coordinated or ad-hoc set member.
Definition cap.h:1392
uint8_t src_id
Source ID of the receive state.
Definition cap.h:1395
Parameters for distributing broadcast code.
Definition cap.h:1399
struct bt_cap_commander_distribute_broadcast_code_member_param * param
The set of devices for this procedure.
Definition cap.h:1404
size_t count
The number of parameters in param.
Definition cap.h:1407
enum bt_cap_set_type type
The type of the set.
Definition cap.h:1401
uint8_t broadcast_code[BT_ISO_BROADCAST_CODE_SIZE]
16-octet broadcast code.
Definition cap.h:1419
Parameters for bt_cap_handover_broadcast_to_unicast().
Definition cap.h:1017
struct bt_cap_unicast_audio_start_param * unicast_start_param
Definition cap.h:1057
uint32_t broadcast_id
Broadcast ID of the broadcast_source.
Definition cap.h:1032
uint8_t adv_type
Advertising type of the advertising address of broadcast_source.
Definition cap.h:1044
struct bt_cap_broadcast_source * broadcast_source
The source broadcast source with the streams.
Definition cap.h:1051
uint8_t adv_sid
Advertising set ID of the broadcast_source.
Definition cap.h:1038
struct bt_cap_unicast_group_param * unicast_group_param
Definition cap.h:1054
struct bt_cap_commander_broadcast_reception_stop_param * reception_stop_param
Parameters for stopping broadcast audio reception on acceptors.
Definition cap.h:1026
Callback structure for CAP procedures.
Definition cap.h:933
void(* broadcast_to_unicast_complete)(int err, struct bt_conn *conn, struct bt_cap_broadcast_source *broadcast_source, struct bt_cap_unicast_group *unicast_group)
The broadcast to unicast handover procedure has finished.
Definition cap.h:972
void(* unicast_to_broadcast_created)(struct bt_cap_broadcast_source *broadcast_source)
The broadcast source has been created for handover.
Definition cap.h:946
void(* unicast_to_broadcast_complete)(int err, struct bt_conn *conn, struct bt_cap_unicast_group *unicast_group, struct bt_cap_broadcast_source *broadcast_source)
The unicast to broadcast handover procedure has finished.
Definition cap.h:958
Parameters for bt_cap_handover_unicast_to_broadcast().
Definition cap.h:901
enum bt_cap_set_type type
The type of the set.
Definition cap.h:903
uint16_t pa_interval
The periodic advertising interval configured for the advertising set.
Definition cap.h:919
struct bt_le_ext_adv * ext_adv
The advertising set to use for the broadcast source.
Definition cap.h:916
struct bt_cap_initiator_broadcast_create_param * broadcast_create_param
Broadcast source parameters.
Definition cap.h:929
struct bt_cap_unicast_group * unicast_group
The source unicast group with the streams.
Definition cap.h:906
uint32_t broadcast_id
The broadcast ID the advertising set is, or will be, using.
Definition cap.h:922
Parameters for * bt_cap_initiator_broadcast_audio_create().
Definition cap.h:696
uint8_t pto
Pre-transmission offset.
Definition cap.h:749
struct bt_cap_initiator_broadcast_subgroup_param * subgroup_params
Array of stream parameters.
Definition cap.h:701
bool encryption
Whether or not to encrypt the streams.
Definition cap.h:716
uint8_t irc
Immediate Repetition Count.
Definition cap.h:740
uint16_t iso_interval
ISO interval.
Definition cap.h:758
uint8_t broadcast_code[BT_ISO_BROADCAST_CODE_SIZE]
16-octet broadcast code.
Definition cap.h:730
const struct bt_bap_qos_cfg * qos
Quality of Service configuration.
Definition cap.h:704
uint8_t packing
Broadcast Source packing mode.
Definition cap.h:713
size_t subgroup_count
The number of parameters in subgroup_params.
Definition cap.h:698
Parameters part of bt_cap_initiator_broadcast_subgroup_param for bt_cap_initiator_broadcast_audio_cre...
Definition cap.h:666
uint8_t * data
BIS Codec Specific Configuration.
Definition cap.h:677
struct bt_cap_stream * stream
Audio stream.
Definition cap.h:668
size_t data_len
The length of the p data array.
Definition cap.h:674
Parameters part of bt_cap_initiator_broadcast_create_param for bt_cap_initiator_broadcast_audio_creat...
Definition cap.h:684
const struct bt_audio_codec_cfg * codec_cfg
Subgroup Codec configuration.
Definition cap.h:692
struct bt_cap_initiator_broadcast_stream_param * stream_params
Array of stream parameters.
Definition cap.h:689
size_t stream_count
The number of parameters in stream_params.
Definition cap.h:686
Callback structure for CAP procedures.
Definition cap.h:84
void(* unicast_stop_complete)(int err, struct bt_conn *conn)
Callback for bt_cap_initiator_unicast_audio_stop().
Definition cap.h:166
void(* unicast_discovery_complete)(struct bt_conn *conn, int err, const struct bt_csip_set_coordinator_set_member *member, const struct bt_csip_set_coordinator_csis_inst *csis_inst)
Callback for bt_cap_initiator_unicast_discover().
Definition cap.h:99
void(* broadcast_stopped)(struct bt_cap_broadcast_source *source, uint8_t reason)
The Broadcast Source has stopped and none of the streams are ready for audio data.
Definition cap.h:182
void(* unicast_update_complete)(int err, struct bt_conn *conn)
Callback for bt_cap_initiator_unicast_audio_update().
Definition cap.h:144
void(* unicast_start_complete)(int err, struct bt_conn *conn)
Callback for bt_cap_initiator_unicast_audio_start().
Definition cap.h:123
void(* broadcast_started)(struct bt_cap_broadcast_source *source)
The Broadcast Source has started and all of the streams are ready for audio data.
Definition cap.h:174
Common Audio Profile stream structure.
Definition cap.h:224
struct bt_bap_stream_ops * ops
Audio stream operations.
Definition cap.h:229
struct bt_bap_stream bap_stream
The underlying BAP audio stream.
Definition cap.h:226
Parameters for the bt_cap_initiator_unicast_audio_start() function.
Definition cap.h:504
enum bt_cap_set_type type
The type of the set.
Definition cap.h:506
size_t count
The number of parameters in stream_params.
Definition cap.h:509
struct bt_cap_unicast_audio_start_stream_param * stream_params
Array of stream parameters.
Definition cap.h:512
Stream specific parameters for the bt_cap_initiator_unicast_audio_start() function.
Definition cap.h:480
struct bt_cap_stream * stream
Stream for the member.
Definition cap.h:485
union bt_cap_set_member member
Coordinated or ad-hoc set member.
Definition cap.h:482
struct bt_bap_ep * ep
Endpoint reference for the stream.
Definition cap.h:488
const struct bt_audio_codec_cfg * codec_cfg
Codec configuration.
Definition cap.h:500
Parameters for the bt_cap_initiator_unicast_audio_stop() function.
Definition cap.h:544
size_t count
The number of streams in streams.
Definition cap.h:549
bool release
Whether to release the streams after they have stopped.
Definition cap.h:555
enum bt_cap_set_type type
The type of the set.
Definition cap.h:546
struct bt_cap_stream ** streams
Array of streams to stop.
Definition cap.h:552
Parameters for the bt_cap_initiator_unicast_audio_update() function.
Definition cap.h:532
struct bt_cap_unicast_audio_update_stream_param * stream_params
Array of stream parameters.
Definition cap.h:540
enum bt_cap_set_type type
The type of the set.
Definition cap.h:534
size_t count
The number of parameters in stream_params.
Definition cap.h:537
Stream specific parameters for the bt_cap_initiator_unicast_audio_update() function.
Definition cap.h:516
size_t meta_len
The length of meta.
Definition cap.h:521
struct bt_cap_stream * stream
Stream to update.
Definition cap.h:518
uint8_t * meta
The new metadata.
Definition cap.h:528
Structure holding information of audio stream endpoint.
Definition cap.h:462
const struct bt_bap_unicast_group * unicast_group
Pointer to the underlying Basic Audio Profile unicast group.
Definition cap.h:464
Parameters for the creating unicast groups with bt_cap_unicast_group_create().
Definition cap.h:318
struct bt_cap_unicast_group_stream_pair_param * params
Array of stream parameters.
Definition cap.h:323
uint8_t packing
Unicast Group packing mode.
Definition cap.h:332
uint8_t p_to_c_ft
Peripheral to Central flush timeout.
Definition cap.h:353
size_t params_count
The number of parameters in params.
Definition cap.h:320
uint16_t iso_interval
ISO interval.
Definition cap.h:362
uint8_t c_to_p_ft
Central to Peripheral flush timeout.
Definition cap.h:343
Parameter struct for the unicast group functions.
Definition cap.h:309
struct bt_cap_unicast_group_stream_param * rx_param
Pointer to a receiving stream parameters.
Definition cap.h:311
struct bt_cap_unicast_group_stream_param * tx_param
Pointer to a transmitting stream parameters.
Definition cap.h:314
Parameter struct for each stream in the unicast group.
Definition cap.h:295
const struct bt_bap_qos_cfg * qos_cfg
The QoS settings for the stream object.
Definition cap.h:300
struct bt_cap_stream * stream
Pointer to a stream object.
Definition cap.h:297
Abstract CAP Unicast Group structure.
Opaque type representing a connection to a remote device.
Struct representing a coordinated set instance on a remote device.
Definition csip.h:394
Struct representing a remote device as a set member.
Definition csip.h:403
Register structure for Coordinated Set Identification Service.
Definition csip.h:139
Opaque Coordinated Set Identification Service instance.
ISO Meta Data structure for transmitted ISO packets.
Definition iso.h:368
Opaque type representing an advertiser.
Simple network buffer representation.
Definition net_buf.h:89
Network buffer representation.
Definition net_buf.h:1048
Represents a Common Audio Set member that are either in a Coordinated or ad-hoc set.
Definition cap.h:210
struct bt_conn * member
Connection pointer if the type is BT_CAP_SET_TYPE_AD_HOC.
Definition cap.h:212
struct bt_csip_set_coordinator_csis_inst * csip
CSIP Coordinated Set struct used if type is BT_CAP_SET_TYPE_CSIP.
Definition cap.h:215