Infineon Logo AIROC BTSDK v4.2 - Documentation
 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Audio/Video Remote Control (AVRC)

This section describes the API's to use Audio/Video Remote Control Profile commands which use underlying AVCT protocol. More...

Data Structures

struct  wiced_bt_avrc_msg_t
 AVRC received messages to sent to the upper layer. More...
 
struct  wiced_bt_avrc_config_t
 AVRC connection configuration structure; used when calling wiced_bt_avrc_open() to configure the AVRC connection and register the callbacks. More...
 
struct  wiced_bt_avrc_hdr_t
 AV/C message header. More...
 
struct  wiced_bt_avrc_xmit_buf_t
 AVRC Transmit buffer - used to build and transmit application payload. More...
 
union  wiced_bt_avrc_caps_param_t
 AVRCP capabilities param used in building getCapabilities packet. More...
 
struct  wiced_bt_avrc_app_setting_t
 AVRCP Application settings. More...
 
struct  wiced_bt_avrc_metadata_play_cmd_t
 PlayItem & AddToNowPlaying. More...
 
struct  wiced_bt_avrc_addr_player_param_t
 notification event parameter for AddressedPlayer change More...
 
struct  wiced_bt_avrc_name_t
 AVRCP name used in building metadata name and folder name in browsing. More...
 
struct  wiced_bt_avrc_full_name_t
 AVRCP full name used in building and receiving metadata packet. More...
 
struct  wiced_bt_avrc_unit_info_cmd_t
 Unit info command message. More...
 
struct  wiced_bt_avrc_unit_info_rsp_t
 Unit info response message. More...
 
struct  wiced_bt_avrc_sub_unit_info_cmd_t
 Subunit info command. More...
 
struct  wiced_bt_avrc_sub_unit_info_rsp_t
 Subunit info response. More...
 
struct  wiced_bt_avrc_pass_thru_hdr_t
 Passthrough response header. More...
 
struct  wiced_bt_avrc_pass_thru_group_nav_cmd_t
 Passthrough group navigation command. More...
 
union  wiced_bt_avrc_pass_thru_cmd_t
 Passthrough command. More...
 
struct  wiced_bt_avrc_metadata_get_caps_cmd_t
 GetCapability. More...
 
struct  wiced_bt_avrc_metadata_list_app_settings_values_cmd_t
 ListPlayerAppValues. More...
 
struct  wiced_bt_avrc_metadata_get_cur_app_value_cmd_t
 GetCurAppValue. More...
 
struct  wiced_bt_avrc_metadata_set_app_value_cmd_t
 SetAppValue. More...
 
struct  wiced_bt_avrc_metadata_get_app_attr_txt_cmd_t
 GetAppAttrTxt. More...
 
struct  wiced_bt_avrc_metadata_get_app_val_txt_cmd_t
 GetAppValueTxt. More...
 
struct  wiced_bt_avrc_metadata_inform_charset_cmd_t
 InformCharset. More...
 
struct  wiced_bt_avrc_metadata_battery_status_cmd_t
 InformBatteryStatus. More...
 
struct  wiced_bt_avrc_metadata_get_elem_attrs_cmd_t
 GetElemAttrs. More...
 
struct  wiced_bt_avrc_metadata_reg_notif_cmd_t
 RegNotify. More...
 
struct  wiced_bt_avrc_metadata_continuation_pdu_cmd_t
 Continue PDUs. More...
 
struct  wiced_bt_avrc_browse_get_items_cmd_t
 GetFolderItems. More...
 
struct  wiced_bt_avrc_browse_chg_path_cmd_t
 ChangePath. More...
 
struct  wiced_bt_avrc_browse_get_item_attrs_cmd_t
 GetItemAttrs. More...
 
struct  wiced_bt_avrc_browse_search_cmd_t
 Search. More...
 
struct  wiced_bt_avrc_browse_get_num_of_items_cmd_t
 GetTotalNumOfItems. More...
 
struct  wiced_bt_avrc_browse_next_cmd_t
 Continue and Abort. More...
 
struct  wiced_bt_avrc_metadata_hdr_t
 metadata message header More...
 
struct  wiced_bt_avrc_metadata_cmd_t
 AVRC commands. More...
 
struct  wiced_bt_avrc_browse_cmd_t
 Browse command structure. More...
 
struct  wiced_bt_avrc_metadata_get_caps_rsp_t
 GetCapability rsp. More...
 
struct  wiced_bt_avrc_metadata_list_app_attr_rsp_t
 ListPlayerAppAttr. More...
 
struct  wiced_bt_avrc_metadata_list_app_values_rsp_t
 ListPlayerAppValues. More...
 
struct  wiced_bt_avrc_app_setting_text_t
 PlayerApplicationSetting_text. More...
 
struct  wiced_bt_avrc_metadata_get_cur_app_value_rsp_t
 GetCurAppValue. More...
 
struct  wiced_bt_avrc_metadata_get_app_attr_txt_rsp_t
 GetAppAttrTxt. More...
 
struct  wiced_bt_avrc_attr_entry_t
 Browsing attribute. More...
 
struct  wiced_bt_avrc_get_attrs_t
 GetElemAttrs. More...
 
struct  wiced_bt_avrc_metadata_get_play_status_rsp_t
 GetPlayStatus. More...
 
struct  wiced_bt_avrc_player_app_param_t
 notification event parameter for Player Application setting change More...
 
union  wiced_bt_avrc_notif_rsp_param_t
 AVRCP notification response. More...
 
struct  wiced_bt_avrc_metadata_reg_notif_rsp_t
 RegNotify response. More...
 
struct  wiced_bt_avrc_item_player_t
 AVRCP player item. More...
 
struct  wiced_bt_avrc_item_folder_t
 AVRCP folder item. More...
 
struct  wiced_bt_avrc_item_media_t
 media element More...
 
struct  wiced_bt_avrc_item_t
 AVRCP Browsable item i.e. More...
 
struct  wiced_bt_avrc_browse_set_br_player_rsp_t
 SetBrowsedPlayer. More...
 
struct  wiced_bt_avrc_browse_get_items_rsp_t
 GetFolderItems. More...
 
struct  wiced_bt_avrc_browse_chg_path_rsp_t
 ChangePath. More...
 
struct  wiced_bt_avrc_browse_num_of_items_rsp_t
 Get Total Number of Items. More...
 
struct  wiced_bt_avrc_metadata_rsp_t
 AVRC Metadata response messages. More...
 
struct  wiced_bt_avrc_browse_rsp_t
 AVRC Browse response messages. More...
 
struct  wiced_bt_avrc_cmd_t
 AVRC Command messages. More...
 
struct  wiced_bt_avrc_rsp_t
 AVRC response messages. More...
 

Modules

 AVRCP Controller Role (CT)
 AVRC remote control functions.
 
 AVRCP Target Role (TG)
 AVRC remote control functions.
 

Macros

#define AVRC_SUPF_CT_CAT1   0x0001
 Supported categories. More...
 
#define AVRC_SUPF_CT_CAT2   0x0002
 Category 2.
 
#define AVRC_SUPF_CT_CAT3   0x0004
 Category 3.
 
#define AVRC_SUPF_CT_CAT4   0x0008
 Category 4.
 
#define AVRC_SUPF_CT_BROWSE   0x0040
 Browsing.
 
#define AVRC_SUPF_TG_CAT1   0x0001
 Category 1.
 
#define AVRC_SUPF_TG_CAT2   0x0002
 Category 2.
 
#define AVRC_SUPF_TG_CAT3   0x0004
 Category 3.
 
#define AVRC_SUPF_TG_CAT4   0x0008
 Category 4.
 
#define AVRC_SUPF_TG_APP_SETTINGS   0x0010
 Player Application Settings.
 
#define AVRC_SUPF_TG_GROUP_NAVI   0x0020
 Group Navigation.
 
#define AVRC_SUPF_TG_BROWSE   0x0040
 Browsing.
 
#define AVRC_SUPF_TG_MULTI_PLAYER   0x0080
 Muliple Media Player.
 
#define AVRC_META_SUCCESS   AVRC_SUCCESS
 AVRC success.
 
#define AVRC_META_FAIL   AVRC_FAIL
 AVRC fail.
 
#define AVRC_METADATA_CMD   0x0000
 AVRC metadata command.
 
#define AVRC_METADATA_RESP   0x0001
 AVRC metadata response.
 
#define AVRC_PACKET_LEN   512
 AVRC packet length, you must support 512 byte RC packets.
 
#define AVRC_MIN_CONTROL_MTU   48
 Per the spec, minimum MTU for the control channel.
 
#define AVRC_MIN_BROWSE_MTU   335
 Per the spec, minimum MTU for the browsing channel.
 
#define AVRC_META_PDU_OFFSET   4
 AVRC Metadata packet PDU offset.
 
#define AVRC_SUB_TYPE_LEN   4
 AVRC subunit type length.
 
#define AVRC_UID_SIZE   8
 AVRC UID size. More...
 
#define AVRC_UID_SIZE   8
 AVRC UID size. More...
 
#define AVRC_FEATURE_MASK_SIZE   16
 AVRC feature mask size.
 
#define AVRC_STATE_PRESS   0
 State flag for Passthrough commands. More...
 
#define AVRC_STATE_RELEASE   1
 AVRC button state release.
 
#define AVRC_PASS_THRU_GROUP_LEN   5
 the only pass through vendor unique commands defined by AVRC is the group navigation commands The len for vendor unique data is 5 More...
 
#define AVRC_CHAR_SET_SIZE   2
 Define character set.
 
#define AVRC_NUM_NOTIF_EVENTS   0x0d
 the number of events that can be registered for notifications
 
#define AVRC_EVT_MSG_LEN_1   0x01
 Msg len 1.
 
#define AVRC_EVT_MSG_LEN_2   0x02
 Msg len 2.
 
#define AVRC_EVT_MSG_LEN_5   0x05
 Msg len 5.
 
#define AVRC_EVT_MSG_LEN_9   0x09
 Msg len 9.
 
#define AVRC_MAX_VOLUME   0x7F
 AVRC max volume.
 
#define AVRC_SYSTEMSTATE_PWR_ON   0x00
 Define the possible values of system status. More...
 
#define AVRC_SYSTEMSTATE_PWR_ON   0x00
 Define the possible values of system status. More...
 
#define AVRC_SYSTEMSTATE_PWR_OFF   0x01
 AVRC system power off state.
 
#define AVRC_SYSTEMSTATE_PWR_OFF   0x01
 AVRC system power off state.
 
#define AVRC_SYSTEMSTATE_PWR_UNPLUGGED   0x02
 AVRC system power unplugged state.
 
#define AVRC_SYSTEMSTATE_PWR_UNPLUGGED   0x02
 AVRC system power unplugged state.
 
#define AVRC_CHARSET_ID_ASCII   ((uint16_t) 0x0003)
 the frequently used character set ids More...
 
#define AVRC_CHARSET_ID_UTF8   ((uint16_t) 0x006a)
 UTF-8.
 
#define AVRC_CHARSET_ID_UTF16   ((uint16_t) 0x03f7)
 1015
 
#define AVRC_CHARSET_ID_UTF32   ((uint16_t) 0x03f9)
 1017
 
#define AVRC_ITEM_PLAYER   0x01
 AVRC player item.
 
#define AVRC_ITEM_FOLDER   0x02
 AVRC folder item.
 
#define AVRC_ITEM_MEDIA   0x03
 AVRC media item.
 
#define AVRC_SCOPE_PLAYER_LIST   0x00
 Media Player Item - Contains all available media players.
 
#define AVRC_SCOPE_FILE_SYSTEM   0x01
 Folder Item, Media Element Item- The virtual filesystem containing the media content of the browsed player.
 
#define AVRC_SCOPE_SEARCH   0x02
 Media Element Item The results of a search operation on the browsed player.
 
#define AVRC_SCOPE_NOW_PLAYING   0x03
 Media Element Item The Now Playing list (or queue) of the addressed player.
 
#define AVRC_FOLDER_ITEM_COUNT_NONE   0xFF
 foler item count none
 
#define AVRC_FOLDER_TYPE_MIXED   0x00
 folder types More...
 
#define AVRC_FOLDER_TYPE_TITLES   0x01
 titles
 
#define AVRC_FOLDER_TYPE_ALNUMS   0x02
 albums
 
#define AVRC_FOLDER_TYPE_ARTISTS   0x03
 artists
 
#define AVRC_FOLDER_TYPE_GENRES   0x04
 genres
 
#define AVRC_FOLDER_TYPE_PLAYLISTS   0x05
 playlists
 
#define AVRC_FOLDER_TYPE_YEARS   0x06
 years
 
