banshee:我如何通过DBus设置女妖特定曲目的评分?
答
Banshee不通过DBus公开评分函数。
您可以使用像d-feet [1]这样的应用程序快速查看它公开的所有功能。确保您感兴趣的应用程序实例(如本例中的Banshee)正在运行。
有一个错误报告已经要求添加额定功能[2] DBus接口。您可能想要订阅它。
答
可悲的是开发商还没有实现一个GET方法,所以执行“利率当前曲目1星级向上/向下”没有共同的办法 - 命令,远不及特定的轨道。 有没有人编写过提供此功能的脚本? 但是,我还没有找到任何解决方案通过命令行修改D-Bus属性。 最后,这里是我对当前播放曲目进行评分的解决方法。
#!/bin/bash
#read current TrackRating
R=$(qdbus org.mpris.MediaPlayer2.banshee /org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Get org.mpris.MediaPlayer2.Player Metadata | grep 'userRating' | tr -d '/xesam:userRating: ')
case $R in
'') R=0 ;;
'0.2') R=1 ;;
'0.4') R=2 ;;
'0.6') R=3 ;;
'0.8') R=4 ;;
'1' ) R=5 ;;
esac
case $1 in
'inc') [ $R -lt 5 ]
banshee --set-rating=$(($R+1)) ;;
'dec') [ $R -gt 0 ]
banshee --set-rating=$(($R-1)) ;;
'res') banshee --set-rating=3 ;;
'min') banshee --set-rating=0 ;;
'max') banshee --set-rating=5 ;;
esac
选项:
- INC - >增加等级的,如果可能的
- 月 - >降低等级的,如果可能的
- 资源 - >复位评级为三颗星
- min - >将评分设为零星
- max - >将评分设为五星
至于Banshee不会提供特定曲目的操纵数据,这是我最好的选择。
感谢您的d-feet链接! – jldupont 2009-10-13 15:19:42
引用的bug在Banshee 1.5.3中修复。 – 2010-02-12 16:54:17