BT AVRCP API¶
应用程序示例¶
API 参考手册¶
宏¶
类型定义¶
-
typedef void (*
esp_avrc_ct_cb_t
)(esp_avrc_ct_cb_event_t event, esp_avrc_ct_cb_param_t *param)¶ AVRCP controller callback function type.
- Parameters
event
: : Event typeparam
: : Pointer to callback parameter union
枚举¶
-
enum
esp_avrc_features_t
¶ AVRC feature bit mask.
Values:
-
ESP_AVRC_FEAT_RCTG
= 0x0001¶ remote control target
-
ESP_AVRC_FEAT_RCCT
= 0x0002¶ remote control controller
-
ESP_AVRC_FEAT_VENDOR
= 0x0008¶ remote control vendor dependent commands
-
ESP_AVRC_FEAT_BROWSE
= 0x0010¶ use browsing channel
-
ESP_AVRC_FEAT_META_DATA
= 0x0040¶ remote control metadata transfer command/response
-
ESP_AVRC_FEAT_ADV_CTRL
= 0x0200¶ remote control advanced control commmand/response
-
-
enum
esp_avrc_pt_cmd_t
¶ AVRC passthrough command code.
Values:
-
ESP_AVRC_PT_CMD_PLAY
= 0x44¶ play
-
ESP_AVRC_PT_CMD_STOP
= 0x45¶ stop
-
ESP_AVRC_PT_CMD_PAUSE
= 0x46¶ pause
-
ESP_AVRC_PT_CMD_FORWARD
= 0x4B¶ forward
-
ESP_AVRC_PT_CMD_BACKWARD
= 0x4C¶ backward
-
结构体¶
警告
doxygenstruct: Cannot find class “esp_avrc_ct_cb_param_t” in doxygen xml output for project “esp32-idf” from directory: xml/
-
struct
esp_avrc_ct_cb_param_t::
avrc_ct_conn_stat_param
¶ ESP_AVRC_CT_CONNECTION_STATE_EVT.
Public Members
-
bool
connected
¶ whether AVRC connection is set up
-
uint32_t
feat_mask
¶ AVRC feature mask of remote device
-
esp_bd_addr_t
remote_bda
¶ remote bluetooth device address
-
bool
-
struct
esp_avrc_ct_cb_param_t::
avrc_ct_psth_rsp_param
¶ ESP_AVRC_CT_PASSTHROUGH_RSP_EVT.
函数¶
-
esp_err_t
esp_avrc_ct_register_callback
(esp_avrc_ct_cb_t callback)¶ Register application callbacks to AVRCP module; for now only AVRCP Controller role is supported. This function should be called after esp_bluedroid_enable() completes successfully.
- Return
- ESP_OK: success
- ESP_INVALID_STATE: if bluetooth stack is not yet enabled
- ESP_FAIL: others
- Parameters
callback
: AVRCP controller callback function
-
esp_err_t
esp_avrc_ct_init
(void)¶ Initialize the bluetooth AVRCP controller module, This function should be called after esp_bluedroid_enable() completes successfully.
- Return
- ESP_OK: success
- ESP_INVALID_STATE: if bluetooth stack is not yet enabled
- ESP_FAIL: others
-
esp_err_t
esp_avrc_ct_deinit
(void)¶ De-initialize AVRCP controller module. This function should be called after after esp_bluedroid_enable() completes successfully.
- Return
- ESP_OK: success
- ESP_INVALID_STATE: if bluetooth stack is not yet enabled
- ESP_FAIL: others
-
esp_err_t
esp_avrc_ct_send_passthrough_cmd
(uint8_t tl, uint8_t key_code, uint8_t key_state)¶ Send passthrough command to AVRCP target, This function should be called after ESP_AVRC_CT_CONNECTION_STATE_EVT is received and AVRCP connection is established.
- Return
- ESP_OK: success
- ESP_INVALID_STATE: if bluetooth stack is not yet enabled
- ESP_FAIL: others
- Parameters
tl
: : transaction label, 0 to 15, consecutive commands should use different values.key_code
: : passthrough command code, e.g. ESP_AVRC_PT_CMD_PLAY, ESP_AVRC_PT_CMD_STOP, etc.key_state
: : passthrough command key state, ESP_AVRC_PT_CMD_STATE_PRESSED or ESP_AVRC_PT_CMD_STATE_PRESSED