#define AVRC_PLAYER_MAJOR_TYPE_AUDIO   0x01
 major player type More...
 
#define AVRC_PLAYER_MAJOR_TYPE_VIDEO   0x02
 Video.
 
#define AVRC_PLAYER_MAJOR_TYPE_BC_AUDIO   0x04
 Broadcasting Audio.
 
#define AVRC_PLAYER_MAJOR_TYPE_BC_VIDEO   0x08
 Broadcasting Video.
 
#define AVRC_PLAYER_MAJOR_TYPE_INVALID   0xF0
 Invalid.
 
#define AVRC_PLAYER_SUB_TYPE_NONE   0x00
 player sub type More...
 
#define AVRC_PLAYER_SUB_TYPE_AUDIO_BOOK   0x01
 Audio Book.
 
#define AVRC_PLAYER_SUB_TYPE_PODCAST   0x02
 Podcast.
 
#define AVRC_PLAYER_SUB_TYPE_INVALID   0xFC
 invalid
 
#define AVRC_MEDIA_TYPE_AUDIO   0x00
 media item - media type More...
 
#define AVRC_MEDIA_TYPE_VIDEO   0x01
 video
 
#define AVRC_DIR_UP   0x00
 Folder Up.
 
#define AVRC_DIR_DOWN   0x01
 Folder Down.
 
#define AVRC_PF_SELECT_BIT_NO   0
 player attribute - supported features More...
 
#define AVRC_PF_SELECT_MASK   0x01
 mask for select
 
#define AVRC_PF_SELECT_OFF   0
 Value when select is off.
 
#define AVRC_PF_SELECT_SUPPORTED(x)   ((x)[AVRC_PF_SELECT_OFF] & AVRC_PF_SELECT_MASK)
 check for select feature enabled/disabled
 
#define AVRC_PF_UP_BIT_NO   1
 bit for UP
 
#define AVRC_PF_UP_MASK   0x02
 mask for UP
 
#define AVRC_PF_UP_OFF   0
 value when UP is off
 
#define AVRC_PF_UP_SUPPORTED(x)   ((x)[AVRC_PF_UP_OFF] & AVRC_PF_UP_MASK)
 check for UP feature enabled/disabled
 
#define AVRC_PF_DOWN_BIT_NO   2
 Bit for DOWN.
 
#define AVRC_PF_DOWN_MASK   0x04
 Mask for DOWN.
 
#define AVRC_PF_DOWN_OFF   0
 value when DOWN is off
 
#define AVRC_PF_DOWN_SUPPORTED(x)   ((x)[AVRC_PF_DOWN_OFF] & AVRC_PF_DOWN_MASK)
 check for DOWN feature enabled/disabled
 
#define AVRC_PF_LEFT_BIT_NO   3
 Bit for LEFT.
 
#define AVRC_PF_LEFT_MASK   0x08
 Mask for LEFT.
 
#define AVRC_PF_LEFT_OFF   0
 Value when LEFT is OFF.
 
#define AVRC_PF_LEFT_SUPPORTED(x)   ((x)[AVRC_PF_LEFT_OFF] & AVRC_PF_LEFT_MASK)
 check for LEFT feature enabled/disabled
 
#define AVRC_PF_RIGHT_BIT_NO   4
 Bit for RIGHT.
 
#define AVRC_PF_RIGHT_MASK   0x10
 Mask for RIGHT.
 
#define AVRC_PF_RIGHT_OFF   0
 Value when RIGHT is OFF.
 
#define AVRC_PF_RIGHT_SUPPORTED(x)   ((x)[AVRC_PF_RIGHT_OFF] & AVRC_PF_RIGHT_MASK)
 check for RIGHT feature enabled/disabled
 
#define AVRC_PF_RIGHTUP_BIT_NO   5
 Bit for RIGHTUP.
 
#define AVRC_PF_RIGHTUP_MASK   0x20
 Mask for RIGHTUP.
 
#define AVRC_PF_RIGHTUP_OFF   0
 Value when RIGHTUP is off.
 
#define AVRC_PF_RIGHTUP_SUPPORTED(x)   ((x)[AVRC_PF_RIGHTUP_OFF] & AVRC_PF_RIGHTUP_MASK)
 check for RIGHTUP feature enabled/disabled
 
#define AVRC_PF_RIGHTDOWN_BIT_NO   6
 Bit for RIGHTDOWN.
 
#define AVRC_PF_RIGHTDOWN_MASK   0x40
 Mask for RIGHTDOWN.
 
#define AVRC_PF_RIGHTDOWN_OFF   0
 value when RIGHTDOWN is off
 
#define AVRC_PF_RIGHTDOWN_SUPPORTED(x)   ((x)[AVRC_PF_RIGHTDOWN_OFF] & AVRC_PF_RIGHTDOWN_MASK)
 check for RIGHTDOWN feature enabled/disabled
 
#define AVRC_PF_LEFTUP_BIT_NO   7
 bit for LEFTUP
 
#define AVRC_PF_LEFTUP_MASK   0x80
 mask for LEFTUP
 
#define AVRC_PF_LEFTUP_OFF   0
 value when LEFTUP is OFF
 
#define AVRC_PF_LEFTUP_SUPPORTED(x)   ((x)[AVRC_PF_LEFTUP_OFF] & AVRC_PF_LEFTUP_MASK)
 check for LEFTUP feature enabled/disabled
 
#define AVRC_PF_LEFTDOWN_BIT_NO   8
 Bit for LEFTDOWN.
 
#define AVRC_PF_LEFTDOWN_MASK   0x01
 Mask for LEFTDOWN.
 
#define AVRC_PF_LEFTDOWN_OFF   1
 value when LEFTDOWN is off
 
#define AVRC_PF_LEFTDOWN_SUPPORTED(x)   ((x)[AVRC_PF_LEFTDOWN_OFF] & AVRC_PF_LEFTDOWN_MASK)
 check for LEFTDOWN feature enabled/disabled
 
#define AVRC_PF_ROOT_MENU_BIT_NO   9
 Bit for Root menu.
 
#define AVRC_PF_ROOT_MENU_MASK   0x02
 Mask for Root menu.
 
#define AVRC_PF_ROOT_MENU_OFF   1
 Value when Root menu is off.
 
#define AVRC_PF_ROOT_MENU_SUPPORTED(x)   ((x)[AVRC_PF_ROOT_MENU_OFF] & AVRC_PF_ROOT_MENU_MASK)
 check for ROOT menu feature enabled/disabled
 
#define AVRC_PF_SETUP_MENU_BIT_NO   10
 Bit for setup.
 
#define AVRC_PF_SETUP_MENU_MASK   0x04
 mask for setup
 
#define AVRC_PF_SETUP_MENU_OFF   1
 value when setup is off
 
#define AVRC_PF_SETUP_MENU_SUPPORTED(x)   ((x)[AVRC_PF_SETUP_MENU_OFF] & AVRC_PF_SETUP_MENU_MASK)
 check for SETUP feature enabled/disabled
 
#define AVRC_PF_CONTENTS_MENU_BIT_NO   11
 bit for contents menu
 
#define AVRC_PF_CONTENTS_MENU_MASK   0x08
 mask for contents menu
 
#define AVRC_PF_CONTENTS_MENU_OFF   1
 value when contents menu is off
 
#define AVRC_PF_CONTENTS_MENU_SUPPORTED(x)   ((x)[AVRC_PF_CONTENTS_MENU_OFF] & AVRC_PF_CONTENTS_MENU_MASK)
 check for Contents menu feature enabled/disabled
 
#define AVRC_PF_FAVORITE_MENU_BIT_NO   12
 bit for Favorite menu
 
#define AVRC_PF_FAVORITE_MENU_MASK   0x10
 Mask for favorite menu.
 
#define AVRC_PF_FAVORITE_MENU_OFF   1
 value when favorite menu is off
 
#define AVRC_PF_FAVORITE_MENU_SUPPORTED(x)   ((x)[AVRC_PF_FAVORITE_MENU_OFF] & AVRC_PF_FAVORITE_MENU_MASK)
 check for Favorite feature enabled/disabled
 
#define AVRC_PF_EXIT_BIT_NO   13
 bit for exit
 
#define AVRC_PF_EXIT_MASK   0x20
 mask for exit
 
#define AVRC_PF_EXIT_OFF   1
 value when exit is off
 
#define AVRC_PF_EXIT_SUPPORTED(x)   ((x)[AVRC_PF_EXIT_OFF] & AVRC_PF_EXIT_MASK)
 check for exit feature enabled/disabled
 
#define AVRC_PF_0_BIT_NO   14
 bit for 0
 
#define AVRC_PF_0_MASK   0x40
 mask for 0
 
#define AVRC_PF_0_OFF   1
 value when 0th feature is off
 
#define AVRC_PF_0_SUPPORTED(x)   ((x)[AVRC_PF_0_OFF] & AVRC_PF_0_MASK)
 check for 0th feature enabled/disabled
 
#define AVRC_PF_1_BIT_NO   15
 bit for 1
 
#define AVRC_PF_1_MASK   0x80
 mask for 1
 
#define AVRC_PF_1_OFF   1
 value when 1st feature is off
 
#define AVRC_PF_1_SUPPORTED(x)   ((x)[AVRC_PF_1_OFF] & AVRC_PF_1_MASK)
 check for 1st feature enabled/disabled
 
#define AVRC_PF_2_BIT_NO   16
 bit for 2
 
#define AVRC_PF_2_MASK   0x01
 mask for 2
 
#define AVRC_PF_2_OFF   2
 value when 2nd feature is off
 
#define AVRC_PF_2_SUPPORTED(x)   ((x)[AVRC_PF_2_OFF] & AVRC_PF_2_MASK)
 check for 2nd feature enabled/disabled
 
#define AVRC_PF_3_BIT_NO   17
 bit for 3
 
#define AVRC_PF_3_MASK   0x02
 mask for 3
 
#define AVRC_PF_3_OFF   2
 value when 3rd feature is off
 
#define AVRC_PF_3_SUPPORTED(x)   ((x)[AVRC_PF_3_OFF] & AVRC_PF_3_MASK)
 check for 3rd feature enabled/disabled
 
#define AVRC_PF_4_BIT_NO   18
 bit for 4
 
#define AVRC_PF_4_MASK   0x04
 mask for 4
 
#define AVRC_PF_4_OFF   2
 value when 4th feature is OFF
 
#define AVRC_PF_4_SUPPORTED(x)   ((x)[AVRC_PF_4_OFF] & AVRC_PF_4_MASK)
 check for 4th feature enabled/disabled
 
#define AVRC_PF_5_BIT_NO   19
 bit for 5
 
#define AVRC_PF_5_MASK   0x08
 mask for 5
 
#define AVRC_PF_5_OFF   2
 value when 5th feature is off
 
#define AVRC_PF_5_SUPPORTED(x)   ((x)[AVRC_PF_5_OFF] & AVRC_PF_5_MASK)
 check for 5th feature enabled/disabled
 
#define AVRC_PF_6_BIT_NO   20
 bit for 6
 
#define AVRC_PF_6_MASK   0x10
 mask for 6
 
#define AVRC_PF_6_OFF   2
 value when 6th feature is off
 
#define AVRC_PF_6_SUPPORTED(x)   ((x)[AVRC_PF_6_OFF] & AVRC_PF_6_MASK)
 check for 6th feature enabled/disabled
 
#define AVRC_PF_7_BIT_NO   21
 bit for 7
 
#define AVRC_PF_7_MASK   0x20
 mask for 7
 
#define AVRC_PF_7_OFF   2
 7th feature off value
 
#define AVRC_PF_7_SUPPORTED(x)   ((x)[AVRC_PF_7_OFF] & AVRC_PF_7_MASK)
 check for 7th feature enabled/disabled
 
#define AVRC_PF_8_BIT_NO   22
 bit for 8
 
#define AVRC_PF_8_MASK   0x40
 mask for 8
 
#define AVRC_PF_8_OFF   2
 8th feature off value
 
#define AVRC_PF_8_SUPPORTED(x)   ((x)[AVRC_PF_8_OFF] & AVRC_PF_8_MASK)
 check for 8th feature enabled/disabled
 
#define AVRC_PF_9_BIT_NO   23
 bit for 9
 
#define AVRC_PF_9_MASK   0x80
 mask for 9
 
#define AVRC_PF_9_OFF   2
 9th feature off value
 
#define AVRC_PF_9_SUPPORTED(x)   ((x)[AVRC_PF_9_OFF] & AVRC_PF_9_MASK)
 check for 9th feature enabled/disabled
 
#define AVRC_PF_DOT_BIT_NO   24
 bit for DOT
 
#define AVRC_PF_DOT_MASK   0x01
 mask for DOT
 
