我很難理解如何使用我的項目實現AVRCP。我尋覓頗有幾分看了很多數據表,但我仍然似乎失去了一些東西......藍牙A2DP + AVRCP 1.3+模塊
這是我想做的事:
簡單地說,我希望能夠用我的連接只要藍牙模塊支持A2DP,通過藍牙將android 4.3設備通過A2DP傳輸音樂(這看起來非常簡單)。此外,我想能夠控制媒體播放器應用程序(潘多拉等)。現在,我知道AVRCP 1.0只支持基本的控制命令(暫停,播放,下一個,上一個,FF,RW),並且我發現許多在線的藍牙模塊支持通過簡單的UART AT命令或命令通過SPI總線發送這些命令。不過,我也希望能夠從android設備(僅限AVRCP 1.3+功能)獲取元數據,例如曲目名稱,專輯名稱,藝術家姓名,曲目長度和已用時間。現在
,從我的理解,獲得元數據,我需要支持AVRCP 1.3或更高版本藍牙模塊。我無法理解的是如何請求元數據!從我讀的內容來看,元數據(如曲目名稱,藝術家,ablum和曲目長度)是爲了響應音軌更改命令而發送的。任何人都可以確認嗎?如果我需要請求流逝的時間呢?
理想情況下,我正在尋找一個支持A2DP(24位,如果有的話)和AVRCP 1.3或更高版本的藍牙模塊,可以通過UART或SPI或I2C接口發送,暫停,接下來,音樂播放器和請求藝術家,專輯,曲目名稱,已用時間,曲目長度元數據。
這是我發現的唯一單元的數據手冊中提到的元數據: http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Wireless/Bluetooth/Melody_5.0_Manual-RevD-RC10-Release.pdf(pg.16)
但我還不清楚這是如何工作!
這裏的任何幫助將是巨大的!
AVRCP支持2 roles.target和控制器,送你需要定義目標角色,請參閱[media.doc]所有的元數據信息(https://git.kernel.org/cgit/bluetooth/bluez.git/tree /doc/media-api.txt?id=4.101)。檢查APIS,您需要註冊媒體播放器並傳遞元數據和跟蹤信息。如果控制器更改任何參數,媒體接口SetProperty()將被調用,並且PropertyChanged信號需要從您的代碼發送到具有所有值的bluez,docs有點清晰。如果您使用的是其他堆棧而不是bluez,則此操作不起作用 – ashish
可能的[通過A2DP/AVRCP發送曲目信息]的副本(http://stackoverflow.com/questions/15527614/send-track-informations-via-a2dp-avrcp) – Phrogz