我想用我的覆盆子pi为我的车设置蓝牙音频。我从我的手机播放音乐,并设置了2个GPIO按钮,它们使用DBus消息向前或向后移动曲目。我想要一个显示当前歌曲播放的屏幕,但我遇到了麻烦。是否有可能“超载”dbus获取属性命令?
使用DBUS我可以发出此命令:
的dbus-发送--system --type = method_call --print回复--dest = org.bluez /组织/ bluez的/ hci0/dev_DC_41_5F_17_4C_79/player0 org.freedesktop.DBus.Properties.Get字符串:org.bluez.MediaPlayer1字符串:跟踪
它返回这个 “变异体”
variant array [
dict entry(
string "Item"
variant object path "/org/bluez/hci0/dev_DC_41_5F_17_4C_79/player0/NowPlaying/item751498629074736430"
)
dict entry(
string "Album"
variant string "Horse Of A Different Color"
)
dict entry(
string "TrackNumber"
variant uint32 1
)
dict entry(
string "Genre"
variant string "Country"
)
dict entry(
string "Duration"
variant uint32 173061
)
dict entry(
string "NumberOfTracks"
variant uint32 50
)
dict entry(
string "Title"
variant string "Drinkin' 'Bout You"
)
dict entry(
string "Artist"
variant string "Big & Rich"
)
]
我想什么做的是只歌曲的标题将被退回。我尝试输入“标题”而不是“轨道”,还在命令'string:Title'的末尾添加了另一个运算符,希望它能缩小信息范围。但我没有运气。
任何人都可以阐明我如何去显示标题吗? 谢谢