我正在尝试为基于 MPRIS 的媒体播放器创建一个通用的远程控制应用程序。控制媒体播放器非常简单,但由于我对 D-Bus 和 DBus-GLib 还很陌生,所以从 D-Bus 获取值对我来说有点搞砸了。
从文档中我看到,如果我想知道我的播放器是否真的在玩某些东西,我需要获取 PlaybackStatus 属性,但是我找不到在 C 中获取此值的工作示例。
目前获取它的行如下所示:
dbus_g_proxy_call(player_proxy, "Get", &err, G_TYPE_STRING, "Volume", G_TYPE_INVALID, G_TYPE_INT, &volume, G_TYPE_INVALID);
当然,它不起作用,因为org.mpris.MediaPlayer2.Player
接口不理解 Get 方法。