7#ifndef ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CAP_H_
8#define ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CAP_H_
34struct bt_cap_broadcast_source;
55 struct bt_csip_set_member_svc_inst **svc_inst);
59#if defined(CONFIG_BT_BAP_UNICAST_CLIENT)
72 void (*unicast_discovery_complete)(
73 struct bt_conn *conn,
int err,
88 void (*unicast_start_complete)(
struct bt_bap_unicast_group *unicast_group,
89 int err,
struct bt_conn *conn);
101 void (*unicast_update_complete)(
int err,
struct bt_conn *conn);
121 void (*unicast_stop_complete)(
struct bt_bap_unicast_group *unicast_group,
122 int err,
struct bt_conn *conn);
177 struct bt_bap_ep *
ep;
244 struct bt_bap_unicast_group *unicast_group);
380 struct bt_cap_broadcast_source **broadcast_source);
402 struct bt_le_ext_adv *adv);
533 struct bt_cap_broadcast_source **source);
576 struct bt_bap_unicast_group **unicast_group);
Bluetooth Audio handling.
Header for Bluetooth BAP.
ZTEST_BMEM int count
Definition: main.c:33
#define BT_AUDIO_BROADCAST_CODE_SIZE
Definition: audio.h:42
int bt_cap_initiator_unicast_audio_stop(struct bt_bap_unicast_group *unicast_group)
Stop unicast audio streams for a unicast group.
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.
int bt_cap_initiator_broadcast_to_unicast(const struct bt_cap_broadcast_to_unicast_param *param, struct bt_bap_unicast_group **unicast_group)
Hands over the data streams in a broadcast source to a unicast group.
int bt_cap_initiator_unicast_audio_update(const struct bt_cap_unicast_audio_update_param params[], size_t count)
Update unicast audio streams.
int bt_cap_initiator_register_cb(const struct bt_cap_initiator_cb *cb)
Register Common Audio Profile callbacks.
int bt_cap_initiator_broadcast_audio_update(struct bt_cap_broadcast_source *broadcast_source, const struct bt_codec_data meta[], size_t meta_count)
Update broadcast audio streams for a Common Audio Profile broadcast source.
int bt_cap_initiator_unicast_to_broadcast(const struct bt_cap_unicast_to_broadcast_param *param, struct bt_cap_broadcast_source **source)
Hands over the data streams in a unicast group to a broadcast source.
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_initiator_unicast_audio_cancel(void)
Cancel any current Common Audio Profile procedure.
int bt_cap_initiator_unicast_audio_start(const struct bt_cap_unicast_audio_start_param *param, struct bt_bap_unicast_group *unicast_group)
Setup and start unicast audio streams for a set of devices.
int bt_cap_initiator_unicast_discover(struct bt_conn *conn)
Discovers audio support on a remote device.
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)
bt_cap_set_type
Definition: cap.h:139
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.
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_broadcast_get_id(const struct bt_cap_broadcast_source *broadcast_source, uint32_t *const broadcast_id)
Get the broadcast ID of a Common Audio Profile broadcast source.
@ BT_CAP_SET_TYPE_CSIP
Definition: cap.h:143
@ BT_CAP_SET_TYPE_AD_HOC
Definition: cap.h:141
#define BT_ISO_BROADCAST_CODE_SIZE
Definition: iso.h:83
__UINT32_TYPE__ uint32_t
Definition: stdint.h:90
__UINT8_TYPE__ uint8_t
Definition: stdint.h:88
Stream operation.
Definition: bap.h:486
Basic Audio Profile stream structure.
Definition: bap.h:447
union bt_cap_set_member ** members
Definition: cap.h:556
enum bt_cap_set_type type
Definition: cap.h:544
size_t count
The number of set members in members.
Definition: cap.h:553
struct bt_cap_broadcast_source * broadcast_source
The source broadcast source with the streams.
Definition: cap.h:541
struct bt_cap_initiator_broadcast_subgroup_param * subgroup_params
Definition: cap.h:332
bool encryption
Definition: cap.h:347
uint8_t broadcast_code[BT_AUDIO_BROADCAST_CODE_SIZE]
16-octet broadcast code.
Definition: cap.h:361
struct bt_codec_qos * qos
Definition: cap.h:335
uint8_t packing
Broadcast Source packing mode.
Definition: cap.h:344
size_t subgroup_count
Definition: cap.h:329
struct bt_codec_data * data
Definition: cap.h:313
struct bt_cap_stream * stream
Definition: cap.h:304
size_t data_count
Definition: cap.h:310
struct bt_codec * codec
Definition: cap.h:324
struct bt_cap_initiator_broadcast_stream_param * stream_params
Definition: cap.h:321
size_t stream_count
Definition: cap.h:318
struct bt_bap_stream_ops * ops
Definition: cap.h:157
struct bt_bap_stream bap_stream
Definition: cap.h:156
enum bt_cap_set_type type
Definition: cap.h:194
size_t count
Definition: cap.h:197
struct bt_cap_unicast_audio_start_stream_param * stream_params
Definition: cap.h:200
struct bt_cap_stream * stream
Stream for the member.
Definition: cap.h:174
struct bt_codec * codec
Codec configuration.
Definition: cap.h:186
union bt_cap_set_member member
Definition: cap.h:171
struct bt_bap_ep * ep
Definition: cap.h:177
struct bt_codec_qos * qos
Definition: cap.h:189
struct bt_codec_data * meta
The new metadata.
Definition: cap.h:215
struct bt_cap_stream * stream
Stream for the member.
Definition: cap.h:205
size_t meta_count
Definition: cap.h:208
struct bt_bap_unicast_group * unicast_group
Definition: cap.h:491
uint8_t broadcast_code[BT_ISO_BROADCAST_CODE_SIZE]
16-octet broadcast code.
Definition: cap.h:513
bool encrypt
Whether or not to encrypt the streams.
Definition: cap.h:499
Codec configuration structure.
Definition: audio.h:181
Codec QoS structure.
Definition: audio.h:389
Codec structure.
Definition: audio.h:293
Struct representing a coordinated set instance on a remote device.
Definition: csip.h:257
Simple network buffer representation.
Definition: buf.h:83
struct bt_conn * member
Definition: cap.h:149
struct bt_csip_set_coordinator_csis_inst * csip
Definition: cap.h:152