|
Zephyr API Documentation 4.3.0-rc1
A Scalable Open Source RTOS
|
Bluetooth Audio Input Control Service APIs. More...
#include <stdint.h>#include <stdbool.h>#include <zephyr/autoconf.h>#include <zephyr/bluetooth/bluetooth.h>Go to the source code of this file.
Data Structures | |
| struct | bt_aics_register_param |
| Structure for initializing a Audio Input Control Service instance. More... | |
| struct | bt_aics_discover_param |
| Structure for discovering a Audio Input Control Service instance. More... | |
| struct | bt_aics_cb |
| Struct to hold callbacks for the Audio Input Control Service. More... | |
Macros | |
Audio Input Control Service mute states | |
| #define | BT_AICS_STATE_UNMUTED 0x00 |
| The mute state is unmuted. | |
| #define | BT_AICS_STATE_MUTED 0x01 |
| The mute state is muted. | |
| #define | BT_AICS_STATE_MUTE_DISABLED 0x02 |
| The mute state is disabled. | |
Audio Input Control Service input modes | |
| #define | BT_AICS_MODE_MANUAL_ONLY 0x00 |
| The gain mode is manual only and cannot be changed to automatic. | |
| #define | BT_AICS_MODE_AUTO_ONLY 0x01 |
| The gain mode is automatic only and cannot be changed to manual. | |
| #define | BT_AICS_MODE_MANUAL 0x02 |
| The gain mode is manual. | |
| #define | BT_AICS_MODE_AUTO 0x03 |
| The gain mode is automatic. | |
Audio Input Control Service input types | |
| #define | BT_AICS_INPUT_TYPE_UNSPECIFIED 0x00 |
| The input is unspecified. | |
| #define | BT_AICS_INPUT_TYPE_BLUETOOTH 0x01 |
| The input is a Bluetooth Audio Stream. | |
| #define | BT_AICS_INPUT_TYPE_MICROPHONE 0x02 |
| The input is a microphone. | |
| #define | BT_AICS_INPUT_TYPE_ANALOG 0x03 |
| The input is analog. | |
| #define | BT_AICS_INPUT_TYPE_DIGITAL 0x04 |
| The input is digital. | |
| #define | BT_AICS_INPUT_TYPE_RADIO 0x05 |
| The input is a radio (AM/FM/XM/etc.) | |
| #define | BT_AICS_INPUT_TYPE_STREAMING 0x06 |
| The input is a Streaming Audio Source. | |
| #define | BT_AICS_INPUT_TYPE_AMBIENT 0x07 |
| The input is transparent / pass-through. | |
Audio Input Control Service Error codes | |
| #define | BT_AICS_ERR_INVALID_COUNTER 0x80 |
| The Change_Counter operand value does not match the Change_Counter field value of the Audio Input State characteristic. | |
| #define | BT_AICS_ERR_OP_NOT_SUPPORTED 0x81 |
| An invalid opcode has been used in a control point procedure. | |
| #define | BT_AICS_ERR_MUTE_DISABLED 0x82 |
| Mute/unmute commands are disabled. | |
| #define | BT_AICS_ERR_OUT_OF_RANGE 0x83 |
| An operand value used in a control point procedure is outside the permissible range. | |
| #define | BT_AICS_ERR_GAIN_MODE_NOT_ALLOWED 0x84 |
| A requested gain mode change is not allowed. | |
Typedefs | |
| typedef void(* | bt_aics_write_cb) (struct bt_aics *inst, int err) |
| Callback function for writes. | |
| typedef void(* | bt_aics_state_cb) (struct bt_aics *inst, int err, int8_t gain, uint8_t mute, uint8_t mode) |
| Callback function for the input state. | |
| typedef void(* | bt_aics_gain_setting_cb) (struct bt_aics *inst, int err, uint8_t units, int8_t minimum, int8_t maximum) |
| Callback function for the gain settings. | |
| typedef void(* | bt_aics_type_cb) (struct bt_aics *inst, int err, uint8_t type) |
| Callback function for the input type. | |
| typedef void(* | bt_aics_status_cb) (struct bt_aics *inst, int err, bool active) |
| Callback function for the input status. | |
| typedef void(* | bt_aics_description_cb) (struct bt_aics *inst, int err, char *description) |
| Callback function for the description. | |
| typedef void(* | bt_aics_discover_cb) (struct bt_aics *inst, int err) |
| Callback function for bt_aics_discover. | |
Functions | |
| struct bt_aics * | bt_aics_free_instance_get (void) |
| Get a free instance of Audio Input Control Service from the pool. | |
| void * | bt_aics_svc_decl_get (struct bt_aics *aics) |
| Get the service declaration attribute. | |
| int | bt_aics_client_conn_get (const struct bt_aics *aics, struct bt_conn **conn) |
| Get the connection pointer of a client instance. | |
| int | bt_aics_register (struct bt_aics *aics, struct bt_aics_register_param *param) |
| Initialize the Audio Input Control Service instance. | |
| int | bt_aics_discover (struct bt_conn *conn, struct bt_aics *inst, const struct bt_aics_discover_param *param) |
| Discover a Audio Input Control Service. | |
| int | bt_aics_deactivate (struct bt_aics *inst) |
| Deactivates a Audio Input Control Service instance. | |
| int | bt_aics_activate (struct bt_aics *inst) |
| Activates a Audio Input Control Service instance. | |
| int | bt_aics_state_get (struct bt_aics *inst) |
| Read the Audio Input Control Service input state. | |
| int | bt_aics_gain_setting_get (struct bt_aics *inst) |
| Read the Audio Input Control Service gain settings. | |
| int | bt_aics_type_get (struct bt_aics *inst) |
| Read the Audio Input Control Service input type. | |
| int | bt_aics_status_get (struct bt_aics *inst) |
| Read the Audio Input Control Service input status. | |
| int | bt_aics_disable_mute (struct bt_aics *inst) |
| Disable mute in the Audio Input Control Service. | |
| int | bt_aics_unmute (struct bt_aics *inst) |
| Unmute the Audio Input Control Service input. | |
| int | bt_aics_mute (struct bt_aics *inst) |
| Mute the Audio Input Control Service input. | |
| int | bt_aics_gain_set_manual_only (struct bt_aics *inst) |
| Set manual only gain mode in Audio Input Control Service. | |
| int | bt_aics_gain_set_auto_only (struct bt_aics *inst) |
| Set automatic only gain mode in Audio Input Control Service. | |
| int | bt_aics_manual_gain_set (struct bt_aics *inst) |
| Set input gain to manual. | |
| int | bt_aics_automatic_gain_set (struct bt_aics *inst) |
| Set the input gain to automatic. | |
| int | bt_aics_gain_set (struct bt_aics *inst, int8_t gain) |
| Set the input gain. | |
| int | bt_aics_description_get (struct bt_aics *inst) |
| Read the Audio Input Control Service description. | |
| int | bt_aics_description_set (struct bt_aics *inst, const char *description) |
| Set the Audio Input Control Service description. | |
| struct bt_aics * | bt_aics_client_free_instance_get (void) |
| Get a new Audio Input Control Service client instance. | |
| void | bt_aics_client_cb_register (struct bt_aics *inst, struct bt_aics_cb *cb) |
| Registers the callbacks for the Audio Input Control Service client. | |
Bluetooth Audio Input Control Service APIs.