Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bluetooth: BAP: Support setting different values per dir in CIG #74495

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions include/zephyr/bluetooth/audio/bap.h
Original file line number Diff line number Diff line change
Expand Up @@ -1143,8 +1143,10 @@ struct bt_bap_unicast_group_param {
/**
* @brief Create audio unicast group.
*
* Create a new audio unicast group with one or more audio streams as a unicast client. Streams in
* a unicast group shall share the same interval, framing and latency (see @ref bt_audio_codec_qos).
* Create a new audio unicast group with one or more audio streams as a unicast client.
* All streams shall share the same framing.
* All streams in the same direction shall share the same interval and latency (see
* @ref bt_audio_codec_qos).
*
* @param[in] param The unicast group create parameters.
* @param[out] unicast_group Pointer to the unicast group created.
Expand Down
20 changes: 18 additions & 2 deletions subsys/bluetooth/audio/bap_endpoint.h
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,27 @@ struct bt_bap_ep {
struct bt_bap_broadcast_sink *broadcast_sink;
};

struct bt_bap_unicast_group_cig_param {
uint32_t c_to_p_interval;
uint32_t p_to_c_interval;
uint16_t c_to_p_latency;
uint16_t p_to_c_latency;
uint8_t framing;
uint8_t packing;
#if defined(CONFIG_BT_ISO_TEST_PARAMS)
uint8_t c_to_p_ft;
uint8_t p_to_c_ft;
uint16_t iso_interval;
#endif /* CONFIG_BT_ISO_TEST_PARAMS */
};

struct bt_bap_unicast_group {
/* Group-wide QoS used to create the CIG */
struct bt_bap_unicast_group_cig_param cig_param;

/* Unicast group fields */
uint8_t index;
bool allocated;
/* QoS used to create the CIG */
const struct bt_audio_codec_qos *qos;
struct bt_iso_cig *cig;
/* The ISO API for CIG creation requires an array of pointers to ISO channels */
struct bt_iso_chan *cis[UNICAST_GROUP_STREAM_CNT];
Expand Down
Loading
Loading