12#ifndef ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_MCC_
13#define ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_MCC_
518#if defined(CONFIG_BT_OTS_CLIENT) || defined(__DOXYGEN__)
522#if defined(CONFIG_BT_MCC_READ_MEDIA_PLAYER_ICON_URL) || defined(__DOXYGEN__)
528#if defined(CONFIG_BT_MCC_READ_TRACK_TITLE) || defined(__DOXYGEN__)
532#if defined(CONFIG_BT_MCC_READ_TRACK_DURATION) || defined(__DOXYGEN__)
536#if defined(CONFIG_BT_MCC_READ_TRACK_POSITION) || defined(__DOXYGEN__)
540#if defined(CONFIG_BT_MCC_SET_TRACK_POSITION) || defined(__DOXYGEN__)
544#if defined(CONFIG_BT_MCC_READ_PLAYBACK_SPEED) || defined(__DOXYGEN__)
548#if defined(CONFIG_BT_MCC_SET_PLAYBACK_SPEED) || defined(__DOXYGEN__)
552#if defined(CONFIG_BT_MCC_READ_SEEKING_SPEED) || defined(__DOXYGEN__)
556#if defined(CONFIG_BT_OTS_CLIENT) || defined(__DOXYGEN__)
574#if defined(CONFIG_BT_MCC_READ_PLAYING_ORDER) || defined(__DOXYGEN__)
578#if defined(CONFIG_BT_MCC_SET_PLAYING_ORDER) || defined(__DOXYGEN__)
582#if defined(CONFIG_BT_MCC_READ_PLAYING_ORDER_SUPPORTED) || defined(__DOXYGEN__)
586#if defined(CONFIG_BT_MCC_READ_MEDIA_STATE) || defined(__DOXYGEN__)
590#if defined(CONFIG_BT_MCC_SET_MEDIA_CONTROL_POINT) || defined(__DOXYGEN__)
596#if defined(CONFIG_BT_MCC_READ_MEDIA_CONTROL_POINT_OPCODES_SUPPORTED) || defined(__DOXYGEN__)
600#if defined(CONFIG_BT_OTS_CLIENT) || defined(__DOXYGEN__)
608#if defined(CONFIG_BT_MCC_READ_CONTENT_CONTROL_ID) || defined(__DOXYGEN__)
612#if defined(CONFIG_BT_OTS_CLIENT) || defined(__DOXYGEN__)
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:506
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:141
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:130
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:163
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:436
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:284
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:450
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:185
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:307
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:196
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:229
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:174
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:72
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:240
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:333
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:388
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:251
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:96
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:108
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:152
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:119
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:218
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:262
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:478
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:356
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_metadata()
Definition mcc.h:423
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:61
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:83
void(* bt_mcc_search_ntf_cb)(struct bt_conn *conn, int err, uint8_t result_code)
Callback function for search notifications.
Definition mcc.h:372
void(* bt_mcc_discover_mcs_cb)(struct bt_conn *conn, int err)
Callback function for bt_mcc_discover_mcs()
Definition mcc.h:50
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:344
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:295
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:492
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:400
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:318
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:207
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:413
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:273
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:464
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:513
bt_mcc_set_playing_order_cb set_playing_order
Callback when setting the playing order.
Definition mcc.h:580
bt_mcc_read_icon_obj_id_cb read_icon_obj_id
Callback when reading the icon object ID.
Definition mcc.h:520
bt_mcc_otc_read_icon_object_cb otc_icon_object
Callback when reading the current icon object.
Definition mcc.h:618
bt_mcc_read_current_group_obj_id_cb read_current_group_obj_id
Callback when reading the current group object ID.
Definition mcc.h:568
bt_mcc_otc_obj_selected_cb otc_obj_selected
Callback when selecting an object.
Definition mcc.h:614
bt_mcc_send_search_cb send_search
Callback when sending the a search query.
Definition mcc.h:602
bt_mcc_otc_read_track_segments_object_cb otc_track_segments_object
Callback when reading the track segments object.
Definition mcc.h:620
bt_mcc_discover_mcs_cb discover_mcs
Callback when discovery has finished.
Definition mcc.h:515
bt_mcc_read_playing_order_cb read_playing_order
Callback when reading the playing order.
Definition mcc.h:576
bt_mcc_read_media_state_cb read_media_state
Callback when reading the media state.
Definition mcc.h:588
bt_mcc_read_track_title_cb read_track_title
Callback when reading the track title.
Definition mcc.h:530
bt_mcc_read_current_track_obj_id_cb read_current_track_obj_id
Callback when reading the current track object ID.
Definition mcc.h:560
bt_mcc_read_playback_speed_cb read_playback_speed
Callback when reading the playback speed.
Definition mcc.h:546
bt_mcc_set_next_track_obj_id_cb set_next_track_obj_id
Callback when setting the next track object ID.
Definition mcc.h:566
bt_mcc_otc_read_next_track_object_cb otc_next_track_object
Callback when reading the next track object.
Definition mcc.h:624
bt_mcc_read_next_track_obj_id_cb read_next_track_obj_id
Callback when reading the next track object ID.
Definition mcc.h:564
bt_mcc_set_playback_speed_cb set_playback_speed
Callback when setting the playback speed.
Definition mcc.h:550
bt_mcc_read_seeking_speed_cb read_seeking_speed
Callback when reading the seeking speed.
Definition mcc.h:554
bt_mcc_read_segments_obj_id_cb read_segments_obj_id
Callback when reading the segments object ID.
Definition mcc.h:558
bt_mcc_cmd_ntf_cb cmd_ntf
Callback command notifications.
Definition mcc.h:595
bt_mcc_read_track_duration_cb read_track_duration
Callback when reading the track duration.
Definition mcc.h:534
bt_mcc_otc_read_parent_group_object_cb otc_parent_group_object
Callback when reading the parent group object.
Definition mcc.h:628
bt_mcc_read_parent_group_obj_id_cb read_parent_group_obj_id
Callback when reading the parent group object ID.
Definition mcc.h:572
bt_mcc_read_icon_url_cb read_icon_url
Callback when reading the icon URL.
Definition mcc.h:524
bt_mcc_send_cmd_cb send_cmd
Callback when sending a command.
Definition mcc.h:592
bt_mcc_read_playing_orders_supported_cb read_playing_orders_supported
Callback when reading the supported playing orders.
Definition mcc.h:584
bt_mcc_search_ntf_cb search_ntf
Callback when receiving a search notification.
Definition mcc.h:604
bt_mcc_read_search_results_obj_id_cb read_search_results_obj_id
Callback when reading the search results object ID.
Definition mcc.h:606
bt_mcc_track_changed_ntf_cb track_changed_ntf
Callback when getting a track changed notification.
Definition mcc.h:527
bt_mcc_otc_read_current_group_object_cb otc_current_group_object
Callback when reading the current group object.
Definition mcc.h:626
bt_mcc_set_current_track_obj_id_cb set_current_track_obj_id
Callback when setting the current track object ID.
Definition mcc.h:562
bt_mcc_otc_read_current_track_object_cb otc_current_track_object
Callback when reading the current track object.
Definition mcc.h:622
bt_mcc_read_track_position_cb read_track_position
Callback when reading the track position.
Definition mcc.h:538
bt_mcc_read_opcodes_supported_cb read_opcodes_supported
Callback when reading the supported opcodes.
Definition mcc.h:598
bt_mcc_set_current_group_obj_id_cb set_current_group_obj_id
Callback when setting the current group object ID.
Definition mcc.h:570
bt_mcc_read_content_control_id_cb read_content_control_id
Callback when reading the content control ID.
Definition mcc.h:610
bt_mcc_read_player_name_cb read_player_name
Callback when reading the player name.
Definition mcc.h:517
bt_mcc_otc_obj_metadata_cb otc_obj_metadata
Callback when receiving the current object metadata.
Definition mcc.h:616
bt_mcc_set_track_position_cb set_track_position
Callback when setting the track position.
Definition mcc.h:542
OTS client instance.
Definition ots.h:819
Media command notification.
Definition media_proxy.h:73
Media player command.
Definition media_proxy.h:61
Search.
Definition media_proxy.h:92
char search[64]
Concatenated search control items - (type, length, param)
Definition media_proxy.h:96
Simple network buffer representation.
Definition net_buf.h:89