用于pynotify的xmms2轨道变化检测?

问题描述:

我已经写了这个小脚本来显示当前使用xmms客户端和pynotify在通知窗口小部件上播放xmms2的曲目,所以当我运行它时,我可以看到使用xmmsclient方法弹出当前艺术家和标题的窗口小部件。用于pynotify的xmms2轨道变化检测?

任何人都可以提供一些有关如何检测跟踪变化的提示,以便自动通知而无需手动运行脚本?

将客户端库连接到主循环,并通过broadcast_ playback_current_id方法注册为侦听器。如果您想在脚本启动时使用当前播放的ID,则可以调用playback_current_id方法。

这里是tutorial6 in the xmms2-tutorial.git小适应它使用GLib的主循环驱动连接:

import xmmsclient 
import xmmsclient.glib 
import os 
import sys 
import gobject 

def cb(result): 
    if not result.is_error(): 
     print "Current: %(artist)s - %(title)s" % result.value() 


ml = gobject.MainLoop(None, False) 

xc = xmmsclient.XMMS("*") 
xc.connect() 

conn = xmmsclient.glib.GLibConnector(xc) 
xc.broadcast_playback_current_id(lambda r: xc.medialib_get_info(r.value(), cb)) 
ml.run() 
+0

不错,我是从你的回答不远处,非常感谢! – deadPoet