#define AVRC_PF_DOT_OFF   3
 DOT feature off value.
 
#define AVRC_PF_DOT_SUPPORTED(x)   ((x)[AVRC_PF_DOT_OFF] & AVRC_PF_DOT_MASK)
 check for DOT feature enabled/disabled
 
#define AVRC_PF_ENTER_BIT_NO   25
 bit for enter
 
#define AVRC_PF_ENTER_MASK   0x02
 mask for enter
 
#define AVRC_PF_ENTER_OFF   3
 enter feature off value
 
#define AVRC_PF_ENTER_SUPPORTED(x)   ((x)[AVRC_PF_ENTER_OFF] & AVRC_PF_ENTER_MASK)
 check for enter feature enabled/disabled
 
#define AVRC_PF_CLEAR_BIT_NO   26
 bit for clear
 
#define AVRC_PF_CLEAR_MASK   0x04
 mask for clear
 
#define AVRC_PF_CLEAR_OFF   3
 clear feature off value
 
#define AVRC_PF_CLEAR_SUPPORTED(x)   ((x)[AVRC_PF_CLEAR_OFF] & AVRC_PF_CLEAR_MASK)
 check for clear feature enabled/disabled
 
#define AVRC_PF_CHNL_UP_BIT_NO   27
 bit for channel up
 
#define AVRC_PF_CHNL_UP_MASK   0x08
 mask for channel up
 
#define AVRC_PF_CHNL_UP_OFF   3
 channel up feature off value
 
#define AVRC_PF_CHNL_UP_SUPPORTED(x)   ((x)[AVRC_PF_CHNL_UP_OFF] & AVRC_PF_CHNL_UP_MASK)
 check for channel up feature enabled/disabled
 
#define AVRC_PF_CHNL_DOWN_BIT_NO   28
 bit for channel down
 
#define AVRC_PF_CHNL_DOWN_MASK   0x10
 mask for channel down
 
#define AVRC_PF_CHNL_DOWN_OFF   3
 channel down feature off value
 
#define AVRC_PF_CHNL_DOWN_SUPPORTED(x)   ((x)[AVRC_PF_CHNL_DOWN_OFF] & AVRC_PF_CHNL_DOWN_MASK)
 check for channel down feature enabled/disabled
 
#define AVRC_PF_PREV_CHNL_BIT_NO   29
 bit for previous channel
 
#define AVRC_PF_PREV_CHNL_MASK   0x20
 mask for previous channel
 
#define AVRC_PF_PREV_CHNL_OFF   3
 previous channel feature off value
 
#define AVRC_PF_PREV_CHNL_SUPPORTED(x)   ((x)[AVRC_PF_PREV_CHNL_OFF] & AVRC_PF_PREV_CHNL_MASK)
 check for previous channel feature enabled/disabled
 
#define AVRC_PF_SOUND_SEL_BIT_NO   30
 bit for sound selection
 
#define AVRC_PF_SOUND_SEL_MASK   0x40
 mask for sound selection
 
#define AVRC_PF_SOUND_SEL_OFF   3
 sound selection feature off value
 
#define AVRC_PF_SOUND_SEL_SUPPORTED(x)   ((x)[AVRC_PF_SOUND_SEL_OFF] & AVRC_PF_SOUND_SEL_MASK)
 check for sound selection feature enabled/disabled
 
#define AVRC_PF_INPUT_SEL_BIT_NO   31
 bit for input selection
 
#define AVRC_PF_INPUT_SEL_MASK   0x80
 mask for input selection
 
#define AVRC_PF_INPUT_SEL_OFF   3
 input selection feature off value
 
#define AVRC_PF_INPUT_SEL_SUPPORTED(x)   ((x)[AVRC_PF_INPUT_SEL_OFF] & AVRC_PF_INPUT_SEL_MASK)
 check for input selection feature enabled/disabled
 
#define AVRC_PF_DISP_INFO_BIT_NO   32
 bit for display info
 
#define AVRC_PF_DISP_INFO_MASK   0x01
 mask for display info
 
#define AVRC_PF_DISP_INFO_OFF   4
 display info feature off value
 
#define AVRC_PF_DISP_INFO_SUPPORTED(x)   ((x)[AVRC_PF_DISP_INFO_OFF] & AVRC_PF_DISP_INFO_MASK)
 check for display info feature enabled/disabled
 
#define AVRC_PF_HELP_BIT_NO   33
 bit for help
 
#define AVRC_PF_HELP_MASK   0x02
 mask for help
 
#define AVRC_PF_HELP_OFF   4
 help feature off value
 
#define AVRC_PF_HELP_SUPPORTED(x)   ((x)[AVRC_PF_HELP_OFF] & AVRC_PF_HELP_MASK)
 check for help feature enabled/disabled
 
#define AVRC_PF_PAGE_UP_BIT_NO   34
 bit for page up
 
#define AVRC_PF_PAGE_UP_MASK   0x04
 mask for page up
 
#define AVRC_PF_PAGE_UP_OFF   4
 page up feature off value
 
#define AVRC_PF_PAGE_UP_SUPPORTED(x)   ((x)[AVRC_PF_PAGE_UP_OFF] & AVRC_PF_PAGE_UP_MASK)
 check for page up feature enabled/disabled
 
#define AVRC_PF_PAGE_DOWN_BIT_NO   35
 bit for page down
 
#define AVRC_PF_PAGE_DOWN_MASK   0x08
 mask for page down
 
#define AVRC_PF_PAGE_DOWN_OFF   4
 page down feature off value
 
#define AVRC_PF_PAGE_DOWN_SUPPORTED(x)   ((x)[AVRC_PF_PAGE_DOWN_OFF] & AVRC_PF_PAGE_DOWN_MASK)
 check for page down feature enabled/disabled
 
#define AVRC_PF_POWER_BIT_NO   36
 bit for power
 
#define AVRC_PF_POWER_MASK   0x10
 mask for power
 
#define AVRC_PF_POWER_OFF   4
 power feature off value
 
#define AVRC_PF_POWER_SUPPORTED(x)   ((x)[AVRC_PF_POWER_OFF] & AVRC_PF_POWER_MASK)
 check for power feature enabled/disabled
 
#define AVRC_PF_VOL_UP_BIT_NO   37
 bit for volume up
 
#define AVRC_PF_VOL_UP_MASK   0x20
 mask for volume up
 
#define AVRC_PF_VOL_UP_OFF   4
 volume up feature off value
 
#define AVRC_PF_VOL_UP_SUPPORTED(x)   ((x)[AVRC_PF_VOL_UP_OFF] & AVRC_PF_VOL_UP_MASK)
 check for volume up feature enabled/disabled
 
#define AVRC_PF_VOL_DOWN_BIT_NO   38
 bit for volume down
 
#define AVRC_PF_VOL_DOWN_MASK   0x40
 mask for volume down
 
#define AVRC_PF_VOL_DOWN_OFF   4
 volume down feature off value
 
#define AVRC_PF_VOL_DOWN_SUPPORTED(x)   ((x)[AVRC_PF_VOL_DOWN_OFF] & AVRC_PF_VOL_DOWN_MASK)
 check for volume down feature enabled/disabled
 
#define AVRC_PF_MUTE_BIT_NO   39
 bit for mute
 
#define AVRC_PF_MUTE_MASK   0x80
 mask for mute
 
#define AVRC_PF_MUTE_OFF   4
 mute feature off value
 
#define AVRC_PF_MUTE_SUPPORTED(x)   ((x)[AVRC_PF_MUTE_OFF] & AVRC_PF_MUTE_MASK)
 check for mute feature enabled/disabled
 
#define AVRC_PF_PLAY_BIT_NO   40
 bit for play
 
#define AVRC_PF_PLAY_MASK   0x01
 mask for play
 
#define AVRC_PF_PLAY_OFF   5
 play feature off value
 
#define AVRC_PF_PLAY_SUPPORTED(x)   ((x)[AVRC_PF_PLAY_OFF] & AVRC_PF_PLAY_MASK)
 check for play feature enabled/disabled
 
#define AVRC_PF_STOP_BIT_NO   41
 bit for stop
 
#define AVRC_PF_STOP_MASK   0x02
 mask for stop
 
#define AVRC_PF_STOP_OFF   5
 stop feature off value
 
#define AVRC_PF_STOP_SUPPORTED(x)   ((x)[AVRC_PF_STOP_OFF] & AVRC_PF_STOP_MASK)
 check for stop feature enabled/disabled
 
#define AVRC_PF_PAUSE_BIT_NO   42
 bit for pause
 
#define AVRC_PF_PAUSE_MASK   0x04
 mask for pause
 
#define AVRC_PF_PAUSE_OFF   5
 pause feature off value
 
#define AVRC_PF_PAUSE_SUPPORTED(x)   ((x)[AVRC_PF_PAUSE_OFF] & AVRC_PF_PAUSE_MASK)
 check for pause feature enabled/disabled
 
#define AVRC_PF_RECORD_BIT_NO   43
 bit for record
 
#define AVRC_PF_RECORD_MASK   0x08
 mask for record
 
#define AVRC_PF_RECORD_OFF   5
 record feature off value
 
#define AVRC_PF_RECORD_SUPPORTED(x)   ((x)[AVRC_PF_RECORD_OFF] & AVRC_PF_RECORD_MASK)
 check for record feature enabled/disabled
 
#define AVRC_PF_REWIND_BIT_NO   44
 bit for rewind
 
#define AVRC_PF_REWIND_MASK   0x10
 mask for rewind
 
#define AVRC_PF_REWIND_OFF   5
 rewind feature off value
 
#define AVRC_PF_REWIND_SUPPORTED(x)   ((x)[AVRC_PF_REWIND_OFF] & AVRC_PF_REWIND_MASK)
 check for rewind feature enabled/disabled
 
#define AVRC_PF_FAST_FWD_BIT_NO   45
 bit for fast forward
 
#define AVRC_PF_FAST_FWD_MASK   0x20
 mask for fast forward
 
#define AVRC_PF_FAST_FWD_OFF   5
 fast forward feature off value
 
#define AVRC_PF_FAST_FWD_SUPPORTED(x)   ((x)[AVRC_PF_FAST_FWD_OFF] & AVRC_PF_FAST_FWD_MASK)
 check for fast forward feature enabled/disabled
 
#define AVRC_PF_EJECT_BIT_NO   46
 bit for eject
 
#define AVRC_PF_EJECT_MASK   0x40
 mask for eject
 
#define AVRC_PF_EJECT_OFF   5
 eject feature off value
 
#define AVRC_PF_EJECT_SUPPORTED(x)   ((x)[AVRC_PF_EJECT_OFF] & AVRC_PF_EJECT_MASK)
 check for eject feature enabled/disabled
 
#define AVRC_PF_FORWARD_BIT_NO   47
 bit for forward
 
#define AVRC_PF_FORWARD_MASK   0x80
 mask for forward
 
#define AVRC_PF_FORWARD_OFF   5
 forward feature off value
 
#define AVRC_PF_FORWARD_SUPPORTED(x)   ((x)[AVRC_PF_FORWARD_OFF] & AVRC_PF_FORWARD_MASK)
 check for forward feature enabled/disabled
 
#define AVRC_PF_BACKWARD_BIT_NO   48
 bit for backward
 
#define AVRC_PF_BACKWARD_MASK   0x01
 mask for backward
 
#define AVRC_PF_BACKWARD_OFF   6
 backward feature off value
 
#define AVRC_PF_BACKWARD_SUPPORTED(x)   ((x)[AVRC_PF_BACKWARD_OFF] & AVRC_PF_BACKWARD_MASK)
 check for backward feature enabled/disabled
 
#define AVRC_PF_ANGLE_BIT_NO   49
 bit for angle
 
#define AVRC_PF_ANGLE_MASK   0x02
 mask for angle
 
#define AVRC_PF_ANGLE_OFF   6
 angle feature off value
 
#define AVRC_PF_ANGLE_SUPPORTED(x)   ((x)[AVRC_PF_ANGLE_OFF] & AVRC_PF_ANGLE_MASK)
 check for angle feature enabled/disabled
 
#define AVRC_PF_SUBPICTURE_BIT_NO   50
 bit for subpicture
 
#define AVRC_PF_SUBPICTURE_MASK   0x04
 mask for subpicture
 
#define AVRC_PF_SUBPICTURE_OFF   6
 subpicture feature off value
 
#define AVRC_PF_SUBPICTURE_SUPPORTED(x)   ((x)[AVRC_PF_SUBPICTURE_OFF] & AVRC_PF_SUBPICTURE_MASK)
 check for subpicture feature enabled/disabled
 
#define AVRC_PF_F1_BIT_NO   51
 bit for F1
 
