我正在研究Linux平台上用C语言编写的互联网广播项目的蓝牙媒体播放器功能。 这个想法是:
最初我遵循MPRIS D-Bus接口规范:https://specifications.freedesktop.org/mpris-spec/latest/
如果我理解得很清楚,规范会说明如下:
所有这些步骤都已完成。我正在使用D-Feet D-bus工具来测试属性查询,方法调用以及它们都正常工作。
现在我的问题是,当我连接到BT扬声器并按下按钮时,应用程序无法获取事件。
你能指出我错过了什么,接下来该怎么办?
提前致谢!
PM:对不起,如果我不清楚,我是新生程序员和Stackoverflow用户。如果您需要更多信息,请询问我。我将不胜感激任何建议:)
EDIT1:我的源码是1200行,我不知道我可以从代码中提取什么。但仅供参考我正在使用GLib的高级D-Bus支持:https://developer.gnome.org/gio/stable/gdbus-convenience.html
答案 0 :(得分:0)
uinput模块用于写入AVRCP键命令,因此当连接BT耳机(A2DP)时,您将需要客户端从uinput读取,检查profile / audio / avctp.c :: uinput_create(),当avrcp配置文件已连接,密钥从handle_panel_passthrough()函数发送到内核中的uinput模块