Add support for the reconfigure procedure for the unicast server. Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
72 lines
2.5 KiB
C
72 lines
2.5 KiB
C
/* @file
|
|
* @brief Internal APIs for BAP
|
|
|
|
* Copyright (c) 2021-2022 Nordic Semiconductor ASA
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
int bt_unicast_client_config(struct bt_audio_stream *stream,
|
|
const struct bt_codec *codec);
|
|
|
|
int bt_unicast_client_enable(struct bt_audio_stream *stream,
|
|
struct bt_codec_data *meta,
|
|
size_t meta_count);
|
|
|
|
int bt_unicast_client_metadata(struct bt_audio_stream *stream,
|
|
struct bt_codec_data *meta,
|
|
size_t meta_count);
|
|
|
|
int bt_unicast_client_disable(struct bt_audio_stream *stream);
|
|
|
|
int bt_unicast_client_start(struct bt_audio_stream *stream);
|
|
|
|
int bt_unicast_client_stop(struct bt_audio_stream *stream);
|
|
|
|
int bt_unicast_client_release(struct bt_audio_stream *stream);
|
|
|
|
|
|
void bt_unicast_client_ep_set_state(struct bt_audio_ep *ep, uint8_t state);
|
|
|
|
struct net_buf_simple *bt_unicast_client_ep_create_pdu(uint8_t op);
|
|
|
|
int bt_unicast_client_ep_qos(struct bt_audio_ep *ep, struct net_buf_simple *buf,
|
|
struct bt_codec_qos *qos);
|
|
|
|
int bt_unicast_client_ep_send(struct bt_conn *conn, struct bt_audio_ep *ep,
|
|
struct net_buf_simple *buf);
|
|
|
|
void bt_unicast_client_ep_attach(struct bt_audio_ep *ep, struct bt_audio_stream *stream);
|
|
|
|
void bt_unicast_client_ep_detach(struct bt_audio_ep *ep, struct bt_audio_stream *stream);
|
|
|
|
/**
|
|
* @brief Get a new a audio_iso that is a match for the provided stream
|
|
*
|
|
* This will first attempt to find a audio_iso where the stream's direction
|
|
* is not yet used, and where the opposing direction is for the same stream
|
|
* group and ACL connection.
|
|
*
|
|
* If no such one is available, it will use the first completely free audio_iso
|
|
* available, or return NULL if not such one is found.
|
|
*
|
|
* @param stream Pointer to a stream used to find a corresponding audio_iso
|
|
*
|
|
* @return An audio_iso struct fit for the stream, or NULL.
|
|
*/
|
|
struct bt_audio_iso *bt_unicast_client_new_audio_iso(
|
|
const struct bt_audio_unicast_group *unicast_group,
|
|
const struct bt_audio_stream *stream,
|
|
enum bt_audio_dir dir);
|
|
|
|
struct bt_audio_iso *bt_unicast_client_audio_iso_by_stream(const struct bt_audio_stream *stream);
|
|
|
|
void bt_unicast_client_stream_bind_audio_iso(struct bt_audio_stream *stream,
|
|
struct bt_audio_iso *audio_iso,
|
|
enum bt_audio_dir dir);
|
|
void bt_unicast_client_stream_unbind_audio_iso(struct bt_audio_stream *stream);
|
|
|
|
void bt_unicast_client_ep_bind_audio_iso(struct bt_audio_ep *ep,
|
|
struct bt_audio_iso *audio_iso);
|
|
void bt_unicast_client_ep_unbind_audio_iso(struct bt_audio_ep *ep);
|