#define AVRC_PF_F1_MASK   0x08
 mask for F1
 
#define AVRC_PF_F1_OFF   6
 F1 off value.
 
#define AVRC_PF_F1_SUPPORTED(x)   ((x)[AVRC_PF_F1_OFF] & AVRC_PF_F1_MASK)
 check for F1 feature enabled/disabled
 
#define AVRC_PF_F2_BIT_NO   52
 Bit for F2.
 
#define AVRC_PF_F2_MASK   0x10
 mask for F2
 
#define AVRC_PF_F2_OFF   6
 F2 feature off value.
 
#define AVRC_PF_F2_SUPPORTED(x)   ((x)[AVRC_PF_F2_OFF] & AVRC_PF_F2_MASK)
 check for F2 feature enabled/disabled
 
#define AVRC_PF_F3_BIT_NO   53
 Bit for F3.
 
#define AVRC_PF_F3_MASK   0x20
 mask for F3
 
#define AVRC_PF_F3_OFF   6
 F3 off value.
 
#define AVRC_PF_F3_SUPPORTED(x)   ((x)[AVRC_PF_F3_OFF] & AVRC_PF_F3_MASK)
 check for F3 feature enabled/disabled
 
#define AVRC_PF_F4_BIT_NO   54
 bit for F4
 
#define AVRC_PF_F4_MASK   0x40
 mask for F4
 
#define AVRC_PF_F4_OFF   6
 F4 off value.
 
#define AVRC_PF_F4_SUPPORTED(x)   ((x)[AVRC_PF_F4_OFF] & AVRC_PF_F4_MASK)
 check for F4 feature enabled/disabled
 
#define AVRC_PF_F5_BIT_NO   55
 bit for F5
 
#define AVRC_PF_F5_MASK   0x80
 mask for F5
 
#define AVRC_PF_F5_OFF   6
 F5 off value.
 
#define AVRC_PF_F5_SUPPORTED(x)   ((x)[AVRC_PF_F5_OFF] & AVRC_PF_F5_MASK)
 check for F5 feature enabled/disabled
 
#define AVRC_PF_VENDOR_BIT_NO   56
 bit for vendor
 
#define AVRC_PF_VENDOR_MASK   0x01
 mask for vendor
 
#define AVRC_PF_VENDOR_OFF   7
 vendor feature off value
 
#define AVRC_PF_VENDOR_SUPPORTED(x)   ((x)[AVRC_PF_VENDOR_OFF] & AVRC_PF_VENDOR_MASK)
 check for vendor feature enabled/disabled
 
#define AVRC_PF_GROUP_NAVI_BIT_NO   57
 bit for Group navigation
 
#define AVRC_PF_GROUP_NAVI_MASK   0x02
 mask for Group Navigation
 
#define AVRC_PF_GROUP_NAVI_OFF   7
 Group Navigation feature off value.
 
#define AVRC_PF_GROUP_NAVI_SUPPORTED(x)   ((x)[AVRC_PF_GROUP_NAVI_OFF] & AVRC_PF_GROUP_NAVI_MASK)
 check for Group navigation feature enabled/disabled
 
#define AVRC_PF_ADV_CTRL_BIT_NO   58
 Bit for advanced control support.
 
#define AVRC_PF_ADV_CTRL_MASK   0x04
 mask for advanced control
 
#define AVRC_PF_ADV_CTRL_OFF   7
 advanced control feature off value
 
#define AVRC_PF_ADV_CTRL_SUPPORTED(x)   ((x)[AVRC_PF_ADV_CTRL_OFF] & AVRC_PF_ADV_CTRL_MASK)
 check for advanced control feature enabled/disabled
 
#define AVRC_PF_BROWSE_BIT_NO   59
 bit for browsing
 
#define AVRC_PF_BROWSE_MASK   0x08
 mask for browsing
 
#define AVRC_PF_BROWSE_OFF   7
 browsing feature off value
 
#define AVRC_PF_BROWSE_SUPPORTED(x)   ((x)[AVRC_PF_BROWSE_OFF] & AVRC_PF_BROWSE_MASK)
 check for browsing feature enabled/disabled
 
#define AVRC_PF_SEARCH_BIT_NO   60
 bit for search
 
#define AVRC_PF_SEARCH_MASK   0x10
 mask for search
 
#define AVRC_PF_SEARCH_OFF   7
 search off value
 
#define AVRC_PF_SEARCH_SUPPORTED(x)   ((x)[AVRC_PF_SEARCH_OFF] & AVRC_PF_SEARCH_MASK)
 check for search feature enabled/disabled
 
#define AVRC_PF_ADD2NOWPLAY_BIT_NO   61
 bit add to nowplaying
 
#define AVRC_PF_ADD2NOWPLAY_MASK   0x20
 mask for add to nowplaying
 
#define AVRC_PF_ADD2NOWPLAY_OFF   7
 add to nowplaying off value
 
#define AVRC_PF_ADD2NOWPLAY_SUPPORTED(x)   ((x)[AVRC_PF_ADD2NOWPLAY_OFF] & AVRC_PF_ADD2NOWPLAY_MASK)
 check for add to nowplaying feature enabled/disabled
 
#define AVRC_PF_UID_UNIQUE_BIT_NO   62
 bit for unique uid
 
#define AVRC_PF_UID_UNIQUE_MASK   0x40
 mask for unique uid
 
#define AVRC_PF_UID_UNIQUE_OFF   7
 unique uid off value
 
#define AVRC_PF_UID_UNIQUE_SUPPORTED(x)   ((x)[AVRC_PF_UID_UNIQUE_OFF] & AVRC_PF_UID_UNIQUE_MASK)
 check for unique uid feature enabled/disabled
 
#define AVRC_PF_BR_WH_ADDR_BIT_NO   63
 bit for OnlyBrowsableWhenAddressed
 
#define AVRC_PF_BR_WH_ADDR_MASK   0x80
 mask for OnlyBrowsableWhenAddressed
 
#define AVRC_PF_BR_WH_ADDR_OFF   7
 OnlyBrowsableWhenAddressed off value.
 
#define AVRC_PF_BR_WH_ADDR_SUPPORTED(x)   ((x)[AVRC_PF_BR_WH_ADDR_OFF] & AVRC_PF_BR_WH_ADDR_MASK)
 check for OnlyBrowsableWhenAddressed feature enabled/disabled
 
#define AVRC_PF_SEARCH_WH_ADDR_BIT_NO   64
 bit for OnlySearchableWhenAddressed
 
#define AVRC_PF_SEARCH_WH_ADDR_MASK   0x01
 mask for OnlySearchableWhenAddressed
 
#define AVRC_PF_SEARCH_WH_ADDR_OFF   8
 OnlySearchableWhenAddressed off value.
 
#define AVRC_PF_SEARCH_WH_ADDR_SUPPORTED(x)   ((x)[AVRC_PF_SEARCH_WH_ADDR_OFF] & AVRC_PF_SEARCH_WH_ADDR_MASK)
 check for OnlySearchableWhenAddressed feature enabled/disabled
 
#define AVRC_PF_NOW_PLAY_BIT_NO   65
 bit for nowplaying
 
#define AVRC_PF_NOW_PLAY_MASK   0x02
 mask for nowplaying
 
#define AVRC_PF_NOW_PLAY_OFF   8
 nowplaying off value
 
#define AVRC_PF_NOW_PLAY_SUPPORTED(x)   ((x)[AVRC_PF_NOW_PLAY_OFF] & AVRC_PF_NOW_PLAY_MASK)
 check for nowplaying feature enabled/disabled
 
#define AVRC_PF_UID_PERSIST_BIT_NO   66
 bit for UID Persistency
 
#define AVRC_PF_UID_PERSIST_MASK   0x04
 mask for UID Persistency
 
#define AVRC_PF_UID_PERSIST_OFF   8
 UID Persistency off value.
 
#define AVRC_PF_UID_PERSIST_SUPPORTED(x)   ((x)[AVRC_PF_UID_PERSIST_OFF] & AVRC_PF_UID_PERSIST_MASK)
 check for UID Persistency feature enabled/disabled
 
#define AVRC_PF_GET_NUM_OF_ITEMS_BIT_NO   67
 bit for NumberOfItems
 
#define AVRC_PF_GET_NUM_OF_ITEMS_MASK   0x08
 mask for NumberOfItems
 
#define AVRC_PF_GET_NUM_OF_ITEMS_OFF   8
 NumberOfItems off value.
 
#define AVRC_PF_GET_NUM_OF_ITEMS_SUPPORTED(x)   ((x)[AVRC_PF_GET_NUM_OF_ITEMS_OFF] & AVRC_PF_GET_NUM_OF_ITEMS_MASK)
 check for NumberOfItems feature enabled/disabled
 
#define AVRC_1_6_INCLUDED   TRUE
 TRUE to support the AVRCP 1.6 (GetTotalNumOfItems). More...
 
#define AVRC_METADATA_INCLUDED   TRUE
 Metadata feature included status.
 
#define AVRC_ADV_CTRL_INCLUDED   TRUE
 AVRC advanced control included status.
 
#define AVRC_BROWSE_INCLUDED   AVCT_BROWSE_INCLUDED
 TRUE to support if AVCT browse enable.
 
#define AVCT_CMD   0
 Command message.
 
#define AVCT_RSP   2
 Response message.
 
#define AVCT_REJ   3
 Message rejected.
 
#define AVRC_CMD   AVCT_CMD
 Command message.
 
#define AVRC_RSP   AVCT_RSP
 Response message.
 
#define WICED_AVRC_XMIT_BUF_OVERHEAD   (sizeof (uint16_t) + sizeof (uint16_t) + sizeof (uint8_t) + sizeof (uint8_t))
 The amount of overhead in wiced_bt_avrc_xmit_buf_t before the payload.
 
#define AVRC_IS_VALID_CAP_ID(a)   (((a == AVRC_CAP_COMPANY_ID) || (a == AVRC_CAP_EVENTS_SUPPORTED)) ? TRUE : FALSE)
 Check for valid capability ids.
 
#define AVRC_IS_VALID_EVENT_ID(a)
 Macro to check for valid AVRC event. More...
 
#define AVRC_IS_VALID_ATTRIBUTE(a)
 Check for valid AVRC attribute. More...
 
#define AVRC_IS_VALID_MEDIA_ATTRIBUTE(a)
 Check for valid metadata attribute. More...
 
#define AVRC_IS_VALID_BATTERY_STATUS(a)   ((a <= AVRC_BATTERY_STATUS_FULL_CHARGE) ? WICED_TRUE : WICED_FALSE)
 Check for valid battery status.
 
#define AVRC_IS_VALID_SYSTEM_STATUS(a)   ((a <= AVRC_SYSTEMSTATE_PWR_UNPLUGGED) ? WICED_TRUE : WICED_FALSE)
 Check for valid system status.
 
#define AVRC_IS_VALID_GROUP(a)   ((a <= AVRC_PDU_PREV_GROUP) ? WICED_TRUE : WICED_FALSE)
 Check for valid group.
 
#define AVRC_CO_ID_TO_BE_STREAM(p, u32)   {*(p)++ = (uint8_t)((u32) >> 16); *(p)++ = (uint8_t)((u32) >> 8); *(p)++ = (uint8_t)(u32); }
 Macro to convert 24bit company id to 32bit stream.
 
#define AVRC_BE_STREAM_TO_CO_ID(u32, p)   {u32 = (((uint32_t)(*((p) + 2))) + (((uint32_t)(*((p) + 1))) << 8) + (((uint32_t)(*(p))) << 16)); (p) += 3;}
 Macro to convert 32bit stream to company id.
 
#define AVRC_MAX_APP_ATTR_SIZE   16
 max application attribute size
 
#define AVRC_MAX_CHARSET_SIZE   16
 max character set size
 
#define AVRC_MAX_ELEM_ATTR_SIZE   8
 max element attribute size
 
#define AVRC_DEFAULT_METADATA_SCRATCH_SZ   1024
 Default metadata scratch size.
 
#define AVRC_DEFAULT_METADATA_CMD_SIZE   512
 default metadata command size
 
#define AVRC_DEFAULT_METADATA_RSP_SIZE   512
 default metadata response size
 
#define AVRC_MAX_METADATA_RCV_MSG_SIZE   512
 Max metadata received message size.
 
#define AVRC_MAX_AVCT_RCV_PKT_SIZE   512
 Max AVCT received packet size.
 
#define AVRC_CAP_MAX_NUM_COMP_ID   4
 maximum supported number of company ids
 
#define AVRC_CAP_MAX_NUM_EVT_ID   16
 maximum supported number of event ids
 
