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