If AVRCP Target supports Cover Art download its SDP record contains an additional access protocol for OBEX with an LCAP PSM on which the OBEX client session should connect to, with the specific OBEX target header 7163DD54-4A7E-11E2-B47C-0050C2490048. Once the OBEX session is connected, the AVRCP track metadata will contain an Image Handle which can be used to get the associated image using GetImageThumbnail or GetImage with one of the description property found with GetImageProperties. v1 -> v2: Parse integer properties as integer instead of string Return GetImageProperties values as aa{sv} instead of aa{ss} Get properties for GetImage as a{sv} instead of a{ss} Set new properties and interface as experimental Frédéric Danis (7): obexd: Add PSM support to session create player: Add OBEX PSM port for cover art support player: Add image handle support property obexd: Add BIP client for AVRCP cover art download. obexd: Add GetImageProperties to bip-avrcp obexd: Add GetImage to bip-avrcp doc: Add description of org.bluez.obex.BipAvrcp Makefile.am | 9 +- Makefile.obexd | 2 + doc/org.bluez.MediaPlayer.rst | 11 + doc/org.bluez.obex.BipAvrcp.rst | 72 +++ doc/org.bluez.obex.Client.rst | 5 + doc/org.bluez.obex.Session.rst | 5 + monitor/avctp.c | 3 + obexd/client/bip-avrcp.c | 427 +++++++++++++++++ obexd/client/bip-avrcp.h | 12 + obexd/client/bip-common.c | 800 ++++++++++++++++++++++++++++++++ obexd/client/bip-common.h | 24 + obexd/client/manager.c | 16 +- obexd/client/session.c | 27 +- obexd/client/session.h | 1 + obexd/client/transfer.c | 16 + obexd/client/transfer.h | 2 + profiles/audio/avrcp.c | 64 ++- profiles/audio/avrcp.h | 3 +- profiles/audio/player.c | 30 ++ profiles/audio/player.h | 1 + tools/parser/avrcp.c | 3 + 21 files changed, 1514 insertions(+), 19 deletions(-) create mode 100644 doc/org.bluez.obex.BipAvrcp.rst create mode 100644 obexd/client/bip-avrcp.c create mode 100644 obexd/client/bip-avrcp.h create mode 100644 obexd/client/bip-common.c create mode 100644 obexd/client/bip-common.h -- 2.34.1