#define AVRC_MAX_APP_SETTINGS   8
 Maximum supported app settings.
 

Typedefs

typedef uint8_t wiced_bt_avrc_ctrl_evt_t
 wiced_bt_avrc_ctrl_evt_e
 
typedef uint8_t wiced_bt_avrc_ctype_t
 wiced_bt_avrc_ctype_e
 
typedef void( wiced_bt_avrc_ctrl_cback_t )(uint8_t handle, wiced_bt_avrc_ctrl_evt_t event, uint16_t result, wiced_bt_avrc_xmit_buf_t *p_buf, wiced_bt_device_address_t peer_addr)
 AVRC control callback function. More...
 
typedef void( wiced_bt_avrc_msg_cback_t )(wiced_bt_avrc_msg_t *p_msg)
 AVRC data callback function. More...
 
typedef uint8_t wiced_bt_avrc_systemstate_t
 AVRC systemstate.
 
typedef uint8_t wiced_bt_avrc_uid_t [AVRC_UID_SIZE]
 AVRC UID.
 
typedef uint8_t wiced_bt_avrc_feature_mask_t [AVRC_FEATURE_MASK_SIZE]
 AVRCP feature mask.
 
typedef wiced_bt_avrc_get_attrs_t wiced_bt_avrc_metadata_get_element_attrs_rsp_t
 getelementattribute response type
 
typedef wiced_bt_avrc_get_attrs_t wiced_bt_avrc_browse_get_attrs_rsp_t
 browsing getitemattributes
 
typedef
wiced_bt_avrc_browse_num_of_items_rsp_t 
wiced_bt_avrc_browse_search_rsp_t
 browsing search response
 

Enumerations

enum  wiced_bt_avrc_ctrl_evt_e {
  AVRC_OPEN_IND_EVT, AVRC_CLOSE_IND_EVT, AVRC_CONG_IND_EVT, AVRC_UNCONG_IND_EVT,
  AVRC_BROWSE_OPEN_IND_EVT, AVRC_BROWSE_CLOSE_IND_EVT, AVRC_BROWSE_CONG_IND_EVT, AVRC_BROWSE_UNCONG_IND_EVT,
  AVRC_CMD_TIMEOUT_EVT, AVRC_APP_BUFFER_TX_EVT
}
 AVRC CTRL events. More...
 
enum  wiced_bt_avrc_ctype_e {
  AVRC_CMD_CTRL = 0, AVRC_CMD_STATUS, AVRC_CMD_SPEC_INQ, AVRC_CMD_NOTIF,
  AVRC_CMD_GEN_INQ, AVRC_RSP_NOT_IMPL = 8, AVRC_RSP_ACCEPT, AVRC_RSP_REJ,
  AVRC_RSP_IN_TRANS, AVRC_RSP_IMPL_STBL, AVRC_RSP_CHANGED, AVRC_RSP_INTERIM = 15
}
 AVRC ctype events. More...
 

Functions

uint16_t wiced_bt_avrc_init (uint16_t mtu, uint16_t mtu_br)
 This function initializes AVRCP and prepares the protocol stack for its use. More...
 
uint16_t wiced_bt_avrc_open (uint8_t *p_handle, wiced_bt_avrc_config_t *p_config, wiced_bt_device_address_t peer_addr)
 Open AVRC connection (as intiator or acceptor); register notification callbacks. More...
 
uint16_t wiced_bt_avrc_close (uint8_t handle)
 Close AVRCP connection. More...
 
uint16_t wiced_bt_avrc_open_browse (uint8_t handle, uint8_t conn_role)
 Open AVRCP browsing connection, either as initiator or acceptor. More...
 
uint16_t wiced_bt_avrc_close_browse (uint8_t handle)
 Close AVRCP browsing connection. More...
 
uint16_t wiced_bt_avrc_send_metadata_msg (uint8_t handle, uint8_t label, wiced_bt_avrc_ctype_t ctype, wiced_bt_avrc_xmit_buf_t *p_cmdbuf)
 Send an AVRC vendor dependent messages. More...
 
uint16_t wiced_bt_avrc_send_unit_cmd (uint8_t handle, uint8_t label)
 Send a UNIT INFO command to the peer device. More...
 
uint16_t wiced_bt_avrc_send_subunit_cmd (uint8_t handle, uint8_t label, uint8_t page)
 Send a SUBUNIT INFO command to the peer device. More...
 
uint16_t wiced_bt_avrc_send_passthrough_cmd (uint8_t handle, uint8_t label, wiced_bt_avrc_pass_thru_cmd_t *p_msg)
 Send a PASS THROUGH command to the peer device. More...
 
uint16_t wiced_bt_avrc_send_passthrough_rsp (uint8_t handle, uint8_t label, wiced_bt_avrc_ctype_t ctype, wiced_bt_avrc_pass_thru_cmd_t *p_msg)
 Send a PASS THROUGH response to the peer device. More...
 
uint16_t wiced_bt_avrc_send_vendor_cmd (uint8_t handle, uint8_t label, wiced_bt_avrc_cmd_t *p_msg)
 Send a VENDOR DEPENDENT command to the peer device. More...
 
uint16_t wiced_bt_avrc_send_vendor_rsp (uint8_t handle, uint8_t label, wiced_bt_avrc_rsp_t *p_msg)
 Send a VENDOR DEPENDENT response to the peer device. More...
 
uint8_t wiced_bt_avrc_set_trace_level (uint8_t new_level)
 Sets the trace level for AVRC. More...
 
wiced_bt_avrc_sts_t wiced_bt_avrc_bld_metadata_cmd (wiced_bt_avrc_metadata_cmd_t *p_cmd, wiced_bt_avrc_xmit_buf_t *p_xmit_buf)
 Build AVRCP metadata command. More...
 
wiced_bt_avrc_sts_t wiced_bt_avrc_bld_metadata_response (wiced_bt_avrc_metadata_rsp_t *p_rsp, wiced_bt_avrc_xmit_buf_t *p_rspbuf)
 Build AVRCP metadata response. More...
 
wiced_bt_avrc_sts_t wiced_bt_avrc_bld_browse_command (wiced_bt_avrc_browse_cmd_t *p_cmd, wiced_bt_avrc_xmit_buf_t *p_xmit_buf)
 Build AVRCP Browse response. More...
 
wiced_bt_avrc_sts_t wiced_bt_avrc_bld_browse_response (wiced_bt_avrc_browse_rsp_t *p_rsp, wiced_bt_avrc_xmit_buf_t *p_rspbuf)
 Build AVRCP Browse response. More...
 
uint16_t wiced_bt_avrc_send_browse_data (uint8_t handle, uint8_t label, wiced_bt_avrc_ctype_t ctype, wiced_bt_avrc_xmit_buf_t *p_xmit_buf)
 send the Browsing data More...
 
wiced_bool_t wiced_bt_avrc_is_valid_avc_type (uint8_t pdu_id, wiced_bt_avrc_ctype_t ctype)
 Check if correct AVRC message type is specified. More...
 
wiced_bool_t wiced_bt_avrc_is_valid_player_attr (uint8_t attr)
 Check if the given attrib value is a valid one. More...
 
uint16_t wiced_bt_avrc_get_ctrl_mtu (void)
 This function gets the control MTU. More...
 
uint16_t wiced_bt_avrc_get_data_mtu (void)
 This function gets the data MTU. More...
 
wiced_bool_t avrc_is_valid_player_attrib_value (uint8_t attrib, uint8_t value)
 This function validates player attribute id and value. More...
 
int avrc_read_attr_entry_from_stream (uint8_t *p_attr_stream, uint16_t stream_len, wiced_bt_avrc_attr_entry_t *p_attr)
 This function parse the avrc attribute. More...
 
int avrc_read_full_name_from_stream (uint8_t *p_name_stream, uint16_t stream_len, wiced_bt_avrc_full_name_t *p_name)
 This function parse the string with charset_id received in buffer. More...
 
int avrc_read_browse_item_from_stream (uint8_t *p_item_stream, uint16_t stream_len, wiced_bt_avrc_item_t *p_rsp)
 This function parse the response for browsable item player/folder/media. More...
 
int avrc_read_name_from_stream (uint8_t *p_name_stream, uint16_t stream_len, wiced_bt_avrc_name_t *p_name)
 This function parse the string received in buffer. More...
 
wiced_bool_t wiced_bt_avrc_set_browse_drb (uint8_t handle, tDRB *p_drb, uint16_t payload_len, wiced_bt_l2cap_drb_release_cb *p_unreg_cb)
 This function set the data receive buffer in stack. More...
 

AVRC result codes.

#define AVRC_SUCCESS   0
 Function successful.
 
#define AVRC_NO_RESOURCES   1
 Not enough resources.
 
#define AVRC_BAD_HANDLE   2
 Bad handle.
 
#define AVRC_PID_IN_USE   3
 PID already in use.
 
#define AVRC_NOT_OPEN   4
 Connection not open.
 
#define AVRC_MSG_TOO_BIG   5
 the message length exceed the MTU of the browsing channel
 
#define AVRC_FAIL   0x10
 generic failure
 
#define AVRC_BAD_PARAM   0x11
 bad parameter
 
#define AVRC_BUSY   0x12
 busy with another operation
 

AVRC Control Role

#define AVRC_CT_TARGET   1
 AVRC target.
 
#define AVRC_CT_CONTROL   2
 AVRC controller.
 
#define AVRC_CT_PASSIVE   4
 AVRC role determined by peer device.
 

AVRC Connection Role

#define AVRC_CONN_INITIATOR   0
 AVRC initiator.
 
#define AVRC_CONN_ACCEPTOR   1
 AVRC acceptor.
 

AVRC profile version

#define AVRC_REV_1_0   0x0100
 AVRC profile version 1.0.
 
#define AVRC_REV_1_3   0x0103
 AVRC profile version 1.3.
 
#define AVRC_REV_1_4   0x0104
 AVRC profile version 1.4.
 
#define AVRC_REV_1_5   0x0105
 AVRC profile version 1.5.
 
#define AVRC_REV_1_6   0x0106
 AVRC profile version 1.6.
 

AVRC subunit types

#define AVRC_SUB_MONITOR   0x00
 Monitor.
 
#define AVRC_SUB_AUDIO   0x01
 Audio.
 
#define AVRC_SUB_PRINTER   0x02
 Printer.
 
#define AVRC_SUB_DISC   0x03
 Disc.
 
#define AVRC_SUB_TAPE   0x04
 Tape recorder/player.
 
#define AVRC_SUB_TUNER   0x05
 Tuner.
 
#define AVRC_SUB_CA   0x06
 CA.
 
#define AVRC_SUB_CAMERA   0x07
 Camera.
 
#define AVRC_SUB_PANEL   0x09
 Panel.
 
#define AVRC_SUB_BB   0x0A
 Bulletin Board.
 
#define AVRC_SUB_CAM_STOR   0x0B
 Camera Storage.
 
#define AVRC_SUB_VENDOR   0x1C
 Vendor unique.
 
#define AVRC_SUB_EXT   0x1E
 Subunit type extended to next byte.
 
#define AVRC_SUB_UNIT   0x1F
 Unit.
 

AVRC message opcodes (defined by 1394ta).

#define AVRC_OP_UNIT_INFO   0x30
 Report unit information.
 
#define AVRC_OP_SUB_INFO   0x31
 Report subunit information.
 
#define AVRC_OP_VENDOR   0x00
 Vendor-dependent commands.
 
#define AVRC_OP_PASS_THRU   0x7C
 panel subunit opcode
 
#define AVRC_OP_BROWSE   0xFF
 opcodes 80-9F and E0-FF are not used by 1394ta.Sneak one for the browsing channel More...
 
#define AVRC_OP_INVALID   0xFE
 Invalid.
 

Company IDs

#define AVRC_CO_BLUETOOTH_SIG   0x00FFFFFF
 Bluetooth SIG.
 
#define AVRC_CO_WIDCOMM   0x00000361
 Widcomm Inc. More...
 
#define AVRC_CO_BROADCOM   0x00001018
 Cypress Semiconductor.
 
#define AVRC_CO_METADATA   0x00001958
 AVRC metadata messages.
 

Operation ID list for Passthrough commands

#define AVRC_ID_SELECT   0x00
 select
 
#define AVRC_ID_UP   0x01
 up
 
#define AVRC_ID_DOWN   0x02
 down
 
#define AVRC_ID_LEFT   0x03
 left
 
#define AVRC_ID_RIGHT   0x04
 right
 
#define AVRC_ID_RIGHT_UP   0x05
 right-up
 
#define AVRC_ID_RIGHT_DOWN   0x06
 right-down
 
#define AVRC_ID_LEFT_UP   0x07
 left-up
 
