我终于设法使用 BlueZ 将手机中的音乐下载到 Ubuntu 上播放。我现在正在寻找一种控制播放的方法 - 从 Ubuntu 机器播放/暂停/下一首/上一首/获取歌曲名称等。这应该由 AVRCP 配置文件支持,bluez 网站表示它支持 AVRCP 1.5(据我所知这是最新版本)。
但是我找不到有关如何使用该 AVRCP 配置文件的任何文档 - 无论是通过 API/d-bus 还是使用某些程序。
我找到了一份文档,其中描述了一些 d-bus API: https://git.kernel.org/cgit/bluetooth/bluez.git/tree/doc/media-api.txt
但是当我使用 d-feet 工具浏览服务时,我看不到那些播放/暂停/下一个 API。只有音量调高/调低似乎不起作用。
我的 bluez 版本是 4.x。AVRCP 仅在 BlueZ 5 中受支持吗?
如能提供任何帮助/文档,我们将非常感激!
答案1
经过大量的挖掘,我发现了一些事情:
- AVRCP 运行良好,但在 Bluez > 5 中。Ubuntu 目前(14.04)有 Bluez4,因此需要从源代码构建。
- 与 Bluez 堆栈通信的方式是通过 DBus 消息,d-feet 工具在这方面非常方便
- 为了充分利用蓝牙堆栈,还需要 PulseAudio 和 oFono - 所有这些都需要从源代码构建,因为一些蓝牙功能在预打包版本中不受支持。