hc
2024-11-01 2f529f9b558ca1c1bd74be7437a84e4711743404
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#ifndef AVRCPCTRL_H
#define AVRCPCTRL_H
 
#include "RkBtSink.h"
 
//play status
#define AVRCP_PLAY_STATUS_STOPPED    0x00 // 停止
#define AVRCP_PLAY_STATUS_PLAYING    0x01 //正在播放
#define AVRCP_PLAY_STATUS_PAUSED    0x02 //暂停播放
#define AVRCP_PLAY_STATUS_FWD_SEEK    0x03 //快进
#define AVRCP_PLAY_STATUS_REV_SEEK    0x04 //重播
#define AVRCP_PLAY_STATUS_ERROR        0xFF //错误状态
 
/* Menu items */
enum AVK_CMD
{
   APP_AVK_MENU_DISCOVERY = 1,
   APP_AVK_MENU_REGISTER,
   APP_AVK_MENU_DEREGISTER,
   APP_AVK_MENU_OPEN,
   APP_AVK_MENU_CLOSE,
   APP_AVK_MENU_PLAY_START,
   APP_AVK_MENU_PLAY_STOP,
   APP_AVK_MENU_PLAY_PAUSE,
   APP_AVK_MENU_PLAY_NEXT_TRACK,
   APP_AVK_MENU_PLAY_PREVIOUS_TRACK,
   APP_AVK_MENU_RC_OPEN,
   APP_AVK_MENU_RC_CLOSE,
   APP_AVK_MENU_RC_CMD,
   APP_AVK_MENU_GET_ELEMENT_ATTR,
   APP_AVK_MENU_GET_CAPABILITIES,
   APP_AVK_MENU_REGISTER_NOTIFICATION,
   APP_AVK_MENU_REGISTER_NOTIFICATION_RESPONSE,
   APP_AVK_MENU_SEND_DELAY_RPT,
   APP_AVK_MENU_SEND_ABORT_REQ,
   APP_AVK_MENU_GET_PLAY_STATUS,
   APP_AVK_MENU_GET_ELEMENT_ATTRIBUTES,
   APP_AVK_MENU_SET_BROWSED_PLAYER,
   APP_AVK_MENU_SET_ADDRESSED_PLAYER,
   APP_AVK_MENU_GET_FOLDER_ITEMS,
   APP_AVK_MENU_CHANGE_PATH,
   APP_AVK_MENU_GET_ITEM_ATTRIBUTES,
   APP_AVK_MENU_PLAY_ITEM,
   APP_AVK_MENU_ADD_TO_NOW_PLAYING,
   APP_AVK_MENU_LIST_PLAYER_APP_SET_ATTR,
   APP_AVK_MENU_LIST_PLAYER_APP_SET_VALUE,
   APP_AVK_MENU_SET_ABSOLUTE_VOLUME,
   APP_AVK_MENU_SELECT_STREAMING_DEVICE,
   APP_AVK_MENU_QUIT = 99
};
 
/**
* 初始化 蓝牙音频反向控制模块
*/
int init_avrcp_ctrl();
/**
* 释放蓝牙音频反向控制相关资源
*/
int release_avrcp_ctrl();
int release_avrcp_ctrl2(void);
/**
* 播放
*/
int play_avrcp();
 /**
* 暂停播放
*/
int pause_avrcp();
/**
* 停止播放
*/
int stop_avrcp();
/**
* 下一首
*/
int next_avrcp();
/**
* 上一首
*/
int previous_avrcp();
/**
* 获取当前蓝牙音频状态
*/
int getstatus_avrcp();
 
void volumeup_avrcp();
 
void volumedown_avrcp();
bool check_default_player(void);
bool reconn_last(void);
bool disconn_device(void);
void a2dp_sink_open(void);
void rkbt_inquiry_scan(bool scan);
void a2dp_sink_register_cb(RK_BT_SINK_CALLBACK cb);
void a2dp_sink_register_track_cb(RK_BT_AVRCP_TRACK_CHANGE_CB cb);
void a2dp_sink_register_position_cb(RK_BT_AVRCP_PLAY_POSITION_CB cb);
void a2dp_sink_register_volume_cb(RK_BT_SINK_VOLUME_CALLBACK cb);
void a2dp_sink_clear_cb();
int a2dp_sink_status(RK_BT_SINK_STATE *pState);
void bt_sink_state_send(RK_BT_SINK_STATE state);
int get_play_status_avrcp(void);
bool get_poschange_avrcp(void);
 
#endif