#define AVRC_ID_LEFT_DOWN   0x08
 left-down
 
#define AVRC_ID_ROOT_MENU   0x09
 root menu
 
#define AVRC_ID_SETUP_MENU   0x0A
 setup menu
 
#define AVRC_ID_CONT_MENU   0x0B
 contents menu
 
#define AVRC_ID_FAV_MENU   0x0C
 favorite menu
 
#define AVRC_ID_EXIT   0x0D
 exit
 
#define AVRC_ID_0   0x20
 0
 
#define AVRC_ID_1   0x21
 1
 
#define AVRC_ID_2   0x22
 2
 
#define AVRC_ID_3   0x23
 3
 
#define AVRC_ID_4   0x24
 4
 
#define AVRC_ID_5   0x25
 5
 
#define AVRC_ID_6   0x26
 6
 
#define AVRC_ID_7   0x27
 7
 
#define AVRC_ID_8   0x28
 8
 
#define AVRC_ID_9   0x29
 9
 
#define AVRC_ID_DOT   0x2A
 dot
 
#define AVRC_ID_ENTER   0x2B
 enter
 
#define AVRC_ID_CLEAR   0x2C
 clear
 
#define AVRC_ID_CHAN_UP   0x30
 channel up
 
#define AVRC_ID_CHAN_DOWN   0x31
 channel down
 
#define AVRC_ID_PREV_CHAN   0x32
 previous channel
 
#define AVRC_ID_SOUND_SEL   0x33
 sound select
 
#define AVRC_ID_INPUT_SEL   0x34
 input select
 
#define AVRC_ID_DISP_INFO   0x35
 display information
 
#define AVRC_ID_HELP   0x36
 help
 
#define AVRC_ID_PAGE_UP   0x37
 page up
 
#define AVRC_ID_PAGE_DOWN   0x38
 page down
 
#define AVRC_ID_POWER   0x40
 power
 
#define AVRC_ID_VOL_UP   0x41
 volume up
 
#define AVRC_ID_VOL_DOWN   0x42
 volume down
 
#define AVRC_ID_MUTE   0x43
 mute
 
#define AVRC_ID_PLAY   0x44
 play
 
#define AVRC_ID_STOP   0x45
 stop
 
#define AVRC_ID_PAUSE   0x46
 pause
 
#define AVRC_ID_RECORD   0x47
 record
 
#define AVRC_ID_REWIND   0x48
 rewind
 
#define AVRC_ID_FAST_FOR   0x49
 fast forward
 
#define AVRC_ID_EJECT   0x4A
 eject
 
#define AVRC_ID_FORWARD   0x4B
 forward
 
#define AVRC_ID_BACKWARD   0x4C
 backward
 
#define AVRC_ID_ANGLE   0x50
 angle
 
#define AVRC_ID_SUBPICT   0x51
 subpicture
 
#define AVRC_ID_F1   0x71
 F1.
 
#define AVRC_ID_F2   0x72
 F2.
 
#define AVRC_ID_F3   0x73
 F3.
 
#define AVRC_ID_F4   0x74
 F4.
 
#define AVRC_ID_F5   0x75
 F5.
 
#define AVRC_ID_VENDOR   0x7E
 vendor unique
 
#define AVRC_KEYPRESSED_RELEASE   0x80
 Keypressed_release.
 

Define the Metadata Packet types

#define AVRC_PKT_SINGLE   0
 AVRCP packet type single.
 
#define AVRC_PKT_START   1
 AVRCP packet type start.
 
#define AVRC_PKT_CONTINUE   2
 AVRCP packet type continue.
 
#define AVRC_PKT_END   3
 AVRCP packet type end.
 
#define AVRC_PKT_TYPE_MASK   3
 AVRCP packet type mask.
 

Define the various AVRCP commands carried in the vendor dependant data

Define the PDUs carried in the vendor dependant data

#define AVRC_PDU_GET_CAPABILITIES   0x10
 AVRCP pdu id for Get Capabilities.
 
#define AVRC_PDU_LIST_PLAYER_APP_ATTR   0x11
 AVRCP pdu id for list player app attributes.
 
#define AVRC_PDU_LIST_PLAYER_APP_VALUES   0x12
 AVRCP pdu id for list player app values.
 
#define AVRC_PDU_GET_CUR_PLAYER_APP_VALUE   0x13
 AVRCP pdu id for get current player app value.
 
#define AVRC_PDU_SET_PLAYER_APP_VALUE   0x14
 AVRCP pdu id for set player app value.
 
#define AVRC_PDU_GET_PLAYER_APP_ATTR_TEXT   0x15
 AVRCP pdu id for get player app attribute text.
 
#define AVRC_PDU_GET_PLAYER_APP_VALUE_TEXT   0x16
 AVRCP pdu id for get player app value text.
 
#define AVRC_PDU_INFORM_DISPLAY_CHARSET   0x17
 AVRCP pdu id for inform display character set.
 
#define AVRC_PDU_INFORM_BATTERY_STAT_OF_CT   0x18
 AVRCP pdu id for inform battery status of CT.
 
#define AVRC_PDU_GET_ELEMENT_ATTR   0x20
 AVRCP pdu id for get element attributes.
 
#define AVRC_PDU_GET_PLAY_STATUS   0x30
 AVRCP pdu id for get play status.
 
#define AVRC_PDU_REGISTER_NOTIFICATION   0x31
 AVRCP pdu id for register notification.
 
#define AVRC_PDU_REQUEST_CONTINUATION_RSP   0x40
 AVRCP pdu id for request continuation response.
 
#define AVRC_PDU_ABORT_CONTINUATION_RSP   0x41
 AVRCP pdu id for abort continuation response.
 
#define AVRC_PDU_SET_ABSOLUTE_VOLUME   0x50
 added in 1.4 More...
 
#define AVRC_PDU_SET_ADDRESSED_PLAYER   0x60
 AVRCP pdu id for set addressed player.
 
#define AVRC_PDU_SET_BROWSED_PLAYER   0x70
 AVRCP pdu id for set browsed player.
 
#define AVRC_PDU_GET_FOLDER_ITEMS   0x71
 AVRCP pdu id for get folder items.
 
#define AVRC_PDU_CHANGE_PATH   0x72
 AVRCP pdu id for change path.
 
#define AVRC_PDU_GET_ITEM_ATTRIBUTES   0x73
 AVRCP pdu id for get item attributes.
 
#define AVRC_PDU_PLAY_ITEM   0x74
 AVRCP pdu id for play item.
 
#define AVRC_PDU_GET_TOTAL_NUM_OF_ITEMS   0x75
 AVRCP pdu id for get total number of items.
 
#define AVRC_PDU_SEARCH   0x80
 AVRCP pdu id for search.
 
#define AVRC_PDU_ADD_TO_NOW_PLAYING   0x90
 AVRCP pdu id for add to now playing.
 
#define AVRC_PDU_GENERAL_REJECT   0xA0
 AVRCP pdu id for general reject.
 
#define AVRC_PDU_NEXT_GROUP   0x00
 Define the vendor unique id carried in the pass through data. More...
 
#define AVRC_PDU_PREV_GROUP   0x01
 AVRCP pdu id for previous group.
 

AVRC status codes.

typedef uint8_t wiced_bt_avrc_sts_t
 AVRC sts.
 
#define AVRC_STS_BAD_CMD   0x00
 Invalid command, sent if TG received a PDU that it did not understand. More...
 
#define AVRC_STS_BAD_PARAM   0x01
 Invalid parameter, sent if the TG received a PDU with a parameter ID that it did not understand. More...
 
#define AVRC_STS_NOT_FOUND   0x02
 Specified parameter not found., sent if the parameter ID is understood, but content is wrong or corrupted. More...
 
#define AVRC_STS_INTERNAL_ERR   0x03
 Internal Error, sent if there are error conditions not covered by a more specific error code. More...
 
#define AVRC_STS_NO_ERROR   0x04
 Operation completed without error. More...
 
#define AVRC_STS_UID_CHANGED   0x05
 UID Changed - The UIDs on the device have changed.
 
#define AVRC_STS_BAD_DIR   0x07
 Invalid Direction - The Direction parameter is invalid - Change Path.
 
#define AVRC_STS_NOT_DIR   0x08
 Not a Directory - The UID provided does not refer to a folder item Change Path.
 
#define AVRC_STS_NOT_EXIST   0x09
 Does Not Exist - The UID provided does not refer to any item Change Path, PlayItem, AddToNowPlaying, GetItemAttributes.
 
#define AVRC_STS_BAD_SCOPE   0x0a
 Invalid Scope - The scope parameter is invalid GetFolderItems, PlayItem, AddToNowPlayer, GetItemAttributes,.
 
#define AVRC_STS_BAD_RANGE   0x0b
 Range Out of Bounds - The start of range provided is not valid GetFolderItems.
 
#define AVRC_STS_UID_IS_DIR   0x0c
 UID is a Directory - The UID provided refers to a directory, which cannot be handled by this media player PlayItem, AddToNowPlaying.
 
#define AVRC_STS_IN_USE   0x0d
 Media in Use - The media is not able to be used for this operation at this time PlayItem, AddToNowPlaying.
 
#define AVRC_STS_NOW_LIST_FULL   0x0e
 Now Playing List Full - No more items can be added to the Now Playing List AddToNowPlaying.
 
#define AVRC_STS_SEARCH_NOT_SUP   0x0f
 Search Not Supported - The Browsed Media Player does not support search Search.
 
#define AVRC_STS_SEARCH_BUSY   0x10
 Search in Progress - A search operation is already in progress Search.
 
#define AVRC_STS_BAD_PLAYER_ID   0x11
 Invalid Player Id - The specified Player Id does not refer to a valid player SetAddressedPlayer, SetBrowsedPlayer.
 
#define AVRC_STS_PLAYER_N_BR   0x12
 Player Not Browsable - The Player Id supplied refers to a Media Player which does not support browsing. More...
 
#define AVRC_STS_PLAYER_N_ADDR   0x13
 Player Not Addressed. More...
 
#define AVRC_STS_BAD_SEARCH_RES   0x14
 No valid Search Results - The Search result list does not contain valid entries, e.g. More...
 
#define AVRC_STS_NO_AVAL_PLAYER   0x15
 No available players ALL.
 
#define AVRC_STS_ADDR_PLAYER_CHG   0x16
 Addressed Player Changed - Register Notification.
 
#define AVRC_STS_NO_RESOURCES   0x17
 No respouces available.
 

AVRC capability ids.

Define the Capability IDs

#define AVRC_CAP_COMPANY_ID   0x02
 Capability id for company.
 
#define AVRC_CAP_EVENTS_SUPPORTED   0x03
 Capability id for events supported.
 
#define AVRC_COMPANY_ID_LEN   3
 company id len
 
#define AVRC_CAPABILITY_OFFSET   2
 capability offset
 

AVRC player settings ids

#define AVRC_PLAYER_SETTING_EQUALIZER   0x01
 id for equalizer
 
#define AVRC_PLAYER_SETTING_REPEAT   0x02
 id for repeat
 
#define AVRC_PLAYER_SETTING_SHUFFLE   0x03
 id for shuffle
 
#define AVRC_PLAYER_SETTING_SCAN   0x04
 id for scan
 
#define AVRC_PLAYER_SETTING_LOW_MENU_EXT   0x80
 id for low menu exit
 
#define AVRC_PLAYER_SETTING_HIGH_MENU_EXT   0xff
 id for high menu exit
 

possible values of the Player Application Settings

#define AVRC_PLAYER_VAL_OFF   0x01
 value for off
 
#define AVRC_PLAYER_VAL_ON   0x02
 value for on
 
#define AVRC_PLAYER_VAL_SINGLE_REPEAT   0x02
 value for single repeat
 
#define AVRC_PLAYER_VAL_ALL_REPEAT   0x03
 value for all repeat
 
#define AVRC_PLAYER_VAL_GROUP_REPEAT   0x04
 value for group repeat
 
#define AVRC_PLAYER_VAL_ALL_SHUFFLE   0x02
 value for all shuffle
 
#define AVRC_PLAYER_VAL_GROUP_SHUFFLE   0x03
 value for group shuffle
 
#define AVRC_PLAYER_VAL_ALL_SCAN   0x02
 value for all scan
 
#define AVRC_PLAYER_VAL_GROUP_SCAN   0x03
 value for group scan
 

possible values of the Battery Status PDU

typedef uint8_t wiced_bt_avrc_battery_status_t
 AVRC battery.
 
#define AVRC_BATTERY_STATUS_NORMAL   0x00
 battery status normal
 
#define AVRC_BATTERY_STATUS_NORMAL   0x00
 battery status normal
 
