Zephyr API Documentation 4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
avrcp.h
Go to the documentation of this file.
1
4
5/*
6 * Copyright (c) 2015-2016 Intel Corporation
7 * Copyright (C) 2024 Xiaomi Corporation
8 *
9 * SPDX-License-Identifier: Apache-2.0
10 */
11
12#ifndef ZEPHYR_INCLUDE_BLUETOOTH_AVRCP_H_
13#define ZEPHYR_INCLUDE_BLUETOOTH_AVRCP_H_
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19#define BT_AVRCP_COMPANY_ID_SIZE (3)
20#define BT_AVRCP_COMPANY_ID_BLUETOOTH_SIG (0x001958)
21
27
44
53
65
71
73typedef enum __packed {
88
102
112
126
129
137
143
281
283struct bt_avrcp_ct;
285struct bt_avrcp_tg;
286
291
298
299#define BT_AVRCP_PASSTHROUGH_GET_STATE(payload) \
300 ((bt_avrcp_opid_t)(FIELD_GET(BIT(7), ((payload)->opid_state))))
301#define BT_AVRCP_PASSTHROUGH_GET_OPID(payload) \
302 ((bt_avrcp_button_state_t)(FIELD_GET(GENMASK(6, 0), ((payload)->opid_state))))
303#define BT_AVRCP_PASSTHROUGH_SET_STATE_OPID(payload, state, opid) \
304 (payload)->opid_state = FIELD_PREP(BIT(7), state) | FIELD_PREP(GENMASK(6, 0), opid)
305
310
316
322
328
330typedef enum __packed {
333
339
349
359
366
375
377#define BT_AVRCP_MAX_ABSOLUTE_VOLUME 0x7F
378
389
396
404
410
418
424
432
439
446
459
465
470
476
482
488
494
500
506
514
520
527
535
541
547
552
559
565
570
575
580
587
594
596 union {
597 /* EVENT_PLAYBACK_STATUS_CHANGED */
599
600 /* EVENT_TRACK_CHANGED */
602
603 /* EVENT_PLAYBACK_POS_CHANGED */
605
606 /* EVENT_BATT_STATUS_CHANGED */
608
609 /* EVENT_SYSTEM_STATUS_CHANGED */
611
612 /* EVENT_PLAYER_APPLICATION_SETTING_CHANGED */
613 struct __packed {
617
618 /* EVENT_ADDRESSED_PLAYER_CHANGED */
619 struct __packed {
623
624 /* EVENT_UIDS_CHANGED */
626
627 /* EVENT_VOLUME_CHANGED */
629 };
630};
631
652typedef void(*bt_avrcp_notify_changed_cb_t)(struct bt_avrcp_ct *ct, uint8_t event_id,
653 struct bt_avrcp_event_data *data);
654
664 void (*connected)(struct bt_conn *conn, struct bt_avrcp_ct *ct);
665
673 void (*disconnected)(struct bt_avrcp_ct *ct);
674
683 void (*browsing_connected)(struct bt_conn *conn, struct bt_avrcp_ct *ct);
684
692 void (*browsing_disconnected)(struct bt_avrcp_ct *ct);
693
713 void (*get_caps)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf);
714
723 void (*unit_info_rsp)(struct bt_avrcp_ct *ct, uint8_t tid,
724 struct bt_avrcp_unit_info_rsp *rsp);
725
734 void (*subunit_info_rsp)(struct bt_avrcp_ct *ct, uint8_t tid,
735 struct bt_avrcp_subunit_info_rsp *rsp);
736
746 void (*passthrough_rsp)(struct bt_avrcp_ct *ct, uint8_t tid, bt_avrcp_rsp_t result,
747 const struct bt_avrcp_passthrough_rsp *rsp);
748
760 void (*browsed_player_rsp)(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf);
761
787 void (*notification)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, uint8_t event_id,
788 struct bt_avrcp_event_data *data);
789
810 void (*list_player_app_setting_attrs)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status,
811 struct net_buf *buf);
812
833 void (*list_player_app_setting_vals)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status,
834 struct net_buf *buf);
835
856 void (*get_curr_player_app_setting_val)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status,
857 struct net_buf *buf);
858
870 void (*set_player_app_setting_val)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status);
871
891 void (*get_player_app_setting_attr_text)(struct bt_avrcp_ct *ct, uint8_t tid,
892 uint8_t status, struct net_buf *buf);
893
913 void (*get_player_app_setting_val_text)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status,
914 struct net_buf *buf);
915
927 void (*inform_displayable_char_set)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status);
928
940 void (*inform_batt_status_of_ct)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status);
941
954 void (*set_absolute_volume)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status,
955 uint8_t absolute_volume);
956
976 void (*get_element_attrs)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status,
977 struct net_buf *buf);
978
998 void (*get_play_status)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status,
999 struct net_buf *buf);
1000
1012 void (*set_addressed_player)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status);
1013
1025 void (*play_item)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status);
1026
1038 void (*add_to_now_playing)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status);
1039};
1040
1052int bt_avrcp_connect(struct bt_conn *conn);
1053
1062int bt_avrcp_disconnect(struct bt_conn *conn);
1063
1076
1091
1101int bt_avrcp_browsing_connect(struct bt_conn *conn);
1102
1111int bt_avrcp_browsing_disconnect(struct bt_conn *conn);
1112
1122
1133int bt_avrcp_ct_get_caps(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t cap_id);
1134
1144int bt_avrcp_ct_get_unit_info(struct bt_avrcp_ct *ct, uint8_t tid);
1145
1156int bt_avrcp_ct_get_subunit_info(struct bt_avrcp_ct *ct, uint8_t tid);
1157
1172int bt_avrcp_ct_passthrough(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t opid, uint8_t state,
1173 const uint8_t *payload, uint8_t len);
1174
1185int bt_avrcp_ct_set_browsed_player(struct bt_avrcp_ct *ct, uint8_t tid, uint16_t player_id);
1186
1201int bt_avrcp_ct_register_notification(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t event_id,
1203
1212
1222int bt_avrcp_ct_list_player_app_setting_vals(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t attr_id);
1223
1236 struct net_buf *buf);
1237
1249int bt_avrcp_ct_set_player_app_setting_val(struct bt_avrcp_ct *ct, uint8_t tid,
1250 struct net_buf *buf);
1251
1264 struct net_buf *buf);
1265
1278 struct net_buf *buf);
1279
1291int bt_avrcp_ct_inform_displayable_char_set(struct bt_avrcp_ct *ct, uint8_t tid,
1292 struct net_buf *buf);
1293
1302int bt_avrcp_ct_inform_batt_status_of_ct(struct bt_avrcp_ct *ct, uint8_t tid,
1303 uint8_t battery_status);
1304
1315int bt_avrcp_ct_set_absolute_volume(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t absolute_volume);
1316
1328int bt_avrcp_ct_get_element_attrs(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf);
1329
1337int bt_avrcp_ct_get_play_status(struct bt_avrcp_ct *ct, uint8_t tid);
1338
1347int bt_avrcp_ct_set_addressed_player(struct bt_avrcp_ct *ct, uint8_t tid, uint16_t player_id);
1348
1360int bt_avrcp_ct_play_item(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf);
1361
1373int bt_avrcp_ct_add_to_now_playing(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf);
1374
1384 void (*connected)(struct bt_conn *conn, struct bt_avrcp_tg *tg);
1385
1393 void (*disconnected)(struct bt_avrcp_tg *tg);
1394
1402 void (*unit_info_req)(struct bt_avrcp_tg *tg, uint8_t tid);
1403
1414 void (*register_notification)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t event_id,
1415 uint32_t interval);
1416
1424 void (*subunit_info_req)(struct bt_avrcp_tg *tg, uint8_t tid);
1425
1434 void (*get_caps)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t cap_id);
1435
1444 void (*browsing_connected)(struct bt_conn *conn, struct bt_avrcp_tg *tg);
1445
1453 void (*browsing_disconnected)(struct bt_avrcp_tg *tg);
1454
1463 void (*set_browsed_player_req)(struct bt_avrcp_tg *tg, uint8_t tid, uint16_t player_id);
1464
1476 void (*passthrough_req)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf);
1477
1485 void (*list_player_app_setting_attrs)(struct bt_avrcp_tg *tg, uint8_t tid);
1486
1496 void (*list_player_app_setting_vals)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t attr_id);
1497
1508 void (*get_curr_player_app_setting_val)(struct bt_avrcp_tg *tg, uint8_t tid,
1509 struct net_buf *buf);
1510
1521 void (*set_player_app_setting_val)(struct bt_avrcp_tg *tg, uint8_t tid,
1522 struct net_buf *buf);
1523
1534 void (*get_player_app_setting_attr_text)(struct bt_avrcp_tg *tg, uint8_t tid,
1535 struct net_buf *buf);
1536
1547 void (*get_player_app_setting_val_text)(struct bt_avrcp_tg *tg, uint8_t tid,
1548 struct net_buf *buf);
1549
1560 void (*inform_displayable_char_set)(struct bt_avrcp_tg *tg, uint8_t tid,
1561 struct net_buf *buf);
1562
1571 void (*inform_batt_status_of_ct)(struct bt_avrcp_tg *tg, uint8_t tid,
1572 uint8_t battery_status);
1573
1584 void (*get_element_attrs)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf);
1585
1594 void (*set_absolute_volume)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t absolute_volume);
1595
1603 void (*get_play_status)(struct bt_avrcp_tg *tg, uint8_t tid);
1604
1613 void (*set_addressed_player)(struct bt_avrcp_tg *tg, uint8_t tid, uint16_t player_id);
1614
1625 void (*play_item)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf);
1626
1637 void (*add_to_now_playing)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf);
1638};
1639
1649
1660int bt_avrcp_tg_send_unit_info_rsp(struct bt_avrcp_tg *tg, uint8_t tid,
1661 struct bt_avrcp_unit_info_rsp *rsp);
1662
1672int bt_avrcp_tg_send_subunit_info_rsp(struct bt_avrcp_tg *tg, uint8_t tid);
1673
1687int bt_avrcp_tg_get_caps(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf);
1688
1714int bt_avrcp_tg_notification(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, uint8_t event_id,
1715 struct bt_avrcp_event_data *data);
1716
1727int bt_avrcp_tg_send_set_browsed_player_rsp(struct bt_avrcp_tg *tg, uint8_t tid,
1728 struct net_buf *buf);
1729
1745int bt_avrcp_tg_send_passthrough_rsp(struct bt_avrcp_tg *tg, uint8_t tid, bt_avrcp_rsp_t result,
1746 struct net_buf *buf);
1747
1759int bt_avrcp_tg_list_player_app_setting_attrs(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status,
1760 struct net_buf *buf);
1761
1773int bt_avrcp_tg_list_player_app_setting_vals(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status,
1774 struct net_buf *buf);
1775
1787int bt_avrcp_tg_get_curr_player_app_setting_val(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status,
1788 struct net_buf *buf);
1789
1798int bt_avrcp_tg_set_player_app_setting_val(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status);
1799
1812 uint8_t status, struct net_buf *buf);
1813
1825int bt_avrcp_tg_get_player_app_setting_val_text(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status,
1826 struct net_buf *buf);
1827
1836int bt_avrcp_tg_inform_displayable_char_set(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status);
1837
1846int bt_avrcp_tg_inform_batt_status_of_ct(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status);
1847
1859int bt_avrcp_tg_absolute_volume(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status,
1860 uint8_t absolute_volume);
1861
1873int bt_avrcp_tg_get_element_attrs(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status,
1874 struct net_buf *buf);
1875
1887int bt_avrcp_tg_get_play_status(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status,
1888 struct net_buf *buf);
1889
1898int bt_avrcp_tg_set_addressed_player(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status);
1899
1908int bt_avrcp_tg_play_item(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status);
1909
1918int bt_avrcp_tg_add_to_now_playing(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status);
1919#ifdef __cplusplus
1920}
1921#endif
1922
1923#endif /* ZEPHYR_INCLUDE_BLUETOOTH_AVRCP_H_ */
int bt_avrcp_ct_get_play_status(struct bt_avrcp_ct *ct, uint8_t tid)
Send AVRCP vendor dependent command for GET_PLAY_STATUS.
int bt_avrcp_ct_get_unit_info(struct bt_avrcp_ct *ct, uint8_t tid)
Get AVRCP Unit Info.
int bt_avrcp_ct_list_player_app_setting_vals(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t attr_id)
Send AVRCP vendor dependent command for LIST_PLAYER_APP_SETTING_VALS.
int bt_avrcp_tg_get_player_app_setting_attr_text(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf)
Send response for PDU ID BT_AVRCP_PDU_ID_GET_PLAYER_APP_SETTING_ATTR_TEXT.
bt_avrcp_system_status_t
AVRCP System Status Code.
Definition avrcp.h:361
@ BT_AVRCP_SYSTEM_STATUS_UNPLUGGED
Definition avrcp.h:364
@ BT_AVRCP_SYSTEM_STATUS_POWER_OFF
Definition avrcp.h:363
@ BT_AVRCP_SYSTEM_STATUS_POWER_ON
Definition avrcp.h:362
bt_avrcp_button_state_t
AVRCP button state flag.
Definition avrcp.h:139
@ BT_AVRCP_BUTTON_RELEASED
Definition avrcp.h:141
@ BT_AVRCP_BUTTON_PRESSED
Definition avrcp.h:140
int bt_avrcp_ct_passthrough(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t opid, uint8_t state, const uint8_t *payload, uint8_t len)
Send AVRCP Pass Through command.
int bt_avrcp_ct_get_player_app_setting_attr_text(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Send AVRCP vendor dependent command for GET_PLAYER_APP_SETTING_ATTR_TEXT.
int bt_avrcp_tg_notification(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, uint8_t event_id, struct bt_avrcp_event_data *data)
Send notification response.
bt_avrcp_repeat_mode_value_t
AVRCP Player Application Setting Values for Repeat Mode.
Definition avrcp.h:426
@ BT_AVRCP_REPEAT_MODE_SINGLE_TRACK
Definition avrcp.h:428
@ BT_AVRCP_REPEAT_MODE_OFF
Definition avrcp.h:427
@ BT_AVRCP_REPEAT_MODE_GROUP
Definition avrcp.h:430
@ BT_AVRCP_REPEAT_MODE_ALL_TRACKS
Definition avrcp.h:429
int bt_avrcp_ct_get_curr_player_app_setting_val(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Send AVRCP vendor dependent command for GET_CURR_PLAYER_APP_SETTING_VAL.
int bt_avrcp_ct_set_absolute_volume(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t absolute_volume)
Send Set Absolute Volume command (CT).
bt_avrcp_ctype_t
AV/C command types.
Definition avrcp.h:46
@ BT_AVRCP_CTYPE_GENERAL_INQUIRY
Definition avrcp.h:51
@ BT_AVRCP_CTYPE_CONTROL
Definition avrcp.h:47
@ BT_AVRCP_CTYPE_STATUS
Definition avrcp.h:48
@ BT_AVRCP_CTYPE_SPECIFIC_INQUIRY
Definition avrcp.h:49
@ BT_AVRCP_CTYPE_NOTIFY
Definition avrcp.h:50
int bt_avrcp_ct_get_caps(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t cap_id)
Get AVRCP Capabilities.
bt_avrcp_battery_status_t
AVRCP Battery Status Code.
Definition avrcp.h:368
@ BT_AVRCP_BATTERY_STATUS_EXTERNAL
Definition avrcp.h:372
@ BT_AVRCP_BATTERY_STATUS_WARNING
Definition avrcp.h:370
@ BT_AVRCP_BATTERY_STATUS_FULL
Definition avrcp.h:373
@ BT_AVRCP_BATTERY_STATUS_CRITICAL
Definition avrcp.h:371
@ BT_AVRCP_BATTERY_STATUS_NORMAL
Definition avrcp.h:369
bt_avrcp_opid_t
AV/C operation ids used in AVRCP passthrough commands.
Definition avrcp.h:73
@ BT_AVRCP_OPID_ROOT_MENU
Definition avrcp.h:83
@ BT_AVRCP_OPID_BACKWARD
Definition avrcp.h:125
@ BT_AVRCP_OPID_FORWARD
Definition avrcp.h:124
@ BT_AVRCP_OPID_F4
Definition avrcp.h:133
@ BT_AVRCP_OPID_6
Definition avrcp.h:95
@ BT_AVRCP_OPID_9
Definition avrcp.h:98
@ BT_AVRCP_OPID_DOWN
Definition avrcp.h:76
@ BT_AVRCP_OPID_PAUSE
Definition avrcp.h:119
@ BT_AVRCP_OPID_F3
Definition avrcp.h:132
@ BT_AVRCP_OPID_SOUND_SELECT
Definition avrcp.h:106
@ BT_AVRCP_OPID_4
Definition avrcp.h:93
@ BT_AVRCP_OPID_ENTER
Definition avrcp.h:100
@ BT_AVRCP_OPID_CHANNEL_DOWN
Definition avrcp.h:104
@ BT_AVRCP_OPID_PAGE_DOWN
Definition avrcp.h:111
@ BT_AVRCP_OPID_PREVIOUS_CHANNEL
Definition avrcp.h:105
@ BT_AVRCP_OPID_FAVORITE_MENU
Definition avrcp.h:86
@ BT_AVRCP_OPID_VOLUME_DOWN
Definition avrcp.h:115
@ BT_AVRCP_OPID_REWIND
Definition avrcp.h:121
@ BT_AVRCP_OPID_MUTE
Definition avrcp.h:116
@ BT_AVRCP_OPID_DOT
Definition avrcp.h:99
@ BT_AVRCP_OPID_RIGHT_DOWN
Definition avrcp.h:80
@ BT_AVRCP_OPID_LEFT_DOWN
Definition avrcp.h:82
@ BT_AVRCP_OPID_STOP
Definition avrcp.h:118
@ BT_AVRCP_OPID_FAST_FORWARD
Definition avrcp.h:122
@ BT_AVRCP_OPID_LEFT
Definition avrcp.h:77
@ BT_AVRCP_OPID_DISPLAY_INFORMATION
Definition avrcp.h:108
@ BT_AVRCP_OPID_SETUP_MENU
Definition avrcp.h:84
@ BT_AVRCP_OPID_RIGHT_UP
Definition avrcp.h:79
@ BT_AVRCP_OPID_RECORD
Definition avrcp.h:120
@ BT_AVRCP_OPID_LEFT_UP
Definition avrcp.h:81
@ BT_AVRCP_OPID_F5
Definition avrcp.h:134
@ BT_AVRCP_OPID_F2
Definition avrcp.h:131
@ BT_AVRCP_OPID_INPUT_SELECT
Definition avrcp.h:107
@ BT_AVRCP_OPID_RIGHT
Definition avrcp.h:78
@ BT_AVRCP_OPID_F1
Definition avrcp.h:130
@ BT_AVRCP_OPID_5
Definition avrcp.h:94
@ BT_AVRCP_OPID_PAGE_UP
Definition avrcp.h:110
@ BT_AVRCP_OPID_1
Definition avrcp.h:90
@ BT_AVRCP_OPID_POWER
Definition avrcp.h:113
@ BT_AVRCP_OPID_EXIT
Definition avrcp.h:87
@ BT_AVRCP_OPID_CONTENTS_MENU
Definition avrcp.h:85
@ BT_AVRCP_OPID_7
Definition avrcp.h:96
@ BT_AVRCP_OPID_UP
Definition avrcp.h:75
@ BT_AVRCP_OPID_HELP
Definition avrcp.h:109
@ BT_AVRCP_OPID_SUBPICTURE
Definition avrcp.h:128
@ BT_AVRCP_OPID_8
Definition avrcp.h:97
@ BT_AVRCP_OPID_2
Definition avrcp.h:91
@ BT_AVRCP_OPID_SELECT
Definition avrcp.h:74
@ BT_AVRCP_OPID_CHANNEL_UP
Definition avrcp.h:103
@ BT_AVRCP_OPID_VENDOR_UNIQUE
Definition avrcp.h:135
@ BT_AVRCP_OPID_EJECT
Definition avrcp.h:123
@ BT_AVRCP_OPID_CLEAR
Definition avrcp.h:101
@ BT_AVRCP_OPID_0
Definition avrcp.h:89
@ BT_AVRCP_OPID_PLAY
Definition avrcp.h:117
@ BT_AVRCP_OPID_3
Definition avrcp.h:92
@ BT_AVRCP_OPID_VOLUME_UP
Definition avrcp.h:114
@ BT_AVRCP_OPID_ANGLE
Definition avrcp.h:127
bt_avrcp_playback_status_t
AVRCP Playback Status.
Definition avrcp.h:351
@ BT_AVRCP_PLAYBACK_STATUS_ERROR
Definition avrcp.h:357
@ BT_AVRCP_PLAYBACK_STATUS_PAUSED
Definition avrcp.h:354
@ BT_AVRCP_PLAYBACK_STATUS_REV_SEEK
Definition avrcp.h:356
@ BT_AVRCP_PLAYBACK_STATUS_STOPPED
Definition avrcp.h:352
@ BT_AVRCP_PLAYBACK_STATUS_FWD_SEEK
Definition avrcp.h:355
@ BT_AVRCP_PLAYBACK_STATUS_PLAYING
Definition avrcp.h:353
bt_avrcp_scan_value_t
AVRCP Player Application Setting Values for Scan.
Definition avrcp.h:441
@ BT_AVRCP_SCAN_ALL_TRACKS
Definition avrcp.h:443
@ BT_AVRCP_SCAN_GROUP
Definition avrcp.h:444
@ BT_AVRCP_SCAN_OFF
Definition avrcp.h:442
int bt_avrcp_ct_get_subunit_info(struct bt_avrcp_ct *ct, uint8_t tid)
Get AVRCP Subunit Info.
int bt_avrcp_tg_get_play_status(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf)
Send response for PDU ID BT_AVRCP_PDU_ID_GET_PLAY_STATUS.
bt_avrcp_status_t
AVRCP status and error codes.
Definition avrcp.h:149
@ BT_AVRCP_STATUS_NO_VALID_SEARCH_RESULTS
No valid search results.
Definition avrcp.h:249
@ BT_AVRCP_STATUS_UID_CHANGED
The UIDs on the device have changed.
Definition avrcp.h:178
@ BT_AVRCP_STATUS_NOT_IMPLEMENTED
Not implemented response.
Definition avrcp.h:271
@ BT_AVRCP_STATUS_INVALID_COMMAND
Invalid command.
Definition avrcp.h:153
@ BT_AVRCP_STATUS_PLAYER_NOT_BROWSABLE
Player not browsable.
Definition avrcp.h:239
@ BT_AVRCP_STATUS_FOLDER_ITEM_IS_NOT_PLAYABLE
Folder item is not playable.
Definition avrcp.h:209
@ BT_AVRCP_STATUS_NOW_PLAYING_LIST_FULL
Now Playing List full.
Definition avrcp.h:219
@ BT_AVRCP_STATUS_PLAYER_NOT_ADDRESSED
Player not addressed.
Definition avrcp.h:244
@ BT_AVRCP_STATUS_SEARCH_IN_PROGRESS
Search in progress.
Definition avrcp.h:229
@ BT_AVRCP_STATUS_ADDRESSED_PLAYER_CHANGED
Addressed player changed.
Definition avrcp.h:259
@ BT_AVRCP_STATUS_INVALID_DIRECTION
The Direction parameter is invalid.
Definition avrcp.h:183
@ BT_AVRCP_STATUS_SEARCH_NOT_SUPPORTED
Search not supported.
Definition avrcp.h:224
@ BT_AVRCP_STATUS_NO_AVAILABLE_PLAYERS
No available players.
Definition avrcp.h:254
@ BT_AVRCP_STATUS_INVALID_PLAYER_ID
The specified Player Id does not refer to a valid player.
Definition avrcp.h:234
@ BT_AVRCP_STATUS_NOT_A_DIRECTORY
The UID provided does not refer to a folder item.
Definition avrcp.h:188
@ BT_AVRCP_STATUS_PARAMETER_CONTENT_ERROR
Parameter content error.
Definition avrcp.h:163
@ BT_AVRCP_STATUS_RANGE_OUT_OF_BOUNDS
Range out of bounds.
Definition avrcp.h:204
@ BT_AVRCP_STATUS_INVALID_PARAMETER
Invalid parameter.
Definition avrcp.h:158
@ BT_AVRCP_STATUS_DOES_NOT_EXIST
The UID provided does not refer to any currently valid item.
Definition avrcp.h:193
@ BT_AVRCP_STATUS_INVALID_SCOPE
Invalid scope.
Definition avrcp.h:199
@ BT_AVRCP_STATUS_OPERATION_COMPLETED
Operation completed without error.
Definition avrcp.h:173
@ BT_AVRCP_STATUS_MEDIA_IN_USE
Media in use.
Definition avrcp.h:214
@ BT_AVRCP_STATUS_INTERNAL_ERROR
Internal error.
Definition avrcp.h:168
@ BT_AVRCP_STATUS_IN_TRANSITION
In transition response.
Definition avrcp.h:265
@ BT_AVRCP_STATUS_SUCCESS
Successful response.
Definition avrcp.h:279
int bt_avrcp_tg_play_item(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status)
Send response for PDU ID BT_AVRCP_PDU_ID_PLAY_ITEM.
int bt_avrcp_ct_set_addressed_player(struct bt_avrcp_ct *ct, uint8_t tid, uint16_t player_id)
Send AVRCP vendor dependent command for SET_ADDRESSED_PLAYER.
int bt_avrcp_connect(struct bt_conn *conn)
Connect AVRCP.
int bt_avrcp_ct_register_cb(const struct bt_avrcp_ct_cb *cb)
Register callback.
bt_avrcp_subunit_type_t
AV/C subunit type, also used for unit type.
Definition avrcp.h:67
@ BT_AVRCP_SUBUNIT_TYPE_PANEL
Definition avrcp.h:68
@ BT_AVRCP_SUBUNIT_TYPE_UNIT
Definition avrcp.h:69
int bt_avrcp_tg_register_cb(const struct bt_avrcp_tg_cb *cb)
Register callback.
int bt_avrcp_ct_add_to_now_playing(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Send AVRCP vendor dependent command for ADD_TO_NOW_PLAYING.
int bt_avrcp_disconnect(struct bt_conn *conn)
Disconnect AVRCP.
bt_avrcp_player_attr_id_t
AVRCP Player Application Setting Attribute IDs.
Definition avrcp.h:412
@ BT_AVRCP_PLAYER_ATTR_EQUALIZER
Definition avrcp.h:413
@ BT_AVRCP_PLAYER_ATTR_SHUFFLE
Definition avrcp.h:415
@ BT_AVRCP_PLAYER_ATTR_SCAN
Definition avrcp.h:416
@ BT_AVRCP_PLAYER_ATTR_REPEAT_MODE
Definition avrcp.h:414
bt_avrcp_charset_t
AVRCP Character Set IDs.
Definition avrcp.h:330
@ BT_AVRCP_CHARSET_UTF8
Definition avrcp.h:331
int bt_avrcp_tg_get_element_attrs(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf)
Send response for PDU ID BT_AVRCP_PDU_ID_GET_ELEMENT_ATTRS.
bt_avrcp_media_attr_t
AVRCP Media Attribute IDs.
Definition avrcp.h:380
@ BT_AVRCP_MEDIA_ATTR_GENRE
Definition avrcp.h:386
@ BT_AVRCP_MEDIA_ATTR_PLAYING_TIME
Definition avrcp.h:387
@ BT_AVRCP_MEDIA_ATTR_TITLE
Definition avrcp.h:381
@ BT_AVRCP_MEDIA_ATTR_TOTAL_TRACKS
Definition avrcp.h:385
@ BT_AVRCP_MEDIA_ATTR_ARTIST
Definition avrcp.h:382
@ BT_AVRCP_MEDIA_ATTR_ALBUM
Definition avrcp.h:383
@ BT_AVRCP_MEDIA_ATTR_TRACK_NUMBER
Definition avrcp.h:384
int bt_avrcp_tg_get_player_app_setting_val_text(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf)
Send response for PDU ID BT_AVRCP_PDU_ID_GET_PLAYER_APP_SETTING_VAL_TEXT.
bt_avrcp_shuffle_value_t
AVRCP Player Application Setting Values for Shuffle.
Definition avrcp.h:434
@ BT_AVRCP_SHUFFLE_GROUP
Definition avrcp.h:437
@ BT_AVRCP_SHUFFLE_OFF
Definition avrcp.h:435
@ BT_AVRCP_SHUFFLE_ALL_TRACKS
Definition avrcp.h:436
int bt_avrcp_ct_set_player_app_setting_val(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Send AVRCP vendor dependent command for SET_PLAYER_APP_SETTING_VAL.
int bt_avrcp_tg_set_player_app_setting_val(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status)
Send response for PDU ID BT_AVRCP_PDU_ID_SET_PLAYER_APP_SETTING_VAL.
int bt_avrcp_browsing_disconnect(struct bt_conn *conn)
Disconnect AVRCP browsing channel.
int bt_avrcp_tg_inform_batt_status_of_ct(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status)
Send response for PDU ID BT_AVRCP_PDU_ID_INFORM_BATT_STATUS_OF_CT.
bt_avrcp_scope_t
AVRCP Scope Values 0x00 = Media Player List 0x01 = Filesystem 0x02 = Search 0x03 = Now Playing.
Definition avrcp.h:453
@ BT_AVRCP_SCOPE_FILESYSTEM
Definition avrcp.h:455
@ BT_AVRCP_SCOPE_SEARCH
Definition avrcp.h:456
@ BT_AVRCP_SCOPE_MEDIA_PLAYER_LIST
Definition avrcp.h:454
@ BT_AVRCP_SCOPE_NOW_PLAYING
Definition avrcp.h:457
int bt_avrcp_ct_set_browsed_player(struct bt_avrcp_ct *ct, uint8_t tid, uint16_t player_id)
Set browsed player.
int bt_avrcp_tg_get_curr_player_app_setting_val(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf)
Send response for PDU ID BT_AVRCP_PDU_ID_GET_CURR_PLAYER_APP_SETTING_VAL.
int bt_avrcp_ct_inform_displayable_char_set(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Send AVRCP vendor dependent command for INFORM_DISPLAYABLE_CHAR_SET.
int bt_avrcp_ct_register_notification(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t event_id, uint32_t interval, bt_avrcp_notify_changed_cb_t cb)
Register for AVRCP changed notifications with callback.
int bt_avrcp_tg_list_player_app_setting_attrs(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf)
Send response for PDU ID BT_AVRCP_PDU_ID_LIST_PLAYER_APP_SETTING_ATTRS.
int bt_avrcp_ct_play_item(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Send AVRCP vendor dependent command for PLAY_ITEM.
void(* bt_avrcp_notify_changed_cb_t)(struct bt_avrcp_ct *ct, uint8_t event_id, struct bt_avrcp_event_data *data)
Callback for AVRCP event notifications (CHANGED only).
Definition avrcp.h:652
bt_avrcp_rsp_t
AV/C response codes.
Definition avrcp.h:55
@ BT_AVRCP_RSP_REJECTED
Definition avrcp.h:58
@ BT_AVRCP_RSP_ACCEPTED
Definition avrcp.h:57
@ BT_AVRCP_RSP_STABLE
For STATUS commands.
Definition avrcp.h:61
@ BT_AVRCP_RSP_INTERIM
Definition avrcp.h:63
@ BT_AVRCP_RSP_NOT_IMPLEMENTED
Definition avrcp.h:56
@ BT_AVRCP_RSP_IMPLEMENTED
For SPECIFIC_INQUIRY and GENERAL_INQUIRY commands.
Definition avrcp.h:60
@ BT_AVRCP_RSP_IN_TRANSITION
Definition avrcp.h:59
@ BT_AVRCP_RSP_CHANGED
Definition avrcp.h:62
int bt_avrcp_tg_send_subunit_info_rsp(struct bt_avrcp_tg *tg, uint8_t tid)
Send the subunit info response.
bt_avrcp_cap_t
AVRCP Capability ID.
Definition avrcp.h:23
@ BT_AVRCP_CAP_EVENTS_SUPPORTED
Definition avrcp.h:25
@ BT_AVRCP_CAP_COMPANY_ID
Definition avrcp.h:24
struct net_buf * bt_avrcp_create_pdu(struct net_buf_pool *pool)
Allocate a net_buf for AVRCP PDU transmission, reserving headroom for AVRCP, AVRCTP,...
int bt_avrcp_browsing_connect(struct bt_conn *conn)
Connect AVRCP browsing channel.
int bt_avrcp_tg_send_passthrough_rsp(struct bt_avrcp_tg *tg, uint8_t tid, bt_avrcp_rsp_t result, struct net_buf *buf)
Send AVRCP Pass Through response.
int bt_avrcp_ct_get_player_app_setting_val_text(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Send AVRCP vendor dependent command for GET_PLAYER_APP_SETTING_VAL_TEXT.
struct net_buf * bt_avrcp_create_vendor_pdu(struct net_buf_pool *pool)
Allocate a net_buf for AVRCP Vendor-Dependent PDU transmission, reserving headroom for the Vendor PDU...
int bt_avrcp_tg_absolute_volume(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, uint8_t absolute_volume)
Send Set Absolute Volume response (TG).
int bt_avrcp_tg_get_caps(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf)
Send GET_CAPABILITIES response.
int bt_avrcp_tg_send_set_browsed_player_rsp(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Send the set browsed player response.
int bt_avrcp_tg_set_addressed_player(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status)
Send response for PDU ID BT_AVRCP_PDU_ID_SET_ADDRESSED_PLAYER.
int bt_avrcp_tg_inform_displayable_char_set(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status)
Send response for PDU ID BT_AVRCP_PDU_ID_INFORM_DISPLAYABLE_CHAR_SET.
int bt_avrcp_ct_list_player_app_setting_attrs(struct bt_avrcp_ct *ct, uint8_t tid)
Send AVRCP vendor dependent command for LIST_PLAYER_APP_SETTING_ATTRS.
#define BT_AVRCP_COMPANY_ID_SIZE
Definition avrcp.h:19
bt_avrcp_equalizer_value_t
AVRCP Player Application Setting Values for Equalizer.
Definition avrcp.h:420
@ BT_AVRCP_EQUALIZER_OFF
Definition avrcp.h:421
@ BT_AVRCP_EQUALIZER_ON
Definition avrcp.h:422
int bt_avrcp_tg_list_player_app_setting_vals(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status, struct net_buf *buf)
Send response for PDU ID BT_AVRCP_PDU_ID_LIST_PLAYER_APP_SETTING_VALS.
int bt_avrcp_ct_inform_batt_status_of_ct(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t battery_status)
Send AVRCP vendor dependent command for INFORM_BATT_STATUS_OF_CT.
int bt_avrcp_tg_send_unit_info_rsp(struct bt_avrcp_tg *tg, uint8_t tid, struct bt_avrcp_unit_info_rsp *rsp)
Send the unit info response.
bt_avrcp_evt_t
AVRCP Notification Events.
Definition avrcp.h:29
@ BT_AVRCP_EVT_TRACK_CHANGED
Definition avrcp.h:31
@ BT_AVRCP_EVT_TRACK_REACHED_END
Definition avrcp.h:32
@ BT_AVRCP_EVT_PLAYBACK_STATUS_CHANGED
Definition avrcp.h:30
@ BT_AVRCP_EVT_UIDS_CHANGED
Definition avrcp.h:41
@ BT_AVRCP_EVT_VOLUME_CHANGED
Definition avrcp.h:42
@ BT_AVRCP_EVT_BATT_STATUS_CHANGED
Definition avrcp.h:35
@ BT_AVRCP_EVT_PLAYER_APP_SETTING_CHANGED
Definition avrcp.h:37
@ BT_AVRCP_EVT_ADDRESSED_PLAYER_CHANGED
Definition avrcp.h:40
@ BT_AVRCP_EVT_AVAILABLE_PLAYERS_CHANGED
Definition avrcp.h:39
@ BT_AVRCP_EVT_NOW_PLAYING_CONTENT_CHANGED
Definition avrcp.h:38
@ BT_AVRCP_EVT_SYSTEM_STATUS_CHANGED
Definition avrcp.h:36
@ BT_AVRCP_EVT_TRACK_REACHED_START
Definition avrcp.h:33
@ BT_AVRCP_EVT_PLAYBACK_POS_CHANGED
Definition avrcp.h:34
int bt_avrcp_ct_get_element_attrs(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Send AVRCP vendor dependent command for GET_ELEMENT_ATTRS.
int bt_avrcp_tg_add_to_now_playing(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t status)
Send response for PDU ID BT_AVRCP_PDU_ID_ADD_TO_NOW_PLAYING.
state
Definition parser_state.h:29
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
AddToNowPlaying command request.
Definition avrcp.h:589
uint16_t uid_counter
UID counter.
Definition avrcp.h:592
uint8_t uid[8]
UID of the item.
Definition avrcp.h:591
uint8_t scope
Scope: bt_avrcp_scope_t.
Definition avrcp.h:590
AVRCP Attribute Text Entry.
Definition avrcp.h:508
uint8_t text[]
Text string.
Definition avrcp.h:512
uint8_t attr_id
Attribute ID.
Definition avrcp.h:509
uint8_t text_len
Length of text.
Definition avrcp.h:511
uint16_t charset_id
Charset ID.
Definition avrcp.h:510
AVRCP Attribute-Value Pair.
Definition avrcp.h:484
uint8_t value_id
Value ID.
Definition avrcp.h:486
uint8_t attr_id
Attribute ID.
Definition avrcp.h:485
AVRCP Attribute Text Entry.
Definition avrcp.h:529
uint16_t charset_id
Charset ID.
Definition avrcp.h:531
uint8_t value_id
Value ID.
Definition avrcp.h:530
uint8_t text[]
Text string.
Definition avrcp.h:533
uint8_t text_len
Length of text.
Definition avrcp.h:532
Definition avrcp.h:655
void(* get_player_app_setting_attr_text)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf)
Callback for PDU ID GET_PLAYER_APP_SETTING_ATTR_TEXT.
Definition avrcp.h:891
void(* notification)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, uint8_t event_id, struct bt_avrcp_event_data *data)
Callback function for Event Notification response (CT).
Definition avrcp.h:787
void(* connected)(struct bt_conn *conn, struct bt_avrcp_ct *ct)
An AVRCP CT connection has been established.
Definition avrcp.h:664
void(* get_caps)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf)
Callback function for bt_avrcp_get_caps().
Definition avrcp.h:713
void(* inform_batt_status_of_ct)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status)
Callback for PDU ID INFORM_BATT_STATUS_OF_CT.
Definition avrcp.h:940
void(* browsing_connected)(struct bt_conn *conn, struct bt_avrcp_ct *ct)
An AVRCP CT browsing connection has been established.
Definition avrcp.h:683
void(* list_player_app_setting_attrs)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf)
Callback for PDU ID LIST_PLAYER_APP_SETTING_ATTRS.
Definition avrcp.h:810
void(* subunit_info_rsp)(struct bt_avrcp_ct *ct, uint8_t tid, struct bt_avrcp_subunit_info_rsp *rsp)
Callback function for bt_avrcp_get_subunit_info().
Definition avrcp.h:734
void(* set_player_app_setting_val)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status)
Callback for PDU ID SET_PLAYER_APP_SETTING_VAL.
Definition avrcp.h:870
void(* set_addressed_player)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status)
Callback for PDU ID SET_ADDRESSED_PLAYER.
Definition avrcp.h:1012
void(* passthrough_rsp)(struct bt_avrcp_ct *ct, uint8_t tid, bt_avrcp_rsp_t result, const struct bt_avrcp_passthrough_rsp *rsp)
Callback function for bt_avrcp_passthrough().
Definition avrcp.h:746
void(* play_item)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status)
Callback for PDU ID PLAY_ITEM.
Definition avrcp.h:1025
void(* inform_displayable_char_set)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status)
Callback for PDU ID INFORM_DISPLAYABLE_CHAR_SET.
Definition avrcp.h:927
void(* list_player_app_setting_vals)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf)
Callback for PDU ID LIST_PLAYER_APP_SETTING_VALS.
Definition avrcp.h:833
void(* disconnected)(struct bt_avrcp_ct *ct)
An AVRCP CT connection has been disconnected.
Definition avrcp.h:673
void(* browsed_player_rsp)(struct bt_avrcp_ct *ct, uint8_t tid, struct net_buf *buf)
Callback function for bt_avrcp_ct_set_browsed_player().
Definition avrcp.h:760
void(* get_play_status)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf)
Callback for PDU ID GET_PLAY_STATUS.
Definition avrcp.h:998
void(* get_player_app_setting_val_text)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf)
Callback for PDU ID GET_PLAYER_APP_SETTING_VAL_TEXT.
Definition avrcp.h:913
void(* get_curr_player_app_setting_val)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf)
Callback for PDU ID GET_CURR_PLAYER_APP_SETTING_VAL.
Definition avrcp.h:856
void(* unit_info_rsp)(struct bt_avrcp_ct *ct, uint8_t tid, struct bt_avrcp_unit_info_rsp *rsp)
Callback function for bt_avrcp_get_unit_info().
Definition avrcp.h:723
void(* get_element_attrs)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, struct net_buf *buf)
Callback for PDU ID GET_ELEMENT_ATTRS.
Definition avrcp.h:976
void(* set_absolute_volume)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status, uint8_t absolute_volume)
Callback function for Set Absolute Volume response (CT).
Definition avrcp.h:954
void(* add_to_now_playing)(struct bt_avrcp_ct *ct, uint8_t tid, uint8_t status)
Callback for PDU ID ADD_TO_NOW_PLAYING.
Definition avrcp.h:1038
void(* browsing_disconnected)(struct bt_avrcp_ct *ct)
An AVRCP CT browsing connection has been disconnected.
Definition avrcp.h:692
Definition avrcp.h:595
uint8_t identifier[8]
Definition avrcp.h:601
struct bt_avrcp_event_data::@257146241107017275103301331176062107266015056107::@050163204331037176011217265126316251256154336273 addressed_player_changed
uint8_t system_status
Definition avrcp.h:610
uint8_t num_of_attr
Definition avrcp.h:614
uint16_t uid_counter
Definition avrcp.h:621
struct bt_avrcp_event_data::@257146241107017275103301331176062107266015056107::@312063362210104176244252166322271304063266050351 setting_changed
uint32_t playback_pos
Definition avrcp.h:604
uint8_t battery_status
Definition avrcp.h:607
uint16_t player_id
Definition avrcp.h:620
struct bt_avrcp_app_setting_attr_val * attr_vals
Definition avrcp.h:615
uint8_t play_status
Definition avrcp.h:598
uint8_t absolute_volume
Definition avrcp.h:628
get folder name (response)
Definition avrcp.h:335
uint8_t folder_name[]
Definition avrcp.h:337
uint16_t folder_name_len
Definition avrcp.h:336
Definition avrcp.h:323
uint8_t cap_cnt
number of items contained in *cap
Definition avrcp.h:325
uint8_t cap_id
bt_avrcp_cap_t
Definition avrcp.h:324
uint8_t cap[]
1 or 3 octets each depends on cap_id
Definition avrcp.h:326
GetCurrentPlayerApplicationSettingValue command request.
Definition avrcp.h:478
uint8_t attr_ids[]
Array of attribute IDs.
Definition avrcp.h:480
uint8_t num_attrs
Number of attributes to query.
Definition avrcp.h:479
GetCurrentPlayerApplicationSettingValue response.
Definition avrcp.h:490
uint8_t num_attrs
Number of attributes returned.
Definition avrcp.h:491
struct bt_avrcp_app_setting_attr_val attr_vals[]
Array of attribute-value pairs.
Definition avrcp.h:492
GetElementAttributes command request structure.
Definition avrcp.h:391
uint32_t attr_ids[]
Array of requested attribute IDs.
Definition avrcp.h:394
uint8_t num_attrs
Number of attributes requested (0 = all)
Definition avrcp.h:393
uint8_t identifier[8]
Element identifier (0x0 for currently playing)
Definition avrcp.h:392
GetElementAttributes response structure.
Definition avrcp.h:406
struct bt_avrcp_media_attr attrs[]
Array of media attributes.
Definition avrcp.h:408
uint8_t num_attrs
Number of attributes in response.
Definition avrcp.h:407
GetPlayStatus response.
Definition avrcp.h:554
uint8_t play_status
Play status: bt_avrcp_playback_status_t.
Definition avrcp.h:557
uint32_t song_position
Current position in the song in milliseconds.
Definition avrcp.h:556
uint32_t song_length
Total length of the song in milliseconds.
Definition avrcp.h:555
GetPlayerApplicationSettingAttributeText command request.
Definition avrcp.h:502
uint8_t num_attrs
Number of attributes to get text for.
Definition avrcp.h:503
uint8_t attr_ids[]
Array of attribute IDs.
Definition avrcp.h:504
GetPlayerApplicationSettingAttributeText response.
Definition avrcp.h:516
struct bt_avrcp_app_setting_attr_text attr_text[]
Definition avrcp.h:518
uint8_t num_attrs
Number of attributes returned.
Definition avrcp.h:517
GetPlayerApplicationSettingValueText command request.
Definition avrcp.h:522
uint8_t attr_id
Attribute ID.
Definition avrcp.h:523
uint8_t value_ids[]
Array of value IDs.
Definition avrcp.h:525
uint8_t num_values
Number of values to get text for.
Definition avrcp.h:524
GetPlayerApplicationSettingValueText response.
Definition avrcp.h:537
uint8_t num_values
Number of values returned.
Definition avrcp.h:538
struct bt_avrcp_app_setting_val_text value_text[]
Definition avrcp.h:539
InformBatteryStatusOfCT command request.
Definition avrcp.h:549
uint8_t battery_status
Battery status value bt_avrcp_battery_status_t.
Definition avrcp.h:550
InformDisplayableCharacterSet command request.
Definition avrcp.h:543
uint8_t num_charsets
Number of character sets supported.
Definition avrcp.h:544
uint16_t charset_ids[]
Array of character set IDs.
Definition avrcp.h:545
ListPlayerApplicationSettingAttributes response.
Definition avrcp.h:461
uint8_t num_attrs
Number of application setting attributes.
Definition avrcp.h:462
uint8_t attr_ids[]
Array of attribute IDs bt_avrcp_player_attr_id_t.
Definition avrcp.h:463
ListPlayerApplicationSettingValues command request.
Definition avrcp.h:467
uint8_t attr_id
Attribute ID to query values for.
Definition avrcp.h:468
ListPlayerApplicationSettingValues response.
Definition avrcp.h:472
uint8_t values[]
Array of possible values.
Definition avrcp.h:474
uint8_t num_values
Number of values for the attribute.
Definition avrcp.h:473
AVRCP Media Attribute structure.
Definition avrcp.h:398
uint16_t attr_len
Length of attribute value.
Definition avrcp.h:401
uint16_t charset_id
Character set ID, see bt_avrcp_charset_t.
Definition avrcp.h:400
uint32_t attr_id
Media attribute ID, see bt_avrcp_media_attr_t.
Definition avrcp.h:399
uint8_t attr_val[]
Attribute value data.
Definition avrcp.h:402
Definition avrcp.h:311
struct bt_avrcp_passthrough_opvu_data data[0]
opvu data
Definition avrcp.h:314
uint8_t data_len
Definition avrcp.h:313
uint8_t opid_state
[7]: state_flag, [6:0]: opid
Definition avrcp.h:312
Definition avrcp.h:306
uint16_t opid_vu
Definition avrcp.h:308
uint8_t company_id[(3)]
Definition avrcp.h:307
Definition avrcp.h:317
uint8_t data_len
Definition avrcp.h:319
struct bt_avrcp_passthrough_opvu_data data[0]
opvu data
Definition avrcp.h:320
uint8_t opid_state
[7]: state_flag, [6:0]: opid
Definition avrcp.h:318
PlayItem command request.
Definition avrcp.h:582
uint8_t scope
Scope: bt_avrcp_scope_t.
Definition avrcp.h:583
uint16_t uid_counter
UID counter.
Definition avrcp.h:585
uint8_t uid[8]
UID of the item.
Definition avrcp.h:584
RegisterNotification command request.
Definition avrcp.h:561
uint32_t interval
Playback interval (used only for event_id = 0x05)
Definition avrcp.h:563
uint8_t event_id
Event ID to register for.
Definition avrcp.h:562
SetAbsoluteVolume command request.
Definition avrcp.h:567
uint8_t absolute_volume
Volume level (0x00 to 0x7F)
Definition avrcp.h:568
SetAbsoluteVolume response.
Definition avrcp.h:572
uint8_t absolute_volume
Volume level acknowledged.
Definition avrcp.h:573
SetAddressedPlayer command request.
Definition avrcp.h:577
uint16_t player_id
Player ID to be addressed.
Definition avrcp.h:578
Set browsed player response structure.
Definition avrcp.h:341
uint16_t uid_counter
UID counter.
Definition avrcp.h:343
uint16_t charset_id
Character set ID.
Definition avrcp.h:345
uint8_t status
Status see bt_avrcp_status_t.
Definition avrcp.h:342
struct bt_avrcp_folder_name folder_names[0]
Folder names data.
Definition avrcp.h:347
uint32_t num_items
Number of items in the folder.
Definition avrcp.h:344
uint8_t folder_depth
Folder depth.
Definition avrcp.h:346
SetPlayerApplicationSettingValue command request.
Definition avrcp.h:496
struct bt_avrcp_app_setting_attr_val attr_vals[]
Array of attribute-value pairs.
Definition avrcp.h:498
uint8_t num_attrs
Number of attributes to set.
Definition avrcp.h:497
Definition avrcp.h:292
const uint8_t * extended_subunit_id
contains max_subunit_id items
Definition avrcp.h:296
bt_avrcp_subunit_type_t subunit_type
Definition avrcp.h:293
const uint8_t * extended_subunit_type
contains max_subunit_id items
Definition avrcp.h:295
uint8_t max_subunit_id
Definition avrcp.h:294
Definition avrcp.h:1375
void(* set_player_app_setting_val)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Callback for PDU ID BT_AVRCP_PDU_ID_SET_PLAYER_APP_SETTING_VAL.
Definition avrcp.h:1521
void(* set_addressed_player)(struct bt_avrcp_tg *tg, uint8_t tid, uint16_t player_id)
Callback for PDU ID BT_AVRCP_PDU_ID_SET_ADDRESSED_PLAYER.
Definition avrcp.h:1613
void(* get_player_app_setting_attr_text)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Callback for PDU ID BT_AVRCP_PDU_ID_GET_PLAYER_APP_SETTING_ATTR_TEXT.
Definition avrcp.h:1534
void(* set_absolute_volume)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t absolute_volume)
Callback function for Set Absolute Volume command (TG).
Definition avrcp.h:1594
void(* register_notification)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t event_id, uint32_t interval)
Register notification request callback.
Definition avrcp.h:1414
void(* passthrough_req)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Pass Through command request callback.
Definition avrcp.h:1476
void(* get_curr_player_app_setting_val)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Callback for PDU ID BT_AVRCP_PDU_ID_GET_CURR_PLAYER_APP_SETTING_VAL.
Definition avrcp.h:1508
void(* get_player_app_setting_val_text)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Callback for PDU ID BT_AVRCP_PDU_ID_GET_PLAYER_APP_SETTING_VAL_TEXT.
Definition avrcp.h:1547
void(* add_to_now_playing)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Callback for PDU ID BT_AVRCP_PDU_ID_ADD_TO_NOW_PLAYING.
Definition avrcp.h:1637
void(* browsing_connected)(struct bt_conn *conn, struct bt_avrcp_tg *tg)
An AVRCP TG browsing connection has been established.
Definition avrcp.h:1444
void(* inform_batt_status_of_ct)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t battery_status)
Callback for PDU ID BT_AVRCP_PDU_ID_INFORM_BATT_STATUS_OF_CT.
Definition avrcp.h:1571
void(* get_play_status)(struct bt_avrcp_tg *tg, uint8_t tid)
Callback for PDU ID BT_AVRCP_PDU_ID_GET_PLAY_STATUS.
Definition avrcp.h:1603
void(* connected)(struct bt_conn *conn, struct bt_avrcp_tg *tg)
An AVRCP TG connection has been established.
Definition avrcp.h:1384
void(* unit_info_req)(struct bt_avrcp_tg *tg, uint8_t tid)
Unit info request callback.
Definition avrcp.h:1402
void(* disconnected)(struct bt_avrcp_tg *tg)
An AVRCP TG connection has been disconnected.
Definition avrcp.h:1393
void(* get_caps)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t cap_id)
Get capabilities request callback.
Definition avrcp.h:1434
void(* subunit_info_req)(struct bt_avrcp_tg *tg, uint8_t tid)
Subunit Info Request callback.
Definition avrcp.h:1424
void(* set_browsed_player_req)(struct bt_avrcp_tg *tg, uint8_t tid, uint16_t player_id)
Set browsed player request callback.
Definition avrcp.h:1463
void(* list_player_app_setting_vals)(struct bt_avrcp_tg *tg, uint8_t tid, uint8_t attr_id)
Callback for PDU ID BT_AVRCP_PDU_ID_LIST_PLAYER_APP_SETTING_VALS.
Definition avrcp.h:1496
void(* browsing_disconnected)(struct bt_avrcp_tg *tg)
An AVRCP TG browsing connection has been disconnected.
Definition avrcp.h:1453
void(* inform_displayable_char_set)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Callback for PDU ID BT_AVRCP_PDU_ID_INFORM_DISPLAYABLE_CHAR_SET.
Definition avrcp.h:1560
void(* get_element_attrs)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Callback for PDU ID BT_AVRCP_PDU_ID_GET_ELEMENT_ATTRS.
Definition avrcp.h:1584
void(* list_player_app_setting_attrs)(struct bt_avrcp_tg *tg, uint8_t tid)
Callback for PDU ID BT_AVRCP_PDU_ID_LIST_PLAYER_APP_SETTING_ATTRS.
Definition avrcp.h:1485
void(* play_item)(struct bt_avrcp_tg *tg, uint8_t tid, struct net_buf *buf)
Callback for PDU ID BT_AVRCP_PDU_ID_PLAY_ITEM.
Definition avrcp.h:1625
Definition avrcp.h:287
uint32_t company_id
Definition avrcp.h:289
bt_avrcp_subunit_type_t unit_type
Definition avrcp.h:288
Network buffer pool representation.
Definition net_buf.h:1079
Network buffer representation.
Definition net_buf.h:1006
uint8_t * data
Pointer to the start of data in the buffer.
Definition net_buf.h:1032
uint16_t len
Length of the data behind the data pointer.
Definition net_buf.h:1035