21#ifndef ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_MCC_
22#define ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_MCC_
510#ifdef CONFIG_BT_OTS_CLIENT
513#if defined(CONFIG_BT_MCC_READ_MEDIA_PLAYER_ICON_URL)
517#if defined(CONFIG_BT_MCC_READ_TRACK_TITLE)
520#if defined(CONFIG_BT_MCC_READ_TRACK_DURATION)
523#if defined(CONFIG_BT_MCC_READ_TRACK_POSITION)
526#if defined(CONFIG_BT_MCC_SET_TRACK_POSITION)
529#if defined(CONFIG_BT_MCC_READ_PLAYBACK_SPEED)
532#if defined(CONFIG_BT_MCC_SET_PLAYBACK_SPEED)
535#if defined(CONFIG_BT_MCC_READ_SEEKING_SPEED)
538#ifdef CONFIG_BT_OTS_CLIENT
548#if defined(CONFIG_BT_MCC_READ_PLAYING_ORDER)
551#if defined(CONFIG_BT_MCC_SET_PLAYING_ORDER)
554#if defined(CONFIG_BT_MCC_READ_PLAYING_ORDER_SUPPORTED)
557#if defined(CONFIG_BT_MCC_READ_MEDIA_STATE)
560#if defined(CONFIG_BT_MCC_SET_MEDIA_CONTROL_POINT)
564#if defined(CONFIG_BT_MCC_READ_MEDIA_CONTROL_POINT_OPCODES_SUPPORTED)
567#ifdef CONFIG_BT_OTS_CLIENT
572#if defined(CONFIG_BT_MCC_READ_CONTENT_CONTROL_ID)
575#ifdef CONFIG_BT_OTS_CLIENT
Bluetooth connection handling.
int bt_mcc_set_playing_order(struct bt_conn *conn, uint8_t order)
Set Playing Order.
int bt_mcc_read_playing_order(struct bt_conn *conn)
Read Playing Order.
void(* bt_mcc_otc_read_current_group_object_cb)(struct bt_conn *conn, int err, struct net_buf_simple *buf)
Callback function for bt_mcc_otc_read_current_group_object()
Definition: mcc.h:500
int bt_mcc_read_icon_obj_id(struct bt_conn *conn)
Read Icon Object ID.
void(* bt_mcc_set_track_position_cb)(struct bt_conn *conn, int err, int32_t pos)
Callback function for bt_mcc_set_track_position()
Definition: mcc.h:135
int bt_mcc_read_next_track_obj_id(struct bt_conn *conn)
Read Next Track Object ID.
void(* bt_mcc_read_track_position_cb)(struct bt_conn *conn, int err, int32_t pos)
Callback function for bt_mcc_read_track_position()
Definition: mcc.h:124
void(* bt_mcc_set_playback_speed_cb)(struct bt_conn *conn, int err, int8_t speed)
Callback function for bt_mcc_set_playback_speed()
Definition: mcc.h:157
int bt_mcc_set_playback_speed(struct bt_conn *conn, int8_t speed)
Set Playback Speed.
void(* bt_mcc_otc_read_icon_object_cb)(struct bt_conn *conn, int err, struct net_buf_simple *buf)
Callback function for bt_mcc_otc_read_icon_object()
Definition: mcc.h:430
void(* bt_mcc_set_playing_order_cb)(struct bt_conn *conn, int err, uint8_t order)
Callback function for bt_mcc_set_playing_order()
Definition: mcc.h:278
void(* bt_mcc_otc_read_track_segments_object_cb)(struct bt_conn *conn, int err, struct net_buf_simple *buf)
Callback function for bt_mcc_otc_read_track_segments_object()
Definition: mcc.h:444
void(* bt_mcc_read_segments_obj_id_cb)(struct bt_conn *conn, int err, uint64_t id)
Callback function for bt_mcc_read_segments_obj_id()
Definition: mcc.h:179
void(* bt_mcc_read_media_state_cb)(struct bt_conn *conn, int err, uint8_t state)
Callback function for bt_mcc_read_media_state()
Definition: mcc.h:301
void(* bt_mcc_read_current_track_obj_id_cb)(struct bt_conn *conn, int err, uint64_t id)
Callback function for bt_mcc_read_current_track_obj_id()
Definition: mcc.h:190
void(* bt_mcc_set_next_track_obj_id_cb)(struct bt_conn *conn, int err, uint64_t id)
Callback function for bt_mcc_set_next_track_obj_id()
Definition: mcc.h:223
void(* bt_mcc_read_seeking_speed_cb)(struct bt_conn *conn, int err, int8_t speed)
Callback function for bt_mcc_read_seeking_speed()
Definition: mcc.h:168
int bt_mcc_send_search(struct bt_conn *conn, const struct mpl_search *search)
Send a Search command.
int bt_mcc_read_seeking_speed(struct bt_conn *conn)
Read Seeking speed.
int bt_mcc_read_icon_url(struct bt_conn *conn)
Read Icon Object URL.
int bt_mcc_read_parent_group_obj_id(struct bt_conn *conn)
Read Parent Group Object ID.
int bt_mcc_send_cmd(struct bt_conn *conn, const struct mpl_cmd *cmd)
Send a command.
void(* bt_mcc_read_icon_obj_id_cb)(struct bt_conn *conn, int err, uint64_t icon_id)
Callback function for bt_mcc_read_icon_obj_id()
Definition: mcc.h:66
void(* bt_mcc_read_parent_group_obj_id_cb)(struct bt_conn *conn, int err, uint64_t id)
Callback function for bt_mcc_read_parent_group_obj_id()
Definition: mcc.h:234
int bt_mcc_otc_read_current_group_object(struct bt_conn *conn)
Read the Current Group Object.
int bt_mcc_read_segments_obj_id(struct bt_conn *conn)
Read Track Segments Object ID.
int bt_mcc_read_track_duration(struct bt_conn *conn)
Read Track Duration.
void(* bt_mcc_cmd_ntf_cb)(struct bt_conn *conn, int err, const struct mpl_cmd_ntf *ntf)
Callback function for command notifications.
Definition: mcc.h:327
void(* bt_mcc_read_search_results_obj_id_cb)(struct bt_conn *conn, int err, uint64_t id)
Callback function for bt_mcc_read_search_results_obj_id()
Definition: mcc.h:382
int bt_mcc_read_current_track_obj_id(struct bt_conn *conn)
Read Current Track Object ID.
void(* bt_mcc_read_current_group_obj_id_cb)(struct bt_conn *conn, int err, uint64_t id)
Callback function for bt_mcc_read_current_group_obj_id()
Definition: mcc.h:245
int bt_mcc_otc_read_next_track_object(struct bt_conn *conn)
Read the Next Track Object.
void(* bt_mcc_track_changed_ntf_cb)(struct bt_conn *conn, int err)
Callback function for track changed notifications.
Definition: mcc.h:90
int bt_mcc_read_opcodes_supported(struct bt_conn *conn)
Read Opcodes Supported.
void(* bt_mcc_read_track_title_cb)(struct bt_conn *conn, int err, const char *title)
Callback function for bt_mcc_read_track_title()
Definition: mcc.h:102
void(* bt_mcc_read_playback_speed_cb)(struct bt_conn *conn, int err, int8_t speed)
Callback function for bt_mcc_read_playback_speed()
Definition: mcc.h:146
int bt_mcc_read_player_name(struct bt_conn *conn)
Read Media Player Name.
int bt_mcc_read_content_control_id(struct bt_conn *conn)
Read Content Control ID.
void(* bt_mcc_read_track_duration_cb)(struct bt_conn *conn, int err, int32_t dur)
Callback function for bt_mcc_read_track_duration()
Definition: mcc.h:113
int bt_mcc_read_track_title(struct bt_conn *conn)
Read Track Title.
int bt_mcc_set_current_track_obj_id(struct bt_conn *conn, uint64_t id)
Set Current Track Object ID.
void(* bt_mcc_read_next_track_obj_id_cb)(struct bt_conn *conn, int err, uint64_t id)
Callback function for bt_mcc_read_next_track_obj_id_obj()
Definition: mcc.h:212
void(* bt_mcc_set_current_group_obj_id_cb)(struct bt_conn *conn, int err, uint64_t obj_id)
Callback function for bt_mcc_set_current_group_obj_id()
Definition: mcc.h:256
int bt_mcc_read_current_group_obj_id(struct bt_conn *conn)
Read Current Group Object ID.
void(* bt_mcc_otc_read_next_track_object_cb)(struct bt_conn *conn, int err, struct net_buf_simple *buf)
Callback function for bt_mcc_otc_read_next_track_object()
Definition: mcc.h:472
void(* bt_mcc_send_search_cb)(struct bt_conn *conn, int err, const struct mpl_search *search)
Callback function for bt_mcc_send_search()
Definition: mcc.h:350
int bt_mcc_init(struct bt_mcc_cb *cb)
Initialize Media Control Client.
void(* bt_mcc_otc_obj_metadata_cb)(struct bt_conn *conn, int err)
Callback function for bt_mcc_otc_read_object_meatadata()
Definition: mcc.h:417
int bt_mcc_read_search_results_obj_id(struct bt_conn *conn)
Search Results Group Object ID.
int bt_mcc_discover_mcs(struct bt_conn *conn, bool subscribe)
Discover Media Control Service.
struct bt_ots_client * bt_mcc_otc_inst(struct bt_conn *conn)
Look up MCC OTC instance.
int bt_mcc_read_playback_speed(struct bt_conn *conn)
Read Playback speed.
void(* bt_mcc_read_player_name_cb)(struct bt_conn *conn, int err, const char *name)
Callback function for bt_mcc_read_player_name()
Definition: mcc.h:55
void(* bt_mcc_read_icon_url_cb)(struct bt_conn *conn, int err, const char *icon_url)
Callback function for bt_mcc_read_icon_url()
Definition: mcc.h:77
void(* bt_mcc_search_ntf_cb)(struct bt_conn *conn, int err, uint8_t result_code)
Callback function for search notifications.
Definition: mcc.h:366
void(* bt_mcc_discover_mcs_cb)(struct bt_conn *conn, int err)
Callback function for bt_mcc_discover_mcs()
Definition: mcc.h:44
void(* bt_mcc_read_opcodes_supported_cb)(struct bt_conn *conn, int err, uint32_t opcodes)
Callback function for bt_mcc_read_opcodes_supported()
Definition: mcc.h:338
int bt_mcc_otc_read_icon_object(struct bt_conn *conn)
Read the Icon Object.
int bt_mcc_read_media_state(struct bt_conn *conn)
Read Media State.
int bt_mcc_otc_read_track_segments_object(struct bt_conn *conn)
Read the Track Segments Object.
void(* bt_mcc_read_playing_orders_supported_cb)(struct bt_conn *conn, int err, uint16_t orders)
Callback function for bt_mcc_read_playing_orders_supported()
Definition: mcc.h:289
int bt_mcc_otc_read_current_track_object(struct bt_conn *conn)
Read the Current Track Object.
void(* bt_mcc_otc_read_parent_group_object_cb)(struct bt_conn *conn, int err, struct net_buf_simple *buf)
Callback function for bt_mcc_otc_read_parent_group_object()
Definition: mcc.h:486
int bt_mcc_set_track_position(struct bt_conn *conn, int32_t pos)
Set Track position.
void(* bt_mcc_read_content_control_id_cb)(struct bt_conn *conn, int err, uint8_t ccid)
Callback function for bt_mcc_read_content_control_id()
Definition: mcc.h:394
int bt_mcc_otc_read_object_metadata(struct bt_conn *conn)
Read the current object metadata.
int bt_mcc_otc_read_parent_group_object(struct bt_conn *conn)
Read the Parent Group Object.
int bt_mcc_set_current_group_obj_id(struct bt_conn *conn, uint64_t id)
Set Current Group Object ID.
void(* bt_mcc_send_cmd_cb)(struct bt_conn *conn, int err, const struct mpl_cmd *cmd)
Callback function for bt_mcc_send_cmd()
Definition: mcc.h:312
void(* bt_mcc_set_current_track_obj_id_cb)(struct bt_conn *conn, int err, uint64_t id)
Callback function for bt_mcc_set_current_track_obj_id()
Definition: mcc.h:201
int bt_mcc_read_track_position(struct bt_conn *conn)
Read Track Position.
void(* bt_mcc_otc_obj_selected_cb)(struct bt_conn *conn, int err)
Callback function for object selected.
Definition: mcc.h:407
int bt_mcc_read_playing_orders_supported(struct bt_conn *conn)
Read Playing Orders Supported.
void(* bt_mcc_read_playing_order_cb)(struct bt_conn *conn, int err, uint8_t order)
Callback function for bt_mcc_read_playing_order()
Definition: mcc.h:267
int bt_mcc_set_next_track_obj_id(struct bt_conn *conn, uint64_t id)
Set Next Track Object ID.
void(* bt_mcc_otc_read_current_track_object_cb)(struct bt_conn *conn, int err, struct net_buf_simple *buf)
Callback function for bt_mcc_otc_read_current_track_object()
Definition: mcc.h:458
static void cmd(uint32_t command)
Execute a display list command by co-processor engine.
Definition: ft8xx_reference_api.h:153
state
Definition: parser_state.h:29
__UINT32_TYPE__ uint32_t
Definition: stdint.h:90
__INT32_TYPE__ int32_t
Definition: stdint.h:74
__UINT64_TYPE__ uint64_t
Definition: stdint.h:91
__UINT8_TYPE__ uint8_t
Definition: stdint.h:88
__UINT16_TYPE__ uint16_t
Definition: stdint.h:89
__INT8_TYPE__ int8_t
Definition: stdint.h:72
Media control client callbacks.
Definition: mcc.h:507
bt_mcc_discover_mcs_cb discover_mcs
Definition: mcc.h:508
bt_mcc_cmd_ntf_cb cmd_ntf
Definition: mcc.h:563
bt_mcc_track_changed_ntf_cb track_changed_ntf
Definition: mcc.h:516
bt_mcc_read_player_name_cb read_player_name
Definition: mcc.h:509
OTS client instance.
Definition: ots.h:819
Media command notification.
Definition: media_proxy.h:64
Media player command.
Definition: media_proxy.h:55
Search.
Definition: media_proxy.h:81
char search[64]
Definition: media_proxy.h:83
Simple network buffer representation.
Definition: buf.h:87