Zephyr API Documentation
3.5.0
A Scalable Open Source RTOS
|
|
3.5.0 |
Bluetooth Audio handling. More...
#include <zephyr/sys/atomic.h>
#include <zephyr/bluetooth/buf.h>
#include <zephyr/bluetooth/conn.h>
#include <zephyr/bluetooth/hci.h>
#include <zephyr/bluetooth/iso.h>
#include <zephyr/bluetooth/gatt.h>
#include <zephyr/bluetooth/audio/lc3.h>
Go to the source code of this file.
Data Structures | |
struct | bt_audio_codec_cap |
Codec capability structure. More... | |
struct | bt_audio_codec_cfg |
Codec specific configuration structure. More... | |
struct | bt_audio_codec_qos |
Codec QoS structure. More... | |
struct | bt_audio_codec_qos_pref |
Audio Stream Quality of Service Preference structure. More... | |
Macros | |
#define | BT_AUDIO_BROADCAST_ID_SIZE 3 /* octets */ |
#define | BT_AUDIO_BROADCAST_ID_MAX 0xFFFFFFU |
Maximum broadcast ID value. | |
#define | BT_AUDIO_PD_PREF_NONE 0x000000U |
Indicates that the server have no preference for the presentation delay. | |
#define | BT_AUDIO_PD_MAX 0xFFFFFFU |
Maximum presentation delay in microseconds. | |
#define | BT_AUDIO_BROADCAST_CODE_SIZE 16 |
#define | BT_AUDIO_CONTEXT_TYPE_ANY |
Any known context. | |
#define | BT_AUDIO_METADATA_TYPE_IS_KNOWN(_type) |
Helper to check whether metadata type is known by the stack. | |
#define | BT_AUDIO_UNICAST_ANNOUNCEMENT_GENERAL 0x00 |
#define | BT_AUDIO_UNICAST_ANNOUNCEMENT_TARGETED 0x01 |
#define | BT_AUDIO_CODEC_DATA(_type, _bytes...) (sizeof((uint8_t)_type) + sizeof((uint8_t[]){_bytes})), (_type), _bytes |
Helper to declare elements of bt_audio_codec_cap arrays. | |
#define | BT_AUDIO_CODEC_CFG(_id, _cid, _vid, _data, _meta) |
Helper to declare Codec config parsing APIs. | |
#define | BT_AUDIO_CODEC_CAP(_id, _cid, _vid, _data, _meta) |
Helper to declare Codec capability parsing APIs structure. | |
#define | BT_AUDIO_LOCATION_ANY |
Any known location. | |
#define | BT_AUDIO_CODEC_QOS(_interval, _framing, _phy, _sdu, _rtn, _latency, _pd) |
Helper to declare elements of bt_audio_codec_qos. | |
#define | BT_AUDIO_CODEC_QOS_UNFRAMED(_interval, _sdu, _rtn, _latency, _pd) |
Helper to declare Input Unframed bt_audio_codec_qos. | |
#define | BT_AUDIO_CODEC_QOS_FRAMED(_interval, _sdu, _rtn, _latency, _pd) |
Helper to declare Input Framed bt_audio_codec_qos. | |
#define | BT_AUDIO_CODEC_QOS_PREF(_unframed_supported, _phy, _rtn, _latency, _pd_min, _pd_max, _pref_pd_min, _pref_pd_max) |
Helper to declare elements of bt_audio_codec_qos_pref. | |
Functions | |
int | bt_audio_data_parse (const uint8_t ltv[], size_t size, bool(*func)(struct bt_data *data, void *user_data), void *user_data) |
Helper for parsing length-type-value data. | |
int | bt_audio_codec_cfg_freq_to_freq_hz (enum bt_audio_codec_config_freq freq) |
Convert assigned numbers frequency to frequency value. | |
int | bt_audio_codec_cfg_freq_hz_to_freq (uint32_t freq_hz) |
Convert frequency value to assigned numbers frequency. | |
int | bt_audio_codec_cfg_get_freq (const struct bt_audio_codec_cfg *codec_cfg) |
Extract the frequency from a codec configuration. | |
int | bt_audio_codec_cfg_set_freq (struct bt_audio_codec_cfg *codec_cfg, enum bt_audio_codec_config_freq freq) |
Set the frequency of a codec configuration. | |
int | bt_audio_codec_cfg_get_frame_duration_us (const struct bt_audio_codec_cfg *codec_cfg) |
Extract frame duration from BT codec config. | |
int | bt_audio_codec_cfg_get_chan_allocation (const struct bt_audio_codec_cfg *codec_cfg, enum bt_audio_location *chan_allocation) |
Extract channel allocation from BT codec config. | |
int | bt_audio_codec_cfg_set_chan_allocation (struct bt_audio_codec_cfg *codec_cfg, enum bt_audio_location chan_allocation) |
Set the channel allocation of a codec configuration. | |
int | bt_audio_codec_cfg_get_octets_per_frame (const struct bt_audio_codec_cfg *codec_cfg) |
Extract frame size in octets from BT codec config. | |
int | bt_audio_codec_cfg_set_octets_per_frame (struct bt_audio_codec_cfg *codec_cfg, uint16_t octets_per_frame) |
Set the octets per codec frame of a codec configuration. | |
int | bt_audio_codec_cfg_get_frame_blocks_per_sdu (const struct bt_audio_codec_cfg *codec_cfg, bool fallback_to_default) |
Extract number of audio frame blockss in each SDU from BT codec config. | |
int | bt_audio_codec_cfg_set_frame_blocks_per_sdu (struct bt_audio_codec_cfg *codec_cfg, uint8_t frame_blocks) |
Set the frame blocks per SDU of a codec configuration. | |
uint8_t | bt_audio_codec_cfg_get_val (const struct bt_audio_codec_cfg *codec_cfg, uint8_t type, const uint8_t **data) |
Lookup a specific codec configuration value. | |
int | bt_audio_codec_cfg_set_val (struct bt_audio_codec_cfg *codec_cfg, uint8_t type, const uint8_t *data, size_t data_len) |
Set or add a specific codec configuration value. | |
int | bt_audio_codec_cfg_meta_get_val (const struct bt_audio_codec_cfg *codec_cfg, uint8_t type, const uint8_t **data) |
Lookup a specific metadata value based on type. | |
int | bt_audio_codec_cfg_meta_get_pref_context (const struct bt_audio_codec_cfg *codec_cfg) |
Extract preferred contexts. | |
int | bt_audio_codec_cfg_meta_get_stream_context (const struct bt_audio_codec_cfg *codec_cfg) |
Extract stream contexts. | |
int | bt_audio_codec_cfg_meta_get_program_info (const struct bt_audio_codec_cfg *codec_cfg, const uint8_t **program_info) |
Extract program info. | |
int | bt_audio_codec_cfg_meta_get_stream_lang (const struct bt_audio_codec_cfg *codec_cfg) |
Extract stream language. | |
int | bt_audio_codec_cfg_meta_get_ccid_list (const struct bt_audio_codec_cfg *codec_cfg, const uint8_t **ccid_list) |
Extract CCID list. | |
int | bt_audio_codec_cfg_meta_get_parental_rating (const struct bt_audio_codec_cfg *codec_cfg) |
Extract parental rating. | |
int | bt_audio_codec_cfg_meta_get_program_info_uri (const struct bt_audio_codec_cfg *codec_cfg, const uint8_t **program_info_uri) |
Extract program info URI. | |
int | bt_audio_codec_cfg_meta_get_audio_active_state (const struct bt_audio_codec_cfg *codec_cfg) |
Extract audio active state. | |
int | bt_audio_codec_cfg_meta_get_bcast_audio_immediate_rend_flag (const struct bt_audio_codec_cfg *codec_cfg) |
Extract broadcast audio immediate rendering flag. | |
int | bt_audio_codec_cfg_meta_get_extended (const struct bt_audio_codec_cfg *codec_cfg, const uint8_t **extended_meta) |
Extract extended metadata. | |
int | bt_audio_codec_cfg_meta_get_vendor (const struct bt_audio_codec_cfg *codec_cfg, const uint8_t **vendor_meta) |
Extract vendor specific metadata. | |
uint8_t | bt_audio_codec_cap_get_val (const struct bt_audio_codec_cap *codec_cap, uint8_t type, const uint8_t **data) |
Lookup a specific value based on type. | |
int | bt_audio_codec_cap_get_freq (const struct bt_audio_codec_cap *codec_cap) |
Extract the frequency from a codec capability. | |
int | bt_audio_codec_cap_get_frame_duration (const struct bt_audio_codec_cap *codec_cap) |
Extract the frequency from a codec capability. | |
int | bt_audio_codec_cap_get_supported_audio_chan_counts (const struct bt_audio_codec_cap *codec_cap) |
Extract the frequency from a codec capability. | |
int | bt_audio_codec_cap_get_octets_per_frame (const struct bt_audio_codec_cap *codec_cap, struct bt_audio_codec_octets_per_codec_frame *codec_frame) |
Extract the frequency from a codec capability. | |
int | bt_audio_codec_cap_get_max_codec_frames_per_sdu (const struct bt_audio_codec_cap *codec_cap) |
Extract the frequency from a codec capability. | |
int | bt_audio_codec_cap_meta_get_val (const struct bt_audio_codec_cap *codec_cap, uint8_t type, const uint8_t **data) |
Lookup a specific metadata value based on type. | |
int | bt_audio_codec_cap_meta_get_pref_context (const struct bt_audio_codec_cap *codec_cap) |
Extract preferred contexts. | |
int | bt_audio_codec_cap_meta_get_stream_context (const struct bt_audio_codec_cap *codec_cap) |
Extract stream contexts. | |
int | bt_audio_codec_cap_meta_get_program_info (const struct bt_audio_codec_cap *codec_cap, const uint8_t **program_info) |
Extract program info. | |
int | bt_audio_codec_cap_meta_get_stream_lang (const struct bt_audio_codec_cap *codec_cap) |
Extract stream language. | |
int | bt_audio_codec_cap_meta_get_ccid_list (const struct bt_audio_codec_cap *codec_cap, const uint8_t **ccid_list) |
Extract CCID list. | |
int | bt_audio_codec_cap_meta_get_parental_rating (const struct bt_audio_codec_cap *codec_cap) |
Extract parental rating. | |
int | bt_audio_codec_cap_meta_get_program_info_uri (const struct bt_audio_codec_cap *codec_cap, const uint8_t **program_info_uri) |
Extract program info URI. | |
int | bt_audio_codec_cap_meta_get_audio_active_state (const struct bt_audio_codec_cap *codec_cap) |
Extract audio active state. | |
int | bt_audio_codec_cap_meta_get_bcast_audio_immediate_rend_flag (const struct bt_audio_codec_cap *codec_cap) |
Extract broadcast audio immediate rendering flag. | |
int | bt_audio_codec_cap_meta_get_extended (const struct bt_audio_codec_cap *codec_cap, const uint8_t **extended_meta) |
Extract extended metadata. | |
int | bt_audio_codec_cap_meta_get_vendor (const struct bt_audio_codec_cap *codec_cap, const uint8_t **vendor_meta) |
Extract vendor specific metadata. | |
Bluetooth Audio handling.