#define AVRC_BATTERY_STATUS_WARNING   0x01
 battery status warning
 
#define AVRC_BATTERY_STATUS_WARNING   0x01
 battery status warning
 
#define AVRC_BATTERY_STATUS_CRITICAL   0x02
 battery status critical
 
#define AVRC_BATTERY_STATUS_CRITICAL   0x02
 battery status critical
 
#define AVRC_BATTERY_STATUS_EXTERNAL   0x03
 battery status external
 
#define AVRC_BATTERY_STATUS_EXTERNAL   0x03
 battery status external
 
#define AVRC_BATTERY_STATUS_FULL_CHARGE   0x04
 battery status full charge
 
#define AVRC_BATTERY_STATUS_FULL_CHARGE   0x04
 battery status full charge
 

media attribute ids

#define AVRC_MEDIA_ATTR_ID_TITLE   0x00000001
 Attribute id for title.
 
#define AVRC_MEDIA_ATTR_ID_ARTIST   0x00000002
 Attribute id for artist.
 
#define AVRC_MEDIA_ATTR_ID_ALBUM   0x00000003
 Attribute id for album.
 
#define AVRC_MEDIA_ATTR_ID_TRACK_NUM   0x00000004
 Attribute id for track number.
 
#define AVRC_MEDIA_ATTR_ID_NUM_TRACKS   0x00000005
 Attribute id for number of tracks.
 
#define AVRC_MEDIA_ATTR_ID_GENRE   0x00000006
 Attribute id for genre.
 
#define AVRC_MEDIA_ATTR_ID_PLAYING_TIME   0x00000007
 Attribute id for playing time.
 
#define AVRC_MAX_NUM_MEDIA_ATTR_ID   7
 Number of media attribute ids.
 
#define AVRC_MAX_MEDIA_ATTR_LEN   80
 Maximum length of the stored media attribute fields. More...
 

Play state values

typedef uint8_t wiced_bt_avrc_playstate_t
 AVRC playstate.
 
#define AVRC_PLAYSTATE_RESP_MSG_SIZE   9
 play state response msg size
 
#define AVRC_PLAYSTATE_STOPPED   0x00
 Stopped.
 
#define AVRC_PLAYSTATE_PLAYING   0x01
 Playing.
 
#define AVRC_PLAYSTATE_PAUSED   0x02
 Paused.
 
#define AVRC_PLAYSTATE_FWD_SEEK   0x03
 Fwd Seek.
 
#define AVRC_PLAYSTATE_REV_SEEK   0x04
 Rev Seek.
 
#define AVRC_PLAYSTATE_ERROR   0xFF
 Error.
 

Events that can be registered for notifications

#define AVRC_EVT_PLAY_STATUS_CHANGE   0x01
 play status changed event
 
#define AVRC_EVT_TRACK_CHANGE   0x02
 track changed event
 
#define AVRC_EVT_TRACK_REACHED_END   0x03
 track reached end event
 
#define AVRC_EVT_TRACK_REACHED_START   0x04
 track reach start event
 
#define AVRC_EVT_PLAY_POS_CHANGED   0x05
 playback position changed event
 
#define AVRC_EVT_BATTERY_STATUS_CHANGE   0x06
 battery status changed event
 
#define AVRC_EVT_SYSTEM_STATUS_CHANGE   0x07
 system status changed event
 
#define AVRC_EVT_APP_SETTING_CHANGE   0x08
 app settings change event
 
#define AVRC_EVT_NOW_PLAYING_CHANGE   0x09
 now playing changed event
 
#define AVRC_EVT_AVAL_PLAYERS_CHANGE   0x0a
 available players changed event
 
#define AVRC_EVT_ADDR_PLAYER_CHANGE   0x0b
 addressed player changed event
 
#define AVRC_EVT_UIDS_CHANGE   0x0c
 UIDs changed events.
 
#define AVRC_EVT_VOLUME_CHANGE   0x0d
 volume changed event
 

Detailed Description

This section describes the API's to use Audio/Video Remote Control Profile commands which use underlying AVCT protocol.

This section describes the API's to use Audio/Video Remote Control Profile.

The AVRC profile defines the procedures required to control audio/video functions of Bluetooth devices.

Macro Definition Documentation

#define AVRC_1_6_INCLUDED   TRUE

TRUE to support the AVRCP 1.6 (GetTotalNumOfItems).

#define AVRC_CHARSET_ID_ASCII   ((uint16_t) 0x0003)

the frequently used character set ids

ASCII

#define AVRC_CO_WIDCOMM   0x00000361

Widcomm Inc.

#define AVRC_FOLDER_TYPE_MIXED   0x00

folder types

mixed

#define AVRC_IS_VALID_ATTRIBUTE (   a)
Value:
#define WICED_TRUE
true
Definition: wiced_data_types.h:50
#define WICED_FALSE
false
Definition: wiced_data_types.h:47
#define AVRC_PLAYER_SETTING_SCAN
id for scan
Definition: wiced_bt_avrc_defs.h:314
#define AVRC_PLAYER_SETTING_LOW_MENU_EXT
id for low menu exit
Definition: wiced_bt_avrc_defs.h:315

Check for valid AVRC attribute.

#define AVRC_IS_VALID_EVENT_ID (   a)
Value:
#define AVRC_EVT_VOLUME_CHANGE
volume changed event
Definition: wiced_bt_avrc_defs.h:402
#define FALSE
false
Definition: wiced_data_types.h:54
#define TRUE
true
Definition: wiced_data_types.h:58
#define AVRC_EVT_PLAY_STATUS_CHANGE
play status changed event
Definition: wiced_bt_avrc_defs.h:390

Macro to check for valid AVRC event.

#define AVRC_IS_VALID_MEDIA_ATTRIBUTE (   a)
Value:
#define WICED_TRUE
true
Definition: wiced_data_types.h:50
#define AVRC_MEDIA_ATTR_ID_TITLE
Attribute id for title.
Definition: wiced_bt_avrc_defs.h:358
#define WICED_FALSE
false
Definition: wiced_data_types.h:47
#define AVRC_MEDIA_ATTR_ID_PLAYING_TIME
Attribute id for playing time.
Definition: wiced_bt_avrc_defs.h:364

Check for valid metadata attribute.

#define AVRC_MAX_MEDIA_ATTR_LEN   80

Maximum length of the stored media attribute fields.

#define AVRC_MEDIA_TYPE_AUDIO   0x00

media item - media type

Audio

#define AVRC_OP_BROWSE   0xFF

opcodes 80-9F and E0-FF are not used by 1394ta.Sneak one for the browsing channel

Browsing

#define AVRC_PASS_THRU_GROUP_LEN   5

the only pass through vendor unique commands defined by AVRC is the group navigation commands The len for vendor unique data is 5

AVRC group navigation command len

#define AVRC_PDU_NEXT_GROUP   0x00

Define the vendor unique id carried in the pass through data.

AVRCP pdu id for next group

#define AVRC_PDU_SET_ABSOLUTE_VOLUME   0x50

added in 1.4

AVRCP pdu id for set absolute volume

#define AVRC_PF_SELECT_BIT_NO   0

player attribute - supported features

Bit for select

#define AVRC_PLAYER_MAJOR_TYPE_AUDIO   0x01

major player type

Audio

#define AVRC_PLAYER_SUB_TYPE_NONE   0x00

player sub type

None

#define AVRC_STATE_PRESS   0

State flag for Passthrough commands.

AVRC button state press

#define AVRC_STS_BAD_CMD   0x00

Invalid command, sent if TG received a PDU that it did not understand.

#define AVRC_STS_BAD_PARAM   0x01

Invalid parameter, sent if the TG received a PDU with a parameter ID that it did not understand.

Sent if there is only one parameter ID in the PDU.

#define AVRC_STS_BAD_SEARCH_RES   0x14

No valid Search Results - The Search result list does not contain valid entries, e.g.

after being invalidated due to change of browsed player GetFolderItems

#define AVRC_STS_INTERNAL_ERR   0x03

Internal Error, sent if there are error conditions not covered by a more specific error code.

#define AVRC_STS_NO_ERROR   0x04

Operation completed without error.

This is the status that should be returned if the operation was successful.

#define AVRC_STS_NOT_FOUND   0x02

Specified parameter not found., sent if the parameter ID is understood, but content is wrong or corrupted.

#define AVRC_STS_PLAYER_N_ADDR   0x13

Player Not Addressed.

The Player Id supplied refers to a player which is not currently addressed, and the command is not able to be performed if the player is not set as addressed. Search, SetBrowsedPlayer

#define AVRC_STS_PLAYER_N_BR   0x12

Player Not Browsable - The Player Id supplied refers to a Media Player which does not support browsing.

SetBrowsedPlayer

#define AVRC_SUPF_CT_CAT1   0x0001

Supported categories.

Category 1

#define AVRC_SYSTEMSTATE_PWR_ON   0x00

Define the possible values of system status.

AVRC system power on state

#define AVRC_SYSTEMSTATE_PWR_ON   0x00

Define the possible values of system status.

AVRC system power on state

#define AVRC_UID_SIZE   8

AVRC UID size.

Avrc uid size.

#define AVRC_UID_SIZE   8

AVRC UID size.

Avrc uid size.

Typedef Documentation

typedef void( wiced_bt_avrc_ctrl_cback_t)(uint8_t handle, wiced_bt_avrc_ctrl_evt_t event, uint16_t result, wiced_bt_avrc_xmit_buf_t *p_buf, wiced_bt_device_address_t peer_addr)

AVRC control callback function.

Parameters
[in]handle: Connection handle
[in]event: AVRC ctrl event (see wiced_bt_avrc_ctrl_evt_e)
[in]result: Result code (see AVRC result codes)
[in]p_buf: pointer to application transmit buffer
[in]peer_addr: Peer device address
Returns
Nothing
typedef void( wiced_bt_avrc_msg_cback_t)(wiced_bt_avrc_msg_t *p_msg)

AVRC data callback function.

It is executed when AVCTP has a message packet ready for the application. The implementation of this callback function must copy the wiced_bt_avrc_msg_t structure passed to it as it is not guaranteed to remain after the callback function exits.

Parameters
[in]handle: Connection handle
[in]label: Message label
[in]opcode: Message opcode (see AVRC opcodes)
[in]p_msg: AVRC message
Returns
Nothing

Enumeration Type Documentation

AVRC CTRL events.

Enumerator
AVRC_OPEN_IND_EVT 

AVRC_OPEN_IND_EVT event is sent when the connection is successfully opened.T his eventis sent in response to an wiced_bt_avrc_open().

AVRC_CLOSE_IND_EVT 

AVRC_CLOSE_IND_EVT event is sent when a connection is closed.

This event can result from a call to wiced_bt_avrc_close() or when the peer closes the connection. It is also sent when a connection attempted through wiced_bt_avrc_open() fails.

AVRC_CONG_IND_EVT 

AVRC_CONG_IND_EVT event indicates that AVCTP is congested and cannot send any more messages.

AVRC_UNCONG_IND_EVT 

AVRC_UNCONG_IND_EVT event indicates that AVCTP is uncongested and ready to send messages.

AVRC_BROWSE_OPEN_IND_EVT 

AVRC_BROWSE_OPEN_IND_EVT event is sent when the browse channel is successfully opened.

This eventis sent in response to an wiced_bt_avrc_open() or wiced_bt_avrc_open_browse() . AVRC_BROWSE_CLOSE_IND_EVT event is sent when a browse channel is closed. This event can result from a call to wiced_bt_avrc_close(), wiced_bt_avrc_close_browse() or when the peer closes the connection. It is also sent when a connection attempted through wiced_bt_avrc_openBrowse() fails.

AVRC_BROWSE_CONG_IND_EVT 

AVRC_BROWSE_CONG_IND_EVT event indicates that AVCTP browse channel is congested and cannot send any more messages.

AVRC_BROWSE_UNCONG_IND_EVT 

AVRC_BROWSE_UNCONG_IND_EVT event indicates that AVCTP browse channel is uncongested and ready to send messages.

AVRC_CMD_TIMEOUT_EVT 

AVRC_CMD_TIMEOUT_EVT event indicates timeout waiting for AVRC command response from the peer.

AVRC_APP_BUFFER_TX_EVT 

AVRC_APP_BUFFER_TX_EVT event indicates status of the data transmission.

AVRC ctype events.

Enumerator
AVRC_CMD_CTRL 

Instruct a target to perform an operation.

AVRC_CMD_STATUS 

Check a device's current status.

AVRC_CMD_SPEC_INQ 

Check whether a target supports a particular control command; all operands are included.

AVRC_CMD_NOTIF 

Used for receiving notification of a change in a devices state.

AVRC_CMD_GEN_INQ 

