diff options
Diffstat (limited to 'stack/avrc/avrc_pars_tg.c')
-rw-r--r-- | stack/avrc/avrc_pars_tg.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/stack/avrc/avrc_pars_tg.c b/stack/avrc/avrc_pars_tg.c index 6e39c1c5a..b75ee907c 100644 --- a/stack/avrc/avrc_pars_tg.c +++ b/stack/avrc/avrc_pars_tg.c @@ -267,7 +267,31 @@ static tAVRC_STS avrc_pars_vendor_cmd(tAVRC_MSG_VENDOR *p_msg, tAVRC_COMMAND *p_ /* case AVRC_PDU_REQUEST_CONTINUATION_RSP: 0x40 */ /* case AVRC_PDU_ABORT_CONTINUATION_RSP: 0x41 */ + case AVRC_PDU_SET_ADDRESSED_PLAYER: + if (len != 2) + { + status = AVRC_STS_NOT_FOUND; + AVRC_TRACE_ERROR("AVRC_PDU_SET_ADDRESSED_PLAYER: bad len"); + } + else + { + BE_STREAM_TO_UINT16 (p_result->addr_player.player_id, p); + } + break; + case AVRC_PDU_PLAY_ITEM: + if (len != 11) + { + status = AVRC_STS_NOT_FOUND; + AVRC_TRACE_ERROR("AVRC_PDU_PLAY_ITEM: bad len"); + } + else + { + BE_STREAM_TO_UINT8 (p_result->play_item.scope, p); + BE_STREAM_TO_UINT64(p_result->play_item.uid, p); + BE_STREAM_TO_UINT16 (p_result->play_item.uid_counter, p); + } + break; default: status = AVRC_STS_BAD_CMD; break; |