【发布时间】:2016-07-05 01:22:26
【问题描述】:
我正在研究一个在 Linux 平台上用 C 语言编写的互联网广播项目的蓝牙媒体播放器功能。 这个想法是:
- 连接到附近支持 AVRCP 配置文件的 BT 扬声器
- 通过 BT 将音频传输到 BT 扬声器
- 处理按钮推送事件
最初我遵循 MPRIS D-Bus 接口规范:https://specifications.freedesktop.org/mpris-spec/latest/
如果我理解得很好,规范说明如下:
- 请求一个唯一的总线名称,如下所示:org.mpris.MediaPlayer2.AnyName
- 公开 /org/mpris/MediaPlayer2 对象路径
- 实现以下接口:
- org.mpris.MediaPlayer2
- org.mpris.MediaPlayer2.Player
所有这些步骤都已完成。我正在使用 D-Feet D-bus 工具来测试属性查询、方法调用,它们都工作正常。
现在我的问题是,当我连接到 BT 扬声器并按下按钮时,应用程序没有收到事件。
你能指出我缺少什么以及我接下来应该做什么吗?
提前致谢!
PM:对不起,如果我不清楚,我是一名新手程序员和 Stackoverflow 用户。如果您需要更多信息,请询问我。我会很感激你的任何建议:)
EDIT1:我拥有的源代码是 1200 行长,我不知道我可以从代码中为您提取什么。但仅供参考,我正在使用 GLib 的高级 D-Bus 支持:https://developer.gnome.org/gio/stable/gdbus-convenience.html
【问题讨论】:
-
嗨,欢迎来到 Stackoverflow。您能否分享一些您编写的与您的问题相关的代码?
-
现在的代码有 1200 行。我不知道我是否可以提取代码的sn-ps。相反,我将编辑我的帖子并添加一行我正在使用 Glib 的高级 D-Bus 支持。