Check whether a target supports a particular control command; operands are not included.

AVRC_RSP_NOT_IMPL 

Response type codes.

The target does not implement the command specified by the opcode and operand, or doesn't implement the specified subunit

AVRC_RSP_ACCEPT 

The target executed or is executing the command.

AVRC_RSP_REJ 

The target implements the command specified by the opcode but cannot respond because the current state of the target doesn't allow it.

AVRC_RSP_IN_TRANS 

The target implements the status command but it is in a state of transition; the status command may be retried at a future time.

AVRC_RSP_IMPL_STBL 

For specific inquiry or general inquiy commands, the target implements the command; for status commands, the target returns stable and includes the status results.

AVRC_RSP_CHANGED 

The response frame contains a notification that the target device's state has changed.

AVRC_RSP_INTERIM 

For control commands, the target has accepted the request but cannot return information within 100 milliseconds; for notify commands, the target accepted the command, and will notify the controller of a change of target state at a future time.

Function Documentation

wiced_bool_t avrc_is_valid_player_attrib_value ( uint8_t  attrib,
uint8_t  value 
)

This function validates player attribute id and value.

Parameters
[in]attrib: player attribute id(see AVRC player settings ids )
[in]value: player attribute vallue (see possible values of the Player Application Settings)

Returns Returns TRUE or FALSE

int avrc_read_attr_entry_from_stream ( uint8_t *  p_attr_stream,
uint16_t  stream_len,
wiced_bt_avrc_attr_entry_t p_attr 
)

This function parse the avrc attribute.

Parameters
[in]p_attr_stream: received response stream offset-ed by amount read
[in]stream_len: valid length of buffer pointed by p_attr_stream
[out]p_attr: pointer to the wiced_bt_avrc_attr_entry_t parsed into

Returns Returns number of bytes read from the buffer

int avrc_read_browse_item_from_stream ( uint8_t *  p_item_stream,
uint16_t  stream_len,
wiced_bt_avrc_item_t p_rsp 
)

This function parse the response for browsable item player/folder/media.

Parameters
[in]p_item_stream: received response stream offset-ed by amount read
[in]stream_len: valid length of buffer pointed by p_item_stream
[out]p_rsp: pointer to the wiced_bt_avrc_item_t parsed into

Returns Returns number of bytes read from the buffer

int avrc_read_full_name_from_stream ( uint8_t *  p_name_stream,
uint16_t  stream_len,
wiced_bt_avrc_full_name_t p_name 
)

This function parse the string with charset_id received in buffer.

Parameters
[in]p_name_stream: received response stream offset-ed by amount read
[in]stream_len: valid length of buffer pointed by p_name_stream
[out]p_name: pointer to the wiced_bt_avrc_full_name_t parsed into

Returns Returns number of bytes read from the buffer

int avrc_read_name_from_stream ( uint8_t *  p_name_stream,
uint16_t  stream_len,
wiced_bt_avrc_name_t p_name 
)

This function parse the string received in buffer.

Parameters
[in]p_name_stream: received response stream offset-ed by amount read
[in]stream_len: valid length of buffer pointed by p_name_stream
[out]p_name: pointer to the wiced_bt_avrc_name_t parsed into

Returns Returns number of bytes read from the buffer

wiced_bt_avrc_sts_t wiced_bt_avrc_bld_browse_command ( wiced_bt_avrc_browse_cmd_t p_cmd,
wiced_bt_avrc_xmit_buf_t p_xmit_buf 
)

Build AVRCP Browse response.

Parameters
[in]p_cmd: Pointer to the structure to build the command from
[in]p_xmit_buf: Pointer to the buffer to build the command into
Returns
Status code (see AVRC status codes) AVRC_STS_NO_ERROR, if the message in p_data is parsed successfully. Otherwise, the error code defined by AVRCP 1.4
wiced_bt_avrc_sts_t wiced_bt_avrc_bld_browse_response ( wiced_bt_avrc_browse_rsp_t p_rsp,
wiced_bt_avrc_xmit_buf_t p_rspbuf 
)

Build AVRCP Browse response.

Parameters
[in]p_rsp: Pointer to the structure to build the response from
[in]p_rspbuf: Pointer to the buffer to build the response into
Returns
Status code (see AVRC status codes) AVRC_STS_NO_ERROR, if the message in p_data is parsed successfully. Otherwise, the error code defined by AVRCP 1.4
wiced_bt_avrc_sts_t wiced_bt_avrc_bld_metadata_cmd ( wiced_bt_avrc_metadata_cmd_t p_cmd,
wiced_bt_avrc_xmit_buf_t p_xmit_buf 
)

Build AVRCP metadata command.

Parameters
[in]p_cmd: Pointer to the structure to build the command from
[in]p_xmit_buf: Pointer to the buffer to build the command into
Returns
Status code (see AVRC status codes) AVRC_STS_NO_ERROR, if the message in p_data is parsed successfully. Otherwise, the error code defined by AVRCP 1.4
wiced_bt_avrc_sts_t wiced_bt_avrc_bld_metadata_response ( wiced_bt_avrc_metadata_rsp_t p_rsp,
wiced_bt_avrc_xmit_buf_t p_rspbuf 
)

Build AVRCP metadata response.

Parameters
[in]p_rsp: Pointer to the structure to build the response from
[in]p_rspbuf: Pointer to the buffer to build the response into
Returns
Status code (see AVRC status codes) AVRC_STS_NO_ERROR, if the message in p_data is parsed successfully. Otherwise, the error code defined by AVRCP 1.4
uint16_t wiced_bt_avrc_close ( uint8_t  handle)

Close AVRCP connection.

Parameters
[in]handle: Handle of connection to close
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_close_browse ( uint8_t  handle)

Close AVRCP browsing connection.

Parameters
[in]handle: Connection handle
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_get_ctrl_mtu ( void  )

This function gets the control MTU.

Returns returns AVRC Control MTU

uint16_t wiced_bt_avrc_get_data_mtu ( void  )

This function gets the data MTU.

Returns returns AVRC DATA MTU

uint16_t wiced_bt_avrc_init ( uint16_t  mtu,
uint16_t  mtu_br 
)

This function initializes AVRCP and prepares the protocol stack for its use.

This function must be called once by the system or platform using AVRCP before the other functions of the API an be used

Parameters
[in]mtu: Control Channel MTU (Min Value = 48, default value = L2CAP MTU)
[in]mtu_br: Browsing Channel MTU (Min Value = 335, default value = L2CAP MTU)
Returns
Result code (see AVRC result codes)
wiced_bool_t wiced_bt_avrc_is_valid_avc_type ( uint8_t  pdu_id,
wiced_bt_avrc_ctype_t  ctype 
)

Check if correct AVRC message type is specified.

Parameters
[in]pdu_id: PDU ID
[in]ctype: avrc message type (see wiced_bt_avrc_ctype_e)
Returns
true if it is valid, false otherwise
wiced_bool_t wiced_bt_avrc_is_valid_player_attr ( uint8_t  attr)

Check if the given attrib value is a valid one.

Parameters
[in]attr: Player attribute ID

Returns returns true if it is valid

uint16_t wiced_bt_avrc_open ( uint8_t *  p_handle,
wiced_bt_avrc_config_t p_config,
wiced_bt_device_address_t  peer_addr 
)

Open AVRC connection (as intiator or acceptor); register notification callbacks.

The connection role may be AVRC controller or target. The connection remains available to the application until wiced_bt_avrc_close() is called. On receiving AVRC_CLOSE_IND_EVT, acceptor connections remain in acceptor mode (no need to re-open the connection)

Parameters
[out]p_handle: Connection handle (valid if AVRC_SUCCESS is returned)
[in]p_config: AVRC connection configuration structure (callbacks and role configuration)
[in]peer_addr: Peer device address (if initiator)
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_open_browse ( uint8_t  handle,
uint8_t  conn_role 
)

Open AVRCP browsing connection, either as initiator or acceptor.

Parameters
[in]handle: Connection handle (obtained from wiced_bt_avrc_open)
[in]conn_role: Initiator or acceptor of the connection (see AVRC connection roles)
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_send_browse_data ( uint8_t  handle,
uint8_t  label,
wiced_bt_avrc_ctype_t  ctype,
wiced_bt_avrc_xmit_buf_t p_xmit_buf 
)

send the Browsing data

Parameters
[in]handle: Connection handle
[in]label: Message label
[in]ctype: avrc message type (see wiced_bt_avrc_ctype_e)
[in]p_xmit_buf: Pointer to transmit buffer
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_send_metadata_msg ( uint8_t  handle,
uint8_t  label,
wiced_bt_avrc_ctype_t  ctype,
wiced_bt_avrc_xmit_buf_t p_cmdbuf 
)

Send an AVRC vendor dependent messages.

Parameters
[in]handle: Connection handle
[in]label: Transaction label
[in]ctype: Message type (see wiced_bt_avrc_ctype_e)
[in]p_cmdbuf: Pointer to the buffer holding the AVRC message
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_send_passthrough_cmd ( uint8_t  handle,
uint8_t  label,
wiced_bt_avrc_pass_thru_cmd_t p_msg 
)

Send a PASS THROUGH command to the peer device.

This function can only be called for controller role connections. Any response message from the peer is passed back through the wiced_bt_avrc_msg_cback_t callback function.

Parameters
[in]handle: Connection handle
[in]label: Transaction label
[in]p_msg: Pointer to the pass through command
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_send_passthrough_rsp ( uint8_t  handle,
uint8_t  label,
wiced_bt_avrc_ctype_t  ctype,
wiced_bt_avrc_pass_thru_cmd_t p_msg 
)

Send a PASS THROUGH response to the peer device.

This function can only be called for target role connections. This function must be called when a PASS THROUGH command message is received from the peer through the wiced_bt_avrc_msg_cback_t callback function.

Parameters
[in]handle: Connection handle
[in]label: Transaction label
[in]ctype: msg type(AVRC_RSP_ACCEPT/AVRC_RSP_REJ)(see wiced_bt_avrc_ctype_e)
[in]p_msg: Pointer to the pass through response
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_send_subunit_cmd ( uint8_t  handle,
uint8_t  label,
uint8_t  page 
)

Send a SUBUNIT INFO command to the peer device.

This function can only be called for controller role connections. Any response message from the peer is passed back through the wiced_bt_avrc_msg_cback_t callback function.

Parameters
[in]handle: Connection handle
[in]label: Transaction label
[in]page: Specifies which subunit table is requested. For AVRCP it is typically zero. Value range is 0-7.
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_send_unit_cmd ( uint8_t  handle,
uint8_t  label 
)

Send a UNIT INFO command to the peer device.

This function can only be called for controller role connections. Any response message from the peer is passed back through the wiced_bt_avrc_msg_cback_t callback function.

Parameters
[in]handle: Connection handle
[in]label: Transaction label
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_send_vendor_cmd ( uint8_t  handle,
uint8_t  label,
wiced_bt_avrc_cmd_t p_msg 
)

Send a VENDOR DEPENDENT command to the peer device.

This function can only be called for controller role connections. Any response message from the peer is passed back through the wiced_bt_avrc_msg_cback_t callback function.

Parameters
[in]handle: Connection handle
[in]label: Transaction label
[in]p_msg: Pointer to the vendor dependent command
Returns
Result code (see AVRC result codes)
uint16_t wiced_bt_avrc_send_vendor_rsp ( uint8_t  handle,
uint8_t  label,
wiced_bt_avrc_rsp_t p_msg 
)

Send a VENDOR DEPENDENT response to the peer device.

This function can only be called for target role connections. This function must be called when a VENDOR DEPENDENT command message is received from the peer through the wiced_bt_avrc_msg_cback_t callback function.

Parameters
[in]handle: Connection handle
[in]label: Transaction label
[in]p_msg: Pointer to the vendor dependent response
Returns
Result code (see AVRC result codes)
wiced_bool_t wiced_bt_avrc_set_browse_drb ( uint8_t  handle,
tDRB p_drb,
uint16_t  payload_len,
wiced_bt_l2cap_drb_release_cb p_unreg_cb 
)

This function set the data receive buffer in stack.

Parameters
[in]handle: AVRC connection handle
[in]p_drb: pointer to the buffer
[out]payload_len: valid length of buffer pointed by p_drb
[out]p_unreg_cb: Callback function to release the DRB pointed by p_drb

Returns Returns TRUE if success otherwise, FALSE

uint8_t wiced_bt_avrc_set_trace_level ( uint8_t  new_level)

Sets the trace level for AVRC.

If 0xff is passed, the current trace level is returned.

Parameters
[in]new_level: New trace level
Returns
The new trace level or current trace level if the input parameter is 0xff.